source: spip-zone/_plugins_/rainette/trunk/formulaires/configurer_rainette_service.html @ 108245

Last change on this file since 108245 was 108245, checked in by eric@…, 17 months ago

Evolution majeure : ajout d'une gestion de thèmes pour chaque service.
Il est désormais possible d'afficher soit l'icone distant fourni dans l'API, soit un icone local d'un thème compatible avec le service, soit l'icone d'un service de weather.com.
Ceci est particulièrement intéressant car il existe moulte thèmes d'icones pour weather.com.
Pour l'instant, un seul thème est proposé par service à l'exception de owm.
Suivra bientôt un nouveau plugin associé à Rainette qui proposera nombre de thèmes et permettra de les visualiser afin de choisir celui à utiliser.
Refactoring et factorisation des fonctions associées.

  • Property svn:eol-style set to native
File size: 5.8 KB
Line 
1<div class="formulaire_spip formulaire_configurer formulaire_#FORM">
2        <h3 class="titrem">[(#ENV{nom}|filtrer_entites)]</h3>
3
4        [<p class="reponse_formulaire reponse_formulaire_ok">(#ENV*{message_ok})</p>]
5        [<p class="reponse_formulaire reponse_formulaire_erreur">(#ENV*{message_erreur})</p>]
6
7        <form method="post" action="#ENV{action}"><div>
8                #ACTION_FORMULAIRE{#ENV{action}}
9                <fieldset>
10                        <legend><:rainette:legende_configurer_inscription:></legend>
11                        [(#REM) <!-- Configuration de la clé d'inscription si requise --> ]
12                        [(#ENV{service}|=={weather}|oui)
13                                <p><:rainette:explication_configurer_cle_aucune:></p>
14                        ]
15                        [(#ENV{service}|=={weather}|non)
16                        <div class="editer-groupe">
17                                #SET{type_cle, obligatoire}
18                                [(#SET{url, [<a class="spip_out"[ href="(#ENV{_configuration/enregistrement/lien})"] target="_blank">(#ENV{_configuration/enregistrement/titre})</a>]})]
19                                [(#SET{explication, #VAL{rainette:explication_configurer_cle_}
20                                        |concat{#GET{type_cle}}
21                                        |_T{#ARRAY{url,#GET{url}}}})]
22                                [(#SAISIE{input, inscription,
23                                        explication=#GET{explication},
24                                        label=<:rainette:label_cle:>,
25                                        obligatoire=oui,
26                                        size=#ENV{_configuration/enregistrement/taille_cle},
27                                        maxlength=#ENV{_configuration/enregistrement/taille_cle}
28                                })]
29                        </div>
30                        ]
31                </fieldset>
32
33                <fieldset>
34                        <legend><:rainette:legende_configurer_affichage:></legend>
35                        <div class="editer-groupe">
36                                [(#REM) <!-- Configuration du système d'unité à utiliser pour les données météo --> ]
37                                [(#SAISIE{radio, unite,
38                                        datas=#ARRAY{m, <:rainette:label_unite_metrique:>, s, <:rainette:label_unite_standard:>},
39                                        explication=<:rainette:explication_configurer_unite:>,
40                                        label=<:rainette:label_unite:>,
41                                })]
42
43                                [(#ENV{service}|=={weather}|non)
44                                        [(#REM) <!-- Configuration du système d'icônes à utiliser (sauf pour weather) --> ]
45                                        [(#SET{data,
46                                                [(#ARRAY{#ENV{service}, <:rainette:label_icone_natif:>,
47                                                [(#ENV{service})_local], <:rainette:label_icone_local:>,
48                                                weather, <:rainette:label_icone_weather:>})]})]
49                                        [(#SET{disable,
50                                                [(#ARRAY{#ENV{service}, 0,
51                                                [(#ENV{service})_local], [(#ENV{_themes/locaux}|non)],
52                                                weather, [(#ENV{_themes/weather}|non)]})]})]
53                                        [(#SAISIE{radio, condition,
54                                                datas=#GET{data},
55                                                disable=#GET{disable},
56                                                explication=<:rainette:explication_configurer_icone:>,
57                                                label=<:rainette:label_icone:>,
58                                        })]
59                                ]
60
61                                [(#REM) <!-- Configuration du thème d'icônes distant à utiliser pour le service --> ]
62                                [(#ENV{_themes/distants}|oui)
63                                        [(#SAISIE{radio, theme,
64                                                datas=#ENV{_themes/distants},
65                                                explication=<:rainette:explication_configurer_theme:>,
66                                                label=<:rainette:label_theme:>,
67                                        })]
68                                ]
69
70                                [(#REM) <!-- Configuration du thème d'icônes local à utiliser pour le service --> ]
71                                [(#ENV{_themes/locaux}|oui)
72                                        [(#SAISIE{radio, theme_local,
73                                                datas=#ENV{_themes/locaux},
74                                                explication=<:rainette:explication_configurer_theme:>,
75                                                label=<:rainette:label_theme:>,
76                                        })]
77                                ]
78
79                                [(#REM) <!-- Configuration du thème d'icônes local du service weather à utiliser pour le service --> ]
80                                [(#ENV{_themes/weather}|oui)
81                                        [(#SAISIE{radio, theme_weather,
82                                                datas=#ENV{_themes/weather},
83                                                explication=<:rainette:explication_configurer_theme:>,
84                                                label=<:rainette:label_theme:>,
85                                        })]
86                                ]
87                        </div>
88                </fieldset>
89
90                <fieldset>
91                        <legend><:rainette:legende_configurer_utilisation:></legend>
92                        [(#SET{url, [<a class="spip_out"[ href="(#ENV{_configuration/offres/lien})"] target="_blank">(#ENV{_configuration/offres/titre})</a>]})]
93                        [<p>(#VAL{rainette:explication_utilisation_}|concat{#ENV{service}}|_T{#ARRAY{url, #GET{url}}})</p>]
94                        [(#ENV{_configuration/offres/limites}|oui)<p><:rainette:explication_utilisation_rainette:></p>]
95                        <table>
96                                <tbody>
97                                        <tr>
98                                                <td><:rainette:label_dernier_appel:></td>
99                                                <td>[(#ENV{_utilisation/dernier_appel})]</td>
100                                        </tr>
101                                <BOUCLE_compteurs(DATA) {source table, #ENV{_utilisation/compteurs}}>
102                                        <tr>
103                                                <td>[(#VAL{rainette:label_compteur_}|concat{#CLE}|_T)]</td>
104                                                <td>[[<strong>(#VALEUR)</strong>] / (#ENV{_configuration/offres/limites/#CLE})]</td>
105                                        </tr>
106                                </BOUCLE_compteurs>
107                                </tbody>
108                        </table>
109                </fieldset>
110
111                <fieldset>
112                        <legend><:rainette:legende_configurer_credit:></legend>
113                        [(#SET{url, [<a class="spip_out"[ href="(#ENV{_configuration/termes/lien})"] target="_blank">(#ENV{_configuration/termes/titre})</a>]})]
114                        [<p>(#VAL{rainette:explication_credit_}|concat{#ENV{service}}|_T{#ARRAY{url, #GET{url}}})</p>]
115                        <p><:rainette:explication_credit_rainette:></p>
116                </fieldset>
117
118                <input type="hidden" name="_meta_casier" value="#ENV{_meta_casier}" />
119                <p class="boutons">
120                        <input type="submit" name="_cfg_ok" class="submit" value="<:bouton_valider:>" />
121                </p>
122        </div></form>
123</div>
124
125<script type="text/javascript">
126//<![CDATA[
127        jQuery(document).ready(function() {
128                [(#ENV{condition}|=={weather}|oui)
129                        jQuery(".editer_theme").hide();
130                        jQuery(".editer_theme_local").hide();
131                ]
132                [(#ENV{condition}|=={#ENV{service}}|oui)
133                        jQuery(".editer_theme_local").hide();
134                        jQuery(".editer_theme_weather").hide();
135                ]
136                [(#ENV{condition}|=={[(#ENV{service})_local]}|oui)
137                        jQuery(".editer_theme").hide();
138                        jQuery(".editer_theme_weather").hide();
139                ]
140                jQuery("input[name='condition']").change(function() {
141                        if (jQuery("input[name='condition']:checked").val() == ['(#ENV{service})']) {
142                                jQuery(".editer_theme_local").hide();
143                                jQuery(".editer_theme_weather").hide();
144                                jQuery(".editer_theme").show();
145                        } else if (jQuery("input[name='condition']:checked").val() == 'weather') {
146                                jQuery(".editer_theme").hide();
147                                jQuery(".editer_theme_local").hide();
148                                jQuery(".editer_theme_weather").show();
149                        } else {
150                                jQuery(".editer_theme").hide();
151                                jQuery(".editer_theme_weather").hide();
152                                jQuery(".editer_theme_local").show();
153                        }
154                        jQuery(this).blur();
155                });
156        });
157//]]>
158</script>
Note: See TracBrowser for help on using the repository browser.