Simples Backup des Wettkampfplaners

zum Commit vorgemerkte Änderungen:
	neue Datei:     addEvent.php
	neue Datei:     addFahrt.php
	neue Datei:     addStarter.php
	neue Datei:     addStarterDev.php
	neue Datei:     admin/.htaccess
	neue Datei:     admin/addEvent.php
	neue Datei:     admin/addMitfahrer.php
	neue Datei:     admin/adminAddStarter.php
	neue Datei:     admin/adminFunctions.php
	neue Datei:     admin/adminFunctions.php.inc
	neue Datei:     admin/adminUpdateStarterErgebnis.php
	neue Datei:     admin/config.inc.php
	neue Datei:     admin/index.php
	neue Datei:     admin/listEvents.php
	neue Datei:     admin/listUsers.php
	neue Datei:     admin/newsLetter.php
	neue Datei:     admin/register.php
	neue Datei:     admin/resetPassword.php
	neue Datei:     admin/reseteMitfahrer.php
	neue Datei:     admin/showEvent.php
	neue Datei:     admin/showFahrt.php
	neue Datei:     admin/showUser.php
	neue Datei:     admin/verteileMitfahrer.php
	neue Datei:     auth.php
	neue Datei:     authLogin.php
	neue Datei:     calendar.php
	neue Datei:     changePassword.php
	neue Datei:     editFahrt.php
	neue Datei:     eventKalender.php
	neue Datei:     galImgPicker.php
	neue Datei:     horstWolfJudosport.php
	neue Datei:     index.php
	neue Datei:     infoZettel.php
	neue Datei:     lib/wkParticipoLib.php.inc
	neue Datei:     local/.htaccess
	neue Datei:     local/db.php.inc
	neue Datei:     local/wkParticipoConf.php.inc
	neue Datei:     login.php
	neue Datei:     loginDev.php
	neue Datei:     logout.php
	neue Datei:     showWkEvent.php
	neue Datei:     style.css
	neue Datei:     styleDev.css
	neue Datei:     test.php
	neue Datei:     userInfo.php
This commit is contained in:
marko
2018-07-21 15:27:42 +02:00
parent 6678acfba9
commit ddb11d096e
45 changed files with 5773 additions and 0 deletions

View File

@@ -0,0 +1,6 @@
AuthType Basic
AuthName "wkParticipoAdministration"
AuthUserFile /users/cwsvjudo/www/.htusers
#AuthGroupFile /users/cwsvjudo/www/.htgroups
Require user marko
#Require group admin

View File

@@ -0,0 +1,164 @@
<?php
require_once('../local/db.php.inc');
require_once('../local/wkParticipoConf.php.inc');
require_once('../lib/wkParticipoLib.php.inc');
$message = array();
$message['notice'] = "";
$message['error'] = "";
$message['success'] = "";
$message['wkData'] = "";
$eventWkId = isset($_POST['f']['wkId']) ? $_POST['f']['wkId'] : "";
$eventMeldefrist = isset($_POST['f']['meldefrist']) ? $_POST['f']['meldefrist'] : "";
// echo $_POST['f']['wkId']; echo $eventWkId; echo $eventMeldefrist; die();
/// Abfrage Kommender Wettkämpfe
$mysqlConn = @new mysqli($db_server, $db_user, $db_password, $db_name);
if($mysqlConn->connect_error){
$message['notice'] .= "Datenbankverbindung zur Wettkampflistenabfrage fehlgeschlagen: " . $mysqli->connect_error ."<br />";
}
else{
$wkData = getCommingWk($mysqlConn);
$mysqlConn->close();
$message['wkData'] .="<ul>";
foreach($wkData as $wk){
$message['wkData'] .=
"<li>wkId: ".$wk['lfdeNr']."<ul>".
"<li>Datum:".$wk['Datum']."</li>".
"<li>Name:".$wk['Veranstaltung']."</li>".
"<li>AK:".$wk['Altersklassen']."</li>".
"<li><form method=\"post\"><input type=\"hidden\" name=\"f[wkId]\" id=\"wkId\" value=\"".htmlspecialchars($wk['lfdeNr'])."\" /><button>wkId übernehmen</button></form></li>".
"</ul></li>";
}
$message['wkData'] .="</ul><br />";
}
if(!empty($_POST)){
// print_r($_POST);
if( empty($_POST['f']['wkId']) || empty($_POST['f']['meldefrist']) ){
// echo $_POST['f']['wkId']." aber ".$_POST['f']['meldefrist'];
$message['notice'] .= "Alle Felder ausfüllen und abschicken!<br />";
// print_r($message);
if( $eventWkId != "" ){
$mysqlConn = @new mysqli($db_server, $db_user, $db_password, $db_name);
if($mysqlConn->connect_error){
$message['notice'] .= "Datenbankverbindung zur Datumsabfrage der wkId '".$eventWkId."' fehlgeschlagen: " . $mysqli->connect_error ."<br />";
}
else{
$queryEventWkData = sprintf(
"SELECT lfdeNr, Datum, Veranstaltung, Altersklassen, Ort, Ausschreibung, Routenplaner
FROM wettkampfkalender
WHERE lfdeNr = '%s';",
$mysqlConn->real_escape_string($eventWkId)
);
$mysqlResults = $mysqlConn->query($queryEventWkData);
if( !$mysqlResults ){
$message['error'] .= "Fehler bei Datenbankabfrage '".$queryEventWkData."' (" . $mysqli->connect_error .")<br />";
}
else{
$eventWkResult = $mysqlResults->fetch_assoc();
$message['notice'] .= "<ul><li>".$eventWkResult['lfdeNr']."<ul>".
"<li>".$eventWkResult['Datum']."</li>".
"<li>".$eventWkResult['Veranstaltung']."</li>".
"<li>".$eventWkResult['Altersklassen']."</li>".
"</ul></li>".
"</ul>";
// $message['notice'] .= "eventWkDatum: ".$eventWkResult['Datum']."<br />";
$meldefrist = date(
"Y-m-d",
strtotime(
"last friday",
strtotime(
"last week",
strtotime( $eventWkResult['Datum'] )
)
)
);
// $message['notice'] .= "meldefrist: ".$meldefrist."<br />";
}
$mysqlConn->close();
}
}
else{
}
}
else{
$mysqli = @new mysqli($db_server, $db_user, $db_password, $db_name);
if ($mysqli->connect_error) {
$message['error'] = 'Datenbankverbindung fehlgeschlagen: ' . $mysqli->connect_error;
}
else{
$query = sprintf(
"INSERT INTO wkParticipo_Events (wkId, meldefrist)
SELECT * FROM (SELECT '%s', '%s') as new_event
WHERE NOT EXISTS (
SELECT wkId FROM wkParticipo_Events WHERE wkId = '%s'
) LIMIT 1;",
$mysqli->real_escape_string($_POST['f']['wkId']),
$mysqli->real_escape_string($_POST['f']['meldefrist']),
$mysqli->real_escape_string($_POST['f']['wkId'])
);
// echo $query;// die();
$result = $mysqli->query($query);
// echo $result; die();
if ($mysqli->affected_rows == 1) {
$message['success'] .=
"Neues Event zu wkId = ".htmlspecialchars($_POST['f']['wkId'])." angelegt!".
"<ul>".
"<li><a href=\".\">Zum Adminbereich</a></li>".
"<li><a href=\"../\">Zum Wettkampfplaner</a></li>".
"</ul>";
// header('Location: http://' . $_SERVER['HTTP_HOST'] . $wkParticipoConf['rootDir'] . '/index.php');
}
else{
$message['error'] = 'Event zu wkId = ' . $_POST['f']['wkId'] . ' bereits erstellt!.';
}
$mysqli->close();
}
}
}
else{
$message['notice'] .= "Übermitteln Sie das ausgefüllte Formular um ein neues Event zu erstellen.";
}
?>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>wkParticipo - addEvent.php</title>
<meta name="viewport" content="width=device-width" />
</head>
<body>
<form action="./addEvent.php" method="post">
<?php if ( $message['error'] != "" ): ?>
<fieldset class="error"><legend>Fehler</legend><?php echo $message['error'] ?></fieldset>
<?php endif;
if ( $message['success'] != "" ): ?>
<fieldset class="success"><legend>Erfolg</legend><?php echo $message['success'] ?></fieldset>
<?php endif;
if ( $message['notice'] != "" ): ?>
<fieldset class="notice"><legend>Hinweis</legend><?php echo $message['notice'] ?></fieldset>
<?php endif; ?>
<fieldset>
<legend>Eventdaten</legend>
<div><label for="wkId">wkId</label> <input type="text" name="f[wkId]" id="wkId"<?php echo isset($_POST['f']['wkId']) ? ' value="' . htmlspecialchars($_POST['f']['wkId']) . '"' : "";?> /></div>
<div>
<label for="meldefrist">meldefrist</label>
<input type="text" name="f[meldefrist]" id="meldefrist" <?php echo $meldefrist != "" ? "value=\"".htmlspecialchars($meldefrist)."\" " : "";?> />
</div>
</fieldset>
<fieldset>
<button>Erstellen</button>
</fieldset>
</form>
<?php if ( $message['wkData'] != "" ): ?>
<fieldset class="wkData"><legend>wkData</legend><?php echo $message['wkData'] ?></fieldset>
<?php endif; ?>
</body>
</html>

