Laufende Arbeiten am reDesign2018

- urlRewriting für "schönere" URL
	neue Datei:     markdownExperiment/.htaccess
	neue Datei:     markdownExperiment/.htaccess-phpAppender
- Ergänzungen im buildProzess
	geändert:       markdownExperiment/Makefile
- Umstellung auf externe yamlNavTargets

- buildFiles sind wiederherstellbar und müsen nicht getrackt werden
	gelöscht:       markdownExperiment/build/.uploadMarker/css/cwsvJudo.css
	gelöscht:       markdownExperiment/build/.uploadMarker/kontakt.php
	gelöscht:       markdownExperiment/build/.uploadMarker/verein.php
	gelöscht:       markdownExperiment/build/.uploadMarker/wkKalender.php
	gelöscht:       markdownExperiment/build/css/cwsvJudo.css
	gelöscht:       markdownExperiment/build/kontakt.php
	gelöscht:       markdownExperiment/build/verein.php
	gelöscht:       markdownExperiment/build/wkKalender.php
- ein config Verzeichnis für .. configDateien
	neue Datei:     markdownExperiment/config/.htaccess
	neue Datei:     markdownExperiment/config/cwsvJudo.config.php
	neue Datei:     markdownExperiment/config/db.inc
	neue Datei:     markdownExperiment/config/phpcount.config.php
- Änderungen/Ergänzungen/Verbesserungen am cssDesign
	neue Datei:     markdownExperiment/css/cwsvJudo-2018-galTable.css
	geändert:       markdownExperiment/css/cwsvJudo-2018-mainNav.css
	neue Datei:     markdownExperiment/css/cwsvJudo-2018-news.css
	geändert:       markdownExperiment/css/cwsvJudo-2018-subNav.css
	geändert:       markdownExperiment/css/cwsvJudo-2018-wkKalender.css
- neue Seiten
- Umstellung auf referenzierte navTargets
	neue Datei:     markdownExperiment/md/galerien.md
	neue Datei:     markdownExperiment/md/index.md
	neue Datei:     markdownExperiment/md/indexTest.md
	geändert:       markdownExperiment/md/kontakt.md
	neue Datei:     markdownExperiment/md/trainingszeiten.md
	geändert:       markdownExperiment/md/verein.md
	geändert:       markdownExperiment/md/wkKalender.md
- kleinere Änderungen
	geändert:       markdownExperiment/pandocTemplate/cwsvJudo.html5.pandocTemplate
- dynamische Inhalte werden mittels phpAufrufen realisiert
	neue Datei:     markdownExperiment/phpLib/cwsvJudo/galTable.php
	geändert:       markdownExperiment/phpLib/cwsvJudo/newsLib.php
	neue Datei:     markdownExperiment/phpLib/cwsvJudo/newsTableHtml.php
	geändert:       markdownExperiment/phpLib/cwsvJudo/wkKalender.php
- neuer Counter
	neue Datei:     markdownExperiment/phpLib/phpcount
- Experimente zu Anchor/References in yamlFiles im Zusammenspiel mit pandoc
	neue Datei:     markdownExperiment/temp/testingYamlRef/refTest.yaml
	neue Datei:     markdownExperiment/temp/testingYamlRef/refTestB.yaml
	neue Datei:     markdownExperiment/temp/testingYamlRef/refTestWikipedia.md
	neue Datei:     markdownExperiment/temp/testingYamlRef/refTestWikipedia.yaml
	neue Datei:     markdownExperiment/temp/testingYamlRef/yamltest.pandocTemplate
- pythonTool zum Mergen von yamlFiles
	neue Datei:     markdownExperiment/tools/yamlMerge.py
- Auslagerungen von navTargets in eigene yamlFiles, damit mehrfach vorkommende Ziele referenziert werden können (DRY)
	neue Datei:     markdownExperiment/index.yaml
	neue Datei:     markdownExperiment/yaml/galerien.subNav.yaml
	neue Datei:     markdownExperiment/yaml/index.subNav.yaml
	neue Datei:     markdownExperiment/yaml/kontakt.subNav.yaml
	neue Datei:     markdownExperiment/yaml/mainNav.yaml
	neue Datei:     markdownExperiment/yaml/navTargets.yaml
	neue Datei:     markdownExperiment/yaml/trainingszeiten.subNav.yaml
	neue Datei:     markdownExperiment/yaml/verein.subNav.yaml
	neue Datei:     markdownExperiment/yaml/wkKalender.subNav.yaml
This commit is contained in:
marko
2018-05-07 17:16:32 +02:00
parent 1372a27f67
commit a3ca5578f1
48 changed files with 697 additions and 1416 deletions

View File

