Author: david
Date: Tue Sep 15 12:07:34 2009
New Revision: 3314

Log:
Add logic to add new permissions for aclGroup/edit.

Modified:
   trunk/plugins/qbAclPlugin/modules/aclGroup/actions/editAction.class.php
   trunk/plugins/qbAclPlugin/modules/aclGroup/templates/editSuccess.php

Modified: 
trunk/plugins/qbAclPlugin/modules/aclGroup/actions/editAction.class.php
==============================================================================
--- trunk/plugins/qbAclPlugin/modules/aclGroup/actions/editAction.class.php     
Tue Sep 15 12:01:37 2009        (r3313)
+++ trunk/plugins/qbAclPlugin/modules/aclGroup/actions/editAction.class.php     
Tue Sep 15 12:07:34 2009        (r3314)
@@ -58,7 +58,7 @@
     $this->form = new sfForm;
     $this->form->getValidatorSchema()->setOption('allow_extra_fields', true);
 
-    $this->permissions = $this->group->getAclPermissions();
+    $this->permissions = 
$this->group->getAclPermissions()->orderBy('action_id');
 
     // HACK: Use static::$NAMES in PHP 5.3,
     // http://php.net/oop5.late-static-bindings
@@ -102,11 +102,27 @@
   {
     foreach ($this->request->getParameter('permission') as $key => $formData)
     {
-      $aclPermission = QubitAclPermission::getById($key);
-      if (null === $aclPermission)
+      if ('new' == $key)
       {
-        // If no valid aclPermission object, skip this row
-        continue;
+        if (0 < intval($formData['actionId']))
+        {
+          $aclPermission = new QubitAclPermission;
+          $aclPermission->groupId = $this->group->id;
+          $aclPermission->actionId = $formData['actionId'];
+        }
+        else
+        {
+          continue;
+        }
+      }
+      else
+      {
+        $aclPermission = QubitAclPermission::getById($key);
+        if (null === $aclPermission)
+        {
+          // If no valid aclPermission object, skip this row
+          continue;
+        }
       }
 
       $aclPermission->grantDeny = $formData['grantDeny'];

Modified: trunk/plugins/qbAclPlugin/modules/aclGroup/templates/editSuccess.php
==============================================================================
--- trunk/plugins/qbAclPlugin/modules/aclGroup/templates/editSuccess.php        
Tue Sep 15 12:01:37 2009        (r3313)
+++ trunk/plugins/qbAclPlugin/modules/aclGroup/templates/editSuccess.php        
Tue Sep 15 12:07:34 2009        (r3314)
@@ -88,7 +88,10 @@
     </thead>
     <tbody>
       <tr>
-        <td><?php echo object_select_tag('', '', array('name' => 'actionId', 
'related_class' => 'QubitAclAction')) ?></td>
+        <td>
+          <?php echo object_select_tag('', '',
+            array('name' => 'permission[new][actionId]', 'id' => 
'permission_new_actionId', 'related_class' => 'QubitAclAction', 'include_blank' 
=> true)) ?>
+        </td>
         <td>
           <ul class="radio_list">
             <li><?php echo radiobutton_tag('permission[new][grantDeny]', '1', 
true) ?>&nbsp;<label><?php echo __('grant')?></label></li>

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Qubit Toolkit Commits" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.ca/group/qubit-commits?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to