View File

@@ -0,0 +1,34 @@
<?php
require_once('../auth.php');
require_once('../local/db.php.inc');
require_once('../local/wkParticipoConf.php.inc');
require_once('../lib/wkParticipoLib.php.inc');
$message = array();
if(!empty($_POST)){
if( empty($_POST['f']['fahrtId']) || empty($_POST['f']['starterId']) ){
$message['error'] = 'Es wurden nicht alle Felder ausgefüllt.';
}
else{
$mysqli = @new mysqli($db_server, $db_user, $db_password, $db_name);
if ($mysqli->connect_error) {
$message['error'] = 'Datenbankverbindung fehlgeschlagen: ' . $mysqli->connect_error;
}
else{
$message = addMitfahrerToFahrt($mysqli, $_POST['f']['starterId'], $_POST['f']['fahrtId']);
$mysqli->close();
}
}
}
?>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>Wettkampfplanung - Administration - Hinzufügen eines Mitfahrers</title>
</head>
<body>
<?php echo htmlRetMessage($message);?>
<a href ="./listEvents.php">Zur Eventliste</a>
</body>
</html>

View File

@@ -0,0 +1,198 @@
<?php
require_once('../local/db.php.inc');
require_once('../local/wkParticipoConf.php.inc');
require_once('../auth.php');
require_once('../lib/wkParticipoLib.php.inc');
$message = array();
// $meldungsBox = array();
if( empty($_POST) ){
$message['error'] .= "Weder userId noch eventId übergeben!";
}
else{
if( !isset($_POST['f']['eventId']) ){
$message['error'] .= "Fehlende eventId (".$_POST['f']['eventId'].") (POST: ".var_export($_POST, true).")<br />";
}
if( !isset($_POST['f']['type']) ){
$message['error'] .= "Fehlender type (".$_POST['f']['type'].") (POST: ".var_export($_POST, true).")<br />";
}
else{
$mysqlConn = @new mysqli($db_server, $db_user, $db_password, $db_name);
if ($mysqlConn->connect_error) {
$message['error'] .= "Datenbankverbindung fehlgeschlagen: ".$mysqlConn->connect_error."<br /";
}
else{
$wkEventData = getEventData($mysqlConn, $_POST['f']['eventId']);
if( date("Y-m-d") > $wkEventData['meldefrist']){
$message['error'] .= "Die Meldefrist ist bereits abgelaufen!<br />";
}
else{
if( !isset($_POST['f']['userId']) ){
$query = sprintf(
"SELECT kinder FROM wkParticipo_Users WHERE id='%s';",
$mysqlConn->real_escape_string($_SESSION['user']['userId'])
);
$kinderResults = $mysqlConn->query($query);
if(!$kinderResults){
$message['warning'] .= "Fehler bei Abfrage der Kinder!<br />";
}
$kinderResult = $kinderResults->fetch_array();
$kinderIds = explode(',', $kinderResult['kinder']);
foreach($kinderIds as $kindId){
$query = sprintf("SELECT name, vorname FROM wkParticipo_Users WHERE id='%s';",
$mysqlConn->real_escape_string($kindId)
);
$kinderDaten = $mysqlConn->query($query);
if(!$kinderDaten){
$message['warning'] .= "Fehler bei Abfrage der Kinder!<br />";
}
if($mysqlConn->affected_rows != 1) $message['warning'] .= "Nicht eindeutige userId!<br />";
$kindDaten = $kinderDaten->fetch_array();
$meldungsBox =
"<div id=\"meldungsBox\">Meldung".
"<ul>".
"<li>F&uuml;r Wettkampf: ".mb_convert_encoding($wkEventData['Veranstaltung'], 'UTF-8', 'ISO-8859-1')."</li>".
"<li>F&uuml;r Starter: ".mb_convert_encoding($kindDaten['name'], 'UTF-8', 'ISO-8859-1').", ".mb_convert_encoding($kindDaten['vorname'], 'UTF-8', 'ISO-8859-1')."</li>".
"</ul>".
"<form action=\"./addStarter.php\" method=\"post\">".
"<input type=\"hidden\" name=\"f[eventId]\" id=\"eventId\"".(isset($_POST['f']['eventId']) ? " value=\"" . htmlspecialchars($_POST['f']['eventId']) . "\"" : "")." />".
"<input type=\"hidden\" name=\"f[userId]\" id=\"userId\"".(isset($kindId) ? " value=\"".htmlspecialchars($kindId)."\"" : "")." />".
"<select name=\"f[type]\"><option value=\"1\" selected>als Starter</option><option value=\"2\">als Zuschauer</option><option value=\"3\">keine Teilnahme</option></select>";
if( getUsersMeldeStatus($mysqlConn, $_POST['f']['eventId'], $kindId) ){
$meldungsBox .= "<div>Bereits gemeldet</div>";
}
else{
if( date("Y-m-d") > $wkEventData['meldefrist']){
$meldungsBox .= "<div>Die Meldefrist ist bereits abgelaufen!</div>";
}
else{
$meldungsBox .= "<button type=\"submit\" name=\"submit\">Melden</button>";
}
}
$meldungsBox .="</form></div>";
}
}
else{
$userData = getUserData($mysqlConn, $_SESSION['user']['userId']);
$starterData = getUserData($mysqlConn, $_POST['f']['userId']);
// if(
// !in_array(
// $_POST['f']['userId'],
// explode(',', getUserData($mysqlConn, $_SESSION['user']['userId'])['kinder'])
// )
// ){
// $message['error'] .= "Es fehlt die Berechtigung diesen Starter zu melden!<br />";
// }
// else{
$message = addStarterToEvent($mysqlConn, $_POST['f']['userId'], $_POST['f']['eventId'], $_POST['f']['type']);
if( isset($message['success']) ){
$notificationMail['to'] = $userData['eMail'];
$notificationMail['subject'] = "=?UTF-8?B?".base64_encode("Meldebestätigung")."?=";
$notificationMail['message'] = $starterData['name'] . ", " . $starterData['vorname'] . " zum Wettkampf " . $wkData['Veranstaltung'] . " gemeldet. Diese Mail wurde automatisch vom Wettkampfplaner bei der Meldung versandt.";
$notificationMail['headers'] = "From: noreply.wettkampflaner@cwsvjudo.bplaced.net\r\n".
"Reply-To: cwsvjudo@arcor.de\r\n".
"X-Mailer: PHP/".phpversion()."\r\n".
"Content-Type: text/plain; charset=UTF-8";
if(!empty($notificationMail['to'])){
mail ( $notificationMail['to'] , $notificationMail['subject'] , $notificationMail['message'], $notificationMail['headers'] );
}
$notificationMail['to'] = $wkParticipoConf['adminEmail'];
if(!empty($notificationMail['to'])){
mail ( $notificationMail['to'] , $notificationMail['subject'] , $notificationMail['message'], $notificationMail['headers'] );
}
}
// }
}
}
}
$mysqlConn->close();
}
}
}
?><!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Wettkampfplaner - Meldung</title>
<link rel="stylesheet" href="style.css">
</head>
<body>
<?php echo $login_status; ?>
<hr />
<?php
if( isset($message['success']) ){
?>
<?php echo $userData['name'].", ".$userData['vorname'];?> zum Wettkampf <?php echo $wkEventData['Veranstaltung'];?> gemeldet!<br />
<?php
}
else{
echo htmlRetMessage($message);
}
?>
<?php if(isset($meldungsBox)) echo $meldungsBox;?>
<nav>
<ul>
<li>
<a href="./index.php">
<div>zur Übersicht zurück</div>
</a>
</li>
<?php
if( isset($message['success']) ){
?>
<li>
<a href="./showWkEvent.php?eventId=<?php echo $wkEventData['id'];?>">
<div>
<?php echo "Detailansicht ".$wkEventData['Veranstaltung'];?>
</div>
</a>
</li>
<?php
}
?>
</ul>
</nav>
<!--
<div style="border: solid black"><?php echo var_export($wkEventData, true);?></div>
<div style="border: solid black"><?php echo var_export($userData, true);?></div>
<div style="border: solid black"><?php echo var_export($_SESSION, true);?></div>
<div style="border: solid black"><?php echo var_export($_POST, true);?></div>
<div id="meldungsBox">
Manuelle Meldung
<ul>
<li>F&uuml;r Wettkampf: <?php echo isset($wkEventData['Veranstaltung']) ? mb_convert_encoding($wkEventData['Veranstaltung'], 'UTF-8', 'ISO-8859-1') : "<fehlende Wettkampfdaten>" ?></li>
<li>F&uuml;r Starter: <?php echo isset($userData['vorname']) ? mb_convert_encoding($userData['vorname'], 'UTF-8', 'ISO-8859-1') : "<fehlender Vorname>" ?></li>
</ul>
<form action="./addStarterDev.php" method="post">
<fieldset>
<legend>Meldungsdaten</legend>
<div>
<label for="eventId">eventId</label>
<input type="text" name="f[eventId]" id="eventId" <?php echo isset($_POST['f']['eventId']) ? "value=\"".htmlspecialchars($_POST['f']['eventId'])."\"" : "" ?> />
</div>
<div>
<label for="userId">userId</label>
<input type="<?php echo isset($_POST['f']['userId']) ? "disabled" : "text" ?>" name="f[userId]" id="userId" <?php echo isset($_POST['f']['userId']) ? "value=\"".htmlspecialchars($_POST['f']['userId'])."\"" : "" ?> />
</div>
</fieldset>
<fieldset>
<div><button type="submit" name="submit" value="Meldung">Meldung</button></div>
</fieldset>
</form>
</div>
-->
</body>
</html>

