/** * Действие для создания игрока */ public function action_create() { if (\Input::method() == 'POST') { $val = \Model_Player::validate('create'); if ($val->run()) { // Валидация для фото $config = array('path' => DOCROOT . 'assets/img/players', '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) { $player = \Model_Player::forge(array('player_name' => \Input::post('player_name'), 'is_core_player' => \Input::post('is_core_player', 0), 'position_id' => \Input::post('position_id'), 'birthdate' => strtotime(\Input::post('birthdate')), '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); $player->image_uri = $files[0]['saved_as']; } // Пишем инфу в БД if ($player and $player->save()) { \Session::set_flash('success', 'Игрок создан.'); \Response::redirect_back('admin/players'); } else { \Session::set_flash('error', 'Could not save Player.'); } } } else { \Session::set_flash('error', $val->error()); } // Если есть ошибки при сохранении файла foreach (\Upload::get_errors() as $file) { if (isset($file['errors'][0]) and $file['errors'][0]['error'] != 4) { \Session::set_flash('error', $file['errors'][0]['message']); } } } $this->template->content = \View::forge('players/create'); }