- css etwas aufgeräumt geändert: Makefile geändert: css/cwsvJudo-2018-header.css geändert: css/cwsvJudo-2018-wkKalender.css geändert: css/cwsvJudo-2018.css geändert: pandocTemplate/cwsvJudo.html5.pandocTemplate geändert: phpLib/cwsvJudo/miscAssis.php geändert: phpLib/cwsvJudo/wkKalender.php
123 lines
3.4 KiB
PHP
123 lines
3.4 KiB
PHP
<?php
|
|
/// Check if expression is positive integer
|
|
function is_positive_integer($str){
|
|
return (is_numeric($str) && $str > 0 && $str == round($str));
|
|
}
|
|
|
|
function getCwsvJudoDbConn(){
|
|
global $cwsvJudoConfig;
|
|
// Datenbankverbindung bereit stellen
|
|
try{
|
|
$db_connection = new PDO(
|
|
'mysql:host='.$cwsvJudoConfig["db"]["host"].';dbname='.$cwsvJudoConfig["db"]["name"],
|
|
$cwsvJudoConfig["db"]["user"],
|
|
$cwsvJudoConfig["db"]["password"]
|
|
);
|
|
}
|
|
catch(PDOException $db_error){
|
|
echo( "Error whilst getting a dbConnection!: " . $db_error->getMessage() );
|
|
}
|
|
return $db_connection;
|
|
}
|
|
|
|
/// Eine als String gegebene Liste kommagetrennter key=value Paare in
|
|
/// ein assoziatives Array überführen
|
|
function getKeyValueArray($aKeyValueStringList){
|
|
$retKeyValueArray = array();
|
|
foreach( explode(",", $aKeyValueStringList) as $keyValueString){
|
|
$keyValuePair = explode("=", $keyValueString);
|
|
$retKeyValueArray[$keyValuePair[0]] = $keyValuePair[1];
|
|
}
|
|
return $retKeyValueArray;
|
|
}
|
|
|
|
/// @brief Gibt die URL der gerade aufgerufenen Seite zurück
|
|
function getCurPagesUrl(){
|
|
$pageURL = 'http';
|
|
if ($_SERVER["HTTPS"] == "on"){
|
|
$pageURL .= "s";
|
|
}
|
|
$pageURL .= "://";
|
|
if($_SERVER["SERVER_PORT"] != "80"){
|
|
$pageURL .= $_SERVER["SERVER_NAME"].":".$_SERVER["SERVER_PORT"].$_SERVER["REQUEST_URI"];
|
|
}
|
|
else{
|
|
$pageURL .= $_SERVER["SERVER_NAME"].$_SERVER["REQUEST_URI"];
|
|
}
|
|
return $pageURL;
|
|
}
|
|
|
|
/// ein zufälliges Zitat aus der Datenbank abfragen
|
|
function getRandomCite($aDbConnection, $optionsArray = array("dbCharset" => "ISO-8859-1", "outCharset" => "UTF-8") ){
|
|
if(!$aDbConnection) return NULL;
|
|
|
|
if( empty($optionsArray['dbCharset']) ) $optionsArray['dbCharset'] = "ISO-8859-1";
|
|
if( empty($optionsArray['outCharset']) ) $optionsArray['outCharset'] = "UTF-8";
|
|
|
|
try{
|
|
$pdoStatementForQuerryingZitat = $aDbConnection->prepare(
|
|
"SELECT * FROM zitate ORDER BY RAND() LIMIT 1;"
|
|
);
|
|
$pdoStatementForQuerryingZitat->execute();
|
|
$retZitat = $pdoStatementForQuerryingZitat->fetchAll(PDO::FETCH_ASSOC);
|
|
|
|
// Zeichensatzkonvertierung
|
|
foreach($retZitat as &$entry){
|
|
array_walk(
|
|
$entry,
|
|
function (&$value, $key, $optionsArray) {
|
|
$value = iconv($optionsArray['dbCharset'], $optionsArray['outCharset'], $value);
|
|
},
|
|
$optionsArray
|
|
);
|
|
}
|
|
$retZitat = $retZitat[0];
|
|
}
|
|
catch(PDOException $db_error){
|
|
$retZitat['zitat'] = "There is no spoon!";
|
|
}
|
|
return $retZitat;
|
|
}
|
|
|
|
|
|
/// filtert aus einem Array einträge in der gegebenen Reihenfolge
|
|
function arrayKeyFilter($anArray, $someKeys){
|
|
// var_dump($anArray, $someKeys);
|
|
if( (is_array( $anArray ) || is_object( $anArray )) && ( is_array( $someKeys ) || is_object( $someKeys ) ) ){
|
|
$retArray = array();
|
|
foreach($someKeys as $key){
|
|
if( array_key_exists($key, $anArray) ){
|
|
$retArray[] = $anArray[$key];
|
|
}
|
|
}
|
|
return $retArray;
|
|
}
|
|
return null;
|
|
}
|
|
|
|
/// Linkeinträge aus einer jsonDatei laden
|
|
function jsonLinkFile2NavLinkList($aJsonFileName, $someLinkNames, $someOptions = [] ){
|
|
if( !file_exists($aJsonFileName) ) return null;
|
|
if( !(is_array( $someLinkNames ) || is_object( $someLinkNames )) ) return null;
|
|
|
|
return arrayKeyFilter(
|
|
json_decode(
|
|
file_get_contents($aJsonFileName),
|
|
true
|
|
),
|
|
$someLinkNames
|
|
);
|
|
}
|
|
|
|
function echoThisOrThat($this, $that){
|
|
echo( !empty($this) ? $this : $that );
|
|
}
|
|
function echoThisWhenThat($this, $that){
|
|
if( !empty($that) ) echo( $this );
|
|
}
|
|
function thisWhenThat($this, $that){
|
|
if( empty($that) ) return "";
|
|
return $this;
|
|
}
|
|
?>
|