| Server IP : 208.122.213.31 / Your IP : 216.73.216.45 Web Server : Apache System : Linux msd6191.mjhst.com 4.18.0-553.137.1.el8_10.x86_64 #1 SMP Wed Jun 24 11:40:24 UTC 2026 x86_64 User : WHMCS_MIA_382 ( 1001) PHP Version : 7.4.33 Disable Function : NONE MySQL : ON | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /proc/self/cwd/wp-content/plugins/cornerstone/includes/classes/Controllers/ |
Upload File : |
<?php
namespace Themeco\Cornerstone\Controllers;
use Themeco\Cornerstone\Services\Routes;
use Themeco\Cornerstone\Services\Preferences as PreferencesService;
class Preferences {
private $routes;
private $preferences;
public function __construct(Routes $routes, PreferencesService $preferences) {
$this->routes = $routes;
$this->preferences = $preferences;
}
public function setup() {
$this->routes->add_route('post', 'update-preferences', [$this, 'save']);
}
public function save($params) {
if ( ! isset( $params['user_id']) || ! $params['user_id'] ) {
throw new \Exception( 'Attempting to save preferences without specifying user_id.' );
}
if ( ! $params['user_id'] === get_current_user_id() && ! current_user_can('manage_options') ) {
throw new \Exception( 'Unauthorized attempt to save preferences of another user' );
}
if ( ! isset( $params['data']) || ! $params['data'] ) {
throw new \Exception( 'Attempting to update preferences without specifying data.' );
}
do_action("cs_before_preferences_save_request");
$this->preferences->update_user_preferences( $params['user_id'], $params['data'] );
return [ 'success' => true ];
}
}