@@ -0,0 +1,131 @@
<?php
function echoGalTable(){
global $cwsvJudoConfig;
$messages=array();
//include_once($_SERVER['DOCUMENT_ROOT']."/config/db.inc");
// Datenbankverbindung herstellen
// $mysqlConn = @new mysqli($db_server, $db_user, $db_password, $db_name);
$mysqlConn = @new mysqli(
$cwsvJudoConfig["db"]["host"],
$cwsvJudoConfig["db"]["user"],
$cwsvJudoConfig["db"]["password"],
$cwsvJudoConfig["db"]["name"]
);
if($mysqlConn->connect_error){
$messages['error'][] = "Datenbankverbindung fehlgeschlagen: " . $mysqlConn->connect_error . "<br />";
}
else{
// mögliche Werte für das Jahr herausfinden
$galJahresListe = array();
$queryJahresListe = "
SELECT DISTINCT DATE_FORMAT( datum, '%Y')
AS jahr
FROM cwsvjudo.wkGalerien
WHERE 1
ORDER BY DATE_FORMAT( datum, '%Y' ) DESC;
";
$mysqlResults = $mysqlConn->query($queryJahresListe);
if( !$mysqlResults ){
$messages['error'][] = "Fehler bei Datenbankabfrage '".$queryJahresListe."'<br />";
}
else{
while( $mysqlResult = $mysqlResults->fetch_assoc() ){
array_push( $galJahresListe, $mysqlResult['jahr']);
}
}
// standardmäßig frage die letzten 12 Galerien ab
$queryGals = "
SELECT id,datum,name,url,typ,teaserBildUrl
FROM cwsvjudo.wkGalerien
WHERE 1
ORDER BY datum DESC LIMIT 12
";
// Falls ein Konkretes Jahr angegebe wurde, fragen wir dies ab
$galJahr=( is_positive_integer($_GET['jahr'])?$_GET['jahr']:"" );
if($galJahr != ""){
$minDate = $galJahr."-01-01";
$maxDate = $galJahr."-12-31";
$queryGals = sprintf("
SELECT id,datum,name,url,typ,teaserBildUrl
FROM cwsvjudo.wkGalerien
WHERE datum >= '%s' AND datum <= '%s' ORDER BY datum ASC;",
$mysqlConn->real_escape_string($minDate),
$mysqlConn->real_escape_string($maxDate)
);
}
$galListe = array();
$mysqlResults = $mysqlConn->query($queryGals);
if( !$mysqlResults ){
$messages['error'][] = "Fehler bei Datenbankabfrage '".$queryGals."'<br />";
}
else{
while( $mysqlResult = $mysqlResults->fetch_assoc() ){
array_push( $galListe, $mysqlResult);
}
}
}
echo(
"Jahresauswahl:".
"<form class=\"yearSelector\">".
"<select name=\"jahr\" onchange=\"javascript: this.form.submit();\" >".
"<optgroup label=\"Jahresauswahl\">".
"<option value=\"\"".($galJahr!="" ? "" : " selected")." >Neueste</option>"
);
if( !is_array($galJahresListe) )
$messages['error'][] = "<div>Fehler bei der Jahreszahlenabfrage!</div>";
else{
foreach($galJahresListe as $jahr){
echo(
"<option value=\"".$jahr."\"".($galJahr==$jahr ? " selected" : "").">".$jahr."</option>"
);
}
}
echo(
"</optgroup>".
"</select>".
"<noscript>".
"<button type=\"submit\">wählen</button>".
"</noscript>".
"</form>".
"<table class=\"galTable\">".
"<thead><tr><th>Datum</th><th>Link zur Galerie</th></tr></thead>".
"<tbody>"
);
if( !is_array($galListe) )
$messages['error'][] = "<div>Fehler bei der Galerienabfrage!</div>";
else{
foreach($galListe as $gal){
echo(
"<tr onclick=\"window.document.location='".mb_convert_encoding($gal['url'], 'UTF-8', 'ISO-8859-1')."';\">".
// "<td class=\"noWrap\">".
"<td >".
"<time datetime=".mb_convert_encoding($gal['datum'], 'UTF-8', 'ISO-8859-1')."\">".mb_convert_encoding($gal['datum'], 'UTF-8', 'ISO-8859-1')."</time>".
"</td>".
// "<td class=\"floatClearBoth\">".
"<td >".
"<a href=\"".mb_convert_encoding($gal['url'], 'UTF-8', 'ISO-8859-1')."?galId=".$gal['id']."\">".
($gal['teaserBildUrl'] != "" ? "<div><img title=\"".mb_convert_encoding($gal['name'], 'UTF-8', 'ISO-8859-1')." - Bilder der Judoka des Chemnitzer WSV\" alt=\"Teaserbild ".mb_convert_encoding($gal['name'], 'UTF-8', 'ISO-8859-1')."\" src=\"".mb_convert_encoding($gal['teaserBildUrl'], 'UTF-8', 'ISO-8859-1')."\"/></div>" : "").
"<div>".mb_convert_encoding($gal['name'], 'UTF-8', 'ISO-8859-1')." (".mb_convert_encoding($gal['typ'], 'UTF-8', 'ISO-8859-1').")</div></a>".
"</td>".
"</tr>"
);
}
}
echo(
"</tbody>".
"</table>"
);
return;
}

