[PLUGINS] ~maj des plugins
[lhc/web/www.git] / www / plugins / menus_1 / menus_administrations.php
index 963514b..8d55f1e 100644 (file)
@@ -21,11 +21,109 @@ function menus_upgrade($nom_meta_version_base, $version_cible){
        $maj['0.5.1'] = array(\r
                array('sql_updateq', 'spip_menus_entrees', array('type_entree'=>'rubriques_completes'), 'type_entree = '.sql_quote('rubriques')),\r
        );\r
-       \r
+       $maj['0.5.2'] = array(\r
+               array('menus_fusionne_critere_tri_inverse'),\r
+       );\r
+       $maj['0.5.3'] = array(\r
+               array('menus_fusionne_critere_tri_num_alpha'),\r
+       );\r
+\r
        include_spip('base/upgrade');\r
        maj_plugin($nom_meta_version_base, $version_cible, $maj);\r
 }\r
 \r
+function menus_fusionne_critere_tri_num_alpha(){\r
+\r
+       $res = sql_select("*","spip_menus_entrees","","","id_menus_entree");\r
+       while ($row = sql_fetch($res)){\r
+               #var_dump($row);\r
+               $params = unserialize($row['parametres']);\r
+\r
+               $change = false;\r
+               if (isset($params['tri_num']) AND isset($params['tri_alpha'])){\r
+                       $tri = "";\r
+                       if (strlen($params['tri_num'])){\r
+                               $tri = "num ".trim($params['tri_num']);\r
+                               $tri = str_replace("num !","!num ",$tri);\r
+                       }\r
+                       else {\r
+                               $tri = trim($params['tri_alpha']);\r
+                       }\r
+                       $params['tri'] = $tri;\r
+                       unset($params['tri_num']);\r
+                       unset($params['tri_alpha']);\r
+                       $change = true;\r
+               }\r
+               if (isset($params['tri_num_articles']) AND isset($params['tri_alpha_articles'])){\r
+                       $tri = "";\r
+                       if (strlen($params['tri_num_articles'])){\r
+                               $tri = "num ".trim($params['tri_num_articles']);\r
+                               $tri = str_replace("num !","!num ",$tri);\r
+                       }\r
+                       else {\r
+                               $tri = trim($params['tri_alpha_articles']);\r
+                       }\r
+                       $params['tri_articles'] = $tri;\r
+                       unset($params['tri_num_articles']);\r
+                       unset($params['tri_alpha_articles']);\r
+                       $change = true;\r
+               }\r
+\r
+               if ($change){\r
+                       #var_dump($params);\r
+                       $params = serialize($params);\r
+                       sql_updateq("spip_menus_entrees",array('parametres'=>$params),"id_menus_entree=".intval($row['id_menus_entree']));\r
+               }\r
+\r
+       }\r
+}\r
+\r
+function menus_fusionne_critere_tri_inverse(){\r
+\r
+       $res = sql_select("*","spip_menus_entrees","","","id_menus_entree");\r
+       while ($row = sql_fetch($res)){\r
+               #var_dump($row);\r
+               $params = unserialize($row['parametres']);\r
+\r
+               $change = false;\r
+               if (isset($params['tri_num_inverse'])\r
+                       AND $params['tri_num_inverse']=='oui'\r
+                 AND strlen($params['tri_num'])){\r
+                       $params['tri_num'] = "!".$params['tri_num'];\r
+                       $change = true;\r
+                       unset($params['tri_num_inverse']);\r
+               }\r
+               if (isset($params['tri_alpha_inverse'])\r
+                       AND $params['tri_alpha_inverse']=='oui'\r
+                 AND strlen($params['tri_alpha'])){\r
+                       $params['tri_alpha'] = "!".$params['tri_alpha'];\r
+                       $change = true;\r
+                       unset($params['tri_alpha_inverse']);\r
+               }\r
+               if (isset($params['tri_num_articles_inverse'])\r
+                       AND $params['tri_num_articles_inverse']=='oui'\r
+                 AND strlen($params['tri_num_articles'])){\r
+                       $params['tri_num_articles'] = "!".$params['tri_num_articles'];\r
+                       $change = true;\r
+                       unset($params['tri_num_articles_inverse']);\r
+               }\r
+               if (isset($params['tri_alpha_articles_inverse'])\r
+                       AND $params['tri_alpha_articles_inverse']=='oui'\r
+                 AND strlen($params['tri_alpha_articles'])){\r
+                       $params['tri_alpha_articles'] = "!".$params['tri_alpha_articles'];\r
+                       $change = true;\r
+                       unset($params['tri_alpha_articles_inverse']);\r
+               }\r
+\r
+               if ($change){\r
+                       $params = serialize($params);\r
+                       sql_updateq("spip_menus_entrees",array('parametres'=>$params),"id_menus_entree=".intval($row['id_menus_entree']));\r
+                       #var_dump($params);\r
+               }\r
+\r
+       }\r
+}\r
+\r
 // Désinstallation\r
 function menus_vider_tables($nom_meta_version_base){\r
        include_spip('base/abstract_sql');\r