Multilingual support for reporting to the site admin

fixes #205

fixes #207
Fixes the problem when the subject contains umlauts that the email cannot be delivered.
This commit is contained in:
Fraenkiman 2023-02-18 23:35:37 +01:00
parent 9b155efe70
commit c0e21ef0de
11 changed files with 337 additions and 286 deletions

View File

@ -100,18 +100,19 @@ function contact_form() {
// okay, validation returned validated values // okay, validation returned validated values
// now build the mail content // now build the mail content
$msg = "Name: \n{$validationResult['name']} \n\n"; $msg = "{$lang['contact']['notification']['name']} \n{$validationResult['name']}\n\n";
if (isset($validationResult ['email'])) { if (isset($validationResult ['email'])) {
$msg .= "Email: {$validationResult['email']}\n\n"; $msg .= "{$lang['contact']['notification']['email']} \n{$validationResult['email']}\n\n";
} }
if (isset($validationResult ['url'])) { if (isset($validationResult ['url'])) {
$msg .= "WWW: {$validationResult['url']}\n\n"; $msg .= "{$lang['contact']['notification']['www']} \n{$validationResult['url']}\n\n";
} }
$msg .= "Content:\n{$validationResult['content']}\n"; $msg .= "{$lang['contact']['notification']['content']} \n{$validationResult['content']}\n";
// send notification mail to site admin // send notification mail to site admin
$success = @utils_mail((isset($validationResult ['email']) ? $validationResult ['email'] : $fp_config ['general'] ['email']), "Contact sent through {$fp_config['general']['title']} ", $msg); // for non-ASCII characters in the e-mail header, use RFC 1342 — Encodes data with MIME base64
$success = @utils_mail((isset($validationResult ['email']) ? $validationResult ['email'] : $fp_config ['general'] ['email']), "=?utf-8?B?" . base64_encode($lang ['contact'] ['notification'] ['subject']) . "?= =?utf-8?B?" . base64_encode($fp_config ['general'] ['title']) . "?=", $msg);
system_seterr('contact', $success ? 1 : -1); system_seterr('contact', $success ? 1 : -1);
utils_redirect(basename(__FILE__)); utils_redirect(basename(__FILE__));
} }

View File

@ -1,6 +1,5 @@
<?php <?php
$lang ['contact'] = array(
$lang['contact'] = array(
'head' => 'Kontaktujte nás', 'head' => 'Kontaktujte nás',
'descr' => 'Vyplňte prosím formulář (níže) pro zaslání dotazu. Napište email, pokud chcete, aby Vám přišla odpověď.', 'descr' => 'Vyplňte prosím formulář (níže) pro zaslání dotazu. Napište email, pokud chcete, aby Vám přišla odpověď.',
'fieldset1' => 'Údaje o uživateli', 'fieldset1' => 'Údaje o uživateli',
@ -13,19 +12,25 @@
'fieldset3' => 'Poslat', 'fieldset3' => 'Poslat',
'submit' => 'Poslat', 'submit' => 'Poslat',
'reset' => 'Resetovat', 'reset' => 'Resetovat',
);
); $lang ['contact'] ['notification'] = array(
'name' => 'Název:',
'email' => 'E-mail:',
'www' => 'Web:',
'content' => 'Zpráva:',
'subject' => 'Kontakt zaslaný prostřednictvím ',
);
$lang['contact']['error'] = array( $lang ['contact'] ['error'] = array(
'name' => 'Musíte vložit jméno', 'name' => 'Musíte vložit jméno',
'email' => 'Musíte vložit správný email', 'email' => 'Musíte vložit správný email',
'www' => 'Musíte vložit správné URL', 'www' => 'Musíte vložit správné URL',
'content' => 'Musíte vložit zprávu', 'content' => 'Musíte vložit zprávu',
); );
$lang['contact']['msgs'] = array( $lang ['contact'] ['msgs'] = array(
1 => 'Zpráva byla úspěšně odeslána', 1 => 'Zpráva byla úspěšně odeslána',
-1 => 'Zpráva nemohla být odeslána', -1 => 'Zpráva nemohla být odeslána',
); );
?> ?>

View File

