Server IP : 192.158.238.246 / Your IP : 18.117.229.144 Web Server : LiteSpeed System : Linux uniform.iwebfusion.net 4.18.0-553.27.1.lve.1.el8.x86_64 #1 SMP Wed Nov 20 15:58:00 UTC 2024 x86_64 User : jenniferflocom ( 1321) PHP Version : 8.1.32 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /proc/7779/cwd/plugins/give/src/DonorDashboards/Pipeline/Stages/ |
Upload File : |
<?php namespace Give\DonorDashboards\Pipeline\Stages; use Give\Log\Log; use WP_REST_Response; /** * @since 3.14.2 added security measures to updateAvatarInMetaDB * @since 2.10.0 */ class UpdateDonorAvatar implements Stage { protected $data; protected $donor; public function __invoke($payload) { $this->data = $payload['data']; $this->donor = $payload['donor']; $this->updateAvatarInMetaDB(); return $payload; } protected function updateAvatarInMetaDB() { if (!array_key_exists('avatarId', $this->data)) { return false; } $avatarId = $this->data['avatarId']; if (give()->donorDashboard->getAvatarId() && !give()->donorDashboard->avatarBelongsToCurrentUser($avatarId)) { Log::error( 'Avatar update permission denied.', [ 'donorId' => give()->donorDashboard->getId(), 'avatarId' => give()->donorDashboard->getAvatarId() ] ); return new WP_REST_Response( [ 'status' => 401, 'response' => 'unauthorized', 'body_response' => [ 'message' => __('Avatar update permission denied.', 'give'), ], ] ); } return $this->donor->update_meta('_give_donor_avatar_id', $avatarId); } }