Example #1
0
 public function executeSave(sfWebRequest $request)
 {
     $role = RolePeer::retrieveByPK($request->getParameter('id'));
     $this->forward404Unless($role);
     $perms = $request->getParameter('permissions');
     if (!is_array($perms)) {
         $perms = array();
     }
     # remove rights
     $c = new Criteria();
     $c->add(RolePermissionPeer::ROLE_ID, $role->getId());
     RolePermissionPeer::doDelete($c);
     # save new rights
     foreach ($perms as $perm) {
         $role_permission = new RolePermission();
         $role_permission->setPermissionId($perm);
         $role_permission->setRoleId($role->getId());
         $role_permission->save();
     }
     return $this->renderText('Rights for \'' . $role->getTitle() . '\' have successfully saved!');
 }