View File

@@ -0,0 +1,64 @@
<?php
require_once('../local/db.php.inc');
require_once('../local/wkParticipoConf.php.inc');
require_once('../auth.php');
require_once('../lib/wkParticipoLib.php.inc');
$message = array();
if( empty($_POST) ){
$message['error'] = "Leeres POST!";
}
else{
if( empty($_POST['f']['adminFunction']) ){
$message['error'] = "Keine Funktion angegeben!";
}
else{
switch($_POST['f']['adminFunction']){
case "createStarterForEvent":
if( empty($_POST['f']['eventId']) or empty($_POST['f']['userId']) or empty($_POST['f']['type']) ){
$message['error'] .= "Nicht gePOSTete eventId oder userId oder typeID<br />";
}
else{
$mysqli = @new mysqli($db_server, $db_user, $db_password, $db_name);
if ($mysqli->connect_error) {
$message['error'] .= "Datenbankverbindung fehlgeschlagen: " . $mysqli->connect_error . "</br>";
}
else{
$message = createStarterForEvent($mysqli, $_POST['f']['eventId'], $_POST['f']['userId'], $_POST['f']['type']);
$mysqli->close();
}
}
case "updateStarterErgebnis":
if( empty($_POST['f']['starterId']) or empty($_POST['f']['masse']) or empty($_POST['f']['platzierungen']) ){
$message['error'] .= "Nicht gePOSTete starterId, masse oder platzierungen<br />";
}
else{
$mysqli = @new mysqli($db_server, $db_user, $db_password, $db_name);
if ($mysqli->connect_error) {
$message['error'] .= "Datenbankverbindung fehlgeschlagen: " . $mysqli->connect_error . "</br>";
}
else{
$message = updateStarterErgebnis($mysqli, $_POST['f']['starterId'], $_POST['f']['masse'], $_POST['f']['platzierungen']);
$mysqli->close();
}
}
break;
default:
$message['error'] .= "unbekannte Funktion ".$_POST['f']['adminFunction']."</br>";
}
}
}
?>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>Wettkampfplanung - Administration - adminFunctions</title>
</head>
<body>
<?php echo htmlRetMessage($message);?>
<a href ="./listEvents.php">Zur Eventliste</a>
</body>
</html>

View File

@@ -0,0 +1,38 @@
<?php
require_once( $_SERVER['DOCUMENT_ROOT'].'/ressourcen/phpLib/miscAssis.php');
function wkParticipo_admin_createStarterForEvent($aMySqlConn, $anEventId, $anUserId, $aTypeId){
$retMessage = array();
if(!is_positive_integer($anEventId)) $message['error'] .= "ungültige eventID '".$anEventId."'<br />";
if(!is_positive_integer($anUserId)) $message['error'] .= "ungültige userID '".$anUserId."'<br />";
if(!in_array($anUserId, array(0,1,2))) $message['error'] .= "ungültige typeID '".$aTypeId."'<br />";
if(!$aMySqlConn->ping()) $message['error'] .= "ungültige mySqlConn ".$mysqli->error."</ br>";
if(!empty($retMessage['error'])) return $retMessage;
$retMessage = createStarterForEvent($aMySqlConn, $anEventId, $anUserId, $aTypeId);
return $retMessage;
}
case "updateStarterErgebnis":
if( empty($_POST['f']['starterId']) or empty($_POST['f']['masse']) or empty($_POST['f']['platzierungen']) ){
$message['error'] .= "Nicht gePOSTete starterId, masse oder platzierungen<br />";
}
else{
$mysqli = @new mysqli($db_server, $db_user, $db_password, $db_name);
if ($mysqli->connect_error) {
$message['error'] .= "Datenbankverbindung fehlgeschlagen: " . $mysqli->connect_error . "</br>";
}
else{
$message = updateStarterErgebnis($mysqli, $_POST['f']['starterId'], $_POST['f']['masse'], $_POST['f']['platzierungen']);
$mysqli->close();
}
}
break;
default:
$message['error'] .= "unbekannte Funktion ".$_POST['f']['adminFunction']."</br>";
?>

View File

@@ -0,0 +1,55 @@
<?php
require_once('../local/db.php.inc');
require_once('../local/wkParticipoConf.php.inc');
require_once('../auth.php');
require_once('../lib/wkParticipoLib.php.inc');
$message = array();
$starterInfo = array();
if(!empty($_POST)){
if( empty($_POST['f']['starterId']) ){
$message['error'] .= 'ERR: Fehlende starterId!';
}
else{
$mysqli = @new mysqli($db_server, $db_user, $db_password, $db_name);
if ($mysqli->connect_error) {
$message['error'] .= 'Datenbankverbindung fehlgeschlagen: ' . $mysqli->connect_error;
}
else{
if( !empty($_POST['f']['masse']) and !empty($_POST['f']['platzierungen']) ){
$message = updateStarterErgebnis($mysqli, $_POST['f']['starterId'], $_POST['f']['masse'], $_POST['f']['platzierungen']);
}
else{
$message['warning'] .= "Masse und Platzierung eintragen!<br />";
print_r($_POST);
$starterInfo = getStarterInfo($mysqli, $_POST['f']['starterId']);
}
$mysqli->close();
}
}
}
else{
$message['warning'] .= 'Übermitteln Sie das ausgefüllte Formular um ein neues Event zu erstellen.';
}
?>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>Wettkampfplaner - Ergebnismeldung</title>
<link rel="stylesheet" href="style.css">
</head>
<body>
<?php echo htmlRetMessage($message); ?>
<?php print_r($starterInfo); ?>
<?php print_r($_POST); ?>
<div id="meldungsBox">
<form action="./adminUpdateStarterErgebnis.php" method="post">
<input type="hidden" name="f[starterId]" id="starterId"<?php echo isset($_POST['f']['starterId']) ? ' value="' . htmlspecialchars($_POST['f']['starterId']) . '"' : '' ?> />
Masse: <input type="text" name="f[masse]">
Platzierungen: <input type="text" name="f[platzierungen]">
<button type="submit" name="submit">Ergebnis eintragen</button>
</form>
</div>
<div><a href="./listEvents.php">Zur&uuml;ck zur &Uuml;bersicht</a></div>
</body>
</html>

View File

@@ -0,0 +1,23 @@
<?php
/// Die Basisdomain, unter der die Hauptseite zu erreichen ist
$baseDomain = "cwsvjudo.bplaced.net";
/// Subdomain, unter dem dieses Verzeichnis zu finden ist (falls der Fall gegeben ist)
$subDomain = "";
/// Basis(/Root)-Verzeichnis auf dem Server (für Dateizugriffe, insbesondere phpIncludes)
$basePath = "/users/cwsvjudo/www";
/// scheme-Part der URL (das Protokol)
$urlScheme = "http";
/// Url zum Zugriff auf "shared Data" unter der Hauptadresse
$baseUrl = $urlScheme."://".$baseDomain;
/// Die kanonische Url dieses Verzeichnisses (unter welcher
/// Domainadresse die Seiten dieses Verzeichnisses bevorzugt zu
/// erreichen seien sollen, also entweder eine SubdomainUrl, oder die
/// baseUrl mit dem Verzeichnis angehängt) evtl. Pfade müssen noch
/// angehangen werden.
/// Achtung: Gedacht für eine einheitliche Bezeichnung bei internem
/// Verlinken. Der canonicalLink im Header ist bei ampSeiten nicht die
/// eigene Adresse, sondern die (kanonische) Adresse der "normalen"
/// Version der Seite.
$canonicalUrlBase = $urlScheme."://".$subDomain.(!empty($subDomain)?".":"").$baseDomain;
?>

