Beispiel #1
0
 /**
  * Deactivation routines for optimizeMember.
  *
  * @package optimizeMember\Installation
  * @since 3.5
  *
  * @return null
  */
 public static function deactivate()
 {
     global $wpdb;
     /* Global database object reference. */
     global $current_site, $current_blog;
     /* Multisite. */
     /**/
     do_action("ws_plugin__optimizemember_before_deactivation", get_defined_vars());
     /**/
     /*THIS LINES MOVE PRO FOLDER INTO RIGHT PLACE!*/
     //@rename(WP_PLUGIN_DIR.'/optimizeMember-pro', $GLOBALS["WS_PLUGIN__"]["optimizemember"]["c"]["dir"].'/optimizeMember-pro');
     if ($GLOBALS["WS_PLUGIN__"]["optimizemember"]["o"]["run_deactivation_routines"]) {
         c_ws_plugin__optimizemember_roles_caps::unlink_roles();
         /* Unlink Roles/Caps. */
         /**/
         c_ws_plugin__optimizemember_files::remove_no_gzip_from_root_htaccess();
         /**/
         if (is_dir($files_dir = $GLOBALS["WS_PLUGIN__"]["optimizemember"]["c"]["files_dir"])) {
             if (file_exists($htaccess = $files_dir . "/.htaccess")) {
                 if (is_writable($htaccess)) {
                     unlink($htaccess);
                 }
             }
             /**/
             @rmdir($files_dir) . @rmdir(c_ws_plugin__optimizemember_utils_dirs::strip_dir_app_data($files_dir));
         }
         /**/
         if (is_dir($logs_dir = $GLOBALS["WS_PLUGIN__"]["optimizemember"]["c"]["logs_dir"])) {
             foreach (scandir($logs_dir) as $log_file) {
                 if (is_file($log_file = $logs_dir . "/" . $log_file)) {
                     if (is_writable($log_file)) {
                         unlink($log_file);
                     }
                 }
             }
             /**/
             @rmdir($logs_dir) . @rmdir(c_ws_plugin__optimizemember_utils_dirs::strip_dir_app_data($logs_dir));
         }
         /**/
         delete_option("ws_plugin__optimizemember_cache");
         delete_option("ws_plugin__optimizemember_notices");
         delete_option("ws_plugin__optimizemember_options");
         delete_option("ws_plugin__optimizemember_configured");
         delete_option("ws_plugin__optimizemember_activated_levels");
         delete_option("ws_plugin__optimizemember_activated_version");
         delete_option("ws_plugin__optimizemember_activated_mms_version");
         /**/
         if (is_multisite() && is_main_site()) {
             /* Site options? */
             delete_site_option("ws_plugin__optimizemember_options");
         }
         /**/
         $wpdb->query("DELETE FROM `" . $wpdb->options . "` WHERE `option_name` LIKE '%" . esc_sql(like_escape("optimizemember_")) . "%'");
         $wpdb->query("DELETE FROM `" . $wpdb->options . "` WHERE `option_name` LIKE '" . esc_sql(like_escape("_transient_s2m_")) . "%'");
         $wpdb->query("DELETE FROM `" . $wpdb->options . "` WHERE `option_name` LIKE '" . esc_sql(like_escape("_transient_timeout_s2m_")) . "%'");
         $wpdb->query("DELETE FROM `" . $wpdb->postmeta . "` WHERE `meta_key` LIKE '%" . esc_sql(like_escape("optimizemember_")) . "%'");
         $wpdb->query("DELETE FROM `" . $wpdb->usermeta . "` WHERE `meta_key` LIKE '%" . esc_sql(like_escape("optimizemember_")) . "%'");
         /**/
         do_action("ws_plugin__optimizemember_during_deactivation", get_defined_vars());
     }
     /**/
     do_action("ws_plugin__optimizemember_after_deactivation", get_defined_vars());
     /**/
     return;
     /* Return for uniformity. */
 }
Beispiel #2
0
 /**
  * Updates Roles/Capabilities via AJAX.
  *
  * @package optimizeMember\Roles_Caps
  * @since 110524RC
  *
  * @attaches-to ``add_action("wp_ajax_ws_plugin__optimizemember_update_roles_via_ajax");``
  *
  * @return null Exits script execution after output for AJAX caller.
  */
 public static function update_roles_via_ajax()
 {
     do_action("ws_plugin__optimizemember_before_update_roles_via_ajax", get_defined_vars());
     /**/
     status_header(200);
     /* Send a 200 OK status header. */
     header("Content-Type: text/plain; charset=utf-8");
     /* Content-Type with UTF-8. */
     eval('while (@ob_end_clean ());');
     /* End/clean all output buffers that may exist. */
     /**/
     if (current_user_can("create_users")) {
         /* Check priveledges. Ability to create Users? */
         /**/
         if (!empty($_POST["ws_plugin__optimizemember_update_roles_via_ajax"])) {
             if ($nonce = $_POST["ws_plugin__optimizemember_update_roles_via_ajax"]) {
                 if (wp_verify_nonce($nonce, "ws-plugin--optimizemember-update-roles-via-ajax")) {
                     /**/
                     if (!apply_filters("ws_plugin__optimizemember_lock_roles_caps", false)) {
                         c_ws_plugin__optimizemember_roles_caps::config_roles();
                         $success = true;
                         /* Roles updated. */
                     } else {
                         /* Else flag as having been locked here. */
                         $locked = true;
                     }
                 }
             }
         }
     }
     /**/
     exit(apply_filters("ws_plugin__optimizemember_update_roles_via_ajax", isset($success) && $success ? "1" : (isset($locked) && $locked ? "l" : "0"), get_defined_vars()));
 }