[Checkins] SVN: z3c.formjs/trunk/src/z3c/formjs/ merging from my sandbox. I will no longer use my sandbox anymore.

Paul Carduner paulcarduner at gmail.com
Thu Jul 5 11:45:22 EDT 2007


Log message for revision 77469:
  merging from my sandbox.  I will no longer use my sandbox anymore.

Changed:
  U   z3c.formjs/trunk/src/z3c/formjs/browser/button_input.pt
  U   z3c.formjs/trunk/src/z3c/formjs/configure.zcml
  U   z3c.formjs/trunk/src/z3c/formjs/jsbutton.py
  U   z3c.formjs/trunk/src/z3c/formjs/jsbutton.txt
  U   z3c.formjs/trunk/src/z3c/formjs/tests.py

-=-
Modified: z3c.formjs/trunk/src/z3c/formjs/browser/button_input.pt
===================================================================
--- z3c.formjs/trunk/src/z3c/formjs/browser/button_input.pt	2007-07-05 15:36:52 UTC (rev 77468)
+++ z3c.formjs/trunk/src/z3c/formjs/browser/button_input.pt	2007-07-05 15:45:22 UTC (rev 77469)
@@ -5,7 +5,4 @@
                        class view/css;
                        value view/value;
                        accesskey view/accesskey;
-                       " />
-<script type="text/javascript"
-	tal:content="view/eventHandler">
-</script>
\ No newline at end of file
+                       " />
\ No newline at end of file

Modified: z3c.formjs/trunk/src/z3c/formjs/configure.zcml
===================================================================
--- z3c.formjs/trunk/src/z3c/formjs/configure.zcml	2007-07-05 15:36:52 UTC (rev 77468)
+++ z3c.formjs/trunk/src/z3c/formjs/configure.zcml	2007-07-05 15:45:22 UTC (rev 77469)
@@ -1,5 +1,6 @@
 <configure
     xmlns="http://namespaces.zope.org/zope"
+    xmlns:browser="http://namespaces.zope.org/zope"
     i18n_domain="z3c.formjs">
 
   <!-- Action Managers and Handlers -->
@@ -20,6 +21,34 @@
       factory=".jsevent.JSFormEventsRenderer"
       />
 
+  <!-- JavaScript Validation -->
+  <adapter
+      factory=".jsvalidator.JQueryMessageValidationRenderer"
+      />
+
+  <browser:view
+      for=".interfaces.IAJAXValidator"
+      type="zope.publisher.interfaces.http.IHTTPRequest"
+      provides="zope.publisher.interfaces.http.IHTTPPublisher"
+      factory="z3c.traverser.traverser.PluggableTraverser"
+      permission="zope.Public"
+      />
+
+  <browser:view
+      for=".interfaces.IAJAXValidator"
+      type="zope.publisher.interfaces.browser.IBrowserRequest"
+      provides="zope.publisher.interfaces.browser.IBrowserPublisher"
+      factory="z3c.traverser.browser.PluggableBrowserTraverser"
+      permission="zope.Public"
+      />
+
+  <subscriber
+      for=".interfaces.IAJAXValidator
+	   zope.publisher.interfaces.IPublisherRequest"
+      provides="z3c.traverser.interfaces.ITraverserPlugin"
+      factory=".jsvalidator.ValidateTraverser"
+      />
+
   <!-- Widget Factory -->
   <adapter
       factory=".jswidget.JSEventsWidget"

Modified: z3c.formjs/trunk/src/z3c/formjs/jsbutton.py
===================================================================
--- z3c.formjs/trunk/src/z3c/formjs/jsbutton.py	2007-07-05 15:36:52 UTC (rev 77468)
+++ z3c.formjs/trunk/src/z3c/formjs/jsbutton.py	2007-07-05 15:45:22 UTC (rev 77469)
@@ -77,12 +77,3 @@
     @property
     def id(self):
         return self.name.replace('.', '-')
