From 4d4feab0e62d30810b4999d892fba35da04b0268 Mon Sep 17 00:00:00 2001
From: ywarnier <ywarnier>
Date: Sun, 14 Jan 2007 14:50:35 +0000
Subject: [PATCH] Evite le double-enregistrement d'alertes sur anniversaire

---
 htdocs/contact.class.php | 31 +++++++++++++++++++++++--------
 1 file changed, 23 insertions(+), 8 deletions(-)

diff --git a/htdocs/contact.class.php b/htdocs/contact.class.php
index da9ed5edeef..b994ef81491 100644
--- a/htdocs/contact.class.php
+++ b/htdocs/contact.class.php
@@ -321,20 +321,35 @@ class Contact
 		// Mis a jour alerte birthday
 		if ($this->birthday_alert)
 		{
-			$sql = "INSERT into ".MAIN_DB_PREFIX."user_alert(type,fk_contact,fk_user) ";
-			$sql.= "values (1,".$id.",".$user->id.")";
+			//check existing
+			$sql_check = "SELECT * FROM ".MAIN_DB_PREFIX."user_alert WHERE type=1 AND fk_contact=$id AND fk_user=".$user->id;
+			$result_check = $this->db->query($sql_check);
+	        if (!$result_check or ($this->db->num_rows($result_check)<1))
+    	    {
+				//insert
+				$sql = "INSERT into ".MAIN_DB_PREFIX."user_alert(type,fk_contact,fk_user) ";
+				$sql.= "values (1,".$id.",".$user->id.")";
+				$result = $this->db->query($sql);
+				if (!$result)
+				{
+					$this->error='Echec sql='.$sql;
+				}
+    	    }
+    	    else
+    	    {
+    	    	$result = true;
+    	    }
 		}
 		else
 		{
 			$sql = "DELETE from ".MAIN_DB_PREFIX."user_alert ";
 			$sql.= "where type=1 AND fk_contact=".$id." AND fk_user=".$user->id;
+			$result = $this->db->query($sql);
+			if (!$result)
+			{
+				$this->error='Echec sql='.$sql;
+			}
 		}
-		$result = $this->db->query($sql);
-		if (!$result)
-		{
-			$this->error='Echec sql='.$sql;
-		}
-	
 		return $result;
 	}
 
-- 
GitLab