예제 #1
0
파일: model.php 프로젝트: uzura8/flockbird
 public static function delete_timeline(Model_Timeline $timeline, $member_id)
 {
     if (Site_Util::check_type($timeline->type, 'album_image_timeline')) {
         $timeline->delete_with_album_image($member_id);
     } else {
         $timeline->delete();
     }
 }
예제 #2
0
파일: api.php 프로젝트: uzura8/flockbird
 /**
  * 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');
     });
 }
예제 #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();
 }