177 lines
5.7 KiB
PHP
177 lines
5.7 KiB
PHP
<?php
|
|
/** @var array $CONFIG basic configurations (defined via bootstraping) */
|
|
/** @var array $SECRETS passwords and other stuff worth of protection (defined via bootstraping) */
|
|
require_once "bootstrap.php";
|
|
|
|
require_once "participoLib/participo.php";
|
|
|
|
participo::init($CONFIG["cwsvJudo"], $SECRETS["cwsvJudo"]);
|
|
|
|
$message = [];
|
|
$message["notice"] = "";
|
|
$message["error"] = "";
|
|
$message["success"] = "";
|
|
$message["wkData"] = "";
|
|
|
|
$wkId = isset($_POST["f"]["wkId"]) ? $_POST["f"]["wkId"] : "";
|
|
$date = isset($_POST["f"]["date"]) ? $_POST["f"]["date"] : "";
|
|
$deadline = isset($_POST["f"]["meldefrist"]) ? $_POST["f"]["meldefrist"] : "";
|
|
|
|
/// Abfrage Kommender Wettkämpfe
|
|
$wkData = dbConnector::query(
|
|
"SELECT lfdeNr, Datum, Veranstaltung, Altersklassen FROM wettkampfkalender WHERE wettkampfkalender.Datum >= CURDATE() ORDER BY wettkampfkalender.Datum ASC;",
|
|
);
|
|
$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)) {
|
|
if (
|
|
empty($_POST["f"]["wkId"]) ||
|
|
empty($_POST["f"]["date"]) ||
|
|
empty($_POST["f"]["meldefrist"])
|
|
) {
|
|
$message["notice"] .= "Alle Felder ausfüllen und abschicken!<br />";
|
|
if ($wkId != "") {
|
|
$query =
|
|
"SELECT lfdeNr, Datum, Veranstaltung, Altersklassen, Ort, Ausschreibung, Routenplaner FROM wettkampfkalender WHERE lfdeNr = :wkId;";
|
|
$params = [
|
|
":wkId" => [
|
|
"value" => $wkId,
|
|
"data_type" => PDO::PARAM_INT,
|
|
],
|
|
];
|
|
$results = dbConnector::query($query, $params);
|
|
if (!$results) {
|
|
$message["error"] .= "Fehler bei Datenbankabfrage {$query}";
|
|
} else {
|
|
$result = $results[0];
|
|
$message["notice"] .=
|
|
"<ul><li>" .
|
|
$result["lfdeNr"] .
|
|
"<ul>" .
|
|
"<li>" .
|
|
$result["Datum"] .
|
|
"</li>" .
|
|
"<li>" .
|
|
$result["Veranstaltung"] .
|
|
"</li>" .
|
|
"<li>" .
|
|
$result["Altersklassen"] .
|
|
"</li>" .
|
|
"</ul></li>" .
|
|
"</ul>";
|
|
$date = $result["Datum"];
|
|
$deadline = date(
|
|
"Y-m-d",
|
|
strtotime(
|
|
"last friday",
|
|
strtotime("last week", strtotime($result["Datum"])),
|
|
),
|
|
);
|
|
}
|
|
}
|
|
} else {
|
|
$wkId = filterId($_POST["f"]["wkId"]);
|
|
$date = $_POST["f"]["date"];
|
|
$deadline = $_POST["f"]["meldefrist"];
|
|
$query =
|
|
"INSERT INTO wkParticipo_Events (wkId, date, meldefrist) SELECT * FROM (SELECT :wkId, :date, :deadline) as new_event WHERE NOT EXISTS (SELECT wkId FROM wkParticipo_Events WHERE wkId = :wkId) LIMIT 1;";
|
|
$params = [
|
|
":wkId" => ["value" => $wkId, "data_type" => PDO::PARAM_INT],
|
|
":date" => ["value" => $date, "data_type" => PDO::PARAM_STR],
|
|
":deadline" => [
|
|
"value" => $deadline,
|
|
"data_type" => PDO::PARAM_STR,
|
|
],
|
|
];
|
|
$result = dbConnector::query($query, $params);
|
|
$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>";
|
|
}
|
|
} 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="date">date</label>
|
|
<input type="text" name="f[date]" id="date" <?php echo $date ?? ""; ?> />
|
|
</div>
|
|
<div>
|
|
<label for="meldefrist">meldefrist</label>
|
|
<input type="text" name="f[meldefrist]" id="meldefrist" <?php echo $deadline ??
|
|
""; ?> />
|
|
</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>
|