function load() { // initiate the site and make pages and page // globally available $site = $this; $panel = $this; $pages = $this->pages; $page = $this->pages->active(); if ($page->isErrorPage() && $this->uri()->path() != c::get('404')) { go(url(c::get('404'))); } g::set('site', $this); g::set('panel', $this); g::set('pages', $pages); g::set('page', $page); // set the global template vars tpl::set('site', $this); tpl::set('panel', $this); tpl::set('pages', $pages); tpl::set('page', $page); // initiate the user settings $settings = new settings(); g::set('settings', $settings); // add a user $panel->user = new user(); // load the language paneload::language(); // check for a valid array of user accounts and other correct setups if (!check::installed() || !check::hasAccounts() || check::stillHasDefaultAccount() || check::wrongKirbyVersion() || check::disabledRewrite()) { require c::get('root.panel') . '/modals/installation.php'; return; } // add all panel info $panel->isHome = !$panel->uri->path(1) ? true : false; $panel->show = $panel->uri->param('show'); $panel->action = $panel->uri->param('do'); $panel->nocontent = (string) $page->contents() == '' ? true : false; if ($panel->isHome && $panel->show != 'info' && $panel->show != 'logout') { $panel->show = 'home'; } switch ($panel->action) { case 'edit-pages': $panel->sortable = true; break; } if ($panel->isHome) { $settings->pages = true; } switch ($panel->show) { case 'logout': $panel->user->logout(); exit; break; case 'files': $thumbDir = c::get('root') . '/thumbs'; $panel->fancybox = true; $panel->thumbs = is_dir($thumbDir) && is_writable($thumbDir) ? true : false; break; // more available views // more available views case 'info': case 'home': case 'pages': case 'options': if (($panel->show == 'home' || $panel->show == 'info') && !$panel->isHome) { go(url() . '/show:' . $panel->show); } break; default: $valid = array('options', 'content'); if (!in_array($panel->show, $valid)) { $panel->show = 'content'; } break; } // init the form if ($panel->show == 'info' || $panel->show == 'content') { $panel->form = new form($settings); } // set the template file; $panel->templateFile = $panel->show . '.php'; $panel->templateRoot = c::get('root.panel') . '/templates'; content::start(); if ($panel->user->isLoggedIn()) { require $panel->templateRoot . '/header.php'; require $panel->templateRoot . '/' . $panel->templateFile; require $panel->templateRoot . '/footer.php'; } else { require $panel->templateRoot . '/login.php'; } content::end(); }
<?php // direct access protection if (!defined('KIRBY')) { die('Direct access is not allowed'); } if (check::disabledRewrite()) { $step = 4; } else { if (check::wrongKirbyVersion()) { $step = 3; } else { if (check::installed()) { $step = 2; } else { $step = 1; } } } function relativePath($path) { return str_replace(server::get('DOCUMENT_ROOT'), '', $path); } ?> <!DOCTYPE html> <html lang="en"> <head> <title>Kirby Panel Installation</title> <meta charset="utf-8" /> <meta name="robots" content="noindex, nofollow" />