Files
sternwarte/sternwarte/sonderfuehrungen.php
rxf 75a6988248 Führungsdaten bei den Anmeldunge bis 14.11. blockiert
dosendmail mit gmx und logdatei
Sondermeldung in rot
2025-10-22 15:08:49 +02:00

533 lines
28 KiB
PHP

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title>Sternwarte Welzheim</title>
<!--[if IE 5]>
<link href="css/ie5.css" rel="stylesheet" type="text/css"/>
<![endif]-->
<!--[if IE]>
<style type="text/css">
<
link href
=
"css/ie.css"
rel
=
"stylesheet"
type
=
"text/css"
/
>
</style>
<![endif]-->
<link href="css/jquery-ui.min.css" rel="stylesheet" type="text/css"/>
<link href="css/sternwarte1.css" rel="stylesheet" type="text/css"/>
<script src="javascript/jquery-1.11.0.min.js"></script>
<script src="javascript/jquery-ui-1.10.0.custom.min.js"></script>
<script src="javascript/sofueds.js"></script>
</head>
<body class="thrColFixHdr">
<div id="container">
<?php include 'header.php'; ?>
<?php include 'navi.php'; ?>
<div id="sidebar2">
<?php include 'fdatum.php'; ?>
<?php include 'himmelerg.php'; ?>
</div>
<div id="datenschutz"></div>
<div id="mainContent">
<?
include 'phpmailer/dosendmail.php';
// Hier werden alle notwendigen Variablen eingesammelt ------------------------
if (isset($_POST['submit'])) {
$stern_verein = $_REQUEST['verein'];
$stern_name = $_REQUEST['name'];
$stern_vorname = $_REQUEST['vorname'];
$stern_strasse = $_REQUEST['strasse'];
$stern_ort = $_REQUEST['ort'];
$stern_plz = $_REQUEST['plz'];
$stern_tel = $_REQUEST['tel'];
$stern_mail = $_REQUEST['mail'];
$stern_teil = $_REQUEST['teil'];
$stern_datum = $_REQUEST['datum'];
$stern_uhr = $_REQUEST['uhr'];
$stern_spende = $_REQUEST['spende'];
$stern_mitteilung = $_REQUEST['mitteilung'];
$stern_kenntnis = $_REQUEST['kenntnis'];
$stern_submit = $_REQUEST['submit'];
$stern_actionstern = $_REQUEST['stern_actionstern'];
} else {
$stern_verein = '';
$stern_name = '';
$stern_vorname = '';
$stern_strasse = '';
$stern_ort = '';
$stern_plz = '';
$stern_tel = '';
$stern_mail = '';
$stern_teil = '';
$stern_datum = '';
$stern_uhr = '';
$stern_mitteilung = '';
$stern_kenntnis = '';
$stern_spende = 'nein';
$stern_submit = '';
$stern_actionstern = '';
}
// Hier werden default Werte gesetzt ------------------------
$stern_error_msg = '';
$stern_meldung = '';
$stern_errors = 0;
switch ($stern_actionstern) {
case 'senden':
// Hier wir geprüft, ob alle Felder ausgefüllt sind ------------------------
/*
* if (!preg_match("|^([a-zA-Z0-9])+([\.a-zA-Z0-9_-])*@([a-zA-Z0-9_-])+(\.[a-zA-Z0-9_-]+)+$|", $stern_mail))
* {
* $stern_error_msg .= '<li>Bitte geben Sie eine g&uuml;ltige Empf&auml;nger-Adresse ein.</li>';
* $stern_errors++;
* }
*/
if (trim($stern_name) == '') {
$stern_error_msg .= 'Bitte geben Sie Ihren Namen ein.</br>';
$stern_errors++;
}
/* if (trim($stern_vorname) == '') {
$stern_error_msg .= 'Bitte geben Sie Ihren Vornamen ein.</br>';
$stern_errors ++;
}
*/
if (trim($stern_strasse) == '') {
$stern_error_msg .= 'Bitte geben Sie eine Straße ein.</br>';
$stern_errors ++;
}
if (trim($stern_plz) == '') {
$stern_error_msg .= 'Bitte geben Sie eine Postleitzahl ein.</br>';
$stern_errors ++;
}
if (! preg_match("/^[0-9]{5}$/", $stern_plz)) {
$stern_error_msg .= 'Bitte geben Sie bei der Postleitzahl mindestens fünf Ziffern und keine Buchstaben ein.</br>';
$stern_errors ++;
}
if (trim($stern_ort) == '') {
$stern_error_msg .= 'Bitte geben Sie einen Ort ein.</br>';
$stern_errors ++;
}
if (trim($stern_tel) == '') {
$stern_error_msg .= 'Bitte geben Sie eine Telefonnummer ein.</br>';
$stern_errors ++;
}
if (trim($stern_datum) == '' || ($stern_datum) == '(TT.MM.JJJJ)') {
$stern_error_msg .= 'Bitte geben Sie Ihren Wunschtermin mit Uhrzeit ein.</br>';
$stern_errors++;
}
if (trim($stern_uhr) == '') {
$stern_error_msg .= 'Bitte geben Sie Ihren Wunschtermin mit Uhrzeit ein.</br>';
$stern_errors++;
}
$lower_email = strtolower($stern_mail);
if (preg_match("/^[a-z0-9]+([-_\.]?[a-z0-9])+@[a-z0-9]+([-_\.]?[a-z0-9])+\.[a-z]{2,4}/", $lower_email) === 0) {
$stern_error_msg .= "Bitte geben Sie eine gültige E-Mail-Adresse ein.</br>";
$stern_errors++;
}
if (trim($stern_teil) == '') {
$stern_error_msg .= 'Bitte geben Sie die Anzahl an Personen ein.</br>';
$stern_errors++;
}
if (trim($stern_teil) > 30) {
$stern_error_msg .= 'Höchstzahl der Teilnehmer/-innen überschritten, bitte korrigieren Sie Ihre Eingabe.</br>';
$stern_errors++;
}
if (trim($stern_kenntnis) == '') {
$stern_error_msg .= 'Bitte akzeptieren Sie die Bedingungen unseres Merkblattes.</br>';
$stern_errors++;
}
/* if (trim($stern_allwett) == '') {
$stern_error_msg .= 'Bitte Art der Führung (Allwetter ja/nein) ankreuzen.</br>';
$stern_errors ++;
}
*/
if ($stern_errors == 0) {
$stern_terminuhr = $stern_datum . " " . $stern_uhr;
$body = "\n\n Name, Vorname: $stern_name, $stern_vorname \n Verein / Organisation : $stern_verein \n Strasse: $stern_strasse \n Ort: $stern_plz $stern_ort \n Telefon: $stern_tel \n E-mail: $stern_mail \n Gewünschter Termin: $stern_datum, $stern_uhr \n Personen: $stern_teil \n\n Weitere Fragen oder Mitteilungen: $stern_mitteilung
\nSpendenbescheinigung: $stern_spende \n";
// Änderungen rxf
$dti = explode(' ', $stern_terminuhr);
$d1 = explode('.', $dti[1]);
$termin1 = $d1[2] . '-' . $d1[1] . '-' . $d1[0] . ' ' . $dti[2];
$aktdat = date("Y-m-d H:i:s");
$sql_stmt = "INSERT INTO SoFue2 (verein, name, vorname, strasse, plz, ort, telefon, " .
"email, wtermin, atermin, anzahl, mitteilung, spende, mitarbeiter, status, anmelde_datum, " .
"bemerkung, erledigt_datum, owtermin, oatermin)" .
" values('$stern_verein', '$stern_name', '$stern_vorname', '$stern_strasse', '$stern_plz', '$stern_ort', '$stern_tel', " .
"'$stern_mail', '$termin1', '1900-01-01', '$stern_teil', '$stern_mitteilung', '$stern_spende', '', '0','$aktdat', " .
"'', '1900-01-01', '$termin1', '1900-01-01')";
$ins = mysqli_query($db, $sql_stmt) or die(mysqli_error($db));
// bis hier
$bodya = "Guten Tag,
vielen Dank für Ihre Anfrage. Wir freuen uns über Ihr Interesse an der Sternwarte Welzheim und Ihren Wunsch nach einer Sonderführung.
Wir bemühen uns, Ihnen innerhalb einer Woche Bescheid zu geben, ob einer unserer freien Mitarbeiter/-innen die Sonderführung außerhalb unserer öffentlichen Sternführungen übernehmen kann.
Mit freundlichen Grüßen
Beobachterteam der Sternwarte Welzheim
................................................................................................
www.sternwarte-welzheim.de";
if ($stern_mail != "") {
$mail_from = $stern_mail;
} else {
$mail_from = "noreply@sternwarte-welzheim.de";
}
$betreff = "Anfrage Sonderführung auf der Sternwarte Welzheim";
$betreffBeo = "Anfrage für Sonderführung am $stern_terminuhr";
// Mail an den Anfragenden
sendmail($betreff, $defaultabsender, $bodya, [], ['rexfue@gmail.com'], [$stern_mail]);
// Mail an einige BEOs und an die Liste
$beoliste = array(
"andrea.ess@t-online.de",
"sonderfuehrung@sternwarte-welzheim.de",
"martin.gertz@gmx.de",
"info@planetarium-stuttgart.de",
"HUK@observatory-stuttgart.de",
);
sendmail($betreffBeo, $defaultabsender, $body, $beoliste, [], ['anmeldungen@sternwarte.rexfue.de'] );
$stern_meldung = "<p>Vielen Dank für Ihre Anfrage. Wir freuen uns über Ihr Interesse an
der Sternwarte Welzheim und Ihren Wunsch nach einer Sonderführung.</p>
Wir bemühen uns, Ihnen innerhalb einer Woche Bescheid zu geben, ob
einer unserer freien Mitarbeiter/-innen die Sonderführung außerhalb unserer
öffentlichen Sternführungen übernehmen kann.";
// Antwortseite
?>
<?PHP echo $stern_meldung;
?>
<?PHP
// Ende Antwortseite
break;
} // Ende if ($errors == 0)
else {
// Layout der Fehlermeldung
$stern_error_msg = '<div id="fehler">' . $stern_error_msg . '</div>';
}
// Wenn ein Fehler aufgetreten ist ($errors != 0), folgt jetzt der default Teil
// d.h. das Eingabeformular wird nochmals angezeigt mit einer Fehlermeldung.
// ----------------------------------------------------------------------------
default:
?>
<h1 style="text-align:center;">Sonderführungen auf der Sternwarte Welzheim</h1>
<p>Die Führungen werden von den
ehrenamtlich tätigen Mitgliedern der BEOBACHTERGRUPPE STERNWARTE
WELZHEIM abgehalten. Wenn Sie eine Sonderführung für Ihre Gruppe
wünschen, füllen Sie bitte nachstehendes Formular aus. Sie erhalten
dann innerhalb einer Woche eine Mitteilung, ob Ihrem Wunsch
entsprochen werden kann.
</p>
<p>Die Führungen auf der Sternwarte Welzheim finden <strong>nur bei
sternklarem Himmel</strong> statt. Die Gruppengröße ist auf
<strong><?php echo $maxBesucher;?> Personen </strong>begrenzt.
</p>
<p>
Bitte beachten Sie, dass der Weg zur Sternwarte Welzheim <strong>mit
Kraftfahrzeugen nicht befahren werden darf</strong>. Sie können
Ihre Fahrzeuge auf dem Parkplatz der Sternwarte abstellen. Von hier
führt ein 430 m langer Fußweg zur Sternwarte. Die Temperatur in den
Beobachtungskuppeln entspricht der Außentemperatur. Besonders in
kalten Winternächten ist warme Bekleidung und warmes Schuhwerk
dringend zu empfehlen.
</p>
<p>Die Fernrohre in den Beobachtungskuppeln sind nur über Treppen zu
erreichen. Es besteht leider keine Möglichkeit, Rollstühle in die
Kuppeln mitzunehmen. Für Kleinkinder sind Sternführungen nicht
geeignet.
</p>
<p>Betrieb und Arbeit auf der Sternwarte erfolgen ehrenamtlich.
Unterhalt und Aktivit&auml;ten auf der Sternwarte werden durch
Spenden erm&ouml;glicht. Wir bitten daher bei einer Sonderf&uuml;hrung
um eine Spende in Höhe von 3,- € pro Person, mindestens jedoch 50,- €, an die
</p>
<p> Gesellschaft zur F&ouml;rderung des Planetariums Stuttgart und der Sternwarte Welzheim e.V.<br />
Bankverbindung: Deutsche Bank AG Stuttgart IBAN DE 18 6007 0070 0122 0383 00<br/>
BIC: DEUTDESSXXX
</p>
<p>Auf Wunsch kann eine Spendenbescheinigung ausgestellt werden, da
die Planetariumsgesellschaft vom Finanzamt Stuttgart-Körperschaften als gemeinnützig
anerkannt ist.</p>
<p>
<a name="form">&nbsp;</a><?PHP echo $stern_error_msg ?></p>
<p>
<p class="sondermeldung">
Unsere Sternwarte bleibt bis voraussichtlich 14. November 2025 wegen neuer technischer Einrichtung
geschlossen. <br />Bis dahin können keine Führungen durchgeführt werden.
</p>
<strong>Unverbindliche Anfrage zu einer Sonderführung auf der
Sternwarte Welzheim</strong><br/>
<div id="formular" class="fltrt">
<form action="sonderfuehrungen.php#form" method="post">
<span class="textklein">Die mit einem * gekennzeichneten Felder
sind unbedingt auszuf&uuml;llen.</span>
</p>
<label for="name" class="labeltext">Zuname*</label> <input
type="text" maxlength="50" name="name"
value="<? echo $stern_name; ?>" id="name" class="textfeld200"/> <br/>
<label for="vorname" class="labeltext">Vorname</label> <input
type="text" maxlength="50" name="vorname"
value="<? echo $stern_vorname; ?>" id="vorname" class="textfeld200"/><br/>
<label for="verein" class="labeltext">Verein / Organisation</label> <input
type="text" maxlength="50" name="verein"
value="<? echo $stern_verein; ?>" id="verein" class="textfeld200"/>
<br/> <label for="strasse" class="labeltext"> Straße / Haus-Nr.*</label>
<input type="text" maxlength="60" name="strasse"
value="<? echo $stern_strasse; ?>" id="strasse" class="textfeld200"/>
<br/> <label for="ort" class="labeltext">PLZ / Ort*</label> <input
type="text" maxlength="5" name="plz"
value="<?php echo $stern_plz; ?>" class="textfeld20"/> <input
type="text" maxlength="60" name="ort"
value="<?php echo $stern_ort; ?>" class="textfeld100"/> <br/> <label
for="tel" class="labeltext"> Telefonnummer*</label> <input
type="text" maxlength="50" name="tel" value="<? echo $stern_tel; ?>"
id="tel" class="textfeld200"/> <br/>
<label for="mail" class="labeltext">E-Mail-Adresse*</label> <input
type="text" maxlength="120" name="mail"
value="<? echo $stern_mail; ?>" id="mail" class="textfeld200"/><br />
<p>
<label for="teil" class="labeltext">Anzahl Personen* ca.<br/> <span
class="textklein">(max. <?php echo $maxBesucher;?> Personen)</span></label>
<input type="number" step="1" min="2" max=<?php echo $maxBesucher?> maxlength="120"
name="teil" value="<? echo $stern_teil; ?>" id="teil"
class="textfeld20"/> <br/>
</p>
<?php
// function getNextFuehrungen()
// {
// global $db;
// $query = "select DATE(wtermin) from SoFue2 where wtermin > CURDATE()";
// $result = mysqli_query($db, $query) or die (mysqli_error($db));
// $erg = array();
// if (mysqli_num_rows($result)) {
// while ($row = mysqli_fetch_assoc($result)) {
// $erg[] = $row['DATE(wtermin)'];
// }
// }
// return $erg;
// }
// Prüfen, ob an dem Datum eine Sonderführung in der DB steht
function checkSonderFuehrung($d)
{
global $db;
$query = "SELECT * FROM SoFue2 WHERE DATE(wtermin) = '$d'";
$result = mysqli_query($db, $query) or die (mysqli_error($db));
$belegt = true;
if (mysqli_num_rows($result)) {
while ($row = mysqli_fetch_assoc($result)) {
if (($row['status'] == 3) || ($row['deleted'] == 1)) {
$belegt = false;
}
}
return $belegt;
}
return false;
}
// Prüfen, ob an dem Datum eine regläre Führung statt findet
function checkRegulaereFuehrung($d)
{
global $db;
$query = "SELECT id FROM fdatum1 WHERE datum = '$d'";
$result = mysqli_query($db, $query) or die (mysqli_error($db));
if ($result->num_rows != 0) {
return true;
}
return false;
}
// Prüfen, ob an dem Datum ein Kalenderintage vorhanden ist
function checkKalender($d)
{
global $db;
$query = "SELECT id FROM kalender WHERE DATE(start) = '$d'";
$result = mysqli_query($db, $query) or die (mysqli_error($db));
if ($result->num_rows != 0) {
return true;
}
return false;
}
function checkExtraDate($dt)
{
$extradates = [
'2023-12-24','2023-12-31'
];
global $db;
foreach($extradates as $d) {
if ($d == $dt) {
return true;
}
}
return false;
}
function checkBelegt($td)
{
$y = substr($td, 6);
$m = substr($td, 3, 2);
$d = substr($td, 0, 2);
$dint = intval($y . $m . $d);
if (checkRegulaereFuehrung($dint) == true) {
return true;
}
$dt = $y . "-" . $m . "-" . $d;
if (checkSonderFuehrung($dt)) {
return true;
};
if (checkKalender($dt)) {
return true;
}
if(checkExtraDate($dt)) {
return true;
}
return false;
}
function selectTime($uh, $st_uh)
{
$r = "<select name='" . $uh . "'> <option>" . $st_uh . "</option>";
foreach (range(12 * 60, 22 * 60, 30) as $u) {
$uh = intval($u / 60);
$um = $u % 60;
if ($um == 0) {
$um = "00";
}
$r .= "<option>" . $uh . ":" . $um . " Uhr </option>";
}
$r .= "</select>";
echo $r;
}
function selectDate($da, $st_da, $wt)
{
$ast = "*";
$r = "<label for='" . $da . "' class='labeltext'>
<strong>" . $wt . "</strong> " . $ast . "<br />
<span class='textklein'>(Datum, Uhrzeit)</span>
</label>
<select name='" . $da . "' id='" . $da . "'>
<option>" . $st_da . "</option>";
$tage = array(
"So",
"Mo",
"Di",
"Mi",
"Do",
"Fr",
"Sa"
);
// Heute
$timestamp = time(); // jetzt (heute)
$timestamp = 1762001873; //<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
$timestamp1 = $timestamp + 1209600; // 14 Tage weiter
// 365 Tage in die Zukunft...
for ($i = 0; $i < 365; $i++) {
$timestamp1 = $timestamp1 + 86400; // immer einen Tag weiter
$tdatum = date("d.m.Y", $timestamp1);
$Tag1 = date("w", $timestamp1);
if (!checkBelegt($tdatum)) {
// $r .= '<option disabled="disabled">' . $tage[$Tag1] . " " . $tdatum . "</option>";
// } else {
$r .= "<option>" . $tage[$Tag1] . " " . $tdatum . "</option>";
}
}
$r .= "</select>";
echo $r;
}
?>
<?php selectDate("datum", $stern_datum, "Termin") ?>
<?php selectTime("uhr", $stern_uhr) ?>
<br/>
<span class="textklein">
Bitte beachten Sie, dass ein Sonderführungstermin frühestens in 14 Tagen unsererseits organisiert
werden kann. Nicht angezeige Termine sind schon belegt.
</span><br/> <br/>
Eine Sternführung findet nur bei <strong>sternklarem</strong> Wetter statt.
<p>
Weitere Mitteilungen und Fragen an uns:
<label for="textarea"></label>
<textarea name="mitteilung" class="textfeld" id="textarea"><? echo $stern_mitteilung; ?></textarea>
</p>
<p>
<?php
$ja = '';
$nein = '';
if ($stern_spende == "ja") {
$ja = "checked";
} else if ($stern_spende == "nein") {
$nein = "checked";
}
?>
Wir wünschen eine Spendenbescheinigung<br/> <input name="spende"
type="radio" value="ja"
id="spende1" <? echo $ja; ?> /> <label
for="spende1" class="labeltextbreit">ja</label> <br/> <input
name="spende" type="radio" id="spende2" value="nein"
<? echo $nein; ?> /> <label for="spende2" class="labeltextbreit">nein</label>
<br/> <br/> <strong>Das Betreten der Sternwarte erfolgt auf eigene
Gefahr. Die Sternführung ist eine Sonderleistung ehrenamtlicher
Kräfte. Bei Ausfall einer Sonderführung kann kein Schadenersatz
geleistet werden.</strong><br/> <br/>
<?php
$ken = '';
if ($stern_kenntnis == "Das Merkblatt wurde gelesen und zur Kenntnis genommen.") {
$ken = "checked";
}
?>
<label> <input type="checkbox" name="kenntnis" id="kenntnis"
value="Das Merkblatt wurde gelesen und zur Kenntnis genommen."
<? echo $ken; ?> /> * Das Merkblatt wurde gelesen und zur Kenntnis
genommen. (<a href="docs/Merkblatt_Sonderfuehrungen.pdf"
target="_blank">Merkblatt download</a>)
</label>
</p><br/>
<div id="sendebutton">
<input type="hidden" name="stern_actionstern" value="senden"> <input
type="submit" name="submit" value="Anfrage senden" class="inputtext">
</div>
<button type="button" class="inputtext cancel" onclick="window.location.href='/index.php';">Abbruch</button>
<p><br/><br/>Hinweis zum Datenschutz:
<a href="" id="dschu">Datenschutzerklärung</a></p>
<p class="lastchange">Letzte Änderungen: 2025-10-22 rxf</p>
</form>
</div>
<?
// ----------------------------------------------------------------------------
} // Ende switch($page)
?>
<!-- end #mainContent -->
</div>
<!-- Dieses clear-Element sollte direkt auf das #mainContent-div folgen, um das #container-div anzuweisen, alle untergeordneten Floats aufzunehmen. -->
<br class="clearfloat"/>
<!-- end #container -->
</div>
</body>
</html>