1 | <?php |
---|
2 | |
---|
3 | function formulaires_ajax_nav_config_charger_dist() { |
---|
4 | |
---|
5 | $res = sql_select('valeur', 'spip_meta', 'nom="ajax_nav_config"'); |
---|
6 | if (sql_count($res) == 1) { |
---|
7 | $options = sql_fetch($res); |
---|
8 | $options = unserialize($options['valeur']); |
---|
9 | return $options; |
---|
10 | } |
---|
11 | |
---|
12 | // Valeurs par defaut : |
---|
13 | $options = array( |
---|
14 | /* les types de page qui seront chargees en ajax. */ |
---|
15 | "pagesToAjaxify" => "sommaire article rubrique", |
---|
16 | /* les id des div a charger en ajax. */ |
---|
17 | "ajaxDivs" => "contenu spip-admin", |
---|
18 | /* les id des div a recharger en cas de changement de langue. */ |
---|
19 | "localizedDivs" => "navigation", |
---|
20 | /* Active les urls hashbang pour les navigateurs html4 */ |
---|
21 | "html4Fallback" => "", |
---|
22 | /* Utilise la lib modernizr fournie avec le plug */ |
---|
23 | "useModernLib" => "on", |
---|
24 | /* Utilise la lib history.js fournie avec le plug */ |
---|
25 | "useHistoryLib" => "on", |
---|
26 | ); |
---|
27 | return $options; |
---|
28 | } |
---|
29 | |
---|
30 | function formulaires_ajax_nav_config_verifier_dist() { |
---|
31 | |
---|
32 | $erreurs = array(); |
---|
33 | |
---|
34 | foreach(array('pagesToAjaxify', 'ajaxDivs', 'localizedDivs') as $i => $key) { |
---|
35 | if (filter_var(_request($key), FILTER_VALIDATE_REGEXP, |
---|
36 | array( |
---|
37 | 'options' => array( |
---|
38 | 'regexp' => "/^([a-zA-Z0-9\-\_]*[\s\t]*)*$/") |
---|
39 | ) |
---|
40 | ) === FALSE) { |
---|
41 | $erreurs[$key] = "saisie non-valide."; |
---|
42 | } |
---|
43 | } |
---|
44 | |
---|
45 | return $erreurs; |
---|
46 | } |
---|
47 | |
---|
48 | function formulaires_ajax_nav_config_traiter_dist() { |
---|
49 | |
---|
50 | $options = |
---|
51 | array( |
---|
52 | 'pagesToAjaxify' => _request('pagesToAjaxify'), |
---|
53 | 'ajaxDivs' => _request('ajaxDivs'), |
---|
54 | 'localizedDivs' => _request('localizedDivs'), |
---|
55 | 'html4Fallback' => _request('html4Fallback'), |
---|
56 | 'useModernLib' => _request('useModernLib'), |
---|
57 | 'useHistoryLib' => _request('useHistoryLib'), |
---|
58 | ); |
---|
59 | |
---|
60 | $options = array( |
---|
61 | 'nom' => 'ajax_nav_config', |
---|
62 | 'valeur' => serialize($options), |
---|
63 | ); |
---|
64 | |
---|
65 | $result = sql_count(sql_select('*', 'spip_meta', 'nom="ajax_nav_config"')); |
---|
66 | |
---|
67 | if ($result != 0) { |
---|
68 | sql_updateq('spip_meta', $options, 'nom = "ajax_nav_config"'); |
---|
69 | } else { |
---|
70 | sql_insertq('spip_meta', $options); |
---|
71 | } |
---|
72 | |
---|
73 | return array('message_ok'=>'La configuration a été enregistrée. '); |
---|
74 | } |
---|
75 | |
---|
76 | ?> |
---|