\n";
ob_start();
include 'menu.inc.html';
ob_start();
if ($User and property_exists($User, 'login') and $User->login) {
print '
';
printf('%s %s',
'👤',
'/login', $User->login
);
if ($User->admin("edit $Page$Args")) {
$editpage = $Page.$Args;
if (is_dir($editpage)) {
if (file_exists("$editpage/index.html")) {
$editpage .= '/index.html';
}
}
else {
$editpage .= '.html';
}
if (!file_exists($editpage) or is_writable($editpage)) {
print ' ✍';
}
}
print "
\n";
}
$nav = getoutput(['login' => ob_get_clean()]);
$nav = preg_replace_callback('{(.*?)}', function ($m) {
$request = $_SERVER['REQUEST_URI'];
$html = $request == $m[1] ? $m[2] : $m[0]; # text or full link
return $m[1] == substr($request, 0, strlen($m[1])) ? "$html" : $html;
}, $nav);
print $nav;
print "\n\n";
print $body;
register_shutdown_function(function () {
print '\n";
global $User, $Page, $Args;
if ($User and $User->admin("edit $Page$Args")) {
$ckesrc = '/lib/ckeditor'; # local install
if (!file_exists(DOCROOT . $ckesrc)) {
$ckesrc = '//cdn.ckeditor.com/4.15.1/full-all'; # remote fallback
}
printf("\n", "$ckesrc/ckeditor.js");
print ''."\n";
}
print "