/** * Get note list by member * * @access public * @param int $member_id * @return Response (html) * @throws Exception in Controller_Base::controller_common_api * @see Controller_Base::controller_common_api */ public function get_member($member_id = null) { $this->api_accept_formats = 'html'; $this->controller_common_api(function () use($member_id) { $member_id = (int) $member_id; list($is_mypage, $member) = $member_id ? $this->check_auth_and_is_mypage($member_id, true) : array(null, false); list($limit, $page) = $this->common_get_pager_list_params(); $is_draft = $is_mypage ? \Util_string::cast_bool_int(\Input::get('is_draft', 0)) : 0; $data = Site_Model::get_list($limit, $page, \Auth::check() ? $this->u->id : 0, $member, $is_mypage, $is_draft); $this->set_response_body_api($data, '_parts/list'); }); }
/** * Note member * * @access public * @params integer * @return Response */ public function action_member($member_id = null) { $member_id = (int) $member_id; list($is_mypage, $member) = $this->check_auth_and_is_mypage($member_id); $is_draft = $is_mypage ? \Util_string::cast_bool_int(\Input::get('is_draft', 0)) : 0; list($limit, $page) = $this->common_get_pager_list_params(); $data = Site_Model::get_list($limit, $page, \Auth::check() ? $this->u->id : 0, $member, $is_mypage, $is_draft); $this->set_title_and_breadcrumbs(sprintf('%sの%s', $is_mypage ? '自分' : $member->name . 'さん', term('note', 'site.list')), null, $member); $this->template->subtitle = $is_mypage ? \View::forge('_parts/member_subtitle') : ''; $this->template->content = \View::forge('member', $data); $this->template->post_footer = \View::forge('_parts/list_footer'); }
private function change_publish_status($id, $target_status) { $target_status = \Util_string::cast_bool_int($target_status); \Util_security::check_method('POST'); \Util_security::check_csrf(); $news = \News\Model_News::check_authority($id); $msg_status = $target_status ? term('form.publish') : term('form.unpublish') . 'に'; $redirect_uri = \Site_Util::get_redirect_uri('admin/news/' . $id); if ($news->is_published == $target_status) { \Session::set_flash('error', sprintf('既に%sされています。', $msg_status)); \Response::redirect($redirect_uri); } try { \DB::start_transaction(); $news->is_published = $target_status; if ($news->is_published && !isset_datatime($news->published_at)) { $news->published_at = date('Y-m-d H:i:s'); } $news->save(); //// timeline 投稿 //if (is_enabled('timeline')) \Timeline\Site_Model::save_timeline($this->u->id, $note->public_flag, 'note', $note->id); \DB::commit_transaction(); \Session::set_flash('message', sprintf('%sを%sしました。', term('news.view'), $msg_status)); } catch (\FuelException $e) { if (\DB::in_transaction()) { \DB::rollback_transaction(); } \Session::set_flash('error', $e->getMessage()); } \Response::redirect($redirect_uri); }