@ -1,6 +1,5 @@
<?php <?php
$lang ['contact'] = array(
$lang['contact'] = array(
'head' => 'Kontakt', 'head' => 'Kontakt',
'descr' => 'Die Felder Name und Nachricht sind Pflichtfelder. Um dir eventuell antworten zu können, benötigen wir deine E-Mail Adresse.', 'descr' => 'Die Felder Name und Nachricht sind Pflichtfelder. Um dir eventuell antworten zu können, benötigen wir deine E-Mail Adresse.',
'fieldset1' => 'Deine Angaben', 'fieldset1' => 'Deine Angaben',
@ -13,19 +12,25 @@
'fieldset3' => 'Senden', 'fieldset3' => 'Senden',
'submit' => 'Abschicken', 'submit' => 'Abschicken',
'reset' => 'Zurücksetzen', 'reset' => 'Zurücksetzen',
);
); $lang ['contact'] ['notification'] = array(
'name' => 'Name:',
'email' => 'E-Mail Adresse:',
'www' => 'Website:',
'content' => 'Nachricht:',
'subject' => 'Kontaktaufnahme über ',
);
$lang['contact']['error'] = array( $lang ['contact'] ['error'] = array(
'name' => 'Bitte einen Namen eingeben', 'name' => 'Bitte einen Namen eingeben',
'email' => 'Bitte eine gültige E-Mail Adresse eingeben', 'email' => 'Bitte eine gültige E-Mail Adresse eingeben',
'www' => 'Bitte eine gültige URL eingeben', 'www' => 'Bitte eine gültige URL eingeben',
'content' => 'Bitte eine Nachricht schreiben', 'content' => 'Bitte eine Nachricht schreiben',
); );
$lang['contact']['msgs'] = array( $lang ['contact'] ['msgs'] = array(
1 => 'Die Nachricht wurde erfolgreich versendet', 1 => 'Die Nachricht wurde erfolgreich versendet',
-1 => 'Fehler: Die Nachricht konnte nicht versendet werden', -1 => 'Fehler: Die Nachricht konnte nicht versendet werden',
); );
?> ?>

View File

@ -1,6 +1,5 @@
<?php <?php
$lang ['contact'] = array(
$lang['contact'] = array(
'head' => 'Επικοινωνία', 'head' => 'Επικοινωνία',
'descr' => 'Συμπηρώστε την φόρμα παρακάτω αν επιθυμείτε να επικοινωνήσετε μαζί μου. Παρακαλώ προσθέστε την διεύθυνση ηλεκτρονικού ταχυδρομείου σας αν επιθυμείτε να λάβετε απάντηση.', 'descr' => 'Συμπηρώστε την φόρμα παρακάτω αν επιθυμείτε να επικοινωνήσετε μαζί μου. Παρακαλώ προσθέστε την διεύθυνση ηλεκτρονικού ταχυδρομείου σας αν επιθυμείτε να λάβετε απάντηση.',
'fieldset1' => 'Στοιχεία χρήστη', 'fieldset1' => 'Στοιχεία χρήστη',
@ -13,19 +12,25 @@
'fieldset3' => 'Αποστολή', 'fieldset3' => 'Αποστολή',
'submit' => 'Αποστολή', 'submit' => 'Αποστολή',
'reset' => 'Ακύρωση', 'reset' => 'Ακύρωση',
);
); $lang ['contact'] ['notification'] = array(
'name' => 'Όνομα:',
'email' => 'Ηλεκτρονικό ταχυδρομείο:',
'www' => 'Ιστοσελίδα:',
'content' => 'Μήνυμα:',
'subject' => 'Επικοινωνία που αποστέλλεται μέσω ',
);
$lang['contact']['error'] = array( $lang ['contact'] ['error'] = array(
'name' => 'Πρέπει να εισάγετε ένα όνομα', 'name' => 'Πρέπει να εισάγετε ένα όνομα',
'email' => 'Πρέπει να εισάγετε μια ισχύουσα ηλεκτρονική διεύθυνση', 'email' => 'Πρέπει να εισάγετε μια ισχύουσα ηλεκτρονική διεύθυνση',
'www' => 'Πρέπει να προσθέσετε μια ισχύουσα σελίδα', 'www' => 'Πρέπει να προσθέσετε μια ισχύουσα σελίδα',
'content' => 'Πρέπει να εισάγετε ένα μήνυμα', 'content' => 'Πρέπει να εισάγετε ένα μήνυμα',
); );
$lang['contact']['msgs'] = array( $lang ['contact'] ['msgs'] = array(
1 => 'Το μήνυμα σας εστάλη επιτυχώς', 1 => 'Το μήνυμα σας εστάλη επιτυχώς',
-1 => 'Το μήνυμα σας δεν μπόρεσε να σταλεί', -1 => 'Το μήνυμα σας δεν μπόρεσε να σταλεί',
); );
?> ?>

