Ejemplo n.º 1
0
 /**
  * Called every time the settings page is loaded. Saves changes.
  *
  * @since  4.6.0
  */
 public static function handle_settings_update()
 {
     lib2()->array->equip_post('action', 'po_option');
     if ('updatesettings' == $_POST['action']) {
         check_admin_referer('update-popup-settings');
         $old_settings = IncPopupDatabase::get_settings();
         $settings = array();
         $settings['loadingmethod'] = $_POST['po_option']['loadingmethod'];
         if (isset($_POST['po_option']['geo_lookup'])) {
             $settings['geo_lookup'] = $_POST['po_option']['geo_lookup'];
             $settings['geo_db'] = 'geo_db' === $settings['geo_lookup'];
         }
         $rules = $_POST['po_option']['rules'];
         if (!is_array($rules)) {
             $rules = array();
         }
         $settings['rules'] = array_keys($rules);
         IncPopupDatabase::set_settings($settings);
         lib2()->ui->admin_message(__('Your settings have been updated.', PO_LANG));
         $redirect_url = esc_url_raw(remove_query_arg(array('message', 'count'), wp_get_referer()));
         wp_safe_redirect($redirect_url);
         die;
     }
 }