View File

@@ -0,0 +1,23 @@
<?php
require_once('../local/wkParticipoConf.php.inc');
require_once('../auth.php');
require_once('../local/db.php.inc');
require_once('../lib/wkParticipoLib.php.inc');
?>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Registersystem - index.php</title>
</head>
<body>
<?php echo $login_status; ?>
<h1>Inhalt</h1>
<p><a href="./register.php">Neuen Benutzer anlegen.</a></p>
<p><a href="./addEvent.php">Neuen Event anlegen.</a></p>
<p><a href="./listUsers.php">User anzeigen.</a></p>
<p><a href="./listEvents.php">Events anzeigen.</a></p>
</body>
</html>

View File

@@ -0,0 +1,58 @@
<?php
require_once('../local/wkParticipoConf.php.inc');
require_once('../auth.php');
require_once('../local/db.php.inc');
require_once('../lib/wkParticipoLib.php.inc');
?>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Wettkampfplanung - Administration - eventList</title>
<link rel="stylesheet" href="../style.css">
</head>
<body>
<?php
echo $login_status;
?>
<a class="touchLink" href="./index.php"><div>Zum Adminbereich zurück</div></a>
<hr />
<?php
$mysqli = @new mysqli($db_server, $db_user, $db_password, $db_name);
if ($mysqli->connect_error) {
$message['error'] = 'Datenbankverbindung fehlgeschlagen: ' . $mysqli->connect_error;
echo $message['error']; die();
}
$eventList = getAllEvents($mysqli);
foreach($eventList as $event){
$wkData = getWkData($mysqli, $event['wkId']);
?>
<div class="wkBox">
[<?php echo $event['id']?>] -- <?php echo mb_convert_encoding($wkData['Veranstaltung'], 'UTF-8', 'ISO-8859-1');?>
<ul>
<li>Meldefrist: <?php echo $event['meldefrist'];?></li>
<li>Datum: <?php echo $wkData['Datum'];?></li>
<li>Altersklassen: <?php echo mb_convert_encoding($wkData['Altersklassen'],'UTF-8');?></li>
<li><?php echo $event['wkId'];?></li>
</ul>
<form action="./showEvent.php" method="post">
<input type="hidden" name="f[eventId]" value="<?php echo (isset( $event['id'] ) ? $event['id'] : "");?>" />
<button type="submit">Event ansehen</button>
</form>
</div>
<hr />
<?php
}
?>
</ul>
<!--Beginn der Einbindung des Counters-->
<?php
$chCounter_page_title = "Wettkampfplanung - Administration - eventList";
$chCounter_visible=0;
//include( $_SERVER['DOCUMENT_ROOT'].'/expCounter/counter.php');?>
</body>
</html>

View File

@@ -0,0 +1,62 @@
<?php
require_once('../local/wkParticipoConf.php.inc');
require_once('../auth.php');
require_once('../local/db.php.inc');
require_once('../lib/wkParticipoLib.php.inc');
?>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Wettkampfplanung - Administration - userList</title>
<link rel="stylesheet" href="../style.css">
</head>
<body>
<?php
echo $login_status;
?>
<a class="touchLink" href="./index.php"><div>Zum Adminbereich zurück</div></a>
<hr />
<?php
$mysqli = @new mysqli($db_server, $db_user, $db_password, $db_name);
if ($mysqli->connect_error) {
$message['error'] = 'Datenbankverbindung fehlgeschlagen: ' . $mysqli->connect_error;
echo $message['error']; die();
}
$userList = getAllUsers($mysqli);
foreach($userList as $user){
?>
<div class=wkBox">
<ul>
<li>UserId: <?php echo $user['id']?></li>
<li>loginName: <?php echo $user['loginName']?></li>
<li>name: <?php echo $user['name']?></li>
<li>vorname: <?php echo $user['vorname']?></li>
<li>gebDatum: <?php echo $user['gebDatum']?></li>
<li>kinder: <?php echo $user['kinder']?></li>
<li>eltern: <?php echo $user['eltern']?></li>
<li>eMail: <?php echo $user['eMail']?></li>
<li>Debug: <ul><?php foreach($user as $key=>$value) echo("<li>".$key.": ".$value."</li>");?></ul></li>
</ul>
<form action="./showUser.php" method="post">
<input type="hidden" name="f[userId]" value="<?php echo (isset( $user['id'] ) ? $user['id'] : "");?>" />
<button type="submit">User ansehen</button>
</form>
</div>
<hr />
<?php
}
?>
</ul>
<!--Beginn der Einbindung des Counters-->
<?php
$chCounter_page_title = "Wettkampfplanung - Administration - userList";
$chCounter_visible=0;
//include( $_SERVER['DOCUMENT_ROOT'].'/expCounter/counter.php');?>
</body>
</html>

View File

