예제 #1
0
파일: api.php 프로젝트: uzura8/flockbird
 /**
  * Get list by member
  * 
  * @access  public
  * @param   int  $member_id  target 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 = array('html');
     $this->controller_common_api(function () use($member_id) {
         $member_id = \Input::get('member_id', 0) ?: $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(conf('articles.limit', 'album'), conf('articles.limit_max', 'album'));
         $data = Site_Model::get_album_images($limit, $page, get_uid(), $member, $is_mypage, null, $this->format != 'html');
         $data['liked_album_image_ids'] = conf('like.isEnabled') && \Auth::check() ? \Site_Model::get_liked_ids('album_image', $this->u->id, $data['list']) : array();
         if ($this->format == 'html') {
             if ($member) {
                 $data['member'] = $member;
             }
         } else {
             $list_array = array();
             foreach ($data['list'] as $key => $obj) {
                 $row = $obj->to_array();
                 $row['album']['member'] = \Model_Member::get_one_basic4id($obj->album->member_id);
                 $list_array[] = $row;
             }
             // json response
             $data = $list_array;
         }
         $this->set_response_body_api($data, $this->format == 'html' ? 'image/_parts/list' : null);
     });
 }
예제 #2
0
파일: image.php 프로젝트: uzura8/flockbird
 /**
  * Album image 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);
     list($limit, $page) = $this->common_get_pager_list_params(conf('articles.limit', 'album'), conf('articles.limit_max', 'album'));
     $data = Site_Model::get_album_images($limit, $page, \Auth::check() ? $this->u->id : 0, $member, $is_mypage, array('related' => array('album')));
     $data['member'] = $member;
     $data['is_member_page'] = true;
     $data['liked_album_image_ids'] = conf('like.isEnabled') && \Auth::check() ? \Site_Model::get_liked_ids('album_image', $this->u->id, $data['list']) : array();
     $this->set_title_and_breadcrumbs(sprintf('%sの%s', $is_mypage ? '自分' : $member->name . 'さん', term('album_image', 'site.list')), null, $member);
     $this->template->subtitle = \View::forge('_parts/member_subtitle', array('member' => $member, 'is_mypage' => $is_mypage));
     $this->template->post_footer = \View::forge('image/_parts/list_footer');
     $this->template->content = \View::forge('image/_parts/list', $data);
 }
예제 #3
0
파일: util.php 프로젝트: uzura8/flockbird
 public static function get_top_slide_image_uris_raw()
 {
     $configs = conf('site.index.slide.recentAlbumImage', 'page');
     $size_string = conf('upload.types.img.types.ai.sizes.' . $configs['sizeKey']);
     $limit_width = false;
     if ($sizes_for_resize = \Site_Upload::conv_size_str_to_array($size_string)) {
         $limit_width = $sizes_for_resize['width'];
     }
     $limit = $configs['displayCount'] + $configs['displayCountAdditional'];
     $data = Site_Model::get_album_images($limit);
     if (empty($data['list'])) {
         return $uris_default;
     }
     $uris = array();
     $i = 0;
     foreach ($data['list'] as $album_image) {
         if ($i >= $configs['displayCount']) {
             break;
         }
         if (!static::check_album_imgage4top_page_slide($album_image, $limit_width)) {
             continue;
         }
         $uris[] = img_uri($album_image->file_name, $configs['sizeKey']);
         $i++;
     }
     $rest_count = $configs['displayCount'] - $i;
     if ($rest_count > 0) {
         $uris_default = conf('site.index.slide.images', 'page');
         if ($rest_count > count($uris_default)) {
             $rest_count = count($uris_default);
         }
         for ($i = 0; $i < $rest_count; $i++) {
             $uris[] = $uris_default[$i];
         }
     }
     return $uris;
 }