Download | Plain Text | Line Numbers


--- html/user/email_email_anlegen2.php.orig	2010-05-24 16:44:08.000000000 +0200
+++ html/user/email_email_anlegen2.php	2010-05-24 19:59:04.000000000 +0200
@@ -181,14 +181,15 @@
 $teil1 = $emailteile[0];
 $teil2 = $emailteile[1];
 
-$id = safe_query2( "SELECT COUNT(*) FROM email WHERE prefix = ? AND domain = ? AND kunde = ? AND server_id='$ServerID'",
-									 new SQLString( $teil1 ), 
-                   new SQLString( $teil2 ), 
-                   $loUser );
-list($count) = db_fetch_array( $id, 'N' );
-
-if ( $count || ($pop3 == "$prefix@$domain")){
-	$fehlertext = ltext("ememan2_error6");
+/* check for mail loops */
+$loops = email_checkloop($prefix, $domain, $teil1, $teil2, $loUser, $ServerID);
+if (!empty($loops))
+{
+	$fehlertext = ltextud('mailloop', $prefix.'@'.$domain . " &rarr; " . $teil1.'@'.$teil2) . "<br />\n";
+	$fehlertext .= "<pre>";
+	foreach($loops as $loop)
+		$fehlertext .= implode(" &rarr; ", $loop) . "\n";
+	$fehlertext .= "</pre>";
 	db_close();
 	popPathBar();
 	include("email_email.php");
--- html/user/email_email_bearbeiten2.php.orig	2010-05-24 19:22:44.000000000 +0200
+++ html/user/email_email_bearbeiten2.php	2010-05-24 20:00:50.000000000 +0200
@@ -73,10 +73,16 @@
 	 $emailteile = explode("@", $hpop3);
 	 $teil1 = $emailteile[0];
 	 $teil2 = $emailteile[1];
-	 $tmpmail = $teil1."@".$teil2;
-	 if (in_array( $tmpmail, $hasEmails ) )	{
-		 $fehlertext = ltext("emembe2_error1");
-		 $pop3 = $hemail;
+	 /* check for mail loops */
+	 $source = explode("@", $emailadresse);
+	 $loops = email_checkloop($source[0], $source[1], $teil1, $teil2, $loUser, $ServerID);
+	 if (!empty($loops))
+	 {
+		 $fehlertext = ltextud('mailloop', $emailadresse . " &rarr; " . $teil1.'@'.$teil2) . "<br />\n";
+		 $fehlertext .= "<pre>";
+		 foreach($loops as $loop)
+			$fehlertext .= implode(" &rarr; ", $loop) . "\n";
+		 $fehlertext .= "</pre>";
 		 db_close();
 		 include("email_email_bearbeiten.php");
 		 exit();
@@ -126,10 +132,19 @@
 			 $emailteile = explode("@", $pop3);
 			 $teil1 = $emailteile[0];
 			 $teil2 = $emailteile[1];
-			 $tmpmail = $teil1."@".$teil2;
-			 if ( in_array( $tmpmail, $hasEmails ) ) {
-				 $pop3 = "";
-				 $topop = "ja";
+			 /* check for mail loops */
+			 $source = explode("@", $emailadresse);
+			 $loops = email_checkloop($source[0], $source[1], $teil1, $teil2, $loUser, $ServerID);
+			 if (!empty($loops))
+			 {
+				 $fehlertext = ltextud('mailloop', $emailadresse . " &rarr; " . $teil1.'@'.$teil2) . "<br />\n";
+				 $fehlertext .= "<pre>";
+				 foreach($loops as $loop)
+					$fehlertext .= implode(" &rarr; ", $loop) . "\n";
+				 $fehlertext .= "</pre>";
+				 db_close();
+				 include("email_email_bearbeiten.php");
+				 exit();
 			 }
 		 }