Exemple #1
0
 public function post_create()
 {
     $this->data['section_bar_active'] = __('groups::lang.New Group')->get(ADM_LANG);
     $messages = array('unique_name_slug' => __('groups::lang.Name or Short name already taken')->get(ADM_LANG));
     Validator::register('unique_name_slug', function ($attribute, $value, $parameters) {
         $group_name = Groups\Model\Group::where('name', '=', Input::get('name'))->or_where('slug', '=', Input::get('slug'))->first();
         if (!isset($group_name) or empty($group_name)) {
             return true;
         }
         return false;
     });
     $this->validation_rules = array('name' => 'required|min:4|max:30|unique_name_slug', 'slug' => 'required|min:4|max:30|alpha_dash');
     $validation = Validator::make(Input::all(), $this->validation_rules, $messages)->speaks(ADM_LANG);
     $this->data['errors'] = $validation->errors;
     if ($validation->passes()) {
         $this->data['message'] = __('groups::lang.Group was successfully created')->get(ADM_LANG);
         $this->data['message_type'] = 'success';
         $group = new Groups\Model\Group();
         $group->name = Input::get('name');
         $group->slug = Input::get('slug');
         $group->description = Input::get('description');
         $group->save();
         Event::fire('mwi.group_created', array($group));
         return Redirect::to(ADM_URI . '/' . 'groups')->with($this->data);
     } else {
         $this->data['errors'] = $validation->errors;
     }
     return $this->theme->render('groups::backend.new', $this->data);
 }