Exemple #1
0
 public function editAction()
 {
     if ($this->isAjax()) {
         $data = $this->request->getPost();
         if (empty($data)) {
             $this->pageError('param');
         }
         $modelForm = new RoleForm('edit');
         if ($result = $modelForm->validate($data)) {
             if ($modelForm->edit()) {
                 $this->success('操作成功');
             } else {
                 $this->error('操作失败');
             }
         }
         $this->error($result);
     }
     $rid = $this->dispatcher->getParams()[0];
     if (empty($rid)) {
         $this->pageError('param');
     }
     $role = Role::findById($rid);
     $form = new RoleForm('edit', $operator);
     $this->view->setVars(['page' => ['title' => '编辑角色'], 'formparams' => ['event' => 'edit', 'action' => \Func\url('/role/edit')], 'data' => $role]);
     $this->view->pick('role/add');
 }
Exemple #2
0
 /**
  * Saves new or update role. Echoes error/success message
  */
 public function executeSave(sfWebRequest $request)
 {
     if (!$this->getUser()->hasCredential(array('Administrator'), false)) {
         $this->getUser()->setFlash("warning", 'You don\'t have permission to access this url ' . $request->getReferer());
         $this->redirect('dashboard/index');
     }
     $id = $request->getParameter('id');
     if ($id) {
         $role = RolePeer::retrieveByPK($id);
         if (!$role instanceof Role) {
             return $this->renderText('<span style="color:red;">Role not found or is removed!</span>');
         }
         $form = new RoleForm($role);
     } else {
         $form = new RoleForm();
     }
     unset($form['_csrf_token']);
     $form->bind($request->getPostParameters());
     if ($form->isValid()) {
         $form->save();
         return $this->renderText('Role has been successfully saved!');
     } else {
         # FIXME display other field errors
         echo 'e1';
         # has error
         echo '<span style="color:red;">' . $form['title']->getError()->getMessage() . '</span>';
     }
     return sfView::NONE;
 }
 public function indexAction()
 {
     $form = new RoleForm();
     $form->addAttributesForm($this->view->baseUrl . "/cadastre/role/save", "role_cadastre_form");
     $form->createToolbar(true, true, true, false, false, false, false, false, false, false, false, false, true);
     $form->addElementsRole();
     $form->addElementsPCR();
     $form->addElementsRestrictionDepartment();
     $form->addElementsForm();
     $this->view->role = $form;
 }
Exemple #4
0
 public function executeCreate(sfWebRequest $request)
 {
     $this->forward404Unless($request->isXmlHttpRequest());
     $this->forward404Unless($request->isMethod(sfRequest::POST) || $request->isMethod(sfRequest::PUT));
     $role = new Role();
     $role->decision_id = $request->getParameter('decision_id');
     $form = new RoleForm($role);
     $form->bind($request->getParameter($form->getName()), $request->getFiles($form->getName()));
     if ($form->isValid()) {
         $form->save();
         // Create log
         $log = new Log();
         $log->injectDataAndPersist($role, $this->getUser()->getGuardUser(), array('action' => 'new'));
         $matrix = json_decode($request->getParameter('matrix'), true);
         $role = $this->plannedMeasurementSaveNew($role, $matrix);
         $role->refresh(true);
         return $this->renderText(json_encode($role->getRowData()));
     } else {
         return $this->renderPartial('form', array('form' => $form, 'type' => 'new'));
     }
 }