Пример #1
0
 public function action_create()
 {
     $form = $this->setup_form();
     if (\Input::method() == 'POST') {
         if ($form->validation()->run() == true) {
             $fields = $form->validated();
             try {
                 $group = new Model_Group(array('name' => $fields['name'], 'level' => $fields['level'], 'is_admin' => $fields['is_admin']));
                 if ($group and $group->save()) {
                     \Session::set_flash('success', 'New group has been created successfully.');
                     \Response::redirect('groups');
                 } else {
                     throw new \FuelException('Could not create new group [' . mysql_errno() . '] ' . mysql_error());
                 }
             } catch (\FuelException $e) {
                 $errors = $e->getMessage();
             }
         } else {
             $this->template->set_global('errors', $form->error(), false);
         }
     }
     $this->template->set('content', $form->build(), false);
 }
Пример #2
0
 public function actionMove($params)
 {
     $view = $this->ajaxView('group');
     $view->state = "failed";
     if ($params["id"]) {
         $group = new Model_Group($this->getStorage(), $params["id"]);
         $view->id = $group->getId();
         $view->parent_id = (int) $params['targid'];
         if ($view->parent_id != 0) {
             $targGroup = new Model_Group($this->getStorage(), $params["targid"]);
             $view->parent_id = $targGroup->getId();
             if (!$view->parent_id) {
                 $this->error = "Target group not found.";
                 return $view;
             }
         }
         if ($view->id) {
             if ($view->id != $view->parent_id) {
                 $group->parent = $view->parent_id;
                 if ($errors = $group->validate()) {
                     $view->error = "validation failed";
                     $view->errors = $errors;
                 } else {
                     $view->state = "moved";
                     try {
                         $group->save();
                     } catch (Exception $e) {
                         $view->state = "failed";
                         $view->error = $e->getMessage();
                     }
                 }
             } else {
                 $view->state = "notmoved";
                 $view->error = "Group can't be root of itself.";
             }
         } else {
             $view->error = "Group(s) not found.";
         }
     } else {
         $view->error = "Group ID(s) are not set.";
     }
     return $view;
 }