public static function force_save_album($member_id, $values, Model_Album $album = null) { // album save if (!$album) { $album = Model_Album::forge(); } $album->name = $values['name']; $album->body = $values['body']; $album->public_flag = $values['public_flag']; $album->member_id = $member_id; $album->save(); if (\Module::loaded('timeline')) { \Timeline\Site_Model::save_timeline($member_id, $values['public_flag'], 'album', $album->id, $album->updated_at); } return $album; }
private static function force_save_album($member_id, $values, $upload_file_path, Model_Album $album = null) { // album save if (!$album) { $album = Model_Album::forge(); } $album->name = $values['name']; $album->body = $values['body']; $album->public_flag = $values['public_flag']; $album->member_id = $member_id; $album->save(); // album_image save $member = \Model_Member::check_authority($member_id); list($album_image, $file) = Model_AlbumImage::save_with_relations($album->id, $member, $values['public_flag'], $upload_file_path, 'album'); return array($album, $album_image, $file); }
/** * Album create * * @access public * @return Response */ public function action_create() { $album = Model_Album::forge(); $val = \Validation::forge(); $val->add_model($album); $files = array(); if (\Input::method() == 'POST') { \Util_security::check_csrf(); $file_tmps = array(); $moved_files = array(); try { $file_tmps = \Site_FileTmp::get_file_tmps_uploaded($this->u->id, true); \Site_FileTmp::check_uploaded_under_accepted_filesize($file_tmps, $this->u->filesize_total, \Site_Upload::get_accepted_filesize()); if (!$val->run()) { throw new \FuelException($val->show_errors()); } $post = $val->validated(); \DB::start_transaction(); list($album, $moved_files) = Model_Album::save_with_relations($post, $this->u->id, $album, $file_tmps); \DB::commit_transaction(); // thumbnail 作成 & tmp_file thumbnail 削除 \Site_FileTmp::make_and_remove_thumbnails($moved_files); $message = sprintf('%sを作成しました。', term('album')); \Session::set_flash('message', $message); $redirect_uri = 'album/detail/' . $album->id; if (FBD_FACEBOOK_APP_ID && conf('service.facebook.shareDialog.album.isEnabled') && conf('service.facebook.shareDialog.album.autoPopupAfterCreated')) { $redirect_uri .= '?created=1'; } \Response::redirect($redirect_uri); } catch (\FuelException $e) { if (\DB::in_transaction()) { \DB::rollback_transaction(); } if ($moved_files) { \Site_FileTmp::move_files_to_tmp_dir($moved_files); } $files = \Site_FileTmp::get_file_objects($file_tmps, $this->u->id); \Session::set_flash('error', $e->getMessage()); } } $this->set_title_and_breadcrumbs(sprintf('%sを%s', term('album'), term('form.do_create')), null, $this->u, 'album'); $this->template->post_header = \View::forge('filetmp/_parts/upload_header'); $this->template->post_footer = \View::forge('_parts/create_footer'); $this->template->content = \View::forge('_parts/form', array('val' => $val, 'files' => $files)); }
private static function force_save_album($member_id, $values, Model_Album $album = null) { // album save if (!$album) { $album = Model_Album::forge(); } $album->name = $values['name']; $album->body = $values['body']; $album->public_flag = $values['public_flag']; $album->member_id = $member_id; $album->save(); if (\Module::loaded('timeline')) { \Timeline\Site_Model::save_timeline($member_id, $values['public_flag'], 'album_image', $album->id, $album->updated_at); } //list($album, $moved_files, $is_changed) = Model_Album::save_with_relations($values, $member_id, $album); //// album_image save //$member = \Model_Member::check_authority($member_id); //list($album_image, $file) = Model_AlbumImage::save_with_relations($album->id, $member, $values['public_flag'], $upload_file_path, 'album'); return $album; }