/** * Detail action. * * @access public * @params integer * @return Response */ public function action_detail($id = null) { $id = (int) $id; $site_image = \Model_SiteImage::check_authority($id); $data = array('site_image' => $site_image); // 前後の id の取得 $ids = \Model_SiteImage::get_col_array('id', array('order_by' => array('id' => 'desc'))); list($data['before_id'], $data['after_id']) = \Util_Array::get_neighborings($id, $ids); $this->set_title_and_breadcrumbs(term('site.image', 'site.detail'), array('admin/content' => term('site.content', 'site.management'), 'admin/content/image' => term('site.image', 'site.management'))); $this->template->layout = 'wide'; $this->template->subtitle = \View::forge('content/image/_parts/detail_subtitle', array('site_image' => $site_image)); $this->template->post_footer = \View::forge('_parts/load_masonry'); $this->template->content = \View::forge('content/image/detail', $data); }
/** * @dataProvider get_neighborings_provider */ public function test_get_neighborings($item = null, $list = null, $expected = null) { $test = Util_Array::get_neighborings($item, $list); $this->assertEquals($expected, $test); }
private function get_before_after_ids(Model_AlbumImage $album_image) { $ids = Model_AlbumImage::get_col_array('id', $this->get_query_params($album_image)); return \Util_Array::get_neighborings($album_image->id, $ids); }