forked from itchy/Dialyse-Webseite
Add multilingual support (DE default, EN under /en/)
This commit is contained in:
1 parent
01ea3bd07a
commit
1e33c525f1
21 files changed
+855
-443
No files matched your search
+19
-4
@@ -2,9 +2,18 @@
|
||||
|
||||
require_once __DIR__ . '/lib/SendMail.php';
|
||||
require_once __DIR__ . '/lib/Session.php';
|
||||
require_once __DIR__ . '/lib/Helper.php';
|
||||
|
||||
$session = new Session();
|
||||
|
||||
$lang = 'de';
|
||||
if (isset($_POST['lang']) && in_array($_POST['lang'], ['de', 'en'], true)) {
|
||||
$lang = $_POST['lang'];
|
||||
} elseif ($session->has('lang') && in_array($session->get('lang'), ['de', 'en'], true)) {
|
||||
$lang = $session->get('lang');
|
||||
}
|
||||
$isEn = ($lang === 'en');
|
||||
|
||||
function validate($data) {
|
||||
$hasContact = !empty(trim($data['email'] ?? '')) || !empty(trim($data['phone'] ?? ''));
|
||||
return !empty(trim($data['name'] ?? '')) && $hasContact && !empty(trim($data['message'] ?? ''));
|
||||
@@ -22,7 +31,9 @@ if($_POST && count($_POST) > 0) {
|
||||
if(!validate($_POST)) {
|
||||
$session->set('form', $_POST);
|
||||
$session->set('alert-class', 'alert-danger');
|
||||
$session->set('alert', 'Bitte füllen Sie alle Pflichtfelder aus und geben Sie mindestens eine E-Mail-Adresse oder Telefonnummer an.');
|
||||
$session->set('alert', $isEn
|
||||
? 'Please fill out all mandatory fields and provide at least an email address or a phone number.'
|
||||
: 'Bitte füllen Sie alle Pflichtfelder aus und geben Sie mindestens eine E-Mail-Adresse oder Telefonnummer an.');
|
||||
} else {
|
||||
$ip = $_SERVER['REMOTE_ADDR'];
|
||||
|
||||
@@ -37,13 +48,17 @@ if($_POST && count($_POST) > 0) {
|
||||
if($mail->send()) {
|
||||
$session->remove('form');
|
||||
$session->set('alert-class', 'alert-success');
|
||||
$session->set('alert', 'Ihre Anfrage wurde erfolgreich verschickt');
|
||||
$session->set('alert', $isEn
|
||||
? 'Your inquiry has been sent successfully.'
|
||||
: 'Ihre Anfrage wurde erfolgreich verschickt');
|
||||
} else {
|
||||
$session->set('form', $_POST);
|
||||
$session->set('alert-class', 'alert-danger');
|
||||
$session->set('alert', 'Beim Verschicken Ihrer Anfrage ist ein Fehler aufgetreten!');
|
||||
$session->set('alert', $isEn
|
||||
? 'An error occurred while sending your inquiry!'
|
||||
: 'Beim Verschicken Ihrer Anfrage ist ein Fehler aufgetreten!');
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
header('Location: kontakt-formular.html');
|
||||
header('Location: ' . Helper::url('/kontakt-formular.html', $lang));
|
||||
Reference in new issue
Block a user