[KSS-checkins] r42252 - kukit/kss.demo/trunk/kss/demo/browser/parameterfunction

reebalazs at codespeak.net reebalazs at codespeak.net
Mon Apr 23 10:57:38 CEST 2007


Author: reebalazs
Date: Mon Apr 23 10:57:38 2007
New Revision: 42252

Added:
   kukit/kss.demo/trunk/kss/demo/browser/parameterfunction/parameterfunction_view.py
Modified:
   kukit/kss.demo/trunk/kss/demo/browser/parameterfunction/configure.zcml
   kukit/kss.demo/trunk/kss/demo/browser/parameterfunction/forms.kss
   kukit/kss.demo/trunk/kss/demo/browser/parameterfunction/forms.pt
Log:
Add demo for the new action parameter kssSubmitForm.

Missing: the selenium tests need to be added too.

Modified: kukit/kss.demo/trunk/kss/demo/browser/parameterfunction/configure.zcml
==============================================================================
--- kukit/kss.demo/trunk/kss/demo/browser/parameterfunction/configure.zcml	(original)
+++ kukit/kss.demo/trunk/kss/demo/browser/parameterfunction/configure.zcml	Mon Apr 23 10:57:38 2007
@@ -16,5 +16,21 @@
     name="forms.kss"
   />
 
+  <browser:page
+      for="kss.demo.interfaces.ISimpleContent"
+      class=".parameterfunction_view.ParameterFunctionView"
+      attribute="submitFullForm"
+      name="submitFullForm"
+      permission="zope.View"
+      />
+
+  <browser:page
+      for="kss.demo.interfaces.ISimpleContent"
+      class=".parameterfunction_view.ParameterFunctionView"
+      attribute="submitFullFormIntoRequest"
+      name="submitFullFormIntoRequest"
+      permission="zope.View"
+      />
+
 </configure>
 

Modified: kukit/kss.demo/trunk/kss/demo/browser/parameterfunction/forms.kss
==============================================================================
--- kukit/kss.demo/trunk/kss/demo/browser/parameterfunction/forms.kss	(original)
+++ kukit/kss.demo/trunk/kss/demo/browser/parameterfunction/forms.kss	Mon Apr 23 10:57:38 2007
@@ -47,3 +47,28 @@
     executeCommand-html: currentFormVar(radio-by-name);
 } 
 
+#fullform-simple:click {
+    action-server: submitFullForm;
+    submitFullForm-form: currentForm();
+}
+
+#fullform-simplenamed:click {
+    action-server: submitFullForm;
+    submitFullForm-form: form(full1);
+}
+
+#fullform-current:click {
+    action-server:                             submitFullFormIntoRequest;
+    submitFullFormIntoRequest-kssSubmitForm:   currentForm();
+}
+
+#fullform-named:click {
+    action-server:                             submitFullFormIntoRequest;
+    submitFullFormIntoRequest-kssSubmitForm:   form(full2);
+}
+
+#fullform-namedbystring:click {
+    action-server:                             submitFullFormIntoRequest;
+    submitFullFormIntoRequest-kssSubmitForm:   'full2';
+}
+

Modified: kukit/kss.demo/trunk/kss/demo/browser/parameterfunction/forms.pt
==============================================================================
--- kukit/kss.demo/trunk/kss/demo/browser/parameterfunction/forms.pt	(original)
+++ kukit/kss.demo/trunk/kss/demo/browser/parameterfunction/forms.pt	Mon Apr 23 10:57:38 2007
@@ -99,5 +99,82 @@
                checked="checked" />
       </fieldset>
     </form>
+    <h3>
+      <code>form(full1)</code> with simple field names, named form
+    </h3>
+    <div class="help">
+        Click the button.
+    </div>
+    <a class="button click cursorPointer" id="fullform-simplenamed">Click me !</a>
+    <form name="full1">
+      <fieldset>
+        <h3>
+          <code>currentForm()</code> with simple field names
+        </h3>
+        <div class="help">
+            Click the button.
+        </div>
+        <a class="button click cursorPointer" id="fullform-simple">Click me !</a>
+        <input class="click cursorPointer" 
+               type="text" name="value1" value="first value" />
+        <input class="click cursorPointer" 
+               type="text" name="value2" value="second value"/>
+      </fieldset>
+    </form>
+    <h3>
+      <code>xxx-kssSubmitForm: form(full2)</code> with complex field names, named form
+    </h3>
+    <div class="help">
+        Click the button.
+    </div>
+    <a class="button click cursorPointer" id="fullform-named">Click me !</a>
+    <h3>
+      <code>xxx-kssSubmitForm: 'field2'</code> with complex field names, named form, given as string
+    </h3>
+    <div class="help">
+        Click the button.
+    </div>
+    <a class="button click cursorPointer" id="fullform-namedbystring">Click me !</a>
+    <form name="full2">
+      <h3>
+        <code>xxx-kssSubmitForm: currentForm()</code> with complex field names
+      </h3>
+      <div class="help">
+          Click the button.
+      </div>
+      <a class="button click cursorPointer" id="fullform-current">Click me !</a>
+      <fieldset>
+        value1:
+        <input class="click cursorPointer" 
+               type="text" name="value1" value="value1" />
+        value2:
+        <input class="click cursorPointer" 
+               type="text" name="value2" value="value2"/>
+        <br>
+        listval:
+        <input class="click cursorPointer" 
+               type="text" name="listval:list" value="listval1"/>
+        <input class="click cursorPointer" 
+               type="text" name="listval:list" value="listval2"/>
+        <br>
+        recordval:
+        <input class="click cursorPointer" 
+               type="text" name="recordval.a:record" value="recordval_a"/>
+        <input class="click cursorPointer" 
+               type="text" name="recordval.b:record" value="recordval_b"/>
+        <br>
+        recordsval:
+        <input class="click cursorPointer" 
+               type="text" name="recordsval.a:records" value="recordval_a_1"/>
+        <input class="click cursorPointer" 
+               type="text" name="recordsval.b:records" value="recordval_b_1"/>
+        <input class="click cursorPointer" 
+               type="text" name="recordsval.a:records" value="recordval_a_2"/>
+        <input class="click cursorPointer" 
+               type="text" name="recordsval.b:records" value="recordval_b_2"/>
+      </fieldset>
+    </form>
+
+
   </body>
 </html>

Added: kukit/kss.demo/trunk/kss/demo/browser/parameterfunction/parameterfunction_view.py
==============================================================================
--- (empty file)
+++ kukit/kss.demo/trunk/kss/demo/browser/parameterfunction/parameterfunction_view.py	Mon Apr 23 10:57:38 2007
@@ -0,0 +1,17 @@
+
+from kss.core import KSSView, kssaction
+
+class ParameterFunctionView(KSSView):
+
+    @kssaction
+    def submitFullForm(self, form):
+        assert hasattr(form, 'keys'), 'Form data is expected to be a dict-like object.'
+        # marshall back the repr of this dict.
+        ksscore = self.getCommandSet('core')
+        ksscore.replaceInnerHTML('#target', repr(form))
+
+    @kssaction
+    def submitFullFormIntoRequest(self):
+        # marshall back the repr of this dict.
+        ksscore = self.getCommandSet('core')
+        ksscore.replaceInnerHTML('#target', repr(self.request.form))


More information about the Kukit-checkins mailing list