Files

89 lines
2.9 KiB
PHP

<?php
function stringEndsWith($string, $end) {
if (strlen($end) == 0) {
return false;
}
return substr($string, -strlen($end)) == $end;
}
session_start();
$included = true;
$lang = 'cs';
$url = $_SERVER['REQUEST_URI'] ?? '';
$root = '/2012-prosinec/';
$uri = substr($url, strpos($url, $root) + strlen($root));
if ($uri == '') {
header('Location: http://' . $_SERVER['HTTP_HOST'] . $root . $lang . '/');
exit;
} elseif (preg_match('/^([a-z]{2})\\/(.+)(\\?.*)?$/', $uri, $matches)) {
$lang = htmlspecialchars(substr($matches[1], 0, 2));
if (isset($matches[2]) && stringEndsWith($matches[2], 'main')) {
header('Location: http://' . $_SERVER['HTTP_HOST'] . $root . $lang . '/' . substr($matches[2], 0, -4));
exit;
}
$_GET['page'] = $matches[2] ?? '';
} elseif (preg_match('/^([a-z]{2})\\/(?:(.*)\\/)?$/', $uri, $matches)) {
$lang = htmlspecialchars(substr($matches[1], 0, 2));
$_GET['page'] = (isset($matches[2]) ? $matches[2] . '/' : '') . 'main';
} else {
$_GET['page'] = 'error/404';
}
if (!in_array($lang, ['cs', 'de'], true)) {
header('Location: http://' . $_SERVER['HTTP_HOST'] . '/cs/' . ($_GET['page'] ?? ''));
exit;
}
$page = htmlspecialchars($_GET['page']);
$pretitle = '3. Česko-německý skirogaining';
$mainMail = 'tojnar@gmail.com';
require $lang . '.php';
$CMS['%url%'] = 'http://' . $_SERVER['HTTP_HOST'] . htmlspecialchars($url);
$CMS['%root%'] = rtrim($root, '/');
$CMS['%lang%'] = $lang;
$CMS['%unknownAuthor%'] = 'Jan Tojnar';
$CMS['%headerLinkHref%'] = rplc('%root%/') . $lang . '/';
$CMS['%pretitle%'] = $pretitle;
$CMS['%comefrom%'] = $_SERVER['HTTP_REFERER'] ?? 'n/a';
$CMS['%dateFormat%'] = 'd.m.Y H:i';
function rplc($string) {
global $CMS;
return str_replace(array_keys($CMS), $CMS, $string);
}
require __DIR__ . '/../sboard.php';
require __DIR__ . '/../load.lib.php';
readPage($page);
$CMS['%releasedate%'] = toDate($date);
$CMS['%releasetime%'] = toTime($date);
if (isReleased($date) == false) {
$notreleased = true;
} else {
$notreleased = false;
}
if ($notreleased == true) {
readPage('error/notreleased');
}
$CMS['%title%'] = $title;
$CMS['%titleTag%'] = str_replace(['%pretitle%', '%title%'], [$pretitle, $title], rplc('%longTitle%'));
$CMS['%langPanel%'] = $langPanel;
$CMS['%article%'] = $article;
$CMS['%menu%'] = $menu;
if (!empty($author) and !empty($date)) {
$aInfo = str_replace(['%author%', '%date%', '%time%'], [author($author), toDate($date), toTime($date)], rplc('%by%'));
} elseif (!empty($author)) {
$aInfo = str_replace('%author%', author($author), rplc('%byAuthor%'));
} elseif (!empty($date)) {
$aInfo = str_replace(['%date%', '%time%'], [toDate($date), toTime($date)], rplc('%byDate%'));
} else {
$aInfo = '';
}
//var_dump(date(rplc("%dateFormat%"),filemtime($realPage)));
$CMS['%author%'] = $author;
$CMS['%ainfo%'] = $aInfo;
?>
<?php
ob_start(/*"ob_gzhandler"*/);
include 'template.html';
$buffer = ob_get_clean();
echo rplc(rplc($buffer));
?>