Vielleicht kann das einer von Euch gebrauchen: Ich habe gestern mal auf die Schnelle das Modul mehrsprachenfähig gemacht und zwar für das Frontend (also für die Besucher).
Zurzeit ist alles für Deutsch (lang = 1) und Englisch (lang = 3) angelegt, kann aber leicht geändert werden...
Ist nur das Output, Input ist nicht geändert...
ALEX
Code: Alles auswählen
<?php
/*******************************************************
* CONTENIDO MODUL - OUTPUT
*
* Modulname : Mailkontakt
* Author : agon
* Copyright : Contenido - four for business
* Created : 05-11-2003
* Modified again : Feb. 29th 2004 by Lars D. Forseth <lars@forseth.de>
********************************************************/
//Sprachanpassung
switch ($lang)
{
case 1:
$t1 = "Diesen Empfänger gibt es nicht (mehr)!<br>Versuchen Sie es später bitte nochmals oder suchen Sie einen anderen Empfänger aus.";
$t2 = " Die angegebene E-Mail-Adresse ist ungültig!<br> Bitte überprüfen...<br><br>";
$t3 = "Kontaktanfrage durch ....de";
$t4 = "Folgende Nachricht wurde eben verschickt:";
$t5 = "Absender";
$t6 = "Nachricht";
$t7 = "Bitte alle Felder <b>korrekt</b> ausfüllen!";
$t8 = "Ihr Name:";
$t9 = "Ihre E-Mail-Adresse";
$t10 = "Ihre Nachricht:";
$t11 = "Mail senden";
$t12 = "Momentan sind leider keine Empfänger in der Datenbank eingetragen, bitte versuchen Sie es später nochmals.";
$t13 = "Empfänger";
$t14 = "zurück";
break;
case 3:
$t1 = "The chosen recipient does not exist. Your please try it later again or choose another recipient.";
$t2 = "The address that you typed is not valid.<br> Please check your address...<br><br>";
$t3 = "Mail from ....de";
$t4 = "This following message was sent:";
$t5 = "Sender";
$t6 = "Message";
$t7 = "Please complete this form accurately!";
$t8 = "Your name:";
$t9 = "Your mail address";
$t10 = "Your message:";
$t11 = "Send message";
$t12 = "There are no recipients in out database. Please try it later again.";
$t13 = "Recipient";
$t14 = "back";
break;
}
echo "
<!-- start Mailkontakt output -->
";
$db = new DB_Contenido;
/* data was given */
if (($mail == "yes") and (strlen($from_name)>1) and
(strlen($from_mail)>5) and (strlen($mailkontaktid)>0) and (strlen($comment)>2)) {
// if invalid mailkontaktid given
if (!(eregi("([0-9]{1,11})",$mailkontaktid))) {
$error = "
<!-- error: invalid mailkontaktid given -->
<br><br><br>
<center><font color=\"darkred\"><b>
$t1
</b></font></center>
<br><br><br>
";
break;
} // end if invalid mailkontaktid given
$sql = "SELECT * FROM mailkontakt WHERE mailkontaktid=$mailkontaktid ".
"OR mailkontakt_spd=\"Y\" ORDER BY mailkontaktid";
$db->query($sql);
$db->next_record();
$nr = $db->num_rows();
$mailto = "";
$spd = "";
$mailkontakt_name = "";
$header="From:".$from_name."<".$from_mail.">";
// no data in DB
if ($nr < 1) {
$error = "
<!-- error: no data in DB -->
<br><br><br>
<center><font color=\"darkred\"><b>
$t1
</b></font></center>
<br><br><br>
";
break;
} // end no data in DB
// get recipients from DB
for ($i=0; $i<$nr; $i++) {
if ($mailkontaktid == ($db->f("mailkontaktid"))) {
$mailto = ($db->f("mailkontakt_email"));
$mailkontakt_name = $db->f("mailkontakt_name");
} // end if
if (!($mailkontaktid == ($db->f("mailkontaktid"))) and (($db->f("mailkontakt_spd"))=="Y")) {
$spd .= ",".($db->f("mailkontakt_email"));
} // end if
$db->next_record();
} // end "get recipients from DB"
if (strlen($mailto) < 5) {
$tmp = explode(",",$spd,2);
$mailto = $tmp[1];
} else {$mailto .= $spd;}
// check if email-adress from user is correct
$length = (int) (strlen($from_mail));
if ($length > 100 or $length < 5) {$length_err = 1;}
else {$length_err = 0;}
$valid = (eregi ("^([a-z0-9_]|\\-|\\.)+@(([a-z0-9_]|\\-)+\\.)+[a-z]+$",$from_mail));
if (strlen($error)>3) {echo $error;}
else { // no error occured
if (!($valid==1) or ($length_err==1)) {
$links = explode('?',$PHP_SELF);
$link = $links[0];
$link = $link."?idcat=".$idcat; // back-link
echo "
<br><br><br>
<font color=\"red\"><b>
$t2
<center>
<form action=\"$link\" method=\"post\">
<input type=\"hidden\" name=\"mailkontaktid\" value=\"$mailkontaktid\">
<input type=\"hidden\" name=\"from_name\" value=\"$from_name\">
<input type=\"hidden\" name=\"from_mail\" value=\"$from_mail\">
<input type=\"hidden\" name=\"comment\" value=\"$comment\">
<input type=\"submit\" value=\"$t14\">
</form>
</center>
</b></font>
<br><br>";
} // end check user email-address
else {
/* finally mail message */
mail($mailto,$t3,$comment,$header);
// give confirmation to user:
if (strlen($mailkontakt_name) < 1) $mailkontakt_name = "uns";
echo "
<br><br><br><br>
<i>$t4</i>
<br><br><br>
<table border=\"0\" cellpadding=\"1\" cellspacing=\"0\" width=\"100%\">
<tr>
<td class=\"text\"><b>$t5:</b></td>
<td> </td>
<td width=\"90%\" class=\"text\">";
echo $from_name." <".$from_mail.">";
echo "</td>
</tr>
<tr>
<td> </td>
<td> </td>
<td> </td>
</tr>
<tr>
<td> </td>
<td> </td>
<td> </td>
</tr>
<tr>
<td> </td>
<td> </td>
<td> </td>
</tr>
<tr valign=\"top\">
<td class=\"text\"><b>$t6:</b></td>
<td> </td>
<td class=\"text\">".nl2br($comment)."</td>
</tr>
</table>
<br><br><br>";
} // end else ("user's email-addres is ok")
} // end else ("no error occured")
} // end "data was given"
/* no data was given (yet), so give back form */
else {
$db1 = new DB_Contenido;
$sql1 = "SELECT * FROM mailkontakt WHERE mailkontakt_sil=\"Y\" ORDER BY mailkontakt_name";
$db1->query($sql1);
$db1->next_record();
$nr1 = $db1->num_rows();
if ($nr1 > 0) $show_list = "yes";
$sql = "SELECT * FROM mailkontakt ORDER BY mailkontaktid";
$db->query($sql);
$db->next_record();
$nr = $db->num_rows();
/* there are recipients in DB */
if ($nr > 0) {
echo "<br><br><br>";
// not all fields were filled during last submission!
if ($mail == "yes") {
echo "
<font class=\"text\"><font color=\"red\">
<i>$t7</i>
</font></font><br><br>";
} // end if "not all fields filled"
echo "
<form name=\"mail\" action=\"".$auth->url()."\" method=\"post\" class=\"text\">
<table border=\"0\" cellpadding=\"0\" cellspacing=\"0\">
";
/* if there are any recipients with sil=="Y" */
if ($show_list == "yes") {
echo"
<tr>
<td valign=\"middle\" class=\"text\">$t13:</td>
<td> </td>";
echo "
<td>
<select name=\"mailkontaktid\" style=\"width: 251px;\">";
for($x=0; $x<$nr1; $x++){
echo "
<option value=\"".($db1->f("mailkontaktid"))."\"";
if (($db1->f("mailkontaktid")) == $mailkontaktid) echo " selected";
echo ">".($db1->f("mailkontakt_name"));
$db1->next_record();
} // end for
echo "
</select>
</td>
";
// end drop-down-menu
echo "
<td> </td>
</tr>";
} // end if($show_list == "yes")
else {echo "<tr><td colspan=\"4\"><input type=\"hidden\" name=\"mailkontaktid\" value=\"0\"</td></tr>";}
echo "
<tr>
<td class=\"text\" valign=\"middle\">$t8</td>
<td> </td>
<td><input type=\"text\" name=\"from_name\" size=\"38\" value=\"".$from_name."\" maxlength=\"100\"></td>
<td> </td>
</tr>
<tr>
<td class=\"text\" valign=\"middle\">$t9:</td>
<td> </td>
<td><input type=\"text\" name=\"from_mail\" size=\"38\" value=\"".$from_mail."\" maxlength=\"100\"></td>
<td> </td>
</tr>
<tr>
<td class=\"text\" valign=\"middle\">$t10</td>
<td> </td>
<td>
<text"."area cols=\"45\" rows=\"10\" name=\"comment\" style=\"width:250px\" wrap=\"physical\">".
$comment.
"</text"."area></td>
<td> </td>
</tr>
<tr>
<td colspan=\"4\" align=\"center\">
<br>
<input type=\"hidden\" name=\"mail\" value=\"yes\">
<input type=\"submit\" value=\"$t11 »\">
</td>
</tr>
</table>
</fo"; echo "rm>
<br><br>";
} // end "there are recipients in DB"
/* there are no recipients in DB */
else {
echo "
<br><br><br>
<center><font color=\"darkred\"><b>
$t12
</b></font></center>
<br><br><br>
";
} // end "there are no recipients in DB"
} // end "no data was given (yet)"
echo "
<!-- end Mailkontakt output -->
";
?>