View File

@ -1,6 +1,5 @@
<?php <?php
$lang ['contact'] = array(
$lang['contact'] = array(
'head' => 'Contact Us', 'head' => 'Contact Us',
'descr' => 'Fill out the form below to send us feedback. Please add your email if you wish to be answered.', 'descr' => 'Fill out the form below to send us feedback. Please add your email if you wish to be answered.',
'fieldset1' => 'User data', 'fieldset1' => 'User data',
@ -13,19 +12,25 @@
'fieldset3' => 'Send', 'fieldset3' => 'Send',
'submit' => 'Send', 'submit' => 'Send',
'reset' => 'Reset', 'reset' => 'Reset',
);
); $lang ['contact'] ['notification'] = array(
'name' => 'Name:',
'email' => 'Email:',
'www' => 'Web:',
'content' => 'Message:',
'subject' => 'Contact sent through ',
);
$lang['contact']['error'] = array( $lang ['contact'] ['error'] = array(
'name' => 'You must enter a name', 'name' => 'You must enter a name',
'email' => 'You must enter a valid email', 'email' => 'You must enter a valid email',
'www' => 'You must enter a valid URL', 'www' => 'You must enter a valid URL',
'content' => 'You must enter a message', 'content' => 'You must enter a message',
); );
$lang['contact']['msgs'] = array( $lang ['contact'] ['msgs'] = array(
1 => 'Message was sent successfully', 1 => 'Message was sent successfully',
-1 => 'Message could not be sent', -1 => 'Message could not be sent',
); );
?> ?>

View File

@ -1,6 +1,5 @@
<?php <?php
$lang ['contact'] = array(
$lang['contact'] = array(
'head' => 'Contáctanos', 'head' => 'Contáctanos',
'descr' => 'Complete el siguiente formulario para enviarnos sus comentarios. Agregue su correo electrónico si desea ser respondido.', 'descr' => 'Complete el siguiente formulario para enviarnos sus comentarios. Agregue su correo electrónico si desea ser respondido.',
'fieldset1' => 'Datos del usuario', 'fieldset1' => 'Datos del usuario',
@ -13,19 +12,25 @@
'fieldset3' => 'Enviar', 'fieldset3' => 'Enviar',
'submit' => 'Enviar', 'submit' => 'Enviar',
'reset' => 'Reiniciar', 'reset' => 'Reiniciar',
);
); $lang ['contact'] ['notification'] = array(
'name' => 'Nombre:',
'email' => 'Correo electrónico:',
'www' => 'Web:',
'content' => 'Mensaje:',
'subject' => 'Contacto enviado a través de ',
);
$lang['contact']['error'] = array( $lang['contact'] ['error'] = array(
'name' => 'Debes ingresar un nombre', 'name' => 'Debes ingresar un nombre',
'email' => 'Debes ingresar un correo electrónico válido', 'email' => 'Debes ingresar un correo electrónico válido',
'www' => 'Debes ingresar una URL válida', 'www' => 'Debes ingresar una URL válida',
'content' => 'Debes ingresar un mensaje', 'content' => 'Debes ingresar un mensaje',
); );
$lang['contact']['msgs'] = array( $lang ['contact'] ['msgs'] = array(
1 => 'El mensaje se envió con éxito', 1 => 'El mensaje se envió con éxito',
-1 => 'No se pudo enviar el mensaje', -1 => 'No se pudo enviar el mensaje',
); );
?> ?>

View File

