Merge remote branch 'origin/xorg/1.0.2/master' into xorg/master
[platal.git] / modules / search.php
index 5d474f5..12939af 100644 (file)
@@ -66,7 +66,6 @@ class SearchModule extends PLModule
                 $page->changeTpl('search/index.tpl');
                 $page->setTitle('Annuaire');
                 $page->assign('formulaire', 1);
-                $page->addJsLink('ajax.js');
                 return;
             }
 
@@ -74,7 +73,9 @@ class SearchModule extends PLModule
             if (S::admin()) {
                 $list .= '|admin|adm|ax';
             }
-            if (preg_match('/^(' . $list . '):([-a-z]+(\.[-a-z]+(\.\d{2,4})?)?)$/', replace_accent($quick), $matches)) {
+            $suffixes = array_keys(DirEnum::getOptions(DirEnum::ACCOUNTTYPES));
+            $suffixes = implode('|', $suffixes);
+            if (preg_match('/^(' . $list . '):([-a-z]+(\.[-a-z]+(\.(?:[md]?\d{2,4}|' . $suffixes . '))?)?)$/', replace_accent($quick), $matches)) {
                 $login = $matches[2];
                 switch($matches[1]) {
                   case 'admin': case 'adm':
@@ -138,7 +139,6 @@ class SearchModule extends PLModule
             }
         } else {
             $page->assign('formulaire',1);
-            $page->addJsLink('ajax.js');
         }
 
         $page->changeTpl('search/index.tpl');
@@ -153,6 +153,12 @@ class SearchModule extends PLModule
         $page->assign('advanced',1);
         $page->addJsLink('jquery.autocomplete.js');
 
+        $networks = DirEnum::getOptions(DirEnum::NETWORKS);
+        $networks[-1] = 'Tous types';
+        $networks[0] = '-';
+        ksort($networks);
+        $page->assign('networking_types', $networks);
+
         if (!Env::has('rechercher') && $model != 'geoloc') {
             $this->form_prepare();
         } else {
@@ -184,7 +190,6 @@ class SearchModule extends PLModule
         }
 
         $page->changeTpl('search/index.tpl', $model == 'mini' ? SIMPLE : SKINNED);
-        $page->addJsLink('ajax.js');
         $page->assign('public_directory',0);
     }
 
@@ -258,9 +263,10 @@ class SearchModule extends PLModule
         if ($nbResults == 0) {
             $res = $q."|-2\n";
         }
-        XDB::query('REPLACE INTO  search_autocomplete
-                          VALUES  ({?}, {?}, {?}, NOW())',
-                    $type, $q, $res);
+        XDB::query('INSERT INTO  search_autocomplete (name, query, result, generated)
+                         VALUES  ({?}, {?}, {?}, NOW())
+        ON DUPLICATE KEY UPDATE  result = VALUES(result), generated = VALUES(generated)',
+                   $type, $q, $res);
         echo $res;
         exit();
     }