Beispiel #1
0
 /**
  * Действие для редактирования данных игрока
  * 
  * @param int $id
  */
 public function action_edit($id = null)
 {
     is_null($id) and \Response::redirect_back('admin/players');
     if (!($staff = \Model_Staff::find($id))) {
         \Session::set_flash('error', 'Персонал не найден.');
         \Response::redirect_back('staff/players');
     }
     $val = \Model_Staff::validate('edit');
     if ($val->run()) {
         // Валидация для фото
         $config = array('path' => DOCROOT . 'assets/img/staff', 'randomize' => true, 'ext_whitelist' => array('img', 'jpg', 'jpeg', 'gif', 'png'));
         \Upload::process($config);
         if (\Upload::is_valid() or \Upload::get_errors()[0]['errors'][0]['error'] == 4) {
             $staff->staff_name = \Input::post('staff_name');
             $staff->birthdate = strtotime(\Input::post('birthdate'));
             $staff->data = \Input::post('data');
             if (!\Upload::get_errors()) {
                 // Сохраняем файл на диск
                 \Upload::save();
                 // Меняем размер изображения на 350px * 466px
                 $files = \Upload::get_files();
                 $path = $files[0]['saved_to'] . $files[0]['saved_as'];
                 \Image::load($path)->resize(350, 466, true)->save($path);
                 // Удаляем старый файл
                 if ($staff->image_uri) {
                     unlink(DOCROOT . 'assets/img/staff/' . $staff->image_uri);
                 }
                 $staff->image_uri = $files[0]['saved_as'];
             }
             if ($staff->save()) {
                 \Session::set_flash('success', 'Персонад обновлён.');
                 \Response::redirect('admin/staff');
             } else {
                 Session::set_flash('error', 'Could not update Staff #' . $id);
             }
         }
     } else {
         if (\Input::method() == 'POST') {
             $staff->staff_name = $val->validated('staff_name');
             $staff->birthdate = strtotime($val->validated('birthdate'));
             $staff->data = $val->validated('data');
             \Session::set_flash('error', $val->error());
         }
         $this->template->set_global('staff', $staff, false);
     }
     $this->template->content = \View::forge('staff/edit');
 }
Beispiel #2
0
 public function action_edit($id = null)
 {
     is_null($id) and Response::redirect('Staff');
     $staff = Model_Staff::find($id);
     $val = Model_Staff::validate('edit');
     if ($val->run()) {
         $staff->first_name = Input::post('first_name');
         $staff->last_name = Input::post('last_name');
         $staff->intranet_id = Input::post('intranet_id');
         $staff->dialler_id = Input::post('dialler_id');
         $staff->debtsolv_id = Input::post('debtsolv_id');
         $staff->network_id = Input::post('network_id');
         $staff->center_id = Input::post('center_id');
         $staff->department_id = Input::post('department_id');
         $staff->active = Input::post('active');
         if ($staff->save()) {
             Session::set_flash('success', 'Updated staff #' . $id);
             Response::redirect('staff');
         } else {
             Session::set_flash('error', 'Could not update staff #' . $id);
         }
     } else {
         if (Input::method() == 'POST') {
             $staff->first_name = $val->validated('first_name');
             $staff->last_name = $val->validated('last_name');
             $staff->intranet_id = $val->validated('intranet_id');
             $staff->dialler_id = $val->validated('dialler_id');
             $staff->debtsolv_id = $val->validated('debtsolv_id');
             $staff->network_id = $val->validated('network_id');
             $staff->center_id = $val->validated('center_id');
             $staff->department_id = $val->validated('department_id');
             $staff->active = $val->validated('active');
             Session::set_flash('error', $val->error());
         }
         $this->template->set_global('staff', $staff, false);
     }
     $departments = Model_Staff_Department::find('all');
     $centers = Model_Call_Center::find('all');
     $this->template->set_global('departments', $departments, false);
     $this->template->set_global('centers', $centers, false);
     $this->template->title = "Staffs";
     $this->template->content = View::forge('staff/edit');
 }