Browse Source

Add check if email is valid (#2944)

Jaap Marcus 3 năm trước cách đây
mục cha
commit
2ffc8f8d25

+ 2 - 2
install/upgrade/manual/configure-server-smtp.sh

@@ -40,7 +40,7 @@ function setupFiles
 		read -i $SERVER_SMTP_USER -e smtp_server_user_name
 		read -i $SERVER_SMTP_USER -e smtp_server_user_name
 		echo "Enter SMTP Password (stored as plaintext):"
 		echo "Enter SMTP Password (stored as plaintext):"
 		read -i $SERVER_SMTP_PASSWD -e smtp_server_password
 		read -i $SERVER_SMTP_PASSWD -e smtp_server_password
-		echo "Enter SMTP Address:"
+		echo "Enter Email Address:"
 		read -i $SERVER_SMTP_ADDR -e smtp_server_addr
 		read -i $SERVER_SMTP_ADDR -e smtp_server_addr
 	else
 	else
 		use_smtp=false
 		use_smtp=false
@@ -53,7 +53,7 @@ function setupFiles
 	SMTP Security: $smtp_server_security
 	SMTP Security: $smtp_server_security
 	SMTP Username: $smtp_server_user_name
 	SMTP Username: $smtp_server_user_name
 	SMTP Password: $smtp_server_password
 	SMTP Password: $smtp_server_password
-	SMTP Address: $smtp_server_addr
+	Email Address: $smtp_server_addr
 	Are these values correct? (y/N)"
 	Are these values correct? (y/N)"
 	read correct_validation
 	read correct_validation
 	correct="${correct_validation:-n}"
 	correct="${correct_validation:-n}"

+ 5 - 1
web/inc/main.php

@@ -404,7 +404,11 @@ function send_email($to, $subject, $mailtext, $from, $from_name, $to_name = '')
     $mail = new PHPMailer();
     $mail = new PHPMailer();
 
 
     if (isset($_SESSION['USE_SERVER_SMTP']) && $_SESSION['USE_SERVER_SMTP'] == "true") {
     if (isset($_SESSION['USE_SERVER_SMTP']) && $_SESSION['USE_SERVER_SMTP'] == "true") {
-        $from = $_SESSION['SERVER_SMTP_ADDR'];
+        if(!empty($_SESSION['SERVER_SMTP_ADDR']) && $_SESSION['SERVER_SMTP_ADDR'] != ''){
+            if(filter_var($_SESSION['SERVER_SMTP_ADDR'], FILTER_VALIDATE_EMAIL)){
+                $from = $_SESSION['SERVER_SMTP_ADDR'];
+            }
+        }
 
 
         $mail->IsSMTP();
         $mail->IsSMTP();
         $mail->Mailer = "smtp";
         $mail->Mailer = "smtp";