View File

@@ -61,6 +61,14 @@ return $ret;
function getHtmlNews($aNews, $someOptions=""){
$options = getKeyValueArray($someOptions);
// schlechter Hack solange die Browser nicht von selbst ordentlich trennen
$aNews['betreff'] =
str_replace("meisterschaft", "&shy;meisterschaft", $aNews['betreff']);
$aNews['betreff'] =
str_replace("turnier", "&shy;turnier", $aNews['betreff']);
$aNews['betreff'] =
str_replace("randori", "&shy;randori", $aNews['betreff']);
$retHtml = "";
$retHtml .= "<article class=\"newsArtikel\">";
$retHtml .= "<div class=\"newsHeader\">";

View File

@@ -0,0 +1,42 @@
<?php
/// Ausgabe einer newsTabelle
function echoNewsTableHtml($someOptions){
global $cwsvJudoConfig;
global $basePath;
// Sammlung von Fehlermeldungen o.ä.
$message = array();
//require_once($basePath."/bonus/db.inc");
//include_once($basePath."/config/db.inc");
$limit = is_positive_integer($someOptions['limit'])?$someOptions['limit']:1;
/// Eine Datenbankverbindung (über pdo) erstellen
try{
$db_connection = new PDO(
"mysql:host=".$cwsvJudoConfig["db"]["host"].";".
"dbname=".$cwsvJudoConfig["db"]["name"],
$cwsvJudoConfig["db"]["user"],
$cwsvJudoConfig["db"]["password"]
);
}
catch(PDOException $db_error){
$messages['errors'][] = "Error: " . $db_error->getMessage();
}
// News abfragen
// @todo: woher das limit nehmen?
$newsList = getNews($db_connection, array('limit'=>$limit));
if( is_array( $newsList ) || is_object( $newsList ) )
foreach($newsList as $news)
echo( getHtmlNews($news, "headingLevel=2")."<hr />" );
else
$messages['errors'][] = "Fehler: Keine Neuigkeiten gefunden!";
// @todo: besser machen!
if(!empty($messages))
var_dump($messages);
return;
}

View File

@@ -16,20 +16,26 @@ return $ret;
// Ausgabe der Wettkampftabelle
// @todo: elaborieren
function wkTableHtml(){
global $cwsvJudoConfig;
// Vermutung ist, dass $__GET sowieso (?super?)global
// global $__GET
// require_once($_SERVER['DOCUMENT_ROOT']."/ressourcen/phpLib/miscAssis.php");
// require_once($_SERVER['DOCUMENT_ROOT']."/ressourcen/phpLib/breadcrumbList.php");
require_once($_SERVER['DOCUMENT_ROOT']."/bonus/db.inc");
global $basePath;
//require_once($basePath."/bonus/db.inc");
include_once($basePath."/bonus/db.inc");
// Deutsches Datumsformat
setlocale(LC_ALL, 'de_DE');
$message = array();
if(is_positive_integer($_GET['wkId'])){
$sqlConn = @new mysqli($db_server, $db_user, $db_password, $db_name);
// $sqlConn = @new mysqli($db_server, $db_user, $db_password, $db_name);
$sqlConn = @new mysqli(
$cwsvJudoConfig["db"]["host"],
$cwsvJudoConfig["db"]["user"],
$cwsvJudoConfig["db"]["password"],
$cwsvJudoConfig["db"]["name"]
);
if ($sqlConn->connect_error) {
$message['error'] .= "Datenbankverbindung fehlgeschlagen: " . $sqlConn->connect_error . "<br />";
}
@@ -38,7 +44,7 @@ function wkTableHtml(){
if( empty($wkData) ) $message['error'] .= "Fehler: WettkampfId ".$_GET['wkId']." nicht gefunden!<br />";
}
}
else $message['error'] .= "Fehler: wkId ist kein pos. Int (".$_GET['wkId'].")<br />";
// else $message['error'] .= "Fehler: wkId ist kein pos. Int (".$_GET['wkId'].")<br />";
/*
$breadcrumbs = array();
@@ -137,6 +143,14 @@ function wkTableHtml(){
"</script>"
);
// schlechter Hack solange die Browser nicht von selbst ordentlich trennen
$wk['Veranstaltung'] =
str_replace("meisterschaft", "&shy;meisterschaft", $wk['Veranstaltung']);
$wk['Veranstaltung'] =
str_replace("turnier", "&shy;turnier", $wk['Veranstaltung']);
$wk['Veranstaltung'] =
str_replace("randori", "&shy;randori", $wk['Veranstaltung']);
echo(
"<td class=\"noWrap\">".
"<time datetime=".mb_convert_encoding($wk['Datum'], 'UTF-8', 'ISO-8859-1')."\">".strftime("%Y-%m-%d (%a)", strtotime($wk['Datum']) )."</time>".

Submodule homepage/redesign2018/markdownExperiment/phpLib/phpcount added at f1d3b543d2