/**
  * 문자 메시지 테스트 ajax 요청 응답
  *
  * @callback
  * @action       wp_ajax_dabory-sms-tester
  *
  * @throws \Exception
  */
 public static function do_message_testing()
 {
     wskl_verify_nonce('dabory-sms-tester-nonce', $_POST['dabory-sms-tester-nonce']);
     do_action('dabory_sms_load_provider_module');
     $dalin = WSKL_Dabory_SMS_Provider_MDalin::factory();
     $result = $dalin->send_message(array('remote_msg' => '[웹발신]테스트 문자입니다. ' . site_url(), 'remote_phone' => wskl_get_option('sms_sender_phone')));
     @header('Content-Type: application/json; charset=' . get_option('blog_charset'));
     echo wp_json_encode(array('success' => TRUE, 'data' => $result));
     die;
 }
 /**
  * @action  load-settings_page_{$page_name}
  * @used-by WSKL_Dabory_Members_Admin::init()
  *
  * @uses    wskl_GET, wskl_POST, wskl_verify_nonce, add_settings_error
  * @uses    extract_option_values()
  * @uses    validate_option_values()
  * @throws \NonceVerificationFailureException
  */
 public static function update_dabory_members()
 {
     if (wskl_GET('tab') != 'dabory-members' || wskl_POST('action') != 'update_dabory_members') {
         return;
     }
     wskl_verify_nonce('wskl_83830_nonce', wskl_POST('wskl_members_nonce'));
     $options = self::extract_option_values();
     if (self::validate_option_values($options)) {
         foreach ($options as $key => $option_value) {
             self::update_option($key, $option_value);
         }
         /** success notice */
         add_settings_error('dabory-members', 'settings_updated', __('Settings saved.'), 'updated');
     }
 }
 public function update_settings()
 {
     if (wskl_GET('tab') !== $this->id || wskl_POST('action') != $this->action) {
         return;
     }
     wskl_verify_nonce($this->nonce_action, wskl_POST($this->nonce_param));
     /** @var array $extracted two keys are present: options, and error. */
     $extracted = $this->extract_option_values();
     if (is_array($extracted['options'])) {
         foreach ($extracted['options'] as $key => $option_value) {
             $this->update_option($key, $option_value);
         }
     }
     if (isset($extracted['error']) && !empty($extracted['error'])) {
         add_settings_error($this->id, 'validation_error', $extracted['error'], 'error');
         return;
     }
     do_action('wskl_wp_members_update_settings', $extracted);
     /** success notice */
     add_settings_error('dabory-members', 'settings_updated', __('Settings saved.'), 'updated');
 }
 /**
  * @callback
  * @action    wp_ajax_manual_cron_job
  */
 public function do_manual_cron_job()
 {
     wskl_verify_nonce('manual_cron_job_nonce', $_POST['manual_cron_job_nonce']);
     do_action('wskl_inactive_accounts_check');
     die;
 }