@ -1,6 +1,5 @@
<?php <?php
$lang ['contact'] = array(
$lang['contact'] = array(
'head' => 'Nous Contacter', 'head' => 'Nous Contacter',
'descr' => 'Remplissez le formulaire ci-dessous pour nous envoyer vos commentaires. Merci d\'ajouter votre e-mail si vous souhaitez une r&eacute;ponse.', 'descr' => 'Remplissez le formulaire ci-dessous pour nous envoyer vos commentaires. Merci d\'ajouter votre e-mail si vous souhaitez une r&eacute;ponse.',
'fieldset1' => 'Donn&eacute;es utilisateur', 'fieldset1' => 'Donn&eacute;es utilisateur',
@ -13,19 +12,25 @@
'fieldset3' => 'Envoyer', 'fieldset3' => 'Envoyer',
'submit' => 'Envoyer', 'submit' => 'Envoyer',
'reset' => 'Réinitialiser', 'reset' => 'Réinitialiser',
);
); $lang ['contact'] ['notification'] = array(
'name' => 'Nom:',
'email' => 'Courriel:',
'www' => 'Web:',
'content' => 'Message:',
'subject' => 'Contact envoyé par ',
);
$lang['contact']['error'] = array( $lang ['contact'] ['error'] = array(
'name' => 'Vous devez entrer un nom', 'name' => 'Vous devez entrer un nom',
'email' => 'Vous devez entrer une adresse email valide', 'email' => 'Vous devez entrer une adresse email valide',
'www' => 'Vous devez entrer une URL correcte', 'www' => 'Vous devez entrer une URL correcte',
'content' => 'Vous devez écrire un message', 'content' => 'Vous devez écrire un message',
); );
$lang['contact']['msgs'] = array( $lang ['contact'] ['msgs'] = array(
1 => 'Message envoyé avec succ&egrave;s', 1 => 'Message envoyé avec succ&egrave;s',
-1 => 'Echec d\'envoi du message', -1 => 'Echec d\'envoi du message',
); );
?> ?>

View File

@ -1,6 +1,5 @@
<?php <?php
$lang ['contact'] = array(
$lang['contact'] = array(
'head' => 'Contattaci', 'head' => 'Contattaci',
'descr' => 'Compila il modulo qui sotto per dirci cosa ne pensi. Aggiungi il tuo indirizzo email se vuoi avere una risposta.', 'descr' => 'Compila il modulo qui sotto per dirci cosa ne pensi. Aggiungi il tuo indirizzo email se vuoi avere una risposta.',
'fieldset1' => 'Dati utente', 'fieldset1' => 'Dati utente',
@ -13,19 +12,25 @@
'fieldset3' => 'Invia', 'fieldset3' => 'Invia',
'submit' => 'Invia', 'submit' => 'Invia',
'reset' => 'Azzera', 'reset' => 'Azzera',
);
); $lang ['contact'] ['notification'] = array(
'name' => 'Nome:',
'email' => 'Email:',
'www' => 'Web:',
'content' => 'Messaggio:',
'subject' => 'Contatto inviato tramite ',
);
$lang['contact']['error'] = array( $lang ['contact'] ['error'] = array(
'name' => 'Devi inserire un nome', 'name' => 'Devi inserire un nome',
'email' => 'Devi inserire un indirizzo email valido', 'email' => 'Devi inserire un indirizzo email valido',
'www' => 'Devi inserire un URL valido', 'www' => 'Devi inserire un URL valido',
'content' => 'Devi inserire un messaggio', 'content' => 'Devi inserire un messaggio',
); );
$lang['contact']['msgs'] = array( $lang ['contact'] ['msgs'] = array(
1 => 'Il messaggio è stato inviato con successo', 1 => 'Il messaggio è stato inviato con successo',
-1 => 'Il messaggio non è stato inviato', -1 => 'Il messaggio non è stato inviato',
); );
?> ?>

View File

@ -1,6 +1,5 @@
<?php <?php
$lang ['contact'] = array(
$lang['contact'] = array(
'head' => 'メッセージの送信', 'head' => 'メッセージの送信',
'descr' => '次のフォームにご記入のうえ、送信してください。返信を希望される方は、必ずメールアドレス欄にもご記入ください。', 'descr' => '次のフォームにご記入のうえ、送信してください。返信を希望される方は、必ずメールアドレス欄にもご記入ください。',
'fieldset1' => 'プロフィール欄', 'fieldset1' => 'プロフィール欄',
@ -13,19 +12,25 @@
'fieldset3' => '送信', 'fieldset3' => '送信',
'submit' => '送信する', 'submit' => '送信する',
'reset' => 'キャンセル', 'reset' => 'キャンセル',
);
); $lang ['contact'] ['notification'] = array(
'name' => '名称:',
'email' => '電子メール:',
'www' => 'ウェブ:',
'content' => 'メッセージ:',
'subject' => 'で送信した連絡先 ',
);
$lang['contact']['error'] = array( $lang ['contact'] ['error'] = array(
'name' => 'お名前をご記入ください。', 'name' => 'お名前をご記入ください。',
'email' => 'メールアドレスを正しくご記入ください。', 'email' => 'メールアドレスを正しくご記入ください。',
'www' => 'URLを正しくご記入ください。', 'www' => 'URLを正しくご記入ください。',
'content' => 'メッセージをご記入ください。', 'content' => 'メッセージをご記入ください。',
); );
$lang['contact']['msgs'] = array( $lang ['contact'] ['msgs'] = array(
1 => 'メッセージを送信しました。', 1 => 'メッセージを送信しました。',
-1 => 'メッセージを送信できませんでした。', -1 => 'メッセージを送信できませんでした。',
); );
?> ?>

