Exemple #1
0
<?php

/**
 * Page Manager
 * ------------
 */
Route::accept(array($config->manager->slug . '/page', $config->manager->slug . '/page/(:num)'), function ($offset = 1) use($config, $speak) {
    $pages = false;
    $offset = (int) $offset;
    if ($files = Mecha::eat(Get::pages('DESC', "", 'txt,draft,archive'))->chunk($offset, $config->manager->per_page)->vomit()) {
        $pages = array();
        foreach ($files as $file) {
            $pages[] = Get::pageHeader($file);
        }
        unset($files);
    } else {
        if ($offset !== 1) {
            Shield::abort();
        }
    }
    Config::set(array('page_title' => $speak->pages . $config->title_separator . $config->manager->title, 'offset' => $offset, 'pages' => $pages, 'pagination' => Navigator::extract(Get::pages('DESC', "", 'txt,draft,archive'), $offset, $config->manager->per_page, $config->manager->slug . '/page'), 'cargo' => DECK . DS . 'workers' . DS . 'cargo.page.php'));
    Shield::lot('segment', 'page')->attach('manager', false);
});
/**
 * Page Composer/Updater
 * ---------------------
 */
Route::accept(array($config->manager->slug . '/page/ignite', $config->manager->slug . '/page/repair/id:(:num)'), function ($id = false) use($config, $speak) {
    Config::set('cargo', DECK . DS . 'workers' . DS . 'repair.page.php');
    if ($id && ($page = Get::page($id, array('content', 'excerpt', 'tags', 'comments')))) {
        $extension_o = $page->state === 'published' ? '.txt' : '.draft';