Beispiel #1
0
 /**
  * Update public_flag
  * 
  * @access  public
  * @param   int  $id  target id
  * @return  Response(html)
  * @throws  Exception in Controller_Base::controller_common_api
  * @see  Controller_Base::controller_common_api
  */
 public function post_update_public_flag($id = null)
 {
     $this->api_accept_formats = 'html';
     $this->controller_common_api(function () use($id) {
         $id = intval(\Input::post('id') ?: $id);
         $timeline = Model_Timeline::check_authority($id, $this->u->id);
         list($public_flag, $model) = \Site_Util::validate_params_for_update_public_flag($timeline->public_flag);
         \DB::start_transaction();
         if (Site_Util::check_type($timeline->type, 'album_image_timeline')) {
             $album_image_ids = Model_TimelineChildData::get_foreign_ids4timeline_id($timeline->id);
             \Album\Model_AlbumImage::update_multiple_each($album_image_ids, array('public_flag' => $public_flag));
         }
         $timeline->public_flag = $public_flag;
         $timeline->save();
         \DB::commit_transaction();
         $data = array('model' => $model, 'id' => $id, 'public_flag' => $public_flag, 'is_mycontents' => true, 'without_parent_box' => true);
         $this->set_response_body_api($data, '_parts/public_flag_selecter');
     });
 }
Beispiel #2
0
 public static function get_timeline_images($type, $foreign_id, $timeline_id = null, $access_from = null, $is_detail = false)
 {
     // defaults
     $images = array();
     $images['file_cate'] = 'ai';
     $images['size'] = 'N_M';
     $images['column_count'] = 3;
     switch ($type) {
         case \Config::get('timeline.types.album_image_profile'):
             $images['list'] = array();
             if ($list = \Album\Model_AlbumImage::check_authority($foreign_id)) {
                 $images['list'][] = $list;
                 $images['column_count'] = 2;
             }
             break;
         case \Config::get('timeline.types.profile_image'):
             $images['list'] = array();
             if ($list = \Model_File::find($foreign_id)) {
                 $images['list'][] = $list;
                 $images['file_cate'] = 'm';
                 $images['size'] = 'LL';
                 $images['column_count'] = 2;
             }
             break;
         case \Config::get('timeline.types.note'):
             list($images['list'], $images['count_all']) = \Note\Model_NoteAlbumImage::get_album_image4note_id($foreign_id, $is_detail ? 0 : \Config::get('timeline.articles.thumbnail.limit.default'), array('id' => 'asc'), true);
             $images['parent_page_uri'] = 'note/' . $foreign_id;
             break;
         case \Config::get('timeline.types.thread'):
             list($images['list'], $images['count_all']) = \Thread\Model_ThreadImage::get4thread_id($foreign_id, 3, true);
             $images['file_cate'] = 't';
             $images['size'] = 'M';
             $images['column_count'] = 3;
             $images['parent_page_uri'] = 'thread/' . $foreign_id;
             break;
         case \Config::get('timeline.types.album'):
         case \Config::get('timeline.types.album_image'):
             $images['list'] = array();
             $images['count'] = 0;
             if ($album_image_ids = Model_TimelineChildData::get_foreign_ids4timeline_id($timeline_id)) {
                 list($images['list'], $images['count']) = \Album\Model_AlbumImage::get_list_and_count(array('where' => \Site_Model::get_where_public_flag4access_from($access_from, array(array('id', 'in', $album_image_ids))), $is_detail ? 0 : 'limit' => \Config::get('timeline.articles.thumbnail.limit.default'), 'order_by' => array('created_at' => 'asc')));
             }
             $images['count_all'] = \Album\Model_AlbumImage::get_list_count(array('where' => \Site_Model::get_where_public_flag4access_from($access_from, array(array('album_id', $foreign_id)))));
             $images['parent_page_uri'] = 'album/' . $foreign_id;
             break;
         case \Config::get('timeline.types.album_image_timeline'):
             list($images['list'], $images['count']) = \Album\Model_AlbumImage::get_list_and_count(array('where' => \Site_Model::get_where_public_flag4access_from($access_from, array(array('id', 'in', Model_TimelineChildData::get_foreign_ids4timeline_id($timeline_id)))), $is_detail ? 0 : 'limit' => \Config::get('timeline.articles.thumbnail.limit.album_image_timeline'), 'order_by' => array('created_at' => 'asc')));
             $images['count_all'] = $images['count'];
             $images['parent_page_uri'] = 'timeline/' . $timeline_id;
             break;
         default:
             break;
     }
     return $images;
 }
Beispiel #3
0
 public function delete_with_album_image($member_id)
 {
     $album_image_ids = array();
     $deleted_files = null;
     if (Site_Util::check_type($this->type, 'album_image_timeline')) {
         try {
             $album = \Album\Model_Album::check_authority($this->foreign_id, $member_id);
         } catch (\FuelException $e) {
             $album = null;
         }
         $album_image_ids = $album ? Model_TimelineChildData::get_foreign_ids4timeline_id($this->id) : null;
     }
     if ($album_image_ids) {
         \Album\Model_AlbumImage::delete_multiple($album_image_ids);
     }
     $this->delete();
 }