} elseif (stristr($entry['name'], "start.php") && substr_count($entry['name'], "/") == 1) {
                $start = true;
            }
        }
        if (!$manifest) {
            register_error(elgg_echo('plugin_installer:upload:error:nomanifest'));
        } elseif (!$start) {
            register_error(elgg_echo('plugin_installer:upload:error:nostart'));
        } else {
            if (!file_exists($CONFIG->pluginspath . $plugin_name) || $overwrite) {
                $extract = $zip->extractTo($CONFIG->pluginspath);
                $zip->close();
                if ($extract === TRUE && file_exists($CONFIG->pluginspath . $plugin_name)) {
                    disable_plugin($plugin_name);
                    enable_plugin($plugin_name);
                    regenerate_plugin_list();
                    system_message(elgg_echo('plugin_installer:upload:success'));
                } else {
                    register_error(elgg_echo('plugin_installer:upload:error:unzip'));
                }
            } else {
                register_error(elgg_echo('plugin_installer:upload:error:pluginexists'));
            }
        }
    } else {
        register_error(elgg_echo('plugin_installer:upload:error'));
    }
    $filehandler->delete();
} else {
    register_error(elgg_echo('plugin_installer:upload:missing'));
}
 * @subpackage Core
 * @author Curverider Ltd
 * @link http://elgg.org/
 */
// block non-admin users
admin_gatekeeper();
// Get the plugin
$mod = get_input('plugin');
$mod = str_replace('.', '', $mod);
$mod = str_replace('/', '', $mod);
// Get the new order
$order = (int) get_input('order');
// Get the current plugin list
$plugins = get_plugin_list();
// Inject the plugin order back into the list
if ($key = array_search($mod, $plugins)) {
    unset($plugins[$key]);
    while (isset($plugins[$order])) {
        $order++;
    }
    $plugins[$order] = $mod;
}
// Disable
if (regenerate_plugin_list($plugins)) {
    system_message(sprintf(elgg_echo('admin:plugins:reorder:yes'), $plugin));
} else {
    register_error(sprintf(elgg_echo('admin:plugins:reorder:no'), $plugin));
}
elgg_view_regenerate_simplecache();
elgg_filepath_cache_reset();
forward($_SERVER['HTTP_REFERER']);