/** * Действие для редактирования данных игрока * * @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'); }
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'); }