View File

@ -1,6 +1,5 @@
<?php <?php
$lang ['contact'] = array(
$lang['contact'] = array(
'head' => 'Neem contact op', 'head' => 'Neem contact op',
'descr' => 'Vul het formulier hieronder in. 'descr' => 'Vul het formulier hieronder in.
Om een antwoord te krijgen is een e-mail adres nodig. Om een antwoord te krijgen is een e-mail adres nodig.
@ -15,19 +14,25 @@
'fieldset3' => 'Stuur', 'fieldset3' => 'Stuur',
'submit' => 'Stuur', 'submit' => 'Stuur',
'reset' => 'Reset', 'reset' => 'Reset',
);
); $lang ['contact'] ['notification'] = array(
'name' => 'Naam:',
'email' => 'Email:',
'www' => 'Web:',
'content' => 'Boodschap:',
'subject' => 'Contact verzonden via ',
);
$lang['contact']['error'] = array( $lang ['contact'] ['error'] = array(
'name' => 'Er dient een naam ingevuld te worden', 'name' => 'Er dient een naam ingevuld te worden',
'email' => 'Geen geldig e-mail adres', 'email' => 'Geen geldig e-mail adres',
'www' => 'Geen geldige URL ', 'www' => 'Geen geldige URL ',
'content' => 'Het bericht mag niet blanko zijn', 'content' => 'Het bericht mag niet blanko zijn',
); );
$lang['contact']['msgs'] = array( $lang ['contact'] ['msgs'] = array(
1 => 'Bericht is succesvol verstuurd', 1 => 'Bericht is succesvol verstuurd',
-1 => 'Bericht kon niet verstuurd worden', -1 => 'Bericht kon niet verstuurd worden',
); );
?> ?>

View File

@ -1,7 +1,6 @@
<?php <?php
//Terminado 27 de Novembro de 2022 //Terminado 27 de Novembro de 2022
$lang ['contact'] = array(
$lang['contact'] = array(
'head' => 'Contato', 'head' => 'Contato',
'descr' => 'Por favor, preencha o formulário abaixo para nos enviar um feedback. Adicione seu email se desejar uma resposta.', 'descr' => 'Por favor, preencha o formulário abaixo para nos enviar um feedback. Adicione seu email se desejar uma resposta.',
'fieldset1' => 'Dados de usuário', 'fieldset1' => 'Dados de usuário',
@ -14,19 +13,25 @@
'fieldset3' => 'Envie', 'fieldset3' => 'Envie',
'submit' => 'Enviar', 'submit' => 'Enviar',
'reset' => 'Resetar', 'reset' => 'Resetar',
);
); $lang ['contact'] ['notification'] = array(
'name' => 'Nome:',
'email' => 'Email:',
'www' => 'Web:',
'content' => 'Mensagem:',
'subject' => 'Contato enviado através de ',
);
$lang['contact']['error'] = array( $lang ['contact'] ['error'] = array(
'name' => 'Você deve incluir um nome', 'name' => 'Você deve incluir um nome',
'email' => 'Você deve incluir um email válido', 'email' => 'Você deve incluir um email válido',
'www' => 'Você deve incluir uma URL válida', 'www' => 'Você deve incluir uma URL válida',
'content' => 'Você deve incluir uma mensagem', 'content' => 'Você deve incluir uma mensagem',
); );
$lang['contact']['msgs'] = array( $lang ['contact'] ['msgs'] = array(
1 => 'A mensagem foi enviada com sucesso', 1 => 'A mensagem foi enviada com sucesso',
-1 => 'A mensagem não pôde ser enviada', -1 => 'A mensagem não pôde ser enviada',
); );
?> ?>