Einbindung aller Unterseiten, Einbindung vom Raumstatus

This commit is contained in:
xoy 2023-04-17 16:45:44 +02:00
parent 33ce7fa41c
commit 29984ad7d3
24 changed files with 127 additions and 365 deletions

View File

@ -10,15 +10,16 @@
| Name | Pfad | | Name | Pfad |
| --------------- | ----------- | | --------------- | ----------- |
| Eigene Elemente | /elements/ | | Templates | /templates/ |
| Seiten | /pages/ |
| Events | /events/ | | Events | /events/ |
| Bilder | /images/ | | Bilder | /images/ |
| CSS | /styles/ | | CSS | /css/ |
| PHP Scripts | /php/ | | PHP Scripts | /php/ |
## Erstellen neuer Events ## Erstellen neuer Events
Datei im Elementverzeichnis Anlegen: *YYYY-MM-DD.html* Datei im Eventverzeichnis Anlegen: *YYYY-MM-DD.html*
``` ```
title: Event Titel title: Event Titel

View File

View File

View File

@ -1,30 +1,92 @@
<?php <?php
require __DIR__ . '/vendor/autoload.php'; require __DIR__ . '/vendor/autoload.php';
require __DIR__ . '/php/util.php';
use Twig\Environment; use Twig\Environment;
use Twig\Loader\FilesystemLoader; use Twig\Loader\FilesystemLoader;
$util = new Util();
$pageloader = new FilesystemLoader(__DIR__ . '/pages'); $pageloader = new FilesystemLoader(__DIR__ . '/pages');
$templateloader = new FilesystemLoader(__DIR__ . '/templates'); $templateloader = new FilesystemLoader(__DIR__ . '/templates');
$twig_pages = new Environment($pageloader); $twig_pages = new Environment($pageloader);
$twig_templates = new Environment($templateloader); $twig_templates = new Environment($templateloader);
$title = ''; $title = '';
$content = ''; $content = '';
$csspath = ''; $head = '';
$topictreff = $twig_templates->render('topictreff.html.twig'); $topictreff = $twig_templates->render('topictreff.html.twig');
$nextevents = $twig_templates->render('nextevents.html.twig'); $nextevents = $twig_templates->render('nextevents.html.twig');
$raumstatus = 'unbekannt'; $raumstatus_b = $util->raumstatus();
$raumstatus = '<b>unbekannt</b>';
if(gettype($raumstatus_b) == "boolean") {
if($raumstatus_b)
$raumstatus = '<b class="green-text">offen</b>';
else
$raumstatus = '<b class="red-text">geschlossen</b>';
}
if(isset($_GET['page'])) { if(isset($_GET['page'])) {
$page = $_GET['page']; $page = $_GET['page'];
$title = $page;
switch ($page) { switch ($page) {
case 'index': case 'index':
$title = 'index'; $content = $twig_pages->render('index.html.twig');
$content = $twig_pages->render('index.html.twig', ['raumstatus' => 'unbekannt']); $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 'events':
$content = $twig_pages->render('events.html.twig');
$head = $util->css_link('css/main.css').$util->css_link('css/events.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':
$content = $twig_pages->render('impressum.html.twig');
$head = $util->css_link('css/main.css');
break;
case 'datenschutz':
$content = $twig_pages->render('datenschutz.html.twig');
$head = $util->css_link('css/main.css');
break; break;
default: default:
$content = $twig_pages->render('404.html.twig', ['page' => $_GET['page']]); $content = $twig_pages->render('404.html.twig', ['page' => $_GET['page']]);
@ -32,13 +94,8 @@ if(isset($_GET['page'])) {
} }
} else { } else {
$title = 'index'; $title = 'index';
$content = $twig_pages->render('index.html.twig', ['raumstatus' => 'unbekannt']); $content = $twig_pages->render('index.html.twig');
} }
$twig_templates->render('top.html.twig', ['title' => $title, 'csspath' => $csspath]); echo $twig_templates->render('html5struct.html.twig', ['title' => $title, 'head' => $head, 'raumstatus' => $raumstatus, 'main' => $content]);
echo $content;
$twig_templates->render('bottom.html.twig');
?> ?>

BIN
pages/.DS_Store vendored Normal file

Binary file not shown.

View File

@ -1,22 +1,3 @@
<!DOCTYPE html>
<html lang="de">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>ctdo - über uns</title>
<link rel="stylesheet" href="/styles/main.css">
</head>
<body>
<div class="newBanner">
Rundgang
</div>
<header>
<img src="/images/logo_ctdo.svg" alt="ctdo logo">
!NAV
</header>
<main>
!RAUMSTATUS !RAUMSTATUS
<h1>Wer wir sind</h1> <h1>Wer wir sind</h1>
@ -48,11 +29,3 @@
¹ <a href="https://en.wikipedia.org/wiki/ISO_8601">https://en.wikipedia.org/wiki/ISO_8601</a> ¹ <a href="https://en.wikipedia.org/wiki/ISO_8601">https://en.wikipedia.org/wiki/ISO_8601</a>
² Dies ist eine witzige Bemerkung ein s.g. “Running Gag” und ist als sarkastische Bemerkung zu verstehen! ² Dies ist eine witzige Bemerkung ein s.g. “Running Gag” und ist als sarkastische Bemerkung zu verstehen!
</p> </p>
</main>
<footer>
<nav>
</nav>
</footer>
</body>
</html>

File diff suppressed because one or more lines are too long

View File

@ -1,25 +0,0 @@
<!DOCTYPE html>
<html lang="de">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>ctdo - events</title>
<link rel="stylesheet" href="/styles/main.css">
<link rel="stylesheet" href="/styles/event.css">
</head>
<body>
<div class="newBanner">Rundgang</div>
<header>
<img src="/images/logo_ctdo.svg" alt="ctdo logo">
!NAV
</header>
<main>
!EVENTCONTENT
</main>
<footer>
!FOOTERNAV
</footer>
</body>
</html>

View File

@ -1,29 +1,5 @@
<!DOCTYPE html>
<html lang="de">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>ctdo - events</title>
<link rel="stylesheet" href="/styles/main.css">
<link rel="stylesheet" href="/styles/events.css">
</head>
<body>
<div class="newBanner">Rundgang</div>
<header>
<img src="/images/logo_ctdo.svg" alt="ctdo logo">
!NAV
</header>
<main>
!RAUMSTATUS !RAUMSTATUS
<h1>Events</h1> <h1>Events</h1>
!TOPICTREFF !TOPICTREFF
!EVENTS !EVENTS
</main>
<footer>
!FOOTERNAV
</footer>
</body>
</html>

View File

@ -1,22 +1,3 @@
<!DOCTYPE html>
<html lang="de">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>ctdo - impressum</title>
<link rel="stylesheet" href="/styles/main.css">
</head>
<body>
<div class="newBanner">
Rundgang
</div>
<header>
<img src="/images/logo_ctdo.svg" alt="ctdo logo">
!NAV
</header>
<main>
<h2>Impressum</h2> <h2>Impressum</h2>
<h3>Postanschrift</h3> <h3>Postanschrift</h3>
<p> <p>
@ -47,9 +28,3 @@
<h3>Flyer</h3> <h3>Flyer</h3>
<p>Unseren Aktuellen Fyler als PDF gibt es <a href="https://www.chaostreff-dortmund.de/presse/flyer/">hier</a></p> <p>Unseren Aktuellen Fyler als PDF gibt es <a href="https://www.chaostreff-dortmund.de/presse/flyer/">hier</a></p>
</main>
<footer>
!FOOTERNAV
</footer>
</body>
</html>

View File

@ -1,13 +1,4 @@
<div class="rundgang">
<a href="https://www.chaostreff-dortmund.de/rundgang/" target="_blank" class="imgLink">
<div>
<img src="/images/header.jpg" alt="Raum 2 mit gemütlichen Sofas"> <img src="/images/header.jpg" alt="Raum 2 mit gemütlichen Sofas">
<h2>Rundgang</h2>
</div>
</a>
</div>
<p>Raumstatus: {{ raumstatus }}</p>
<h2>Hi</h2> <h2>Hi</h2>
<p> <p>

View File

@ -1,37 +1,13 @@
<!DOCTYPE html> <a href="?page=irc">
<html lang="de">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>ctdo - home</title>
<link rel="stylesheet" href="/styles/main.css">
<link rel="stylesheet" href="/styles/kontakt.css">
</head>
<body>
<div class="newBanner">Rundgang</div>
<header>
<img src="/images/logo_ctdo.svg" alt="ctdo logo">
!NAV
</header>
<main>
<a href="/kontakt/irc">
<img src="/images/chat_knopf.webp" alt="irc"> <img src="/images/chat_knopf.webp" alt="irc">
</a> </a>
<a href="/kontakt/mail"> <a href="?page=mail">
<img src="/images/mail_knopf.webp" alt="email"> <img src="/images/mail_knopf.webp" alt="email">
</a> </a>
<br> <br>
<a href="/kontakt/tel"> <a href="?page=tel">
<img src="/images/tel_knopf.webp" alt="tel"> <img src="/images/tel_knopf.webp" alt="tel">
</a> </a>
<a href="/kontakt/adresse"> <a href="?page=adresse">
<img src="/images/adresse_knopf.webp" alt="adresse"> <img src="/images/adresse_knopf.webp" alt="adresse">
</a> </a>
</main>
<footer>
!FOOTERNAV
</footer>
</body>
</html>

View File

@ -1,20 +1,4 @@
<!DOCTYPE html> <a href="?page=kontakt">Zurück</a>
<html lang="de">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>ctdo - adresse</title>
<link rel="stylesheet" href="/style/main.css">
</head>
<body>
!NEWBANNER
<header>
<img src="/image/logo_ctdo.svg" alt="ctdo logo">
!NAV
</header>
<main>
<a href="/kontakt">Zurück</a>
<h2>Adresse</h2> <h2>Adresse</h2>
<p> <p>
@ -25,9 +9,3 @@
</p> </p>
<iframe scrolling="no" marginheight="0" marginwidth="0" src="https://www.openstreetmap.org/export/embed.html?bbox=7.463200986385346%2C51.52693021432671%2C7.4667415022850046%2C51.52841869497588&amp;layer=mapnik&amp;marker=51.52767446073405%2C7.464971244335175" frameborder="0" class="osm"></iframe> <iframe scrolling="no" marginheight="0" marginwidth="0" src="https://www.openstreetmap.org/export/embed.html?bbox=7.463200986385346%2C51.52693021432671%2C7.4667415022850046%2C51.52841869497588&amp;layer=mapnik&amp;marker=51.52767446073405%2C7.464971244335175" frameborder="0" class="osm"></iframe>
</main>
<footer>
!FOOTERNAV
</footer>
</body>
</html>

View File

@ -1,20 +1,4 @@
<!DOCTYPE html> <a href="?page=kontakt">Zurück</a>
<html lang="de">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>ctdo - irc</title>
<link rel="stylesheet" href="/style/main.css">
</head>
<body>
!NEWBANNER
<header>
<img src="/image/logo_ctdo.svg" alt="ctdo logo">
!NAV
</header>
<main>
<a href="/kontakt">Zurück</a>
<h2>IRC</h2> <h2>IRC</h2>
<p> <p>
@ -48,9 +32,3 @@
<br> <br>
\o/ du kannst uns jetzt Nachrichten schreiben. \o/ du kannst uns jetzt Nachrichten schreiben.
</p> </p>
</main>
<footer>
!FOOTERNAV
</footer>
</body>
</html>

View File

@ -1,20 +1,4 @@
<!DOCTYPE html> <a href="?page=kontakt">Zurück</a>
<html lang="de">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>ctdo - email</title>
<link rel="stylesheet" href="/style/main.css">
</head>
<body>
!NEWBANNER
<header>
<img src="/image/logo_ctdo.svg" alt="ctdo logo">
!NAV
</header>
<main>
<a href="/kontakt">Zurück</a>
<h2>eMail</h2> <h2>eMail</h2>
<p> <p>
@ -53,9 +37,3 @@
<h4>Ich habe technische Probleme</h4> <h4>Ich habe technische Probleme</h4>
<p>Bei technischen Problemen (subscription passt nicht) kann dem Listen-Owner geschrieben werden. Diese/r wird versuchen, dich innerhalb ihrer/seiner Möglichkeiten, nach bestem Wissen und Gewissen, zu unterstützen.</p> <p>Bei technischen Problemen (subscription passt nicht) kann dem Listen-Owner geschrieben werden. Diese/r wird versuchen, dich innerhalb ihrer/seiner Möglichkeiten, nach bestem Wissen und Gewissen, zu unterstützen.</p>
</main>
<footer>
!FOOTERNAV
</footer>
</body>
</html>

View File

@ -1,26 +1,4 @@
<!DOCTYPE html> <a href="?page=kontakt">Zurück</a>
<html lang="de">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>ctdo - telefon</title>
<link rel="stylesheet" href="/style/main.css">
</head>
<body>
!NEWBANNER
<header>
<img src="/image/logo_ctdo.svg" alt="ctdo logo">
!NAV
</header>
<main>
<a href="/kontakt">Zurück</a>
<h2>Telefon</h2> <h2>Telefon</h2>
<p>Wenn du eher auf Voice-Communication stehst (oder einfach wissen willst, ob jemand im Raum ist), kannst du uns auch anrufen: Es klingelt im Raum, wenn man <a href="tel:+492318404777">+49 (0)231 8 404 777</a> wählt.</p> <p>Wenn du eher auf Voice-Communication stehst (oder einfach wissen willst, ob jemand im Raum ist), kannst du uns auch anrufen: Es klingelt im Raum, wenn man <a href="tel:+492318404777">+49 (0)231 8 404 777</a> wählt.</p>
</main>
<footer>
!FOOTERNAV
</footer>
</body>
</html>

View File

@ -1,20 +1,3 @@
<!DOCTYPE html>
<html lang="de">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>ctdo - unterstützung</title>
<link rel="stylesheet" href="/styles/main.css">
</head>
<body>
<div class="newBanner">Rundgang</div>
<header>
<img src="/images/logo_ctdo.svg" alt="ctdo logo">
!NAV
</header>
<main>
<h2>Spenden</h2> <h2>Spenden</h2>
<p>Der Chaostreff Dortmund finanziert sich vollkommen aus sich selbst: Das bedeutet aus dem Portemonnaie seiner Mitglieder und oder derer, die den Treff für sinnvoll halten.</p> <p>Der Chaostreff Dortmund finanziert sich vollkommen aus sich selbst: Das bedeutet aus dem Portemonnaie seiner Mitglieder und oder derer, die den Treff für sinnvoll halten.</p>
@ -31,9 +14,3 @@
<br> <br>
<b>Der Chaostreff sagt in jedem Fall schon mal Danke!</b> <b>Der Chaostreff sagt in jedem Fall schon mal Danke!</b>
</p> </p>
</main>
<footer>
!FOOTERNAV
</footer>
</body>
</html>

View File

@ -1,20 +1,3 @@
<!DOCTYPE html>
<html lang="de">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>ctdo - zeiten & location</title>
<link rel="stylesheet" href="/styles/main.css">
</head>
<body>
<div class="newBanner">Rundgang</div>
<header>
<img src="/images/logo_ctdo.svg" alt="ctdo logo">
!NAV
</header>
<main>
!RAUMSTATUS !RAUMSTATUS
<h1>Zeiten</h1> <h1>Zeiten</h1>
@ -37,9 +20,3 @@
<br> <br>
Jeden ersten Donnerstag und jeden dritten Dienstag im Monat treffen wir uns zum „Topic Treff“ um verschiedene Themen rund um den Chaostreff zu besprechen. Alle sind herzlich eingeladen, Start ist um 20:00 Uhr. Jeden ersten Donnerstag und jeden dritten Dienstag im Monat treffen wir uns zum „Topic Treff“ um verschiedene Themen rund um den Chaostreff zu besprechen. Alle sind herzlich eingeladen, Start ist um 20:00 Uhr.
</p> </p>
</main>
<footer>
!FOOTERNAV
</footer>
</body>
</html>

View File

@ -1,20 +1,3 @@
<!DOCTYPE html>
<html lang="de">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>ctdo - verein</title>
<link rel="stylesheet" href="/styles/main.css">
</head>
<body>
<div class="newBanner">Rundgang</div>
<header>
<img src="/images/logo_ctdo.svg" alt="ctdo logo">
!NAV
</header>
<main>
<h2>Mitglied werden</h2> <h2>Mitglied werden</h2>
<p> <p>
Durch deine Mitgliedschaft kannst du dem CTDO direkt deine Unterstützung zukommen lassen. Wenn du uns zu deiner Mitgliedschaft einen freiwilligen Betrag spendest, wird dieser für neue Projekte und die Umsetzung von tollen Ideen verwendet.<br> Durch deine Mitgliedschaft kannst du dem CTDO direkt deine Unterstützung zukommen lassen. Wenn du uns zu deiner Mitgliedschaft einen freiwilligen Betrag spendest, wird dieser für neue Projekte und die Umsetzung von tollen Ideen verwendet.<br>
@ -50,9 +33,3 @@
<br> <br>
Schließlich haben wir es aber geschafft: 2012-02-09 kann als Datum gesehen werden, ab dem sich der Chaostreff Dortmund als eingetragener Verein bezeichnen darf. Einen weiteren Meilenstein erreichten wir etwas später: Das Finanzamt stellte uns die Anerkennung der Gemeinnützigkeit in Aussicht, zu der es noch einer Änderung in der Satzung bedurfte. Schließlich haben wir es aber geschafft: 2012-02-09 kann als Datum gesehen werden, ab dem sich der Chaostreff Dortmund als eingetragener Verein bezeichnen darf. Einen weiteren Meilenstein erreichten wir etwas später: Das Finanzamt stellte uns die Anerkennung der Gemeinnützigkeit in Aussicht, zu der es noch einer Änderung in der Satzung bedurfte.
</p> </p>
</main>
<footer>
!FOOTERNAV
</footer>
</body>
</html>

15
php/util.php Normal file
View File

@ -0,0 +1,15 @@
<?php
class Util {
function css_link($src) {
return '<link rel="stylesheet" href="'.$src.'">';
}
function raumstatus() {
$url = 'https://status.ctdo.de/api/simple/v2';
$data = json_decode(file_get_contents($url), true);
return $data['state'];
}
}
?>

View File

@ -1,12 +0,0 @@
</main>
<footer>
<nav>
<ul>
<li> <a href="/?page=impressum">impressum</a> </li>
<li> <a href="/?page=datenschutz">datenschutz</a> </li>
</ul>
</nav>
</footer>
</body>
</html>

View File

@ -7,11 +7,10 @@
<title>ctdo - {{ title }}</title> <title>ctdo - {{ title }}</title>
<link rel="stylesheet" href="/css/main.css"> {{ head | raw }}
<link rel="stylesheet" href="{{ csspath }}">
</head> </head>
<body> <body>
<div class="newBanner">Rundgang</div> <div class="newBanner"><a href="https://www.chaostreff-dortmund.de/rundgang/" target="_blank">Rundgang</a></div>
<header> <header>
<img src="/images/logo_ctdo.svg" alt="ctdo logo"> <img src="/images/logo_ctdo.svg" alt="ctdo logo">
@ -29,3 +28,19 @@
</header> </header>
<main> <main>
<p>Raumstatus: {{ raumstatus | raw }}</p>
{{ main | raw }}
</main>
<footer>
<nav>
<ul>
<li> <a href="/?page=impressum">impressum</a> </li>
<li> <a href="/?page=datenschutz">datenschutz</a> </li>
</ul>
</nav>
</footer>
</body>
</html>

BIN
vendor/.DS_Store vendored

Binary file not shown.