'strip', 'allow_unsafe_links' => false, ]); $templateloader = new FilesystemLoader(__DIR__ . '/templates'); $twig_templates = new Environment($templateloader); $title = ''; $content = ''; $raumstatus_b = get_web_json('https://status.ctdo.de/api/simple/v2')["state"]; $raumstatus = 'unbekannt'; $pages = array('index', 'about', 'treff', 'blog', 'events', 'kontakt', 'support', 'verein'); $page_names = array('index', 'über uns', 'zeiten & location', 'blog', 'events', 'kontakt', 'support', 'verein'); $active_page = ''; if(gettype($raumstatus_b) == "boolean") { if($raumstatus_b) $raumstatus = html_link('https://status.ctdo.de/', 'green-text', 'offen', TRUE); else $raumstatus = html_link('https://status.ctdo.de/', 'red-text', 'geschlossen', TRUE); } $topic = get_next_topic(); $treff = get_next_treff(); $repaircafe = get_next_repaircafe(); $brunch = get_next_brunch(); $css = ['main']; if(isset($_GET['page'])) { $page = $_GET['page']; $active_page = str_mass_replace(array('adresse', 'irc', 'mail'), array('kontakt', 'kontakt', 'kontakt'), $page); $title = $page_names[array_search($active_page, $pages)]; switch ($page) { case 'index': $content = $converter->convert(file_get_contents(__DIR__ . '/pages/index.md')); $content = $twig_templates->render('index.twig', ['content' => $content, 'topic' => $topic, 'treff' => $treff, 'repaircafe' => $repaircafe, 'brunch' => $brunch, 'events' => generate_event_list() ]); $filetoedit = "pages/index.md"; $css[] = 'home'; $css[] = 'events'; break; case 'about': $content = $converter->convert(file_get_contents(__DIR__ . '/pages/about.md')); $filetoedit = "pages/about.md"; $css[] = 'about'; break; case 'treff': $content = $converter->convert(file_get_contents(__DIR__ . '/pages/treff.md')); $filetoedit = "pages/treff.md"; break; case 'blog': if(!isset($_GET['id'])) { $content = $twig_templates->render('blog.twig', [ 'posts' => generate_post_list() ]); $filetoedit = "templates/blog.twig"; $css[] = 'events'; } else { $content = $converter->convert(get_post_content($_GET['id'])); $filetoedit = "posts/".$_GET['id'].".md"; $css[] = 'event'; } break; case 'events': if(!isset($_GET['id'])) { $content = $twig_templates->render('events.twig', [ 'topic' => $topic, 'treff' => $treff, 'repaircafe' => $repaircafe, 'brunch' => $brunch, 'events' => generate_event_list() ]); $filetoedit = "templates/events.twig"; $css[] = 'events'; } else { $content = str_mass_replace(array('{{ topicdatum }}', 'Chaostreff Dortmund e.V.', '{{ treffdatum }}', '{{ repaircafedatum }}', '{{ brunchdatum }}'), array(get_next_topic()->date, html_link('/?page=treff', '', 'Chaostreff Dortmund e.V.', FALSE), get_next_treff()->date, get_next_repaircafe()->date, get_next_brunch()->date), $converter->convert(get_event_content($_GET['id']))); $filetoedit = "events/".$_GET['id'].".md"; $css[] = 'event'; } break; case 'kontakt': $content = $twig_templates->render('kontakt.twig'); $filetoedit = "templates/kontakt.twig"; $css[] = 'kontakt'; break; case 'adresse': $content = $converter->convert(file_get_contents(__DIR__ . '/pages/kontakt/adresse.md')).''; $filetoedit = "pages/kontakt/adresse.md"; break; case 'irc': $content = $converter->convert(file_get_contents(__DIR__ . '/pages/kontakt/irc.md')); $filetoedit = "pages/kontakt/irc.md"; break; case 'mail': $content = $converter->convert(file_get_contents(__DIR__ . '/pages/kontakt/mail.md')); $filetoedit = "pages/kontakt/mail.md"; break; case 'tel': $content = $converter->convert(file_get_contents(__DIR__ . '/pages/kontakt/tel.md')); $filetoedit = "pages/kontakt/tel.md"; break; case 'support': $content = $converter->convert(file_get_contents(__DIR__ . '/pages/support.md')); $filetoedit = "pages/kontakt/support.md"; break; case 'verein': $content = $converter->convert(file_get_contents(__DIR__ . '/pages/verein.md')); $filetoedit = "pages/verein.md"; break; case 'impressum': $title = 'impressum'; $content = $converter->convert(file_get_contents(__DIR__ . '/pages/impressum.md')); $filetoedit = "pages/impressum.md"; break; case 'datenschutz': $title = 'datenschutz'; $content = $converter->convert(file_get_contents(__DIR__ . '/pages/datenschutz.md')); $filetoedit = "pages/datenschutz.md"; break; default: $content = $twig_templates->render('404.twig', ['page' => $_GET['page']]); $filetoedit = "templates/404.twig"; break; } } else { $active_page = 'index'; $title = $active_page; $content = $converter->convert(file_get_contents(__DIR__ . '/pages/index.md')); $content = $twig_templates->render('index.twig', ['content' => $content, 'topic' => $topic, 'treff' => $treff, 'repaircafe' => $repaircafe, 'brunch' => $brunch, 'events' => generate_event_list() ]); $css[] = 'home'; $css[] = 'events'; } $nav = generate_nav($active_page, $pages, $page_names); echo $twig_templates->render('default.twig', ['title' => $title, 'css' => $css, 'nav' => $nav, 'raumstatus' => $raumstatus, 'main' => $content, 'file_to_edit' => $filetoedit]); ?>