@@ -0,0 +1,123 @@
<?php
require_once('config.inc.php');
require_once('../local/wkParticipoConf.php.inc');
// require_once('../auth.php');
require_once('../local/db.php.inc');
require_once('../lib/wkParticipoLib.php.inc');
try{
// Verbinding mit der Datenbank herstellen
$mysqlConn = new PDO('mysql:host='.$db_server.';dbname='.$db_name, $db_user, $db_password);
$queryForEmailAdresses =
"SELECT eMail from cwsvjudo.wkParticipo_Users ".
"WHERE kinder IS NOT NULL AND attribute LIKE '%wantsNewsletter=true%';";
$eMailErgebnis = $mysqlConn->query( $queryForEmailAdresses );
$eMailAdresses = $eMailErgebnis->fetchAll();
// print_r($eMailAdresses);die();
$queryForEinschreibefristen =
"SELECT cwsvjudo.wettkampfkalender.lfdeNr, ".
"cwsvjudo.wettkampfkalender.Datum, ".
"cwsvjudo.wettkampfkalender.Veranstaltung, ".
"cwsvjudo.wettkampfkalender.Altersklassen, ".
"cwsvjudo.wkParticipo_Events.id, ".
"cwsvjudo.wkParticipo_Events.meldefrist, ".
"cwsvjudo.wkParticipo_Events.wkId ".
"FROM cwsvjudo.wettkampfkalender JOIN cwsvjudo.wkParticipo_Events ".
"ON cwsvjudo.wettkampfkalender.lfdeNr = cwsvjudo.wkParticipo_Events.wkId ".
"WHERE cwsvjudo.wkParticipo_Events.meldefrist > CURDATE() AND cwsvjudo.wkParticipo_Events.meldefrist <= DATE_ADD(CURDATE(), INTERVAL 1 WEEK) ".
// "WHERE cwsvjudo.wkParticipo_Events.meldefrist > DATE_ADD(CURDATE(), INTERVAL 1 WEEK) AND cwsvjudo.wkParticipo_Events.meldefrist <= DATE_ADD(CURDATE(), INTERVAL 4 WEEK) ".
// "WHERE wkParticipo_Events.meldefrist <= DATE_ADD(CURDATE(), INTERVAL 1 WEEK) AND wkParticipo_Events.meldefrist >= CURDATE() ".
"ORDER BY wkParticipo_Events.meldefrist;";
$ergebnisEinschreibefristen = $mysqlConn->query( $queryForEinschreibefristen );
$dringendeEinschreibeFristen = $ergebnisEinschreibefristen->fetchAll();
$queryForEinschreibefristen =
"SELECT cwsvjudo.wettkampfkalender.lfdeNr, ".
"cwsvjudo.wettkampfkalender.Datum, ".
"cwsvjudo.wettkampfkalender.Veranstaltung, ".
"cwsvjudo.wettkampfkalender.Altersklassen, ".
"cwsvjudo.wkParticipo_Events.id, ".
"cwsvjudo.wkParticipo_Events.meldefrist, ".
"cwsvjudo.wkParticipo_Events.wkId ".
"FROM cwsvjudo.wettkampfkalender JOIN cwsvjudo.wkParticipo_Events ".
"ON cwsvjudo.wettkampfkalender.lfdeNr = cwsvjudo.wkParticipo_Events.wkId ".
// "WHERE cwsvjudo.wkParticipo_Events.meldefrist > CURDATE() AND cwsvjudo.wkParticipo_Events.meldefrist <= DATE_ADD(CURDATE(), INTERVAL 1 WEEK) ".
"WHERE cwsvjudo.wkParticipo_Events.meldefrist > DATE_ADD(CURDATE(), INTERVAL 1 WEEK) AND cwsvjudo.wkParticipo_Events.meldefrist <= DATE_ADD(CURDATE(), INTERVAL 4 WEEK) ".
"ORDER BY wkParticipo_Events.meldefrist;";
$ergebnisEinschreibefristen = $mysqlConn->query( $queryForEinschreibefristen );
$weitereEinschreibefristen = $ergebnisEinschreibefristen->fetchAll();
$mysqlConn = NULL;
}
catch(PDOException $db_error){
print "Error!: " . $db_error->getMessage() . "<br/>";
die();
}
?>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>wkParticipo -Adminbereich - Newslettertest</title>
</head>
<body>
<?php
// Überschreiben der eMailAdressen für DebuggingZwecke
// $eMailAdresses = array( array('eMail' => "judo.cwsv@t-online.de") );
// print_r( $eMailAdr ); die("Testzwecke");
$newsletter['subject'] = "=?UTF-8?B?".base64_encode("Newsletter anstehende Meldefristen und Wettkämpfe")."?=";
$newsletter['headers'] = "From: noreply.wettkampflaner@cwsvjudo.bplaced.net\r\nReply-To: cwsvjudo@arcor.de\r\nReturn-Path: cwsvjudo@arcor.de\r\nX-Mailer: PHP/".phpversion()."\r\nContent-Type: text/plain; charset=UTF-8";
$newsletter['message'] = "Meldefristen diese Woche:\r\n\r\n";
if( empty($dringendeEinschreibeFristen) )
$newsletter['message'] .= "Keine!\r\n";
foreach( $dringendeEinschreibeFristen as $event ){
$newsletter['message'] .= "\tDatum: ".mb_convert_encoding($event['Datum'], 'UTF-8', 'ISO-8859-1')."\r\n";
$newsletter['message'] .= "\tWettkampf: ".html_entity_decode(mb_convert_encoding($event['Veranstaltung'], 'UTF-8', 'ISO-8859-1'))."\r\n";
$newsletter['message'] .= "\tAltersklassen: ".mb_convert_encoding($event['Altersklassen'], 'UTF-8', 'ISO-8859-1')."\r\n";
$newsletter['message'] .= "\tMeldefrist: ".mb_convert_encoding($event['meldefrist'], 'UTF-8', 'ISO-8859-1')."\r\n";
$newsletter['message'] .= "\tLink: http://cwsvjudo.bplaced.net/pages/desktop/wkParticipo/showWkEvent.php?eventId=".$event['id']."\r\n";
$newsletter['message'] .= "\t\r\n";
}
$newsletter['message'] .= "Weitere Wettkämpfe der kommenden Wochen:\r\n\r\n";
if( empty($weitereEinschreibefristen) )
$newsletter['message'] .= "Erstmal Keine\r\n";
foreach( $weitereEinschreibefristen as $event ){
$newsletter['message'] .= "\tDatum: ".mb_convert_encoding($event['Datum'], 'UTF-8', 'ISO-8859-1')."\r\n";
$newsletter['message'] .= "\tWettkampf: ".html_entity_decode(mb_convert_encoding($event['Veranstaltung'], 'UTF-8', 'ISO-8859-1'))."\r\n";
$newsletter['message'] .= "\tAltersklassen: ".mb_convert_encoding($event['Altersklassen'], 'UTF-8', 'ISO-8859-1')."\r\n";
$newsletter['message'] .= "\tMeldefrist: ".mb_convert_encoding($event['meldefrist'], 'UTF-8', 'ISO-8859-1')."\r\n";
$newsletter['message'] .= "\tLink: http://cwsvjudo.bplaced.net/pages/desktop/wkParticipo/showWkEvent.php?eventId=".$event['id']."\r\n";
$newsletter['message'] .= "\t\r\n";
}
$newsletter['message'] .= "\r\n\r\nDiese Mail wird automatisch durch den Wettkampfplaner des Chemnitzer WSV (http://cwsvjudo.bplaced.net/pages/desktop/wkParticipo/) erstellt. Und dieser ist immer noch in einer Testphase. Sollte er also Fehler enthalten oder irgendwelche Probleme verursachen, meldet dies bitte.\r\n";
if( isset($_GET['sendNewsletter']) and (!empty($weitereEinschreibefristen) or !empty($dringendeEinschreibeFristen) )){
foreach( $eMailAdresses as $adr ){
if( !empty($adr) ){
mail( $adr['eMail'] , $newsletter['subject'] , $newsletter['message'], $newsletter['headers'] );
// echo $adr['eMail'].$newsletter['subject'].$newsletter['message'].$newsletter['headers'];
echo "Newsletter gesendet an ".$adr['eMail']."\n";
}
}
}
else{
echo "Nicht gesendet!";
}
?>
<div style="border: 1px black;">
<?php echo $newsletter['message'];?>
</div>
</body>
</html>

View File

@@ -0,0 +1,91 @@
<?php
require('../local/db.php.inc');
require_once('../local/wkParticipoConf.php.inc');
$message = array();
if (!empty($_POST)){
if ( empty($_POST['f']['username']) ){
$message['error'] = "Es muss ein Benutzername angegeben werden!";
}
else{
if ($_POST['f']['password'] != $_POST['f']['password_again']) {
$message['error'] = "Die eingegebenen Passwörter stimmen nicht überein.";
}
else{
$mysqli = @new mysqli($db_server, $db_user, $db_password, $db_name);
if ($mysqli->connect_error) {
$message['error'] = "Datenbankverbindung fehlgeschlagen: " . $mysqli->connect_error;
}
// Hinzufügen eines Users ohne Passwort
$query = sprintf(
"INSERT INTO wkParticipo_Users (loginName)
SELECT * FROM (SELECT '%s') as new_user
WHERE NOT EXISTS (
SELECT loginName FROM wkParticipo_Users WHERE loginName = '%s'
) LIMIT 1;",
$mysqli->real_escape_string($_POST['f']['username']),
$mysqli->real_escape_string($_POST['f']['username'])
);
if( !empty($_POST['f']['password']) ){
unset($_POST['f']['password_again']);
$_POST['f']['password'] =
password_hash( $_POST['f']['password'], PASSWORD_DEFAULT);
$query = sprintf(
"INSERT INTO wkParticipo_Users (loginName, pwHash)
SELECT * FROM (SELECT '%s', '%s') as new_user
WHERE NOT EXISTS (
SELECT loginName FROM wkParticipo_Users WHERE loginName = '%s'
) LIMIT 1;",
$mysqli->real_escape_string($_POST['f']['username']),
$mysqli->real_escape_string($_POST['f']['password']),
$mysqli->real_escape_string($_POST['f']['username'])
);
}
$result = $mysqli->query($query);
if ($mysqli->affected_rows == 1) {
$message['success'] = "Neuer Benutzer (" . htmlspecialchars($_POST['f']['username']) . ") wurde angelegt, <a href=\"login.php\">weiter zur Anmeldung</a>.";
header("Location: http://" . $_SERVER['HTTP_HOST'] . $wkParticipoConf['rootDir'] . "/login.php");
}
else{
$message['error'] = "Der Benutzername ist bereits vergeben.";
}
$mysqli->close();
}
}
}
else{
$message['notice'] = "Übermitteln Sie das ausgefüllte Formular um ein neues Benutzerkonto zu erstellen.";
}
?><!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>loginsystem - register.php</title>
</head>
<body>
<form action="./register.php" method="post">
<?php if (isset($message['error'])): ?>
<fieldset class="error"><legend>Fehler</legend><?php echo $message['error'] ?></fieldset>
<?php endif;
if (isset($message['success'])): ?>
<fieldset class="success"><legend>Erfolg</legend><?php echo $message['success'] ?></fieldset>
<?php endif;
if (isset($message['notice'])): ?>
<fieldset class="notice"><legend>Hinweis</legend><?php echo $message['notice'] ?></fieldset>
<?php endif; ?>
<fieldset>
<legend>Benutzerdaten</legend>
<div><label for="username">Benutzername</label> <input type="text" name="f[username]" id="username"<?php echo isset($_POST['f']['username']) ? ' value="' . htmlspecialchars($_POST['f']['username']) . '"' : '' ?> /></div>
<div><label for="password">Kennwort</label> <input type="password" name="f[password]" id="password" /></div>
<div><label for="password_again">Kennwort wiederholen</label> <input type="password" name="f[password_again]" id="password_again" /></div>
</fieldset>
<fieldset>
<div><input type="submit" name="submit" value="Registrieren" /></div>
</fieldset>
</form>
</body>
</html>

