source: spip-zone/_plugins_/_stable_/couteau_suisse/fonds/type_urls_191.html @ 26916

Last change on this file since 26916 was 26916, checked in by patfr@…, 10 years ago

Ajout :

  • D'une horloge JavaScript?
  • D'une trousse à balises : #BOLO, #MAINTENANT (#NOW), #LESMOTS
  • Des filtres |oui et |non, et de la balise #VAL pour SPIP 1.92

Tout ça est encore en test et ne fonctionne sûrement pas bien, mais c'est la 1ère phase ;)

File size: 7.9 KB
Line 
1#CACHE{0}
2<script language="JavaScript" type="text/javascript">
3var ar_type_urls = "#ENV*{type_urls}";
4var ar_var_vide = "[(#REM|sinon{<:couteauprive:variable_vide:>}|html2unicode|addslashes)]";
5var ar_url_calculee = "[(#REM|sinon{<:couteauprive:urls_url_calculee:>}|html2unicode|addslashes)]";
6var ar_edit_erreur = "[(#REM|sinon{<:couteauprive:urls_edit_erreur:>}|html2unicode|addslashes)]";
7var ar_attente = "[(#REM|sinon{<:couteauprive:attente:>}|html2unicode|addslashes)]";
8var ar_valeur_vide = "[(#REM|sinon{<:couteauprive:urls_valeur_vide:>}|html2unicode|addslashes)]";
9
10function html_type_urls(selecteur, chaine, rempl) {
11        jQuery(selecteur).html(chaine.replace(/@type@/, rempl));
12}
13
14if (window.jQuery) jQuery(function(){
15        jQuery("#ar_chercher", this).click( function() {
16                jQuery("#ar_url_objet").val(ar_attente);
17                jQuery("#ar_titre, #ar_url_propre, #ar_url_calculee").html('');
18                html_type_urls("#label_url_calculee", ar_url_calculee, '...');
19                var num = /\d+/.exec(jQuery("#ar_num_objet").val());
20                if(num==null) {
21                        jQuery("#ar_url_objet").val('');
22                        return;
23                }
24                var val = jQuery("#ar_type_objet").val();
25                var url = "./?exec=action_rapide&arg=type_urls_spip&type_objet="+val+"&id_objet="+num;
26                jQuery("#ar_url_trouvee").load(url);
27        });
28
29        if(typeof onAjaxLoad=='function') onAjaxLoad(ar_load);
30});
31
32function ar_load() {
33        // on sort si le load ne nous concerne pas
34        if(this.id != "ar_url_trouvee") return;
35        var res = jQuery("#ar_url_trouvee").html();
36        jQuery("#ar_url_objet").val('');
37        if(!res) {
38                jQuery("#ar_url_objet, #url_objet_input").enable(false);
39                return;
40        }
41        res = res.split(/\|\|/);
42        jQuery("#ar_url_propre").html(res[0]?res[0]:ar_var_vide);
43        jQuery("#ar_titre").html(res[1]?res[1]:ar_var_vide);
44        jQuery("#ar_url_calculee").html(res[2]?res[2]:res[0]);
45        jQuery("#ar_url_objet").val(res[4]);
46        if(res[3]) ar_type_urls = res[3];
47        html_type_urls("#label_url_calculee", ar_url_calculee, ar_type_urls);
48        disab = (ar_type_urls=='page') || (ar_type_urls=='standard') || (ar_type_urls=='html');
49        jQuery("#ar_url_objet, #url_objet_input").attr('disabled',disab?'disabled':'')
50        if(disab) {
51                html_type_urls("#ar_edit_info", ar_edit_erreur, ar_type_urls);
52                jQuery("#url_objet_input").addClass("cs_hidden");
53        } else {
54                jQuery("#ar_edit_info").html(ar_valeur_vide);
55                jQuery("#url_objet_input").removeClass("cs_hidden");
56        }
57        jQuery("#ar_edit_info").removeClass("cs_hidden");
58}
59
60</script>
61<div style='text-align: left; padding:0.4em;'>
62        <fieldset><legend><:couteauprive:urls_purger_tout:> </legend>
63#SET{nb, 0}<BOUCLE_nb_articles(ARTICLES){tout}{url_propre!=''}> </BOUCLE_nb_articles>#SET{nb, #TOTAL_BOUCLE}</B_nb_articles>
64#SET{val, #REM|sinon{couteauprive:urls_base_vide}|_T}
65[(#GET{nb}|>{0}|oui)
66 #SET{val, #REM|sinon{couteauprive:urls_base_total}|_T|replace{@nb@,#GET{nb}}}
67]<label><input name="purger_articles"[ checked="(#GET{nb}|>{0}|?{checked})"] type="checkbox" value="articles" /><:couteau:objet_articles:>.
68<span class="ar_edit_info">#GET{val}.</span></label>
69#SET{nb, 0}<BOUCLE_nb_rubriques(RUBRIQUES){tout}{url_propre!=''}> </BOUCLE_nb_rubriques>#SET{nb, #TOTAL_BOUCLE}</B_nb_rubriques>
70#SET{val, #REM|sinon{couteauprive:urls_base_vide}|_T}
71[(#GET{nb}|>{0}|oui)
72 #SET{val, #REM|sinon{couteauprive:urls_base_total}|_T|replace{@nb@,#GET{nb}}}
73]<br /><label><input name="purger_rubriques"[ checked="(#GET{nb}|>{0}|?{checked})"] type="checkbox" value="rubriques" /><:couteau:objet_rubriques:>.
74<span class="ar_edit_info">#GET{val}.</span></label>
75#SET{nb, 0}<BOUCLE_nb_breves(BREVES){tout}{url_propre!=''}> </BOUCLE_nb_breves>#SET{nb, #TOTAL_BOUCLE}</B_nb_breves>
76#SET{val, #REM|sinon{couteauprive:urls_base_vide}|_T}
77[(#GET{nb}|>{0}|oui)
78 #SET{val, #REM|sinon{couteauprive:urls_base_total}|_T|replace{@nb@,#GET{nb}}}
79]<br /><label><input name="purger_breves"[ checked="(#GET{nb}|>{0}|?{checked})"] type="checkbox" value="breves" /><:couteau:objet_breves:>.
80<span class="ar_edit_info">#GET{val}.</span></label>
81#SET{nb, 0}<BOUCLE_nb_auteurs(AUTEURS){tout}{url_propre!=''}> </BOUCLE_nb_auteurs>#SET{nb, #TOTAL_BOUCLE}</B_nb_auteurs>
82#SET{val, #REM|sinon{couteauprive:urls_base_vide}|_T}
83[(#GET{nb}|>{0}|oui)
84 #SET{val, #REM|sinon{couteauprive:urls_base_total}|_T|replace{@nb@,#GET{nb}}}
85]<br /><label><input name="purger_auteurs"[ checked="(#GET{nb}|>{0}|?{checked})"] type="checkbox" value="auteurs" /><:couteau:objet_auteurs:>.
86<span class="ar_edit_info">#GET{val}.</span></label>
87#SET{nb, 0}<BOUCLE_nb_mots(MOTS){tout}{url_propre!=''}> </BOUCLE_nb_mots>#SET{nb, #TOTAL_BOUCLE}</B_nb_mots>
88#SET{val, #REM|sinon{couteauprive:urls_base_vide}|_T}
89[(#GET{nb}|>{0}|oui)
90 #SET{val, #REM|sinon{couteauprive:urls_base_total}|_T|replace{@nb@,#GET{nb}}}
91]<br /><label><input name="purger_mots"[ checked="(#GET{nb}|>{0}|?{checked})"] type="checkbox" value="mots" /><:couteau:objet_mots:>.
92<span class="ar_edit_info">#GET{val}.</span></label>
93#SET{nb, 0}<BOUCLE_nb_sites(SITES){tout}{url_propre!=''}> </BOUCLE_nb_sites>#SET{nb, #TOTAL_BOUCLE}</B_nb_sites>
94#SET{val, #REM|sinon{couteauprive:urls_base_vide}|_T}
95[(#GET{nb}|>{0}|oui)
96 #SET{val, #REM|sinon{couteauprive:urls_base_total}|_T|replace{@nb@,#GET{nb}}}
97]<br /><label><input name="purger_syndic"[ checked="(#GET{nb}|>{0}|?{checked})"] type="checkbox" value="syndic" /><:couteau:objet_syndics:>.
98<span class="ar_edit_info">#GET{val}.</span></label>
99
100        <div style='text-align: right; padding:0.4em;'><input name="submit" class='fondo' type='submit' value="<:couteauprive:urls_purger_tables:>" /></div>
101        </fieldset>
102</div>
103
104[(#REM) Ce separateur va permettre de commencer ici une deuxieme <form/> Ajax )]
105@@CS_FORM@@
106
107<div style='text-align: center; padding:0.4em;'>
108        <fieldset><legend><:couteauprive:urls_choix_objet:> </legend>
109     <div style="margin:0.3em 0;"><label><b><:couteauprive:urls_type_objet:></b>
110     <select class="forml ar_select" name="ar_type_objet" id="ar_type_objet">
111        <option value='article' [selected="(#ENV{ar_type_objet,article}|=={article}|?{selected})"] ><:couteau:objet_article:></option>
112        <option value='rubrique' [selected="(#ENV{ar_type_objet,article}|=={rubrique}|?{selected})"] ><:couteau:objet_rubrique:></option>
113        <option value='breve' [selected="(#ENV{ar_type_objet,article}|=={breve}|?{selected})"] ><:couteau:objet_breve:></option>
114        <option value='auteur' [selected="(#ENV{ar_type_objet,article}|=={auteur}|?{selected})"] ><:couteau:objet_auteur:></option>
115        <option value='mot' [selected="(#ENV{ar_type_objet,article}|=={mot}|?{selected})"] ><:couteau:objet_mot:></option>
116        <option value='syndic' [selected="(#ENV{ar_type_objet,article}|=={syndic}|?{selected})"] ><:couteau:objet_syndic:></option>
117     </select></label>
118         &nbsp;
119         <label for="ar_num_objet"><b><:couteauprive:urls_num_objet:></b>&nbsp;<input class="ar_num_objet" id="ar_num_objet" name="ar_num_objet" size="5" value="#ENV*{ar_num_objet}"/></label><img id="ar_chercher" style="vertical-align:bottom; cursor:pointer; margin-left:1em;" title="<:couteauprive:urls_rechercher:>" src="#EVAL{_DIR_IMG_PACK}loupe.png" alt="<:bouton_chercher:>"/>
120         </div>
121         <div style="text-align:left;">
122          <b><:couteauprive:urls_titre_objet:></b>&nbsp;<span id="ar_titre"> </span><br />
123          <b><:couteauprive:urls_url_objet:></b>&nbsp;<span id="ar_url_propre"> </span><br />
124          <span id="label_url_calculee" style="font-weight:bold;">[(#REM|sinon{<:couteauprive:urls_url_calculee:>}|replace{@type@,#ENV*{type_urls}})]</span>  <span id="ar_url_calculee">&nbsp;</span><br />
125          <label><b><:couteauprive:urls_nouvelle:></b><input style="width:100%;" id="ar_url_objet" name="ar_url_objet" value="" disabled="disabled"/></label>
126          <div class="ar_edit_info cs_hidden" id="ar_edit_info">&nbsp;</div>
127         </div>
128         <div style="text-align:right"><input name="submit" id='url_objet_input' class='fondo' type='submit' disabled="disabled" value="<:couteauprive:urls_enregistrer:>" /></div>
129         <div id="ar_url_trouvee" class="cs_hidden">||</div>
130        </fieldset>
131</div>
Note: See TracBrowser for help on using the repository browser.