Merge commit 'origin/platal-0.10.1'
[platal.git] / modules / axletter / axletter.inc.php
index 68c64a9..d85d25f 100644 (file)
@@ -60,7 +60,7 @@ class AXLetter extends MassMailer
         if ($this->_date == '0000-00-00') {
             $this->_date = 0;
         }
-        $this->_subset_to = preg_split("/\n/", $this->_subset_to);
+        $this->_subset_to = ($this->_subset_to ? explode("\n", $this->_subset_to) : null);
         $this->_subset = (count($this->_subset_to) > 0);
     }
 
@@ -189,14 +189,6 @@ class AXLetter extends MassMailer
         return XDB::execute("DELETE FROM axletter_rights WHERE user_id = {?}", $uid);
     }
 
-    protected function subsetJoin()
-    {
-        if ($this->_subset) {
-            return "INNER JOIN axletter_subsets AS c ON (c.letter_id = ".XDB::escape($this->_id)." AND ni.user_id = c.uid)";
-        }
-        return '';
-    }
-
     protected function subscriptionWhere()
     {
         if (!$this->_promo_min && !$this->_promo_max && !$this->_subset) {
@@ -211,12 +203,14 @@ class AXLetter extends MassMailer
         }
         if ($this->_subset) {
             require_once("emails.inc.php");
-            print_r($this->_subset_to);
-            $ids = idsFromMails($this->_subset_to);
-            print_r($ids);
+            $ids = ids_from_mails($this->_subset_to);
             $ids_list = implode(',', $ids);
-            $where[] = "ni.user_id IN ($ids_list)";
-            // TODO : force use of the adresses given by AX, not "canonical" ones ?
+            if(count($ids) > 0) {
+                $where[] = "ni.user_id IN ($ids_list)";
+            } else {
+                // No valid email
+                $where[] = "0";
+            }
         }
         return implode(' AND ', $where);
     }