Ejemplo n.º 1
0
/**
 * Shield Attacher
 * ---------------
 */
Route::accept($config->manager->slug . '/shield/(attach|eject)/id:(:any)', function ($path = "", $slug = "") use($config, $speak) {
    $new_config = Get::state_config();
    $new_config['shield'] = $path === 'attach' ? $slug : 'normal';
    File::serialize($new_config)->saveTo(STATE . DS . 'config.txt', 0600);
    $G = array('data' => array('id' => $slug, 'action' => $path));
    $mode = $path === 'eject' ? 'eject' : 'mount';
    Notify::success(Config::speak('notify_success_updated', $speak->shield));
    Weapon::fire('on_shield_update', array($G, $G));
    Weapon::fire('on_shield_' . $mode, array($G, $G));
    Weapon::fire('on_shield_' . md5($slug) . '_update', array($G, $G));
    Weapon::fire('on_shield_' . md5($slug) . '_' . $mode, array($G, $G));
    foreach (glob(SYSTEM . DS . 'log' . DS . 'asset.*.log', GLOB_NOSORT) as $asset_cache) {
        File::open($asset_cache)->delete();
    }
    Guardian::kick($config->manager->slug . '/shield/' . $slug);
});
/**
 * Shield Backup
 * -------------
 */
Route::accept($config->manager->slug . '/shield/backup/id:(:any)', function ($folder = "") use($config, $speak) {
    $name = $folder . '.zip';
    Package::take(SHIELD . DS . $folder)->pack(ROOT . DS . $name, true);
    $G = array('data' => array('path' => ROOT . DS . $name, 'file' => ROOT . DS . $name));
    Weapon::fire('on_backup_construct', array($G, $G));
    Guardian::kick($config->manager->slug . '/backup/send:' . $name);
});
Ejemplo n.º 2
0
<?php

if ($package = File::exist($destination . DS . $name)) {
    if (is_file($package)) {
        Package::take($package)->extract();
        // Extract the ZIP file
        File::open($package)->delete();
        // Delete the ZIP file
        Config::load();
        // Refresh the configuration data ...
        Guardian::kick(Config::get('manager.slug') . '/' . $segment);
    }
}
Ejemplo n.º 3
0
<?php

if ($uploaded = File::exist($task_connect_path . DS . $name)) {
    Package::take($uploaded)->extract();
    // Extract the ZIP file
    File::open($uploaded)->delete();
    // Delete the ZIP file
    Config::load();
    // Refresh the configuration data ...
    Guardian::kick(Config::get('manager')->slug . '/' . $task_connect_kick);
}
Ejemplo n.º 4
0
        Shield::abort();
    }
    $info = Plugin::info($slug, true);
    $info['slug'] = $slug;
    Config::set(array('page_title' => $speak->deleting . ': ' . $info['title'] . $config->title_separator . $config->manager->title, 'file' => $info, 'cargo' => DECK . DS . 'workers' . DS . 'kill.plugin.php'));
    if ($request = Request::post()) {
        Guardian::checkToken($request['token']);
        File::open(PLUGIN . DS . $slug)->delete();
        $P = array('data' => array('id' => $slug));
        Notify::success(Config::speak('notify_success_deleted', $speak->plugin));
        Weapon::fire('on_plugin_update', array($P, $P));
        Weapon::fire('on_plugin_destruct', array($P, $P));
        Weapon::fire('on_plugin_' . md5($slug) . '_update', array($P, $P));
        Weapon::fire('on_plugin_' . md5($slug) . '_destruct', array($P, $P));
        Guardian::kick($config->manager->slug . '/plugin');
    } else {
        Notify::warning(Config::speak('notify_confirm_delete_', '<strong>' . $info['title'] . '</strong>'));
    }
    Shield::lot('segment', 'plugin')->attach('manager', false);
});
/**
 * Plugin Backup
 * -------------
 */
Route::accept($config->manager->slug . '/plugin/backup/id:(:any)', function ($folder = "") use($config, $speak) {
    $name = $folder . '.zip';
    Package::take(PLUGIN . DS . $folder)->pack(ROOT . DS . $name, true);
    $G = array('data' => array('path' => ROOT . DS . $name, 'file' => ROOT . DS . $name));
    Weapon::fire('on_backup_construct', array($G, $G));
    Guardian::kick($config->manager->slug . '/backup/send:' . $name);
});
Ejemplo n.º 5
0
 * ----------------
 */
Route::accept($config->manager->slug . '/backup/origin:(:all)', function ($path = "", $origin = "") use($config, $speak) {
    if (Guardian::get('status') !== 'pilot') {
        Shield::abort();
    }
    $time = date('Y-m-d-H-i-s');
    $site = Text::parse($config->title, '->slug');
    if (trim($origin, '.') === "") {
        $name = $site . '_' . $time . '.zip';
        Package::take(ROOT)->pack(ROOT . DS . $name);
    } else {
        $name = $site . '.cabinet.' . str_replace('/', '.', $origin) . '_' . $time . '.zip';
        Package::take(ROOT . DS . 'cabinet' . DS . $origin)->pack(ROOT . DS . $name);
        if ($origin === 'shields') {
            Package::take(ROOT . DS . $name)->deleteFiles(array('json.php', 'rss.php', 'sitemap.php', 'widgets.css', 'widgets.js'));
        }
    }
    Guardian::kick($config->manager->slug . '/backup/send:' . $name);
});
/**
 * Downloading Backup File(s)
 * --------------------------
 */
Route::accept($config->manager->slug . '/backup/send:(:any)', function ($file = "") use($config, $speak) {
    if (Guardian::get('status') !== 'pilot') {
        Shield::abort();
    }
    if ($backup = File::exist(ROOT . DS . $file)) {
        $G = array('data' => array('path' => $backup, 'file' => $backup));
        Weapon::fire('on_backup_construct', array($G, $G));
Ejemplo n.º 6
0
 }
 $time = Date::slug(time());
 $site = Text::parse($config->title, '->slug');
 if (trim($origin, '.') === "") {
     $name = $site . '_' . $time . '.zip';
     Package::take(ROOT)->pack(ROOT . DS . $name);
 } else {
     $name = $site . '.' . File::B(CARGO) . '.' . str_replace('/', '.', $origin) . '_' . $time . '.zip';
     Package::take(CARGO . DS . $origin)->pack(ROOT . DS . $name);
     if ($origin === 'shields') {
         Package::take(ROOT . DS . $name)->deleteFolder('normal');
         // delete `normal` shield
         Package::take(ROOT . DS . $name)->deleteFiles(array('json.php', 'rss.php', 'sitemap.php', 'widgets.css', 'widgets.js'));
     }
     if ($origin === 'extends') {
         Package::take(ROOT . DS . $name)->deleteFolder(File::B(CHUNK));
         // delete `chunk` folder
     }
     /*
     if($origin === 'plugins') {
         Package::take(ROOT . DS . $name)->deleteFolders(array( // delete built-in plugin(s)
             '__editor',
             '__editor-button',
             '__preview',
             'asset-version',
             'cache',
             'comment-location',
             'comment-notify',
             'empty',
             'facebook-open-graph',
             'manager',