View File

@@ -0,0 +1,106 @@
<?php
require('../local/db.php.inc');
require_once('../local/wkParticipoConf.php.inc');
require_once('../auth.php');
require_once('../lib/wkParticipoLib.php.inc');
$message = array();
$mysqlConn = @new mysqli($db_server, $db_user, $db_password, $db_name);
if($mysqlConn->connect_error){
$message['error'] .= 'Datenbankverbindung fehlgeschlagen: ' . $mysqlConn->connect_error;
}
else{
$userInfo = getUserData( $mysqlConn, $_SESSION['user']['userId'] );
if( !empty($_POST) ){
if(
empty($_POST['f']['userId']) ||
empty($_POST['f']['newPassword']) ||
empty($_POST['f']['newPasswordAgain'])
){
$message['error'] .= "Es wurden nicht alle Felder ausgefüllt.<br />";
}
else{
if($_POST['f']['newPassword'] != $_POST['f']['newPasswordAgain']){
$message['error'] .= "Das neue Passwort stimmt nicht mit seiner Kontrolleingabe überein! Vertippt?<br />";
}
else{
// Das eigentliche Passwort wird nicht gespeichert sondern der Hash. Da wir jenes auch nicht mehr benötigen, nutzen wir die Variable gleich weiter.
$_POST['f']['newPassword'] =
password_hash( $_POST['f']['newPassword'], PASSWORD_DEFAULT);
$pwChangeQuery = sprintf(
"UPDATE wkParticipo_Users
SET pwHash='%s'
WHERE id='%s';",
$mysqlConn->real_escape_string($_POST['f']['newPassword']),
$mysqlConn->real_escape_string($_POST['f']['userId'])
);
if( $mysqlConn->query($pwChangeQuery) === TRUE ){
$message['success'] .= "Passwort wurde geändert!<br /><nav><ul><li><a href=\"./index.php\"><div>Zur Übersichtsseite</div></a></li></ul></nav><br />";
}
else{
$message['error'] .= "Fehler beim Neusetzen des Passwortes: ".$mysqlConn->error."<br />";
}
}// Ende des Schleifenzweiges: Neusetzen des Passwortes
}// Ende des Schleifenzweiges: fehlende Eingaben
}// Ende des Schleifenzweiges: leeres POST
$mysqlConn->close();
}// Ende des Schleifenzweiges: Datenbankverbindung erfolgreich
?>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>Passwortänderung</title>
<link rel="stylesheet" href="style.css">
</head>
<body>
<?php echo $login_status;?>
<?php echo htmlRetMessage($message);?>
<nav>
<ul>
<li>
<a href="./index.php">
<div>Zur Übersichtsseite</div>
</a>
</li>
<li>
<a href="./userInfo.php">
<div>
Zur Benutzerübersichtsseite
</div>
</a>
</li>
</ul>
</nav>
<h1>Passwortänderung</h1>
Im folgenden Formular kann das Passwort geändert werden. Man sollte darauf achten, dass man beim <a href="https://www.bsi-fuer-buerger.de/BSIFB/DE/Empfehlungen/Passwoerter/Umgang/umgang_node.html">Umgang mit Passwörtern</a> die nötige Vorsicht walten lässt.
<form action="./resetPassword.php" method="post">
<fieldset>
<legend>Neues Passwort vergeben</legend>
<div>
<label for="userId">userId</label>
<input type="userId" name="f[userId]" id="userId" value="<?php echo( $_POST['f']['userId'] );?>" />
</div>
<div>
<label for="newPassword">neues Passwort</label>
<input type="password" name="f[newPassword]" id="newPassword" />
</div>
<div>
<label for="newPasswordAgain">neues Passwort wiederholen</label>
<input type="password" name="f[newPasswordAgain]" id="newPasswordAgain" />
</div>
</fieldset>
<fieldset>
<div><button type="submit">Passwort neu setzen</button></div>
</fieldset>
</form>
</body>
</html>

View File

@@ -0,0 +1,35 @@
<?php
require_once('../auth.php');
require_once('../local/db.php.inc');
require_once('../local/wkParticipoConf.php.inc');
require_once('../lib/wkParticipoLib.php.inc');
$message = array();
if(!empty($_POST)){
if( empty($_POST['f']['eventId']) ){
print_r($_POST);
$message['error'] = 'Es wurden nicht alle Felder ausgefüllt.';
}
else{
$mysqli = @new mysqli($db_server, $db_user, $db_password, $db_name);
if ($mysqli->connect_error) {
$message['error'] = 'Datenbankverbindung fehlgeschlagen: ' . $mysqli->connect_error;
}
else{
$message = reseteMitfahrer($mysqli, $_POST['f']['eventId']);
$mysqli->close();
}
}
}
?>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>Wettkampfplanung - Administration - Reseten der Mitfahrer</title>
</head>
<body>
<?php echo htmlRetMessage($message);?>
<a href ="./listEvents.php">Zur Eventliste</a>
</body>
</html>

View File

