[Checkins] SVN: z3c.formjsdemo/trunk/ Improved validation example,
showing the message and changing the CSS.
Stephan Richter
srichter at cosmos.phy.tufts.edu
Sun Jul 8 03:53:55 EDT 2007
Log message for revision 77607:
Improved validation example, showing the message and changing the CSS.
Works very well.
Changed:
U z3c.formjsdemo/trunk/buildout.cfg
U z3c.formjsdemo/trunk/src/z3c/formjsdemo/validator/browser.py
U z3c.formjsdemo/trunk/src/z3c/formjsdemo/validator/configure.zcml
A z3c.formjsdemo/trunk/src/z3c/formjsdemo/validator/validator.css
A z3c.formjsdemo/trunk/src/z3c/formjsdemo/validator/validator.js
-=-
Modified: z3c.formjsdemo/trunk/buildout.cfg
===================================================================
--- z3c.formjsdemo/trunk/buildout.cfg 2007-07-08 07:52:06 UTC (rev 77606)
+++ z3c.formjsdemo/trunk/buildout.cfg 2007-07-08 07:53:54 UTC (rev 77607)
@@ -1,5 +1,5 @@
[buildout]
-develop = . z3c.form z3c.formjs
+develop = . z3c.form z3c.formui z3c.formjs
parts = demo
[zope3]
Modified: z3c.formjsdemo/trunk/src/z3c/formjsdemo/validator/browser.py
===================================================================
--- z3c.formjsdemo/trunk/src/z3c/formjsdemo/validator/browser.py 2007-07-08 07:52:06 UTC (rev 77606)
+++ z3c.formjsdemo/trunk/src/z3c/formjsdemo/validator/browser.py 2007-07-08 07:53:54 UTC (rev 77607)
@@ -1,11 +1,14 @@
import os.path
import zope.interface
import zope.schema
+from zope.viewlet.viewlet import CSSViewlet, JavaScriptViewlet
from z3c.form import form, button, field
from z3c.form.interfaces import IWidgets
from z3c.formui import layout
from z3c.formjs import jsaction, jsevent, jsvalidator, interfaces
+ValidatorJSViewlet = JavaScriptViewlet('validator.js')
+ValidatorCSSViewlet = CSSViewlet('validator.css')
class IFields(zope.interface.Interface):
zip = zope.schema.Int(
Modified: z3c.formjsdemo/trunk/src/z3c/formjsdemo/validator/configure.zcml
===================================================================
--- z3c.formjsdemo/trunk/src/z3c/formjsdemo/validator/configure.zcml 2007-07-08 07:52:06 UTC (rev 77606)
+++ z3c.formjsdemo/trunk/src/z3c/formjsdemo/validator/configure.zcml 2007-07-08 07:53:54 UTC (rev 77607)
@@ -1,5 +1,6 @@
<configure
xmlns="http://namespaces.zope.org/zope"
+ xmlns:browser="http://namespaces.zope.org/browser"
xmlns:z3c="http://namespaces.zope.org/z3c"
i18n_domain="z3c.formjsdemo">
@@ -11,4 +12,36 @@
permission="zope.Public"
/>
+ <!-- Resources -->
+
+ <browser:zrt-resource
+ name="validator.js"
+ file="validator.js"
+ layer="z3c.formjsdemo.layer.IDemoBrowserLayer"
+ />
+
+ <browser:viewlet
+ name="validator.js"
+ view=".browser.ValidatorForm"
+ manager="z3c.formjsdemo.skin.IJavaScript"
+ class=".browser.ValidatorJSViewlet"
+ permission="zope.Public"
+ layer="z3c.formjsdemo.layer.IDemoBrowserLayer"
+ />
+
+ <browser:zrt-resource
+ name="validator.css"
+ file="validator.css"
+ layer="z3c.formjsdemo.layer.IDemoBrowserLayer"
+ />
+
+ <browser:viewlet
+ name="validator.css"
+ view=".browser.ValidatorForm"
+ manager="z3c.formjsdemo.skin.ICSS"
+ class=".browser.ValidatorCSSViewlet"
+ permission="zope.Public"
+ layer="z3c.formjsdemo.layer.IDemoBrowserLayer"
+ />
+
</configure>
Added: z3c.formjsdemo/trunk/src/z3c/formjsdemo/validator/validator.css
===================================================================
--- z3c.formjsdemo/trunk/src/z3c/formjsdemo/validator/validator.css (rev 0)
+++ z3c.formjsdemo/trunk/src/z3c/formjsdemo/validator/validator.css 2007-07-08 07:53:54 UTC (rev 77607)
@@ -0,0 +1,7 @@
+input.invalid {
+ border: 1px solid red;
+}
+
+input.valid {
+ border: 1px solid green;
+}
Property changes on: z3c.formjsdemo/trunk/src/z3c/formjsdemo/validator/validator.css
___________________________________________________________________
Name: svn:eol-style
+ native
Added: z3c.formjsdemo/trunk/src/z3c/formjsdemo/validator/validator.js
===================================================================
--- z3c.formjsdemo/trunk/src/z3c/formjsdemo/validator/validator.js (rev 0)
+++ z3c.formjsdemo/trunk/src/z3c/formjsdemo/validator/validator.js 2007-07-08 07:53:54 UTC (rev 77607)
@@ -0,0 +1,17 @@
+function applyErrorMessage(widgetId, msg) {
+ element = $('#' + widgetId + '-row div.error');
+ if (element) {
+ element.remove();
+ }
+ $('#' + widgetId + '-row').append(
+ '<div class="error">' + msg+ '</div>');
+
+ if (msg != '') {
+ $('#' + widgetId).removeClass('valid');
+ $('#' + widgetId).addClass('invalid');
+ }
+ else {
+ $('#' + widgetId).removeClass('invalid');
+ $('#' + widgetId).addClass('valid');
+ }
+}
More information about the Checkins
mailing list