/** * Mmeber_Profile_Image edit * * @access public * @return Response */ public function action_edit() { Util_security::check_method('POST'); Util_security::check_csrf(); try { DB::start_transaction(); $file = Site_Member::save_profile_image($this->u); DB::commit_transaction(); Session::set_flash('message', term('site.picture') . 'を更新しました。'); } catch (Database_Exception $e) { if (DB::in_transaction()) { DB::rollback_transaction(); } Session::set_flash('error', Site_Controller::get_error_message($e, true)); } catch (FuelException $e) { if (DB::in_transaction()) { DB::rollback_transaction(); } Session::set_flash('error', $e->getMessage()); } Response::redirect('member/profile/image'); }
protected function save_profile_image($provider, $image_url, $member_obj) { $image_url = $this->get_profile_image_url($provider, $image_url); $save_file_path_tmp = sprintf('%stmp/%s_%s_%s', APPPATH, $member_obj->id, Util_string::get_unique_id(), time()); Site_Upload::save_image_from_url($image_url, $save_file_path_tmp, conf('upload.types.img.types.m.max_size', null, 0)); \DB::start_transaction(); Site_Member::save_profile_image($member_obj, $save_file_path_tmp, false); \DB::commit_transaction(); }