@@ -0,0 +1,228 @@
<?php
require_once('../local/wkParticipoConf.php.inc');
require_once('../auth.php');
require_once('../local/db.php.inc');
require_once('../lib/wkParticipoLib.php.inc');
$message = array();
$eventData = array();
if(empty($_POST)){
$message['error'] = "Fehler: leeres POST!";
}
else{
if( empty($_POST['f']['eventId']) ){
$message['error'] = "Fehler: keine eventId gefunden! <a href=\"./listEvents.php\">zur Eventübersicht</a>";
}
else{
if( (string)(int)$_POST['f']['eventId'] == $_POST['f']['eventId'] ){
$mysqli = @new mysqli($db_server, $db_user, $db_password, $db_name);
if ($mysqli->connect_error) {
$message['error'] = 'Datenbankverbindung fehlgeschlagen: ' . $mysqli->connect_error;
}
else{
// Abfrage der Eventdaten
$eventData = getEventData($mysqli, $_POST['f']['eventId']);
if( empty($eventData) ) $message['error'] = 'Fehler: keine Eventdaten zurückgeliefert!';
else{
// Abfrage der Starterdaten des Events
$starterData = getStarterForEvent($mysqli, $eventData['id']);
// Abfrage der Fahrtdaten des Events
$fahrten = getFahrtenForEvent($mysqli, $eventData['id']);
}
}
}
else $message['error'] = "Fehler: eventId ist kein Int (".$_POST['f']['eventId'].")";
}
}
?>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Wettkampfplanung - Administration - Eventdetails</title>
<link rel="stylesheet" href="../style.css">
</head>
<body>
<?php
echo $login_status;
?>
<a class="touchLink" href="./listEvents.php"><div>Zur Eventliste zurück</div></a>
<a class="touchLink" href="./index.php"><div>Zum Adminbereich zurück</div></a>
<?php
if( empty($eventData) ){
if( !empty($message['error']) ){
echo "<p>".$message['error']."</p>\n";
}
}
else{
?>
<h2>Eventdaten</h2>
<div class=wkBox">
<ul>
<li>EventId: <?php echo $eventData['id']?></li>
<li>wkId: <?php echo $eventData['wkId']?></li>
<li>Meldefrist: <?php echo $eventData['meldefrist']?></li>
</ul>
</div>
<?php
$wkData = array();
if( (string)(int)$eventData['wkId'] == $eventData['wkId'] ){
$wkData = getWkData($mysqli, $eventData['wkId']);
}
else echo "<li>Fehler: wkId \"".$eventData['wkId']."\" scheint kein Int zu sein!</li>";
?>
<h2>Wettkampfdaten:</h2>
<?php
if( empty($wkData) )
echo "<li>Fehler: Wettkampf mit Id ".$eventData['wkId']." nicht gefunden!</li>";
else{
?>
<ul>
<li>wkId: <?php echo $wkData['lfdeNr'] ?></li>
<li>Datum: <?php echo $wkData['Datum'] ?></li>
<li>wkName: <?php echo mb_convert_encoding($wkData['Veranstaltung'], 'UTF-8', 'ISO-8859-1');?></li>
<li>AK: <?php echo mb_convert_encoding($wkData['Altersklassen'], 'UTF-8', 'ISO-8859-1');?></li>
<li>Ort: <?php echo mb_convert_encoding($wkData['Ort'], 'UTF-8', 'ISO-8859-1');?></li>
<li><a href="<?php echo $wkData['Ausschreibung'] ?>">Ausschreibung</a></li>
<li><a href="<?php echo $wkData['Routenplaner'] ?>">Routenplaner</a></li>
<li>Galerie: <?php echo $wkData['galleryLink'] ?></li>
<li>PromoPic: <?php echo $wkData['promoPic'] ?></li>
</ul>
<form action="./verteileMitfahrer.php" method="post">
<input type="hidden" name="f[eventId]" value="<?php echo (isset( $eventData['id'] ) ? $eventData['id'] : "");?>" />
<button type="submit">Mitfahrer verteilen</button>
</form>
<form action="./reseteMitfahrer.php" method="post">
<input type="hidden" name="f[eventId]" value="<?php echo (isset( $eventData['id'] ) ? $eventData['id'] : "");?>" />
<button type="submit">Mitfahrer reseten</button>
</form>
<?php
}
// $starterData = array();
// if( (string)(int)$eventData['id'] == $eventData['id'] ){
// $starterData = getStarterForEvent($mysqli, $eventData['id']);
// }
// else echo "<li>Fehler: eventId \"".$eventData['id']."\" scheint kein Int zu sein!</li>";
?>
<h2>Starter:</h2>
<ul>
<?php
if( empty($starterData) )
echo "<li>Keine Starter für diesen Wettkampf</li>";
else{
?>
<?php
foreach( $startTyp as $typeKey=>$typeValue ){
echo("<h3>".$typeValue."</h3>");
foreach( $starterData as $starter ){
if($starter['type'] != $typeKey) continue;
$userData = getUserData($mysqli, $starter['userId']);
?>
<li>[<?php echo $starter['id'] ?>] -- <?php echo mb_convert_encoding($userData['name'], 'UTF-8', 'ISO-8859-1');?>, <?php echo mb_convert_encoding($userData['vorname'], 'UTF-8', 'ISO-8859-1');?>
<ul>
<li>eventId: <?php echo $starter['eventId'] ?></li>
<li>userId: <?php echo $starter['userId'] ?></li>
<li>type: <?php echo($startTyp[$starter['type']]);?></li>
<li>fahrtId: <?php echo $starter['fahrtId']; ?></li>
<li>
<?php
if(empty($starter['fahrtId'])){
//$fahrten = array();
//$fahrten = getFahrtenForEvent($mysqli, $starter['eventId']);
if(empty($fahrten)){
?>
Keine Fahrten für dieses Event gemeldet!
<?php
}
else{
foreach($fahrten as $fahrt){
?>
<form action="./addMitfahrer.php" method="post">
<input type="hidden" name="f[fahrtId]" value="<?php echo (isset( $fahrt['id'] ) ? $fahrt['id'] : ""); ?>" />
<input type="hidden" name="f[starterId]" value="<?php echo (isset( $starter['id'] ) ? $starter['id'] : ""); ?>" />
<button type="submit">Bei <?php $user = getUserData($mysqli, $fahrt['fahrerId']); echo mb_convert_encoding($user['name'], 'UTF-8', 'ISO-8859-1').", ".mb_convert_encoding($user['vorname'], 'UTF-8', 'ISO-8859-1')." (fahrtId ".$fahrt['id'].")";?> mitfahren lassen</button>
</form>
<?php
}
}
}
else{
?>
Mitfahrt bei fahrtId "<?php echo $starter['fahrtId'];?>"
<?php
}
?>
</li>
<li>Masse: <?php echo $starter['masse'] ?></li>
<li>Platzierung: <?php echo $starter['platz'] ?></li>
</ul>
<form action="./adminUpdateStarterErgebnis.php" method="post">
<input type="hidden" name="f[starterId]" value="<?php echo (isset( $starter['id'] ) ? $starter['id'] : ""); ?>" />
<button>Ergebnis eintragen</button>
</form>
</li>
<?php
}
}
?>
</ul>
<?php
}
// $fahrtenData = array();
// $fahrtenData = getFahrtenForEvent($mysqli, $eventData['id']);
?>
<h2>Fahrten:</h2>
<ul>
<?php
if( empty($fahrtenData) )
echo "<li>Keine Fahrten für dieses Event</li>";
else{
foreach( $fahrtenData as $fahrt ){
$fahrerData = getUserData($mysqli, $fahrt['fahrerId']);
?>
<li>[<?php echo $fahrt['id'] ?>] -- <?php echo mb_convert_encoding($fahrerData['name'], 'UTF-8', 'ISO-8859-1');?>, <?php echo mb_convert_encoding($fahrerData['vorname'], 'UTF-8', 'ISO-8859-1');?>
<ul>
<li>EventId: <?php echo $fahrt['eventId'] ?></li>
<li>FahrerId: <?php echo $fahrt['fahrerId'] ?></li>
<li>AnzPlätze: <?php echo $fahrt['plaetze'] ?></li>
<li>MitfahrerIds: <?php echo $fahrt['mitfahrer'] ?></li>
</ul>
</li>
<?php
}
}
?>
</ul>
<?php
$users = array();
$users = getUsers($mysqli);
?>
<h2>Starter einschreiben:</h2>
<?php
if( empty($users) )
echo "<li>Keine User gefunden</li>";
else{
foreach( $users as $user ){
?>
<form action="./adminFunctions.php" method="post">
<input type="hidden" name="f[adminFunction]" value="createStarterForEvent" />
<input type="hidden" name="f[eventId]" value="<?php echo (isset( $eventData['id'] ) ? $eventData['id'] : "");?>" />
<input type="hidden" name="f[userId]" value="<?php echo $user['id'];?>" />
<select name="f[type]"><option value="1" selected>als Starter</option><option value="2">als Zuschauer</option><option value="3">keine Teilnahme</option></select>
<button type="submit"><?php echo mb_convert_encoding($user['vorname'], 'UTF-8', 'ISO-8859-1')." ".mb_convert_encoding($user['name'], 'UTF-8', 'ISO-8859-1');?></button>
</form>
<hr />
<?php
}
}
$mysqli->close();
}
?>
</body>
</html>

View File

