Merge commit 'origin/fusionax' into account
[platal.git] / include / reminder / promotion_ml.inc.php
index ca36dca..ec1b0c5 100644 (file)
@@ -26,11 +26,11 @@ class ReminderPromotionMl extends Reminder
         switch ($action) {
           case 'yes':
             $res = XDB::query('SELECT  id
-                               FROM  groupex.asso
-                              WHERE  diminutif = {?}',
+                                 FROM  #groupex#.asso
+                                WHERE  diminutif = {?}',
                             S::v('promo'));
             $asso_id = $res->fetchOneCell();
-            XDB::execute('REPLACE INTO  groupex.membres (uid, asso_id)
+            XDB::execute('REPLACE INTO  #groupex#.membres (uid, asso_id)
                                 VALUES  ({?}, {?})',
                          S::v('uid'), $asso_id);
             $mmlist = new MMList(S::v('uid'), S::v('password'));
@@ -49,13 +49,17 @@ class ReminderPromotionMl extends Reminder
         }
     }
 
-    protected function GetDisplayText()
+    public function text()
     {
         return "La liste de diffusion de ta promotion permet de recevoir les
             informations plus spécifiques de ta promotion pour pouvoir
             participer plus facilement aux événements qu'elle organise. Tu
             seras aussi inscrit dans le groupe de la promotion " .
-            S::user()->promo() . '.';
+            $this->user->promo() . '.';
+    }
+    public function title()
+    {
+        return "Inscription à la liste de diffusion de ta promotion";
     }
 
     public static function IsCandidate(User &$user, $candidate)
@@ -63,13 +67,17 @@ class ReminderPromotionMl extends Reminder
         // We only test if the user is in her promotion group for it is too
         // expensive to check if she is in the corresponding ML as well.
         $res = XDB::query('SELECT  COUNT(*)
-                             FROM  groupex.membres
+                             FROM  #groupex#.membres
                             WHERE  uid = {?} AND asso_id = (SELECT  id
-                                                              FROM  groupex.asso
+                                                              FROM  #groupex#.asso
                                                              WHERE  diminutif = {?})',
                           $user->id(), S::v('promo'));
 
-        return ($res->fetchOneCell() > 0);
+        $mlCount = $res->fetchOneCell();
+        if ($mlCount) {
+            Reminder::MarkCandidateAsAccepted($user->id(), $candidate);
+        }
+        return ($mlCount == 0);
     }
 }