avoid the ugly include for varstream, use a dummy VarStream::init()
[platal.git] / modules / geoloc.php
index 8228bd9..2abe8a7 100644 (file)
@@ -46,7 +46,7 @@ class GeolocModule extends PLModule
         $querystring = "";
 
         foreach ($_GET as $v => $a) {
-            if ($v != 'initfile' && $v != 'p' && $v != 'mapid') {
+            if ($v != 'initfile' && $v != 'n' && $v != 'mapid') {
                 $querystring .= urlencode($v).'='.urlencode($a).'&';
             }
         }
@@ -54,12 +54,17 @@ class GeolocModule extends PLModule
         return $querystring;
     }
 
+    function use_map()
+    {
+        return is_file(dirname(__FILE__).'/geoloc/dynamap.swf') &&
+                is_file(dirname(__FILE__).'/geoloc/icon.swf');
+    }
+
     function handler_default(&$page)
     {
         global $globals;
 
-        if (!is_file(dirname(__FILE__).'/geoloc/dynamap.swf') ||
-             !is_file(dirname(__FILE__).'/geoloc/icon.swf'))
+        if (!$this->use_map())
             $page->assign('request_geodesix', 1);
 
         if (!empty($GLOBALS['IS_XNET_SITE'])) {
@@ -72,7 +77,7 @@ class GeolocModule extends PLModule
         $page->changeTpl('geoloc/index.tpl');
         $fields = new SFieldGroup(true, advancedSearchFromInput());
         $search = str_replace('&','&',$fields->get_url());
-        if (!Env::has('only_current'))
+        if ((!Env::has('only_current') && !Env::has('rechercher')) || Env::i('only_current') == 'on')
             $search .= '&only_current=on';
         elseif (Env::i('only_current') != 'on')
             $search .= '&only_current=';
@@ -121,7 +126,7 @@ class GeolocModule extends PLModule
     {
         global $globals;
 
-        $page->changeTpl('geoloc/geolocInit.tpl', NO_SKIN);
+        $page->changeTpl('geoloc/init.tpl', NO_SKIN);
 
         header('Content-type: text/xml');
         header('Pragma:');
@@ -137,7 +142,7 @@ class GeolocModule extends PLModule
         header("Content-type: text/xml");
         header("Pragma:");
 
-        $page->changeTpl('geoloc/getCityInfos.tpl', NO_SKIN);
+        $page->changeTpl('geoloc/city.tpl', NO_SKIN);
 
         require_once('geoloc.inc.php');
         require_once('search.inc.php');
@@ -156,10 +161,11 @@ class GeolocModule extends PLModule
         if ($where) $where = "WHERE ".$where;
 
         $users = XDB::iterator("
-            SELECT u.user_id AS id, u.prenom, u.nom, u.promo
+            SELECT u.user_id AS id, u.prenom, u.nom, u.promo, alias
               FROM adresses AS a 
         INNER JOIN auth_user_md5 AS u ON(u.user_id = a.uid)
         INNER JOIN auth_user_quick AS q ON(q.user_id = a.uid)
+         LEFT JOIN aliases ON(u.user_id = aliases.id AND FIND_IN_SET(aliases.flags,'bestalias'))
                 ".$fields->get_select_statement()."
                 ".$where."
              GROUP BY u.user_id LIMIT 11", $id);
@@ -173,11 +179,11 @@ class GeolocModule extends PLModule
 
         // to debug sql use the next line
         if (Env::has('debug')) {
-            $page->changeTpl('geoloc/getData.tpl', SIMPLE);
+            $page->changeTpl('geoloc/country.tpl', SIMPLE);
         } else {
             header("Content-type: text/xml");
             header("Pragma:");
-            $page->changeTpl('geoloc/getData.tpl', NO_SKIN);
+            $page->changeTpl('geoloc/country.tpl', NO_SKIN);
         }
 
         require_once 'geoloc.inc.php';