@@ -0,0 +1,204 @@
<?php
require_once('../local/wkParticipoConf.php.inc');
require_once('../auth.php');
require_once('../local/db.php.inc');
require_once('../lib/wkParticipoLib.php.inc');
$message = array();
$fahrt = array();
$event =array();
$wk = array();
if( !empty($_POST) ){
if( empty($_POST['f']['fahrtId']) ){
$mysqli = @new mysqli($db_server, $db_user, $db_password, $db_name);
if($mysqli->connect_error){
$message['error'] .= "Datenbankverbindung fehlgeschlagen: " . $mysqli->connect_error . "<br/>";
}
$fahrt = getFahrtData($mysqli, $_POST['f']['fahrtId']);
if( empty($fahrt) ){
$message['error'] .= "fahrtId \"".$_POST['f']['fahrtId']."\" nicht gefunden <br />";
}
else{
$event = getEventData($mysqli, $fahrt['eventId']);
if( empty($event) ){
$message['error'] .= "eventId \"".$fahrt['eventId']."\" nicht gefunden <br />";
}
else{
$wk = getWkData($mysqli, $event['wkId']);
if( empty($wk) ){
$message['error'] .= "wkId \"".$event['wkId']."\" nicht gefunden <br />";
}
}
}
}
}
if( (string)(int)$_POST['f']['fahrtId'] == $_POST['f']['eventId'] ){
$mysqli = @new mysqli($db_server, $db_user, $db_password, $db_name);
if ($mysqli->connect_error) {
$message['error'] = 'Datenbankverbindung fehlgeschlagen: ' . $mysqli->connect_error;
}
if(empty($_POST)){
$message['error'] = "Fehler: leeres POST!";
}
else{
if( empty($_POST['f']['eventId']) ){
$message['error'] = "Fehler: keine eventId gefunden! <a href=\"./listEvents.php\">zur Eventübersicht</a>";
}
else{
if( (string)(int)$_POST['f']['eventId'] == $_POST['f']['eventId'] ){
$mysqli = @new mysqli($db_server, $db_user, $db_password, $db_name);
if ($mysqli->connect_error) {
$message['error'] = 'Datenbankverbindung fehlgeschlagen: ' . $mysqli->connect_error;
}
else{
$eventData = getEventData($mysqli, $_POST['f']['eventId']);
if( empty($eventData) ) $message['error'] = 'Fehler: keine Eventdaten zurückgeliefert!';
}
}
else $message['error'] = "Fehler: eventId ist kein Int (".$_POST['f']['eventId'].")";
}
}
?>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>Wettkampfplanung - Administration - Eventdetails</title>
<link rel="stylesheet" href="../style.css">
</head>
<body>
<?php
echo $login_status;
if( empty($eventData) ){
if( !empty($message['error']) ){
echo "<p>".$message['error']."</p>\n";
}
}
else{
?>
<ul>
<li><?php echo $eventData['id']?></li>
<li><?php echo $eventData['wkId']?></li>
<li><?php echo $eventData['meldefrist']?></li>
<?php
$wkData = array();
if( (string)(int)$eventData['wkId'] == $eventData['wkId'] ){
$wkData = getWkData($mysqli, $eventData['wkId']);
}
else echo "<li>Fehler: wkId \"".$eventData['wkId']."\" scheint kein Int zu sein!</li>";
?>
<li>Wettkampfdaten:<ul>
<?php if( empty($wkData) )
echo "<li>Fehler: Wettkampf mit Id ".$eventData['wkId']." nicht gefunden!</li>";
else{
?>
<li>wkId: <?php echo $wkData['lfdeNr'] ?></li>
<li>Datum: <?php echo $wkData['Datum'] ?></li>
<li><?php echo $wkData['Veranstaltung'] ?></li>
<li><?php echo $wkData['Altersklassen'] ?></li>
<li><?php echo $wkData['Ort'] ?></li>
<li><?php echo $wkData['Ausschreibung'] ?></li>
<li><?php echo $wkData['Routenplaner'] ?></li>
<li>Galerie: <?php echo $wkData['galleryLink'] ?></li>
<li>PromoPic: <?php echo $wkData['promoPic'] ?></li>
<?php
}
?>
</ul></li>
<?php
$starterData = array();
if( (string)(int)$eventData['id'] == $eventData['id'] ){
$starterData = getStarterForEvent($mysqli, $eventData['id']);
}
else echo "<li>Fehler: eventId \"".$eventData['id']."\" scheint kein Int zu sein!</li>";
?>
<li>Starter:<ul>
<?php if( empty($starterData) )
echo "<li>Keine Starter für diesen Wettkampf</li>";
else{
foreach( $starterData as $starter ){
$userData = getUserData($mysqli, $starter['userId']);
?>
<li>[<?php echo $starter['id'] ?>] -- <?php echo $userData['name']?>, <?php echo $userData['vorname']?><ul>
<li>eventId: <?php echo $starter['eventId'] ?></li>
<li>userId: <?php echo $starter['userId'] ?></li>
<li>fahrtId: <?php echo $starter['fahrtId']; ?></li>
<li>
<?php
if(empty($starter['fahrtId'])){
$fahrten = array();
$fahrten = getFahrtenForEvent($mysqli, $starter['eventId']);
if(empty($fahrten)){
?>
Keine Fahrten für dieses Event gemeldet!
<?php
}
else{
foreach($fahrten as $fahrt){
?>
<form action="./addMitfahrer.php" method="post">
<input type="hidden" name="f[fahrtId]" value="<?php echo (isset( $fahrt['id'] ) ? $fahrt['id'] : ""); ?>" />
<input type="hidden" name="f[starterId]" value="<?php echo (isset( $starter['id'] ) ? $starter['id'] : ""); ?>" />
<button type="submit">Bei User "<?php echo (isset( $fahrt['fahrerId'] ) ? $fahrt['fahrerId'] : "");?>" mitfahren lassen</button>
</form>
<?php
}
}
}
else{
?>
Mitfahrt bei fahrtId "<?php echo $starter['fahrtId'];?>"
<?php
}
?>
</li>
<li>Masse: <?php echo $starter['masse'] ?></li>
<li>Platzierung: <?php echo $starter['platz'] ?></li>
</ul></li>
<?php
}
?>
<?php
}
?>
</ul></li>
<?php
$fahrtenData = array();
$fahrtenData = getFahrtenForEvent($mysqli, $eventData['id']);
?>
<li>Fahrten:<ul>
<?php if( empty($fahrtenData) )
echo "<li>Keine Fahrten für dieses Event</li>";
else{
foreach( $fahrtenData as $fahrt ){
$fahrerData = getUserData($mysqli, $fahrt['fahrerId']);
?>
<li>[<?php echo $fahrt['id'] ?>] -- <?php echo $fahrerData['name']?>, <?php echo $fahrerData['vorname']?><ul>
<li><?php echo $fahrt['eventId'] ?></li>
<li><?php echo $fahrt['fahrerId'] ?></li>
<li><?php echo $fahrt['plaetze'] ?></li>
<li><?php echo $fahrt['mitfahrer'] ?></li>
</ul></li>
<?php
}
?>
<?php
}
?>
</ul></li>
</ul>
<?php
$mysqli->close();
}
?>
<a href ="./listEvents.php">Zur Eventliste</a>
</body>
</html>

View File

@@ -0,0 +1,97 @@
<?php
require_once('../local/wkParticipoConf.php.inc');
require_once('../auth.php');
require_once('../local/db.php.inc');
require_once('../lib/wkParticipoLib.php.inc');
$message = array();
$eventData = array();
if(empty($_POST)){
$message['error'] = "Fehler: leeres POST!";
}
else{
if( empty($_POST['f']['userId']) ){
$message['error'] = "Fehler: keine userId gefunden! <a href=\"./listUsers.php\">zur Userübersicht</a>";
}
else{
if( (string)(int)$_POST['f']['userId'] == $_POST['f']['userId'] ){
$mysqli = @new mysqli($db_server, $db_user, $db_password, $db_name);
if ($mysqli->connect_error) {
$message['error'] = 'Datenbankverbindung fehlgeschlagen: ' . $mysqli->connect_error;
}
else{
$userData = getUserData($mysqli, $_POST['f']['userId']);
if( empty($eventData) ) $message['error'] = 'Fehler: keine Userdaten zurückgeliefert!';
}
}
else $message['error'] = "Fehler: userId ist kein Int (".$_POST['f']['userId'].")";
}
}
?>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Wettkampfplanung - Administration - Userdetails</title>
<link rel="stylesheet" href="../style.css">
</head>
<body>
<?php
echo $login_status;
?>
<a class="touchLink" href="./listUsers.php"><div>Zur Userliste zurück</div></a>
<a class="touchLink" href="./index.php"><div>Zum Adminbereich zurück</div></a>
<?php
if( empty($userData) ){
if( !empty($message['error']) ){
echo "<p>".$message['error']."</p>\n";
}
}
else{
?>
<h2>Userdaten</h2>
<div class=wkBox">
<ul>
<li>UserId: <?php echo $userData['id']?></li>
<li>loginName: <?php echo $userData['loginName']?></li>
<li>name: <?php echo $userData['name']?></li>
<li>vorname: <?php echo $userData['vorname']?></li>
<li>gebDatum: <?php echo $userData['gebDatum']?></li>
<li>kinder: <?php echo $userData['kinder']?></li>
<li>eltern: <?php echo $userData['eltern']?></li>
<li>eMail: <?php echo $userData['eMail']?></li>
<li>
<form action="./resetPassword.php" method="post">
<input type="hidden" name="f[userId]" id="userId" <?php echo( "value=".$userData['id'])?> />
<button class="touchButton" type="submit" name="submit">Passwort neu setzen</button>
</form>
</li>
</ul>
</div>
<h2>kinderDaten</h2>
<?php
$kinderDaten = getUsersKidsData($mysqli, $userData['id']);
foreach($kinderDaten as $kind){
?>
<div class=wkBox">
<ul>
<li>UserId: <?php echo $kind['id']?></li>
<li>loginName: <?php echo $kind['loginName']?></li>
<li>name: <?php echo $kind['name']?></li>
<li>vorname: <?php echo $kind['vorname']?></li>
<li>gebDatum: <?php echo $kind['gebDatum']?></li>
<li>kinder: <?php echo $kind['kinder']?></li>
<li>eltern: <?php echo $kind['eltern']?></li>
<li>eMail: <?php echo $kind['eMail']?></li>
</ul>
</div>
<?php
}
}
?>
</body>
</html>

View File

@@ -0,0 +1,35 @@
<?php
require_once('../auth.php');
require_once('../local/db.php.inc');
require_once('../local/wkParticipoConf.php.inc');
require_once('../lib/wkParticipoLib.php.inc');
$message = array();
if(!empty($_POST)){
if( empty($_POST['f']['eventId']) ){
print_r($_POST);
$message['error'] = 'Es wurden nicht alle Felder ausgefüllt.';
}
else{
$mysqli = @new mysqli($db_server, $db_user, $db_password, $db_name);
if ($mysqli->connect_error) {
$message['error'] = 'Datenbankverbindung fehlgeschlagen: ' . $mysqli->connect_error;
}
else{
$message = verteileMitfahrer($mysqli, $_POST['f']['eventId']);
$mysqli->close();
}
}
}
?>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>Wettkampfplanung - Administration - Verteilen der Mitfahrer</title>
</head>
<body>
<?php echo htmlRetMessage($message);?>
<a href ="./listEvents.php">Zur Eventliste</a>
</body>
</html>