-
-    def eventHandler(self):
-        actions = self.__parent__
-        handler = actions.form.jshandlers.getHandler(self.field)
-        if handler is None:
-            return
-        renderer = zope.component.getMultiAdapter((handler.event, self.request),
-                                                  interfaces.IJSEventRenderer)
-        return renderer.render(handler, self.id, self.__parent__.form)

Modified: z3c.formjs/trunk/src/z3c/formjs/jsbutton.txt
===================================================================
--- z3c.formjs/trunk/src/z3c/formjs/jsbutton.txt	2007-07-05 15:36:52 UTC (rev 77468)
+++ z3c.formjs/trunk/src/z3c/formjs/jsbutton.txt	2007-07-05 15:45:22 UTC (rev 77469)
@@ -28,11 +28,9 @@
 z3c.form.  The difference comes with the actions.  We will create a
 form that provides these buttons with javascript actions.
 
-  >>> from z3c.form import button
+  >>> from z3c.form import button, form
   >>> from z3c.form import interfaces
-  >>> class Form(object):
-  ...     zope.interface.implements(
-  ...         interfaces.IButtonForm, interfaces.IHandlerForm)
+  >>> class Form(form.AddForm):
   ...     buttons = button.Buttons(IButtons)
   ...     prefix = 'form'
   ...
@@ -55,13 +53,13 @@
 that we first need a request and a form instance:
 
   >>> request = TestRequest()
-  >>> form = Form()
+  >>> addform = Form(None, request)
 
 Action managers are instantiated using the form, request, and
 context/content. A special button-action-manager implementation is avaialble
 in the ``z3c.form.button`` package:
 
-  >>> actions = button.ButtonActions(form, request, None)
+  >>> actions = button.ButtonActions(addform, request, None)
   >>> actions.update()
 
 Once the action manager is updated, the buttons should be available as
@@ -106,10 +104,19 @@
   <input type="button" id="form-buttons-apply"
          name="form.buttons.apply" class="buttonWidget"
          value="Apply" />
-  <script type="text/javascript">$("#form-buttons-apply").bind("click", function(){alert("You Clicked the Apply Button!");});</script>
 
   >>> print actions['cancel'].render()
   <input type="button" id="form-buttons-cancel"
          name="form.buttons.cancel" class="buttonWidget"
          value="Cancel" />
-  <script type="text/javascript">$("#form-buttons-cancel").bind("dblclick", function(){alert("You Double Clicked the Cancel Button!");});</script>
+
+Another way to render the events is completely separate from the
+buttons themselves.
+
+  >>> request = TestRequest()
+  >>> addform = Form(None, request)
+  >>> addform.update()
+  >>> zope.component.provideAdapter(jsevent.JSFormEventsRenderer)
+  >>> print jsinterfaces.IJSFormEventsRenderer(addform).render()
+  $("#form-buttons-apply").bind("click", function(){alert("You Clicked the Apply Button!");});
+  $("#form-buttons-cancel").bind("dblclick", function(){alert("You Double Clicked the Cancel Button!");});

Modified: z3c.formjs/trunk/src/z3c/formjs/tests.py
===================================================================
--- z3c.formjs/trunk/src/z3c/formjs/tests.py	2007-07-05 15:36:52 UTC (rev 77468)
+++ z3c.formjs/trunk/src/z3c/formjs/tests.py	2007-07-05 15:45:22 UTC (rev 77469)
@@ -16,6 +16,11 @@
             optionflags=zope.testing.doctest.NORMALIZE_WHITESPACE |
                         zope.testing.doctest.ELLIPSIS),
         zope.testing.doctest.DocFileSuite(
+            'jsvalidator.txt',
+            setUp=testing.setUp, tearDown=testing.tearDown,
+            optionflags=zope.testing.doctest.NORMALIZE_WHITESPACE |
+                        zope.testing.doctest.ELLIPSIS),
+        zope.testing.doctest.DocFileSuite(
             'jsbutton.txt',
             setUp=testing.setUp, tearDown=testing.tearDown,
             optionflags=zope.testing.doctest.NORMALIZE_WHITESPACE |



More information about the Checkins mailing list