[Checkins] SVN: Products.CMFDefault/trunk/Products/CMFDefault/browser/membership/members.p Action validation now works.

Charlie Clark charlie at begeistert.org
Sat Sep 25 14:31:00 EDT 2010


Log message for revision 116935:
  Action validation now works.

Changed:
  U   Products.CMFDefault/trunk/Products/CMFDefault/browser/membership/members.pt
  U   Products.CMFDefault/trunk/Products/CMFDefault/browser/membership/members.py

-=-
Modified: Products.CMFDefault/trunk/Products/CMFDefault/browser/membership/members.pt
===================================================================
--- Products.CMFDefault/trunk/Products/CMFDefault/browser/membership/members.pt	2010-09-25 15:51:45 UTC (rev 116934)
+++ Products.CMFDefault/trunk/Products/CMFDefault/browser/membership/members.pt	2010-09-25 18:30:59 UTC (rev 116935)
@@ -3,18 +3,20 @@
 <body>
 
 <metal:slot metal:fill-slot="body" i18n:domain="cmf_default">
+
+<p class="errors" tal:condition="view/errors"
+                  tal:repeat="error view/errors" 
+                  tal:content="error">Error Message</p>
+
 <h1 i18n:translate="">Manage Members</h1>
 
-<p class="status"
-  tal:condition="exists: request/portal_status_message"
-  tal:content="request/portal_status_message"></p>
-
 <form action="." method="post" 
       tal:attributes="action request/ACTUAL_URL">
   
   <tal:block repeat="widget view/hidden_widgets"
              replace="structure widget/hidden" />
- <table class="BatchTable" tal:condition="view/_get_items">
+
+ <table class="BatchTable" tal:condition="view/listBatchItems">
   <thead>
    <tr class="list-header">
     <td>&nbsp;</td>
@@ -40,13 +42,15 @@
 
      </tbody>
      </table>
+  
+ <p tal:condition="not: view/listBatchItems" i18n:translate="">Currently there
+  are no members registered.</p>
+
   <div class="buttons">
     <tal:loop tal:repeat="action view/manage_actions"
      tal:replace="structure action/render" />
   </div>
-  
- <p tal:condition="not: view/_get_items" i18n:translate="">Currently there
-  are no members registered.</p>
+
   <metal:macro metal:use-macro="context/@@batch_widget/navigation" />
   <metal:macro metal:use-macro="context/@@batch_widget/pagination" />
 

Modified: Products.CMFDefault/trunk/Products/CMFDefault/browser/membership/members.py
===================================================================
--- Products.CMFDefault/trunk/Products/CMFDefault/browser/membership/members.py	2010-09-25 15:51:45 UTC (rev 116934)
+++ Products.CMFDefault/trunk/Products/CMFDefault/browser/membership/members.py	2010-09-25 18:30:59 UTC (rev 116935)
@@ -66,7 +66,6 @@
     delete_template = ViewPageTemplateFile("members_delete.pt")
     form_fields = form.FormFields()
     hidden_fields = form.FormFields(IBatchForm)
-    errors = ()
     
     manage_actions = form.Actions(
         form.Action(
@@ -77,7 +76,9 @@
         form.Action(
             name='select',
             label=_(u'Delete...'),
+            condition='members_exist',
             success='handle_select_for_deletion',
+            failure='handle_failure',
             validator=('validate_items')
                 )
             )
@@ -98,6 +99,9 @@
     def _get_items(self):
         mtool = self._getTool('portal_membership')
         return mtool.listMembers()
+        
+    def members_exist(self, action=None):
+        return len(self._getBatchObj()) > 0
 
     def _get_ids(self, data):
         """Identify objects that have been selected"""
@@ -129,7 +133,7 @@
         """Check whether any items have been selected for
         the requested action."""
         super(Manage, self).validate(action, data)
-        if data is None or data == {}:
+        if self._get_ids(data) == []:
             return [_(u"Please select one or more items first.")]
         else:
             return []



More information about the checkins mailing list