Adds a check on Google Apps accounts in checkdb.php.
[platal.git] / modules / xnetgrp.php
index eeeee1f..4868d3f 100644 (file)
@@ -432,7 +432,7 @@ class XnetGrpModule extends PLModule
                            m.perms='admin' AS admin,
                            m.origine='X' AS x,
                            u.perms!='pending' AS inscrit,
-                           m.uid, IF(e.email IS NULL,NULL,1) AS actif
+                           m.uid, IF(e.email IS NULL AND FIND_IN_SET('googleapps', u.mail_storage) = 0, NULL, 1) AS actif
                      FROM  groupex.membres AS m
                 LEFT JOIN  auth_user_md5   AS u ON ( u.user_id = m.uid )
                 LEFT JOIN  aliases         AS a ON ( a.id = m.uid AND a.type='a_vie' )
@@ -1030,7 +1030,8 @@ class XnetGrpModule extends PLModule
 
         if ($uid) {
             $rss = XDB::iterator("SELECT a.id, a.titre, a.texte, a.contacts, a.create_date,
-                                         IF(u2.nom_usage != '', u2.nom_usage, u2.nom) AS nom, u2.prenom, u2.promo
+                                         IF(u2.nom_usage != '', u2.nom_usage, u2.nom) AS nom, u2.prenom, u2.promo,
+                                         FIND_IN_SET('photo', a.flags) AS photo
                                    FROM auth_user_md5 AS u
                              INNER JOIN groupex.announces AS a ON ( (a.promo_min = 0 OR a.promo_min <= u.promo)
                                                                   AND (a.promo_max = 0 OR a.promo_max <= u.promo))
@@ -1099,7 +1100,7 @@ class XnetGrpModule extends PLModule
         $art = array();
 
         if (Post::v('valid') == 'Visualiser' || Post::v('valid') == 'Enregistrer'
-            || Post::v('valid') == 'Supprimer l\'image') {
+            || Post::v('valid') == 'Supprimer l\'image' || Post::v('valid') == 'Pas d\'image') {
             if (!is_null($aid)) {
                 $art['id'] = $aid;
             }
@@ -1143,7 +1144,13 @@ class XnetGrpModule extends PLModule
                 $upload->rm();
                 Post::kill('valid');
             }
-            $art['photo'] = $upload->exists();
+            $art['photo'] = $upload->exists() || Post::i('photo');
+            if (Post::v('valid') == 'Pas d\'image' && !is_null($aid)) {
+                XDB::query("DELETE FROM groupex.announces_photo WHERE eid = {?}", $aid);
+                $upload->rm();
+                Post::kill('valid');
+                $art['photo'] = false;
+            }
         }
 
         if (Post::v('valid') == 'Enregistrer') {
@@ -1207,6 +1214,13 @@ class XnetGrpModule extends PLModule
                            $art['titre'], $art['texte'], $art['contacts'], $art['peremption'],
                            $promo_min, $promo_max,  $flags,
                            $art['id'], $globals->asso('id'));
+                if ($art['photo'] && $upload->exists()) {
+                    list($imgx, $imgy, $imgtype) = $upload->imageInfo();
+                    XDB::execute("REPLACE INTO groupex.announces_photo
+                                          SET eid = {?}, attachmime = {?}, x = {?}, y = {?}, attach = {?}",
+                                 $aid, $imgtype, $imgx, $imgy, $upload->getContents());
+                    $upload->rm();
+                }
             }
         }
         if (Post::v('valid') == 'Enregistrer' || Post::v('valid') == 'Annuler') {
@@ -1215,7 +1229,8 @@ class XnetGrpModule extends PLModule
 
         if (empty($art) && !is_null($aid)) {
             $res = XDB::query("SELECT a.*, u.nom, u.prenom, u.promo, l.alias AS forlife,
-                                      FIND_IN_SET('public', a.flags) AS public
+                                      FIND_IN_SET('public', a.flags) AS public,
+                                      FIND_IN_SET('photo', a.flags) AS photo
                                  FROM groupex.announces AS a
                            INNER JOIN auth_user_md5 AS u USING(user_id)
                            INNER JOIN aliases AS l ON (l.id = u.user_id AND l.type = 'a_vie')