source: t29-www/de/anmeldung.php @ 416

Last change on this file since 416 was 416, checked in by sven, 6 years ago

Anmeldung/Startseite:

  • Anmeldebutton hübscher gestaltet
  • Bestätigungsmail und Spamschutz-Captcha deaktiviert und Möglichkeit zum späteren Aktivieren eingebaut
File size: 6.3 KB
Line 
1<?php
2        $seiten_id = 'anmeldung';
3        $version = '$Id: index.php 387 2013-05-08 09:58:11Z heribert $';
4        $titel = 'Anmeldung zu Terminen für Führungen';
5        $dynamischer_inhalt = true;
6
7        require "../lib/technikum29.php";
8        require "../lib/mail/mailer.php";
9       
10        // Captcha-Sicherung gegen Spam hier an- oder ausschalten
11        $spamschutz_aktiv = false;
12       
13        // Bestätigungsmail hier ein- oder ausschalten
14        $bestaetigungsmail_senden = false;
15       
16        if(empty($_POST)) { // Wenn noch keine Formulardaten vorhanden sind, eigentliches Formular anzeigen
17        ?>
18
19        <h2>Termine und Führungen - Anmeldung</h2>
20       
21        <p>Siehe <a href="/de/#termine">Termine auf Startseite</a> für verfügbare Termine.</p>
22       
23        <?php
24                $veranstaltung = isset($_GET['veranstaltung']) ? $_GET['veranstaltung'] : '';
25        ?>
26       
27        <div class="anmelde-maske">
28            <form id="anmeldung" action="<?=$host->rewrite_link('/de/anmeldung.php'); ?>" method="POST">
29                        <dl>
30                                <dt>Veranstaltung</dt>
31                                <dd><?php if($veranstaltung) {
32                                        echo $veranstaltung;
33                                        echo '<input type="hidden" name="veranstaltung" name="'.$veranstaltung.'">';
34                                } else { ?>
35                                        <input type="text" name="veranstaltung" required>
36                               
37                                <?php } /* if */ ?>
38                                </dd>
39                               
40                                <dt>Termin</dt>
41                                <!--<dd><%=termin%>
42                                <input type="hidden" name="termin" value="<%=termin%>">-->
43                                <dd class="termin"><input type="text" name="termin" required>
44                                </dd>
45
46                                <dt>Name</dt>
47                                <dd><input type="text" name="anmelder_name" required></dd>
48
49                                <dt>Anzahl der Personen</dt>
50                                <dd><input type="number" min="0" name="personenanzahl"></dd>
51                               
52                                <dt>E-Mail-Adresse</dt>
53                                <dd><input type="email" name="email_adresse" required></dd>
54                               
55                                <!--
56                                <dt>Telefonnummer</dt>
57                                <dd><input type="tel" name="text_telefon_nummer"></dd>
58                                -->
59                               
60                                <dt>Ggf. Anmerkungen</dt>
61                                <dd><textarea name="weitere_anmerkungen"></textarea></dd>
62                               
63                                <?php if($spamschutz_aktiv) { ?>
64                                <dt>Captcha</dt>
65                                <dd>Bitte bestätigen Sie, dass Sie menschlich sind:
66                                <?php
67                                        if($ajax)
68                                                echo "<span class='t29-recaptcha' data-publickey='". t29Mailer::recaptcha_get_publickey() ."'></span>";
69                                        else
70                                                echo t29Mailer::recaptcha_get_html();
71                                ?>
72                                <p>Vielen Dank für Ihre Mithilfe gegen Spam.
73                                </dd>
74                                <?php } /* $spamschutz_aktiv */ ?>
75                               
76                                <dd><input type="submit" value="Abschicken" class="submit"> <input type="reset" value="Abbrechen"> </dd>
77                        </dl>
78            </form>
79           </div>
80<?php
81        } // ende der Ausgaben, wenn keine Formulardaten vorhanden sind
82        else {
83                // Formular auswerten, d.h. Formmailer verwenden
84               
85                $mailer = new t29Mailer($_POST);
86               
87                // fill up form data
88                $mailer->to = "sven";
89                $mailer->subject = "Webanmeldung für Führung \"{veranstaltung}\"";
90                $mailer->header = array(
91                        'From' => 'technikum29 Computer Museum Anmeldesystem <post@technikum29.de>',
92                );
93                $mailer->body = <<<MAIL_BODY
94Hallo,
95
96auf der Anmeldungsseite der Homepage www.technikum29.de ging eine neue Anmeldung ein:
97
98Veranstaltung: {veranstaltung}
99Termin: {termin}
100(Vgl. Termine auf Startseite: http://www.technikum29.de/de/#termine
101
102Name: {anmelder_name}
103Anzahl der Personen: {personenanzahl}
104E-Mail-Adresse: {email_adresse}
105
106Ggf. weitere Anmerkungen, die angegeben wurden:
107{weitere_anmerkungen}
108
109Die Person hat eine Bestätigungsmail ihrer Daten erhalten.
110
111Viele Grüße,
112deine Website
113
114PS: Wenn im Rahmen dieser Mail auch Spam ankommt, wird das System missbraucht. Dann bitte
115bescheid sagen.
116
117MAIL_BODY;
118
119                // Captcha-Check aktivieren
120                $mailer->enable_captcha_check = $spamschutz_aktiv;
121
122                // Bestätigungsmail aufsetzen
123                $mailer->ack = $bestaetigungsmail_senden;
124                $mailer->ack_to = '{email_adresse}';
125                $mailer->ack_subject = "Bestätigung ihrer Webanmeldung zur technikum29-Führung \"{veranstaltung}\"";
126                $mailer->ack_body = <<<ACK_MAIL_BODY
127Hallo {anmelder_name},
128
129vielen Dank für Ihre Web-Anmeldung zu einer Führung im technikum29 Computer Museum (http://www.technikum29.de/).
130
131Sie haben sich mit {personenanzahl} zu der Führung "{veranstaltung}" am {termin} angemeldet.
132
133Diese Mail bestätigt den Eingang ihrer Anmeldung. Bitte setzen Sie sich bei weiteren Fragen mit der Museumsführung in Kontakt, schreiben Sie dazu eien Mail an post@technikum29.de, siehe auch Kontaktdaten auf http://www.technikum29.de/de/impressum .
134
135-- Diese E-Mail wurde automatisch generiert. Bitte antworten Sie nicht darauf --
136ACK_MAIL_BODY;
137
138                $mailer->output_error_page = function($mailer, $text) {
139                        ?><h2>Bei der Anmeldung traten Fehler auf</h2>
140                        <p>Sie wurden dazu aufgefordert, ihre Menschlichkeit zu beweisen. Da wir keine Massenspam-Mails
141                        erwünschen, füllen Sie bitte dieses Captcha <i>richtig</i> aus:</p>
142                       
143                        <form method="POST">
144                                <?php $mailer->print_serialized_hidden_form(); ?>
145                                <?php echo $text; ?>
146                                <input type="submit" value="Anmeldung abschicken">
147                        </form>
148                        <?php
149                };
150
151                $mailer->output_success_page = function($mailer) {
152                        ?><h2>Ihre Anmeldung wurde eingereicht</h2>
153                       
154                        <p>Vielen Dank für ihre Anmeldung zur Veranstaltung <strong><?=$mailer->veranstaltung; ?></strong> am
155                        <strong><?=$mailer->termin; ?></strong>. <!--Sie erhielten eine Bestätigungsmail an ihre Mail-Adresse
156                        <em><?=$mailer->email_adresse; ?></em>. Bei Fragen wenden Sie sich bitte an die Museumsführung, siehe
157                        Kontaktdaten im <a href="/de/impressum">Impressum</a>.-->
158                       
159                        Innerhalb von zwei Tagen erhalten Sie eine persönliche Bestätigungsmail. Sollte die Antwort ausbleiben,
160                        können Sie den Kontakt jederzeit über die Kontaktdaten aus dem <a href="/de/impressum">Impressum</a>
161                        herstellen.
162                        </p>
163                       
164                        <p><a class="go" href="/de/">Zurück zur Startseite</a></p>
165                       
166                        <?php
167                };
168               
169                // checken ob alle Pflichtfelder vorhanden sind
170                $pflicht = array('veranstaltung', 'termin', 'anmelder_name', 'email_adresse');
171                foreach($pflicht as $feld) {
172                        if(isset($mailer->_values[$feld]) && !empty($mailer->_values[$feld])) continue;
173                       
174                        // Richtig hässliche Fehlerseite anzeigen
175                        ?><h2>Bitte füllen Sie das Anmeldeformular vollständig aus</h2>
176                        <p>Die Angabe von Name, Termin, Veranstaltung und E-Mail-Adresse ist zwingend erforderlich.
177                        <a class="go" href="javascript:history.go();">Zurückgehen und korrigieren</a> oder
178                        <a href="/de/anmeldung.php">Neu ausfüllen</a>.
179                        <?php
180                        return; // end of script
181                }       
182               
183                // mailer starten
184                if(!$mailer->run()) {
185                        ?><div style="opacity:0.5"><hr>
186                        <p><small>Es wurde ein Fehler beim Anmelden festgestellt</small></p><?php
187                }
188        }
Note: See TracBrowser for help on using the repository browser.
© 2008 - 2013 technikum29 • Sven Köppel • Some rights reserved
Powered by Trac
Expect where otherwise noted, content on this site is licensed under a Creative Commons 3.0 License