Erster Commit für das redesign2018
This commit is contained in:
418
homepage/redesign2018/markdownExperiment/kalender.php
Normal file
418
homepage/redesign2018/markdownExperiment/kalender.php
Normal file
@@ -0,0 +1,418 @@
|
||||
<?php
|
||||
// Standardvariablen und grundlegende Konfiguration (z.B. setlocale)
|
||||
require_once( "./config.inc.php" );
|
||||
require_once( $basePath."/bonus/db.inc" );
|
||||
|
||||
// Abfrage der Wettkampdaten der Einzelansicht
|
||||
|
||||
if(!empty($_GET['wkId'])){
|
||||
if( (string)(int)$_GET['wkId'] != $_GET['wkId'] ){
|
||||
$mysqlConn = @new mysqli($db_server, $db_user, $db_password, $db_name);
|
||||
if ($mysqlConn->connect_error) {
|
||||
$messages['error'] .= "Datenbankverbindung fehlgeschlagen: " . $mysqlConn->connect_error;
|
||||
}
|
||||
else{
|
||||
$wkInfo = array();
|
||||
$mysqlConn->query("USE cwsvjudo;");
|
||||
$wkInfoQuery = sprintf(
|
||||
"SELECT * FROM wettkampfkalender WHERE wettkampfkalender.lfdeNr = '%s';",
|
||||
$mysqlConn->real_escape_string($_GET['wkId'])
|
||||
);
|
||||
$wkResults = $mysqlConn->query($wkInfoQuery);
|
||||
if( empty($wkResults) ){
|
||||
$messages['error'] .= "Fehler bei Datenbankabfrage (".$wkInfoQuery.")!";
|
||||
}
|
||||
else{
|
||||
$wkInfo = $wkResults->fetch_assoc();
|
||||
// Zeichensatzkonvertierung
|
||||
array_walk(
|
||||
$wkInfo,
|
||||
function (&$value, $key) {
|
||||
$value = iconv("ISO-8859-1", "UTF-8", $value);
|
||||
}
|
||||
);
|
||||
}
|
||||
}
|
||||
if($mysqlConn) $mysqlConn->close();
|
||||
}
|
||||
}
|
||||
|
||||
$siteData = array();
|
||||
|
||||
$siteData['lang'] = "de";
|
||||
|
||||
$siteData['head']['title'] = "Judo im Chemnitzer WSV - Kinder- und Erwachsenentraining";
|
||||
if ( !empty($wkInfo) ){
|
||||
$siteData['head']['title'] = $wkInfo['Veranstaltung'];
|
||||
}
|
||||
else{
|
||||
$siteData['head']['title'] = empty($_GET["jahr"]) ? "Aktueller Wettkampfkalender" : "Wettkampfkalender ".$_GET["jahr"];
|
||||
}
|
||||
$siteData['head']['description'] = ( empty($_GET["jahr"]) ? "Aktueller Wettkampfkalender" : "Wettkampfkalender ".$_GET["jahr"] ) ." der Abteilung Judo des Chemnitzer Freizeit- und Wohngebietssportvereines";
|
||||
|
||||
$siteData['head']['keywords'] = "Judo, Wettkampf";
|
||||
$siteData['head']['author'] = "Marko Bunzel";
|
||||
/// @todo Wenn ich hier nichts angebe, wird getCurPagesUrl verwendet, was eine eventuelle Umstellung auf https vereinfachen würde
|
||||
/// @todo Sollte vielleicht nur verwendet werden, wenn wirklich ein alternativer Link (mobile/amp, andere domain ...) existiert
|
||||
$siteData['head']['canonicalLink'] = $baseUrl."/pages/responsive/kalender.php";
|
||||
$siteData['head']['alternateLink']['smallScreen'] = "http://cwsvjudo.bplaced.net/pages/mobile/verein.wettkampfkalender.php";
|
||||
|
||||
$siteData['structuredData']['website'] =
|
||||
"{\"@context\": \"http://www.schema.org\", ".
|
||||
"\"@type\": \"WebSite\", ".
|
||||
"\"name\": \"".( empty($_GET["jahr"]) ? "Aktueller Wettkampfkalender" : "Wettkampfkalender ".$_GET["jahr"] )." der Judoka des Chemnitzer WSV\", ".
|
||||
"\"alternateName\": \"Termine, Ausschreibungen und Wegbeschreibunge für Wettkämpfe der Abteilung Judo des Chemnitzer Freizeit- und Wohngebietssportvereines\", ".
|
||||
"\"url\": \"".$baseUrl."/pages/responsive/kalender.php".( empty($_GET["jahr"]) ? "" : "?jahr=".$_GET["jahr"] )."\"".
|
||||
"}";
|
||||
|
||||
$siteData['header']['h1'] = "Judo";
|
||||
$siteData['header']['breadcrumbs'] = array(
|
||||
array(
|
||||
"linkTarget" => $baseUrl."/pages/responsive/",
|
||||
"linkTitle" => "Startseite der Homepage der Sektion Judo des Chemnitzer Freizeit- und Wohngebietssportvereines",
|
||||
"caption" => "<img class=\"charImg\" src=\"".$baseUrl."/ressourcen/graphiken/banner/cwsv-judo-logo.png\" alt=\"Judo im Chemnitzer WSV - Logo\" title=\"Judo im Chemnitzer WSV\" />",
|
||||
),
|
||||
array(
|
||||
"linkTarget" => $baseUrl."/pages/responsive/kalender.php",
|
||||
"linkTitle" => "Wettkampfkalender der Sektion Judo des Chemnitzer Freizeit- und Wohngebietssportvereines",
|
||||
"caption" => "Wettkampfkalender",
|
||||
),
|
||||
);
|
||||
if( !empty( $_GET["jahr"]) )
|
||||
$siteData['header']['breadcrumbs'][] = array(
|
||||
"linkTarget" => $baseUrl."/pages/responsive/kalender.php?jahr=".$_GET["jahr"],
|
||||
"linkTitle" => "Wettkampfkalender ".$_GET["jahr"]." der Sektion Judo des Chemnitzer Freizeit- und Wohngebietssportvereines",
|
||||
"caption" => $_GET["jahr"],
|
||||
);
|
||||
|
||||
$siteData['mainNav'] = array(
|
||||
array(
|
||||
'caption' => 'Home',
|
||||
'title' => 'Homepage der Abteilung Judo des Chemnitzer Freizeit- und Wohngebietsportvereines',
|
||||
'href' => 'index.php',
|
||||
'isActive' => 'true'
|
||||
),
|
||||
array(
|
||||
'caption' => 'Verein',
|
||||
'title' => 'Informationen über den Chemnitzer Freizeit- und Wohngebietssportverein und dessen Sektion Judo',
|
||||
'href' => 'verein.php',
|
||||
//'isActive' => 'true'
|
||||
),
|
||||
array(
|
||||
'caption' => 'News',
|
||||
'title' => 'Bekanntmachungen der Abteilung Judo des Chemnitzer Freizeit- und Wohngebietsportvereines',
|
||||
'href' => 'news.php'
|
||||
),
|
||||
array(
|
||||
'caption' => 'Extras',
|
||||
'title' => 'Links, Downloads, ein kleines Quiz und Trainingshelferlein',
|
||||
'href' => 'extras.php'
|
||||
),
|
||||
array(
|
||||
'caption' => 'Kontakt',
|
||||
'title' => 'Möglichkeiten mit dem Chemnitzer Freizeit- und Wohngebietssportverein in Kontakt zu treten',
|
||||
'href' => 'kontakt.php',
|
||||
//'isActive' => 'true',
|
||||
),
|
||||
);
|
||||
|
||||
// @todo Ersteinmal das Standarduntermenü übernommen. Muss noch gegen
|
||||
// das Kalenderuntermenü ausgetauscht werden. Und es muss sich
|
||||
// Gedanken gemacht werden, wie das Untermenü auszusehen hat...
|
||||
$siteData['subNav'] = array(
|
||||
array(
|
||||
'caption' => "Trainings­zeiten",
|
||||
'icon' => "/ressourcen/graphiken/icons/clockIconFriendly.svg",
|
||||
'title' => "Trainingszeiten und -orte der Judoka des Chemnitzer WSV",
|
||||
'href' => "trainingszeiten.php"
|
||||
),
|
||||
array(
|
||||
'caption' => "Termine",
|
||||
'icon' => "/ressourcen/graphiken/icons/calendarIcon.svg",
|
||||
'title' => "Kalender mit Terminen für Wettkämpfe",
|
||||
'href' => "kalender.php"
|
||||
),
|
||||
array(
|
||||
'caption' => "Gallerien",
|
||||
'icon' => "/ressourcen/graphiken/icons/gallery.svg",
|
||||
'title' => "Bilder und Videos von unseren Wettkämpfen und sonstigen Veranstaltungen",
|
||||
'href' => "verein.galerien.php"
|
||||
),
|
||||
array(
|
||||
'caption' => "JudoWiki",
|
||||
'icon' => "/ressourcen/graphiken/icons/wikipediaW.svg",
|
||||
'title' => "Ein kleines Nachschlagewerk über Judo",
|
||||
'href' => "/JudoWiki"
|
||||
),
|
||||
array(
|
||||
'caption' => "Kontakt",
|
||||
'icon' => "/ressourcen/graphiken/icons/contact4Ways.svg",
|
||||
'title' => "Möglichkeiten mit dem Chemnitzer Freizeit- und Wohngebietssportverein in Kontakt zu treten",
|
||||
'href' => "kontakt.php"
|
||||
),
|
||||
);
|
||||
|
||||
$siteData['main'] = "";
|
||||
// Eine Einzelansicht, falls ein wkInfo ausgefüllt wurde
|
||||
if( !empty($wkInfo) ){
|
||||
$siteData['main'] .=
|
||||
"<h2>".$wkInfo['Veranstaltung']."</h2>".
|
||||
"<ul>".
|
||||
"<li>Datum: <time datetime=\"".$wkInfo['Datum']."\">".strftime("%a, %d. %B %Y", strtotime($wkInfo['Datum']) )."</time></li>".
|
||||
"<li>Altersklassen: ".$wkInfo['Altersklassen']."</li>".
|
||||
"<li>Ort: <a href=\"".$wkInfo['Routenplaner']."\">".$wkInfo['Ort']."</a></li>".
|
||||
"</ul>".
|
||||
"<nav>".
|
||||
"<ul>".
|
||||
"<li>".
|
||||
"<a href =\"".$wkInfo['Ausschreibung']."\">".
|
||||
"<div>Link zur Ausschreibung</div>".
|
||||
"</a>".
|
||||
"</li>".
|
||||
"<li>".
|
||||
"<a href=\"".$wkInfo['Routenplaner']."\">".
|
||||
"<div>Link zum Routenplaner</div>".
|
||||
"</a>".
|
||||
"</li>".
|
||||
"<li>".
|
||||
"<a href =\"".$basePath."/ressourcen/phpLib/calendar.php?wkID=".$wkInfo['lfdeNr']."\">".
|
||||
"<div>Termin als iCal</div>".
|
||||
"</a>".
|
||||
"</li>".
|
||||
"</ul>".
|
||||
"</nav>".
|
||||
"<hr />";
|
||||
}
|
||||
|
||||
// Die Tabelle mit den kommenden Wettkämpfen oder den Wettkämpfen eines Jahres
|
||||
try{
|
||||
$db_connection = new PDO('mysql:host='.$db_server.';dbname='.$db_name, $db_user, $db_password);
|
||||
// mögliche Werte für das jahr herausfinden
|
||||
$jahre = array();
|
||||
$query = "SELECT DISTINCT DATE_FORMAT( Datum, '%Y') FROM cwsvjudo.wettkampfkalender WHERE 1 ORDER BY DATE_FORMAT( Datum, '%Y' ) DESC";
|
||||
$ergebnis = $db_connection->query($query);
|
||||
foreach($ergebnis as $row){
|
||||
array_push($jahre, $row["DATE_FORMAT( Datum, '%Y')"]);
|
||||
}
|
||||
// ist das übergebene jahr ein gültiges?
|
||||
$jahr = $_GET["jahr"];
|
||||
if($jahr){
|
||||
if(in_array($jahr, $jahre)){
|
||||
$minDate = $jahr."-01-01";
|
||||
$maxDate = $jahr."-12-31";
|
||||
|
||||
$siteData['main'] .= "<h2>Wettkampfkalender ".$jahr."</h2>";
|
||||
}
|
||||
else{
|
||||
$siteData['main'] .= "Keine Wettkämpfe für das Jahr ".$jahr." gefunden!";
|
||||
}
|
||||
}
|
||||
else{
|
||||
$minDate = date("Y-m-d", time());
|
||||
$maxDate = "";
|
||||
|
||||
$siteData['main'] .= "<h2>Kommende Wettkämpfe</h2>";
|
||||
}
|
||||
|
||||
$query="SELECT Datum,Veranstaltung,Ausschreibung,Ort,Routenplaner,Altersklassen,lfdeNr FROM wettkampfkalender WHERE Datum >= \"".$minDate."\" ORDER BY Datum ASC";
|
||||
if($maxDate){
|
||||
$query="SELECT Datum,Veranstaltung,Ausschreibung,Ort,Routenplaner,Altersklassen,lfdeNr FROM wettkampfkalender WHERE Datum >= \"".$minDate."\" AND Datum <= \"".$maxDate."\" ORDER BY Datum ASC";
|
||||
}
|
||||
$ergebnis = $db_connection->query($query);
|
||||
|
||||
$siteData['main'] .=
|
||||
"<table class=\"wkKalender\">".
|
||||
"<thead>".
|
||||
"<tr>".
|
||||
"<th>Datum</th>".
|
||||
"<th>Veranstaltung</th>".
|
||||
"<th>Ort</th>".
|
||||
"<th>Altersklasse(n)</th>".
|
||||
"<th>iCal</th>".
|
||||
"</tr>".
|
||||
"</thead>".
|
||||
"<tbody>";
|
||||
|
||||
$ergebnis = $db_connection->query($query);
|
||||
$lastMonthName = "";
|
||||
foreach($ergebnis as $wk){
|
||||
array_walk(
|
||||
$wk,
|
||||
function (&$value, $key) {
|
||||
$value = iconv("ISO-8859-1", "UTF-8", $value);
|
||||
}
|
||||
);
|
||||
if($lastMonthName != strftime("%B", strtotime($wk['Datum']) )){
|
||||
$lastMonthName = strftime("%B", strtotime($wk['Datum']) );
|
||||
$siteData['main'] .= "<tr><th colspan=\"5\">".$lastMonthName."</th></tr>";
|
||||
$siteData['main'] .= "<tr><th colspan=\"5\"></th></tr>";
|
||||
}
|
||||
|
||||
$siteData['main'] .=
|
||||
"<tr>".
|
||||
"<script type=\"application/ld+json\">".
|
||||
"{".
|
||||
"\"@context\": \"http://schema.org\", ".
|
||||
"\"@type\": \"Event\", ".
|
||||
"\"name\": \"".$wk['Veranstaltung']."\", ".
|
||||
"\"startDate\": \"".$wk['Datum']."\", ".
|
||||
"\"endDate\": \"".$wk['Datum']."\", ".
|
||||
"\"url\": \"".$baseUrl."/pages/responsive/kalender.php?wkId=".$wk['lfdeNr']."\", ".
|
||||
"\"description\": \"Judo-Wettkampf der Altersklasse(n) ".$wk['Altersklassen']."\", ".
|
||||
"\"location\": {".
|
||||
"\"@type\": \"Place\", ".
|
||||
"\"name\": \"".$wk['Ort']."\", ".
|
||||
"\"address\": {".
|
||||
"\"@type\": \"PostalAddress\", ".
|
||||
"\"addressLocality\": \"".$wk['Ort']."\"".
|
||||
"}".
|
||||
"}".
|
||||
"}".
|
||||
"</script>".
|
||||
"<td class=\"noWrap\">".
|
||||
"<time datetime=\"".$wk['Datum']."\">".
|
||||
strftime("%Y-%m-%d (%a)", strtotime($wk['Datum']) ).
|
||||
"</time>".
|
||||
"</td>".
|
||||
"<td class=\"hyphenate\">".
|
||||
"<a title=\"Ausschreibung ".$wk['Veranstaltung']."\" href=\"".$wk['Ausschreibung']."\">".
|
||||
"<span property=\"name\">".$wk['Veranstaltung']."</span>".
|
||||
"</a>".
|
||||
"</td>".
|
||||
"<td>".
|
||||
"<a title=\"Wegbeschreibung ".$wk['Veranstaltung']."\" href=\"".$wk['Routenplaner']."\">".
|
||||
"<span>".$wk['Ort']."</span>".
|
||||
"</a>".
|
||||
"</td>".
|
||||
"<td>".
|
||||
$wk['Altersklassen'].
|
||||
"</td>".
|
||||
"<td>".
|
||||
"<a title=\"Termin für ".$wk['Veranstaltung']." als iCal\" href=\"".$baseUrl."/ressourcen/phpLib/calendar.php?wkID=".$wk['lfdeNr']."\">iCal</a>".
|
||||
"</td>".
|
||||
"</tr>";
|
||||
}
|
||||
$siteData['main'] .=
|
||||
"</tbody>".
|
||||
"<tfoot>".
|
||||
"<tr>".
|
||||
"<th>Datum</th>".
|
||||
"<th>Veranstaltung</th>".
|
||||
"<th>Ort</th>".
|
||||
"<th>Altersklasse(n)</th>".
|
||||
"<th>iCal</th>".
|
||||
"</tr>".
|
||||
"</tfoot>".
|
||||
"</table>".
|
||||
"<div style=\"font-size:xx-small\">".
|
||||
"Alle Angaben ohne Gewähr! Fehler und Ergänzungen dürfen gerne gemeldet werden.".
|
||||
"</div>".
|
||||
"<a href=\"".$baseUrl."/downloads/Ausschreibungen/\">Link zum Archiv mit allen Ausschreibungen</a>.".
|
||||
"<hr />".
|
||||
"<div class=\"wkSelektor\">".
|
||||
"Im folgendem kann man sich mehrere Wettkampftermine in einer <a href=\"https://de.wikipedia.org/wiki/ICalendar\">ICalendar</a>-Datei zusammenstellen. Zum An-/Abwählen bei gedrückter Strg-Taste mit der linken Maustaste die jeweiligen Wettkämpfe anklicken.".
|
||||
"<form action=\"".$baseUrl."/ressourcen/phpLib/wkCustomICal.php\" method=\"POST\">".
|
||||
"<label>Kommende Wettkämpfe:</label>".
|
||||
"<div><select name=\"wkIDs[]\" multiple=\"multiple\" size=\"5\">";
|
||||
|
||||
$ergebnis = $db_connection->query($query);
|
||||
foreach($ergebnis as $wk){
|
||||
array_walk(
|
||||
$wk,
|
||||
function (&$value, $key) {
|
||||
$value = iconv("ISO-8859-1", "UTF-8", $value);
|
||||
}
|
||||
);
|
||||
$siteData['main'] .=
|
||||
"<option value=\"".$wk['lfdeNr']."\">".
|
||||
$wk['Datum'].
|
||||
"--".
|
||||
$wk['Veranstaltung'].
|
||||
"(".$wk['Altersklassen'].")".
|
||||
"</option>";
|
||||
}
|
||||
|
||||
$siteData['main'] .=
|
||||
"</select></div>".
|
||||
"<button type=\"submit\">iCal erzeugen</button>".
|
||||
"</form>".
|
||||
"</div>";
|
||||
$db_connection = NULL;
|
||||
}
|
||||
catch(PDOException $db_error){
|
||||
$messages['error'] .= "Error: ".$db_error->getMessage()."<br/>";
|
||||
}
|
||||
|
||||
// Die Inhaltsdaten sind gesetzt, jetzt können sie in die Vorlage eingefügt werden
|
||||
require_once($basePath."/pages/responsive/cwsvJudo-Template.inc.php");
|
||||
|
||||
exit();
|
||||
?>
|
||||
|
||||
<!-- Vertikale Navigationsleiste an der Seite -->
|
||||
<!-- @todo muss bei Gelegenheit mal überarbeitet werden -->
|
||||
<div id="navVerti">
|
||||
<nav><ul>
|
||||
<li>
|
||||
<a title="Wettkampfplaner der Abteilung Judo des Chemnitzer WSV" href="/pages/desktop/wkParticipo/">
|
||||
Wett­kampf­pla­ner
|
||||
</a>
|
||||
</li>
|
||||
<?php
|
||||
if(!$_GET["jahr"]){
|
||||
echo "<li class=\"activeNav\">kommende Wett­kämpfe</li>";
|
||||
}
|
||||
else{
|
||||
echo "<li><a href=\"/pages/desktop/verein.wettkampfkalender.php\">komm­ende Wett­kämpfe</a></li>";
|
||||
}
|
||||
foreach($jahre as $runner){
|
||||
if($_GET["jahr"] == $runner){
|
||||
echo "<li class=\"activeNav\"> Wett­kämpfe ".$runner."</li>";
|
||||
}
|
||||
else{
|
||||
echo "<li><a href=\"/pages/desktop/verein.wettkampfkalender.php?jahr=".$runner."\">Wett­kämpfe ".$runner."</a></li>";
|
||||
}
|
||||
}
|
||||
?>
|
||||
</ul></nav>
|
||||
<hr />
|
||||
<!--Anfang der Einbindung des Counters; die Zeile 'TEMPLATE;' DARF NICHT EINGERÜCKT SEIN-->
|
||||
<div>
|
||||
<?php
|
||||
$chCounter_template = <<<TEMPLATE
|
||||
<span class="bold">Besucher</span><br/>
|
||||
Online: {V_VISITORS_CURRENTLY_ONLINE}<br/>
|
||||
Heute: {V_VISITORS_TODAY}<br/>
|
||||
Gestern: {V_VISITORS_YESTERDAY}<br/>
|
||||
Tagesrekord: {V_MAX_VISITORS_PER_DAY}<br/>
|
||||
Insgesamt: {V_TOTAL_VISITORS}<br/>
|
||||
<span class="bold">Seitenaufrufe</span><br/>
|
||||
Diese Seite: {V_PAGE_VIEWS_THIS_PAGE}<br/>
|
||||
Insgesamt: {V_TOTAL_PAGE_VIEWS}<br/>
|
||||
TEMPLATE;
|
||||
$chCounter_page_title = "Wettkampfkalender";
|
||||
if(!empty($_GET["jahr"])){
|
||||
$chCounter_page_title .= " ".$_GET["jahr"];
|
||||
}
|
||||
if(!empty($wkInfo['Veranstaltung'])){
|
||||
$chCounter_page_title .= " - ".mb_convert_encoding($wkInfo['Veranstaltung'], 'UTF-8', 'ISO-8859-1');
|
||||
}
|
||||
$chCounter_visible=1;
|
||||
include($_SERVER['DOCUMENT_ROOT']."/expCounter/counter.php");
|
||||
echo("<!--".$chCounter_page_title."-->");
|
||||
?>
|
||||
<!--Ende der Einbindung des Counters-->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<?php include($_SERVER['DOCUMENT_ROOT']."/pages/shared/sponsorList.html.inc");?>
|
||||
|
||||
<footer>
|
||||
<p>
|
||||
<a href="http://validator.w3.org/check?uri=http%3A%2F%2Fcwsvjudo.bplaced.net%2Fpages%2Fdesktop%2Fverein.wettkampfkalender.php<?php echo( urlencode(!empty($_SERVER['QUERY_STRING'])?"?".$_SERVER['QUERY_STRING']:"") );?>">Valid <img src="http://www.w3.org/html/logo/downloads/HTML5_1Color_Black.svg" alt="HTML 5" style="height:1em"></a>
|
||||
</p>
|
||||
</footer>
|
||||
<link rel="stylesheet" media="screen and (min-width: 641px)" href="/ressourcen/css/cwsvJudo.css" />
|
||||
<link rel="stylesheet" media="screen and (max-width: 640px)" href="/ressourcen/css/cwsvJudoMobile.css" />
|
||||
</body>
|
||||
</html>
|
||||
Reference in New Issue
Block a user