'strip', 'allow_unsafe_links' => false, ]); $util = new Util(); $pageloader = new FilesystemLoader(__DIR__ . '/pages'); $templateloader = new FilesystemLoader(__DIR__ . '/templates'); $twig_pages = new Environment($pageloader); $twig_templates = new Environment($templateloader); $title = ''; $content = ''; $head = ''; $topictreff = $twig_templates->render('topictreff.html.twig'); $nextevents = $twig_templates->render('nextevents.html.twig'); $raumstatus_b = $util->raumstatus(); $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 = $util->html_link('https://status.ctdo.de/', 'green-text', 'offen', TRUE); else $raumstatus = $util->html_link('https://status.ctdo.de/', 'red-text', 'geschlossen', TRUE); } $topic = $util->get_next_topic(); $topiclink = 'Topictreff'; switch ($topic->days) { case 0: $topic_output = '

Der nächste '.$topiclink.' findet heute statt!

'; break; case 1: $topic_output = '

Der nächste '.$topiclink.' findet morgen statt!

'; break; default: $topic_output = '

Der nächste '.$topiclink.' findet in '.$topic->days.' Tagen ['.$topic->date.'] statt.

'; break; } $treff = $util->get_next_treff(); $trefflink = 'Treff'; switch ($topic->days) { case 0: $treff_output = '

Der nächste '.$trefflink.' findet heute statt!

'; break; case 1: $treff_output = '

Der nächste '.$trefflink.' findet morgen statt!

'; break; default: $treff_output = '

Der nächste '.$trefflink.' findet in '.$treff->days.' Tagen ['.$treff->date.'] statt.

'; break; } $repaircafe = $util->get_next_repaircafe(); $repaircafelink = 'RepairCafe'; switch ($topic->days) { case 0: $repaircafe_output = '

Das nächste '.$repaircafelink.' findet heute statt!

'; break; case 1: $repaircafe_output = '

Das nächste '.$repaircafelink.' findet morgen statt!

'; break; default: $repaircafe_output = '

Das nächste '.$repaircafelink.' findet in '.$repaircafe->days.' Tagen ['.$repaircafe->date.'] statt.

'; break; } if(isset($_GET['page'])) { $page = $_GET['page']; $active_page = $util->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 = $twig_pages->render('index.html.twig', [ 'topic' => $topic_output, 'posts' => $util->generate_post_list(4) ]); $head = $util->css_link('css/main.css').$util->css_link('css/home.css').$util->css_link('css/events.css'); break; case 'about': $content = $twig_pages->render('about.html.twig'); $head = $util->css_link('css/main.css').$util->css_link('css/about.css'); break; case 'treff': $content = $twig_pages->render('treff.html.twig'); $head = $util->css_link('css/main.css'); break; case 'blog': if(!isset($_GET['id'])) { $content = $twig_pages->render('blog.html.twig', [ 'posts' => $util->generate_post_list() ]); $head = $util->css_link('css/main.css').$util->css_link('css/events.css'); } else { $content = $converter->convert($util->get_post_content($_GET['id'])); $head = $util->css_link('css/main.css').$util->css_link('css/event.css'); } break; case 'events': if(!isset($_GET['id'])) { $content = $twig_pages->render('events.html.twig', [ 'topic' => $topic_output, 'treff' => $treff_output, 'repaircafe' => $repaircafe_output, 'events' => $util->generate_event_list() ]); $head = $util->css_link('css/main.css').$util->css_link('css/events.css'); } else { $content = $util->str_mass_replace(array('{{ topicdatum }}', 'Chaostreff Dortmund e.V.', '{{ treffdatum }}', '{{ repaircafedatum }}'), array($util->get_next_topic()->date, $util->html_link('/?page=treff', '', 'Chaostreff Dortmund e.V.', FALSE), $util->get_next_treff()->date, $util->get_next_repaircafe()->date), $converter->convert($util->get_event_content($_GET['id']))); $head = $util->css_link('css/main.css').$util->css_link('css/event.css'); } break; case 'kontakt': $content = $twig_pages->render('kontakt.html.twig'); $head = $util->css_link('css/main.css').$util->css_link('css/kontakt.css'); break; case 'adresse': $content = $twig_pages->render('kontakt/adresse.html.twig'); $head = $util->css_link('css/main.css'); break; case 'irc': $content = $twig_pages->render('kontakt/irc.html.twig'); $head = $util->css_link('css/main.css'); break; case 'mail': $content = $twig_pages->render('kontakt/mail.html.twig'); $head = $util->css_link('css/main.css'); break; case 'tel': $content = $twig_pages->render('kontakt/tel.html.twig'); $head = $util->css_link('css/main.css'); break; case 'support': $content = $twig_pages->render('support.html.twig'); $head = $util->css_link('css/main.css'); break; case 'verein': $content = $twig_pages->render('verein.html.twig'); $head = $util->css_link('css/main.css'); break; case 'impressum': $title = 'impressum'; $content = $twig_pages->render('impressum.html.twig'); $head = $util->css_link('css/main.css'); break; case 'datenschutz': $title = 'datenschutz'; $content = $twig_pages->render('datenschutz.html.twig'); $head = $util->css_link('css/main.css'); break; default: $content = $twig_pages->render('404.html.twig', ['page' => $_GET['page']]); $head = $util->css_link('css/main.css'); break; } } else { $active_page = 'index'; $title = $active_page; $content = $twig_pages->render('index.html.twig', [ 'topic' => $topic_output, 'posts' => $util->generate_post_list(4) ]); $head = $util->css_link('css/main.css').$util->css_link('css/home.css').$util->css_link('css/events.css'); } $nav = $util->generate_nav($active_page, $pages, $page_names); echo $twig_templates->render('html5struct.html.twig', ['title' => $title, 'head' => $head, 'nav' => $nav, 'raumstatus' => $raumstatus, 'main' => $content]); ?>