1 #SET{vspip, #EVAL{$GLOBALS['spip_version_branche']}}
2 #SET{autoriser_plugins_ajouter,#AUTORISER{plugins_ajouter}}
3 #SET{autoriser_webmestre,#AUTORISER{webmestre}}
4 [(#SET{image_verrou,[(#CHEMIN_IMAGE{cadenas-
16.png}|balise_img{
<:svp:plugin_info_verrouille:>,picto_verrou}|inserer_attribut{title,
<:svp:plugin_info_verrouille:>})]})]
5 [(#SET{erreur_attente,[-
<span class=
"svp_message">(#GET{autoriser_plugins_ajouter}|?{
<:svp:info_plugin_attente_dependance:>,
<:svp:info_plugin_attente_dependance_interdit:>})
</span> ]})]
6 [(#SET{erreur_incompatible,-
<span class=
"svp_message"><:svp:info_plugin_incompatible:></span>})]
9 [(#ENV{afficher_incompatibles,''}|non)
10 <a id=
"afficher_incompatibles" href=
"[(#SELF|parametre_url{afficher_incompatibles,1})]"><:svp:afficher_les_plugins_incompatibles:></a>
12 [(#ENV{afficher_incompatibles,''}|oui)
13 <a id=
"afficher_incompatibles" href=
"[(#SELF|parametre_url{afficher_incompatibles,''})]"><:svp:cacher_les_plugins_incompatibles:></a>
16 <div class=
"liste plugins" id=
"liste_plugins">
17 <ul class=
"liste-items">
18 <BOUCLE_plugins(PAQUETS plugins){tout}{par multi nom, paquets.prefixe}{!par constante, actif}{id_depot=
0}{actif ?}{constante ?IN #ENV{constante}}
>
19 #SET{incompatible, #COMPATIBILITE_SPIP|plugin_version_compatible{#GET{vspip}, spip}|non}
20 #SET{verrou,#CONSTANTE|=={_DIR_PLUGINS_DIST}|oui}
21 #SET{actif,#ACTIF|=={oui}|oui}
22 #SET{attente,#ATTENTE|=={oui}|oui}
23 [(#GET{incompatible})#SET{incompatibles,' '}]
24 [(#GET{incompatible}|non|ou{#ENV{afficher_incompatibles,''}}|ou{#GET{verrou}}|ou{#GET{actif}}|ou{#GET{attente}})
25 #SET{obsolete,#OBSOLETE|=={oui}|oui}
26 #SET{details,#ENV{id_paquet,''}|=={#ID_PAQUET}|oui}
27 <li class=
"item[ (#GET{actif}|?{actif,inactif})][(#GET{obsolete}|ou{#GET{attente}}|ou{#GET{incompatible}}|oui) disabled][(#GET{incompatible}) incompatible][(#GET{verrou}) verrou][(#MAJ_VERSION|oui|et{#GET{autoriser_plugins_ajouter}|oui}|oui)up]"[
28 id=
"(#PREFIXE|strtolower)-#COMPTEUR_BOUCLE"][
data-id_paquet=
"(#ID_PAQUET)"]
>
29 [(#GET{incompatible}|non|ou{#GET{attente}}|et{#GET{verrou}|non})
32 <input type=
"checkbox" class=
"checkbox select_plugin" name=
"ids_paquet\[\]" value=
"#ID_PAQUET"
33 [(#ID_PAQUET|in_any{#ENV{ids_paquet}})
checked=
"checked"]
/>
35 [(#REM) si la configuration le permet, on peut activer un plugin obsolete ]
36 [(#GET{obsolete}|et{#GET{incompatible}|non})
37 [(#CONFIG{svp/autoriser_activer_paquets_obsoletes}|=={oui}|oui)
39 <input type=
"checkbox" class=
"checkbox select_plugin" name=
"ids_paquet\[\]" value=
"#ID_PAQUET"
40 [(#ID_PAQUET|in_any{#ENV{ids_paquet}})
checked=
"checked"]
/>
46 [(#REM)
<!-- Resume du plugin -->]
48 <h3 class=
"nom"><a href=
"[(#SELF|parametre_url{id_paquet,#GET{details}|?{'',#ID_PAQUET}})]" rel=
"info">[(#NOM|extraire_multi|svp_importer_charset)]
</a></h3>
49 <span class=
"version">[(#VERSION)]
</span>
50 <span class=
"etat">[ - (#ETAT)]
</span>
51 [(#SET{erreur,[
<span class=
"svp_message">(#GET{obsolete})
<:svp:info_plugin_obsolete:></span> ]})]
52 [(#GET{attente}) [(#SET{erreur,#GET{erreur}|concat{#GET{erreur_attente}}})] ]
53 [(#GET{incompatible})[(#SET{erreur,#GET{erreur}|concat{#GET{erreur_incompatible}}})]]
54 [(#SET{slogan,#GET{erreur}|ltrim{'-'}|trim})]
55 [(#GET{slogan}|non)[(#SET{slogan,#SLOGAN|extraire_multi|typo})]]
56 [(#GET{slogan}|non)[(#SET{slogan,#DESCRIPTION|extraire_multi|propre|PtoBR|explode{'
<br />'}|reset})]]
57 <div class=
"short">[(#GET{slogan}|couper{
80}|svp_importer_charset)]
</div>
58 [(#LOGO|et{#GET{incompatible}|non})
<div class=
"icon">
59 [(#CONST{#CONSTANTE}|concat{#SRC_ARCHIVE/#LOGO}|balise_img)]
64 [(#REM) on peut desactiver un plugin - qu'il soit obsolete ou pas ]
65 [(#GET{verrou}|non|et{#GET{incompatible}|non}|oui)
67 <input type=
"submit" name=
"[(#ID_PAQUET|svp_nom_action{off})]" class=
"submit" value=
"<:svp:bouton_desactiver:>" />
68 [(#INSTALLE|=={oui}|et{#GET{autoriser_webmestre}}|oui)
69 <input type=
"submit" name=
"[(#ID_PAQUET|svp_nom_action{stop})]" class=
"submit" value=
"<:svp:bouton_desinstaller:>" />
73 [(#GET{obsolete}|non|et{#GET{verrou}|non}|et{#GET{incompatible}|non}|oui)
74 [(#GET{actif}|non|ou{#GET{attente}})
75 [(#GET{actif}|non|ou{#GET{attente}|et{#GET{autoriser_plugins_ajouter}|oui}}|oui)
76 <input type=
"submit" name=
"[(#ID_PAQUET|svp_nom_action{on})]" class=
"submit" value=
"<:svp:bouton_activer:>" />]
79 [(#GET{obsolete}|non|et{#GET{verrou}|non}|oui)
80 [(#MAJ_VERSION|oui|et{#GET{autoriser_plugins_ajouter}|oui}|oui)
81 <input type=
"submit" name=
"[(#ID_PAQUET|svp_nom_action{up})]" class=
"submit" value=
"<:svp:bouton_up:>" />
84 [(#REM) si la configuration le permet, on peut activer un plugin obsolete ]
85 [(#GET{obsolete}|et{#GET{verrou}|non}|et{#GET{incompatible}|non}|oui)
86 [(#GET{actif}|non|et{#CONFIG{svp/autoriser_activer_paquets_obsoletes}|=={oui}})
87 <input type=
"submit" name=
"[(#ID_PAQUET|svp_nom_action{on})]" class=
"submit" value=
"<:svp:bouton_activer:>" />
90 [(#GET{actif}|non|et{[(#SRC_ARCHIVE|couper{
5}|=={auto/})]})
91 <input type=
"submit" name=
"[(#ID_PAQUET|svp_nom_action{kill})]" class=
"submit" value=
"<:svp:bouton_supprimer:>" />
94 <span class=
"svp_message"><:svp:info_verrouille:></span>
97 [(#GET{actif}|et{#GET{attente}|non}|oui) #SET{prefixe,#PREFIXE|strtolower}
98 [(#CHEMIN_IMAGE{ok-
16.png}|balise_img{
<:svp:plugin_info_actif:>,picto_actif}|inserer_attribut{title,
<:svp:plugin_info_actif:>})]
99 [(#INCLURE{fond=prive/squelettes/inclure/cfg,script=configurer_#GET{prefixe},nom=#NOM})]
101 [(#GET{verrou}|?{#GET{image_verrou}})]
102 [(#MAJ_VERSION|oui|et{#GET{autoriser_plugins_ajouter}|oui}|oui)
103 [(#CHEMIN_IMAGE{update-
16.png}|balise_img{
<:svp:plugin_info_up:>,picto_up}|inserer_attribut{title,
<:svp:plugin_info_up{version=#MAJ_VERSION}:
>})]
105 [(#GET{obsolete}|ou{#GET{incompatible}}|ou{#GET{attente}}|oui)
106 [(#SET{image,#GET{attente}|?{erreur-
16.png,plugin-dis-
16.png}})]
107 [(#GET{obsolete}) [(#SET{err,
<:svp:info_plugin_obsolete:>})]]
108 [(#GET{incompatible}) [(#SET{err,
<:svp:info_plugin_incompatible:>})]]
109 [(#CHEMIN_IMAGE{#GET{image}}|balise_img{#GET{err}, picto_err}|inserer_attribut{title, #GET{err}})]
112 [(#INCLURE{fond=prive/squelettes/inclure/plugin_detail,id_paquet,ajax=detail_#ID_PAQUET,env})]
121 <script type=
"text/javascript">
124 $('#liste_plugins').on('click','li.item a[rel=info]',function(){
125 var li = $(this).parents('li').eq(
0);
126 var id_paquet = li.data('id_paquet');
127 // premier clic, on charge le contenu du bloc details en ajax
128 if (!$('div.details',li).html()) {
129 $(this).ajaxReload({args: {'id_paquet':id_paquet}}, {callback:function(){
133 // clics suivants, masquer ou afficher les details
134 if ($('div.details',li).toggle().is(':visible'))
137 li.removeClass('on');
140 $('.plugins li.item input.checkbox').change(function(){
141 $(this).parents('form').eq(
0).find('.boutons').slideDown();