Prevent sending empty issues (Closes #1587).
[platal.git] / modules / geoloc.php
index 4db76cd..41da79a 100644 (file)
@@ -24,8 +24,8 @@ class GeolocModule extends PLModule
     function handlers()
     {
         return array(
-            'map'     => $this->make_hook('map', AUTH_COOKIE),
-            'map_url' => $this->make_hook('map_url', AUTH_COOKIE)
+            'map'     => $this->make_hook('map',     AUTH_COOKIE, 'user'),
+            'map_url' => $this->make_hook('map_url', AUTH_COOKIE, 'user')
         );
     }
 
@@ -37,7 +37,6 @@ class GeolocModule extends PLModule
         $page->addJsLink($map_url, false);
         $page->addJsLink('maps.js');
         $page->addJsLink('markerclusterer.js');
-        $page->addJsLink('markerwithlabel.js');
         $page->assign('pl_extra_header', '<meta name="viewport" content="initial-scale=1.0, user-scalable=no" />');
     }
 
@@ -49,9 +48,20 @@ class GeolocModule extends PLModule
             $where = '';
         }
 
+        if (!S::logged() || !S::user()->checkPerms('directory_ax')) {
+            $where .= " AND pa.pub = 'public'";
+            $name_publicity = 'public';
+        } else if (!S::user()->checkPerms('directory_private')) {
+            $where .= " AND pa.pub = 'ax'";
+            $name_publicity = 'public';
+        } else {
+            $name_publicity = 'private';
+        }
+
         $data = XDB::rawFetchAllAssoc('SELECT  pa.latitude, pa.longitude, GROUP_CONCAT(DISTINCT p.hrpid SEPARATOR \',\') AS hrpid,
                                                GROUP_CONCAT(pd.promo SEPARATOR \',\') AS promo,
-                                               GROUP_CONCAT(DISTINCT CONCAT(pd.private_name, \' (\', pd.promo, \')\') SEPARATOR \',\') AS name
+                                               GROUP_CONCAT(DISTINCT pd.' . $name_publicity . '_name, \' (\', pd.promo, \')\' SEPARATOR \', \') AS name,
+                                               GROUP_CONCAT(DISTINCT pa.pid SEPARATOR \',\') AS pid
                                          FROM  profile_addresses AS pa
                                    INNER JOIN  profiles          AS p  ON (pa.pid = p.pid)
                                    INNER JOIN  profile_display   AS pd ON (pd.pid = pa.pid)