예제 #1
0
        include __DIR__ . DS . 'task.ignite.package.php';
        if (!Notify::errors()) {
            File::upload($_FILES['file'], $destination, function () use($speak) {
                Notify::clear();
                Notify::success(Config::speak('notify_success_uploaded', $speak->shield));
            });
            $P = array('data' => $_FILES);
            Weapon::fire(array('on_shield_update', 'on_shield_construct'), array($P, $P));
            $segment = 'shield/' . $path;
            include __DIR__ . DS . 'task.package.php';
        } else {
            $tab_id = 'tab-content-2';
            include __DIR__ . DS . 'task.js.tab.php';
        }
    }
    $folders = Get::closestFolders($destination, 'ASC', null, 'key:path');
    Config::set(array('page_title' => $speak->shields . $config->title_separator . $config->manager->title, 'page' => Shield::info($folder, true), 'cargo' => 'cargo.shield.php'));
    Shield::lot(array('segment' => 'shield', 'folder' => $folder, 'folders' => $folders, 'files' => Mecha::O(Get::files($destination . DS . $folder, SCRIPT_EXT, 'ASC', 'path'))))->attach('manager');
});
/**
 * Shield Repairer/Igniter
 * -----------------------
 */
Route::accept(array($config->manager->slug . '/shield/(:any)/ignite', $config->manager->slug . '/shield/(:any)/repair/file:(:all)'), function ($folder = false, $file = false) use($config, $speak) {
    if (!Guardian::happy(1)) {
        Shield::abort();
    }
    if (!($_folder = Shield::exist($folder))) {
        Shield::abort();
        // Folder not found!
    }
예제 #2
0
                        Weapon::fire(array('on_plugin_mount', 'on_plugin_' . md5($path) . '_mount'), array($P, $P));
                        Guardian::kick($config->manager->slug . '/plugin/' . $path);
                        // Redirect to the plugin manager page
                    } else {
                        Guardian::kick($config->manager->slug . '/plugin?q=' . $path);
                    }
                }
            }
        } else {
            $tab_id = 'tab-content-2';
            include __DIR__ . DS . 'task.js.tab.php';
        }
    }
    $filter = Request::get('q', "");
    $filter = $filter ? Text::parse($filter, '->safe_file_name') : "";
    $s = Get::closestFolders($destination, 'ASC', 'path', $filter);
    if (!($folders = Mecha::eat($s)->chunk($offset, $config->manager->per_page)->vomit())) {
        Shield::abort();
    }
    Config::set(array('page_title' => $speak->plugins . $config->title_separator . $config->manager->title, 'offset' => $offset, 'pagination' => Navigator::extract($s, $offset, $config->manager->per_page, $config->manager->slug . '/plugin'), 'cargo' => 'cargo.plugin.php'));
    Shield::lot(array('segment' => 'plugin', 'folders' => Mecha::O($folders)))->attach('manager');
});
/**
 * Plugin Configurator
 * -------------------
 */
Route::accept($config->manager->slug . '/plugin/(:any)', function ($slug = 1) use($config, $speak) {
    if (is_numeric($slug)) {
        // It's an index page
        Route::execute($config->manager->slug . '/plugin/(:num)', array($slug));
    }