Ejemplo n.º 1
0
function mmb_install_addon($params)
{
    global $mmb_core;
    mwp_context()->requireTheme();
    mwp_load_required_components();
    $mmb_core->get_installer_instance();
    $return = $mmb_core->installer_instance->install_remote_file($params);
    mmb_response($return, true);
}
Ejemplo n.º 2
0
 /**
  * Worker update
  */
 public function update_worker_plugin($params)
 {
     if ($params['download_url']) {
         @(include_once ABSPATH . 'wp-admin/includes/file.php');
         @(include_once ABSPATH . 'wp-admin/includes/misc.php');
         @(include_once ABSPATH . 'wp-admin/includes/template.php');
         @(include_once ABSPATH . 'wp-admin/includes/class-wp-upgrader.php');
         @(include_once ABSPATH . 'wp-admin/includes/screen.php');
         @(include_once ABSPATH . 'wp-admin/includes/plugin.php');
         if (!$this->is_server_writable()) {
             return array('error' => 'Failed, please <a target="_blank" href="http://managewp.com/user-guide/faq/my-pluginsthemes-fail-to-update-or-i-receive-a-yellow-ftp-warning">add FTP details for automatic upgrades.</a>');
         }
         mwp_load_required_components();
         ob_start();
         @unlink(dirname(__FILE__));
         /** @handled class */
         $upgrader = new Plugin_Upgrader(mwp_container()->getUpdaterSkin());
         $result = $upgrader->run(array('package' => $params['download_url'], 'destination' => WP_PLUGIN_DIR, 'clear_destination' => true, 'clear_working' => true, 'hook_extra' => array('plugin' => 'worker/init.php')));
         ob_end_clean();
         if (is_wp_error($result) || !$result) {
             return array('error' => 'ManageWP Worker plugin could not be updated.');
         } else {
             return array('success' => 'ManageWP Worker plugin successfully updated.');
         }
     }
     return array('error' => 'Bad download path for worker installation file.');
 }