Uname : Linux premium36.web-hosting.com 4.18.0-553.44.1.lve.el8.x86_64 #1 SMP Thu Mar 13 14:29:12 UTC 2025 x86_64
Soft : LiteSpeed
Ip : 198.54.115.237
Port : 443
~
/
home
/
emranchoice
/
roomellotravel.com
/
wp-content
/
plugins
/
metform
/
core
/
admin
[ HOME ]
Exec
Submit
File Name : base.php
<?php namespace MetForm\Core\Admin; use MetForm\Core\Integrations\Onboard\Onboard; defined( 'ABSPATH' ) || exit; /** * Metform settings related all functionalities. * * @version 1.1.8 */ class Base { use \MetForm\Traits\Singleton; private $key_settings_option; public function __construct(){ $this->key_settings_option = 'metform_option__settings'; } public static function parent_slug(){ return 'metform-menu'; } public function init(){ add_action('admin_menu', [$this, 'register_settings'], 999); add_action('admin_init', [$this, 'register_actions'], 999); add_action('wp_ajax_metform_admin_settings', [$this, 'mf_setting_data_save']); } /** * Save settings data via ajax. * * @since 3.9.9 * @return void */ public function mf_setting_data_save(){ if ( ! current_user_can( 'manage_options' ) || ! isset( $_SERVER['HTTP_X_WP_NONCE'] ) || ! wp_verify_nonce( $_SERVER['HTTP_X_WP_NONCE'], 'wp_rest' ) ) { wp_send_json_error('You are not allowed to do this.'); wp_die(); } $request = isset($_POST['form_data']) ? $_POST['form_data'] : []; if (empty($request)) { wp_send_json_error('No data provided'); wp_die(); } //get existing settings $settings = get_option($this->key_settings_option, []); $checkboxes = array('mf_save_progress', 'mf_field_name_show', 'mf_paypal_sandbox', 'mf_stripe_sandbox'); //if checkbox is not set, unset it from settings that was set previously. foreach ($checkboxes as $key) { if (!isset($request[$key]) && isset($settings[$key])) { unset($settings[$key]); } } $settings = is_array($request) ? array_merge($settings, $request) : $settings; $status = \MetForm\Core\Forms\Action::instance()->store( -1, $settings); wp_send_json_success($status); exit; } public function register_settings(){ add_submenu_page( self::parent_slug(), esc_html__( 'Settings', 'metform' ), esc_html__( 'Settings', 'metform' ), 'manage_options', self::parent_slug().'-settings', [$this, 'register_settings_contents__settings'], 11); } public function register_settings_contents__settings(){ if(isset($_GET['met-onboard-steps']) && $_GET['met-onboard-steps'] == 'loaded' && isset($_GET['met-onboard-steps-nonce']) && wp_verify_nonce(sanitize_text_field(wp_unslash($_GET['met-onboard-steps-nonce'])),'met-onboard-steps-action')) { Onboard::instance()->views(); } else { $code = ''; $disabledAttr = ''; $selectTheTab= false; if(did_action('xpd_metform_pro/plugin_loaded')) { #Must be pro loaded.... if(!empty($_REQUEST['access_token']) && !empty($_REQUEST['refresh_token']) && !empty($_REQUEST['not_hubspot'])) { $code = isset($_REQUEST['code']) ? sanitize_text_field(wp_unslash($_REQUEST['code'])) : ''; $nonce = isset($_REQUEST['state']) ? sanitize_text_field(wp_unslash($_REQUEST['state'])): ''; $option = get_option(\MetForm_Pro\Core\Integrations\Aweber::NONCE_VERIFICATION_KEY); $accessToken = []; $accessToken['retrieved'] = time(); $accessToken['token_type'] = isset($_REQUEST['token_type'])? sanitize_text_field( wp_unslash( $_REQUEST['token_type'] )) : ''; $accessToken['expires_in'] = isset($_REQUEST['expires_in'])? sanitize_text_field( wp_unslash( $_REQUEST['expires_in'] )) : ''; $accessToken['refresh_token'] = isset($_REQUEST['refresh_token'])? sanitize_text_field( wp_unslash( $_REQUEST['refresh_token'] )) : ''; $accessToken['access_token'] = isset($_REQUEST['access_token'])? sanitize_text_field( wp_unslash( $_REQUEST['access_token'] )) : ''; set_transient('mf_aweber_token_transient', $accessToken['access_token'], $accessToken['expires_in'] - 20 ); update_option(\MetForm_Pro\Core\Integrations\Aweber::ACCESS_TOKEN_KEY, $accessToken); ?> <script type="text/javascript"> // redirect to newsletter section location.href = '<?php echo esc_url(admin_url('admin.php?page=metform-menu-settings#mf-newsletter_integration')); ?>'; </script> <?php $option = get_option(\MetForm_Pro\Core\Integrations\Aweber::ACCESS_TOKEN_KEY); if($option) { $code = $option; } $disabledAttr = 'disabled'; $selectTheTab = true; } else { $code = get_option(\MetForm_Pro\Core\Integrations\Aweber::ACCESS_TOKEN_KEY); $disabledAttr = empty($code)? '': 'disabled'; } if( !empty($_REQUEST['code']) && empty($_REQUEST['state']) ) { $google = new \MetForm_Pro\Core\Integrations\Google_Sheet\Google_Access_Token; $access_code = $google->get_access_token(); if(isset($access_code['body'])){ $expire_time = isset(json_decode($access_code['body'], true)['expires_in'] ) ? json_decode($access_code['body'], true)['expires_in'] : ''; update_option( 'wf_google_access_token', $access_code['body'] ); set_transient( 'mf_google_sheet_token', $access_code['body'] , $expire_time - 20 ); } } } #Let check if this is returned from aweber.. #Give state check include( 'views/settings.php' ); } } public function get_settings_option($key = null , $default = null){ if($key != null){ $this->key_settings_option = $key; } return get_option($this->key_settings_option); } public function set_option($key, $default = null){ } public function register_actions(){ if(isset( $_POST['mf_settings_page_action'])) { // run a quick security check if( !check_admin_referer('metform-settings-page', 'metform-settings-page')){ return; } $request = $_POST; $status = \MetForm\Core\Forms\Action::instance()->store( -1, $request); return $status; } } }
Back
Folder Name
Submit
File Name
File Content
Submit
Name
Type
Size
Permission
Last Modified
Actions
.
dir
-
0755
2025-12-14 09:48:52
..
dir
-
0755
2025-12-14 09:48:52
css
dir
-
0755
2025-12-14 09:48:52
images
dir
-
0755
2025-12-14 09:48:52
views
dir
-
0755
2025-12-14 09:48:52
base.php
text/x-php
6.67 KB
0644
2025-12-14 09:48:52