File "admin_plugin.html"

Full path: /home/argothem/www/v4_old/plugins-dist/svp/formulaires/admin_plugin.html
File size: 5.54 KB
MIME-type: text/html
Charset: utf-8

<B_erreurs_xml>
<div class='svp_retour'>
	[(#ALERTE_OUVRIR{<:svp:actions_en_erreur:>, error, <:svp:erreurs_xml:>})]
		<ul>
			<BOUCLE_erreurs_xml(DATA){source table, #ENV{_erreurs_xml}}>
			<li>#VALEUR*</li>
			</BOUCLE_erreurs_xml>
		</ul>
	#ALERTE_FERMER
</div>
</B_erreurs_xml>
<div class="formulaire_spip formulaire_admin_plugin" id="formulaire_admin_plugin">
	<h3 class="titrem">[(#CHEMIN_IMAGE{plugin-24.png}|balise_img{icone plugin-24,cadre-icone})]<span id="nbr_plugin"><:plugins_liste:></span> </h3>
	<input type="input" id="filtrer" placeholder="<:svp:filtrer|attribut_html:>">
	[<p class="reponse_formulaire reponse_formulaire_erreur" role="alert">(#ENV*{message_erreur})</p>]
	[<p class="reponse_formulaire reponse_formulaire_ok" role="status">(#ENV*{message_ok})</p>]
	<form method="post" action="#ENV{action}">
		<INCLURE{fond=formulaires/inc-confirmer_actions, env} />
		#ACTION_FORMULAIRE
		<div class="liste-plugins">
			<p class="explication">
			[(#ENV{verrouille}|=={oui}|oui)
				#SET{dir_plugins_dist,#CONST{_DIR_PLUGINS_DIST}|joli_repertoire}
				<:svp:info_admin_plugin_verrouille{dir_plugins_dist=#GET{dir_plugins_dist}}:>
			][(#ENV{verrouille}|=={oui}|non)
				[(#VAL{svp:info_admin_plugin}|concat{[_actif_(#ENV{actif})], [_verrou_(#ENV{verrouille, non})]}|_T)]
			]
			</p>
			<INCLURE{fond=formulaires/inc-admin_plugin,env} />
		</div>
		<div class="actions_multiples">
			[<div class="boutons">(#CONST{_DIR_PLUGINS_DIST}|in_array{#ENV{constante,#ARRAY}}|non)
				<p class="cocher groupe-btns groupe-btns_bloc">
					<a class="btn btn_link" role="button" href="#" id="select_tous"><:svp:tout_cocher:></a>
					<a class="btn btn_link" role="button" href="#" id="select_aucun"><:svp:tout_decocher:></a>
					<a class="btn btn_link" role="button" href="#" id="select_up"><:svp:tout_cocher_up:></a>
				</p>
				<select id="action_globale" class="action" name="action_globale">
					[(#ENV{actif}|=={oui}|non)<option value="on"><:svp:bouton_activer:></option>]
					[(#ENV{actif}|=={non}|non)<option value="off"><:svp:bouton_desactiver:></option>]
					<option value="up" id="option_up"><:svp:bouton_up:></option>
					[(#ENV{actif}|=={non}|non|et{#AUTORISER{webmestre}}|oui)<option value="stop"><:svp:bouton_desinstaller:></option>]
				</select>
				<input type="submit" class="btn submit" name="appliquer" value="<:svp:bouton_appliquer:>" />
			</div>]
			<script type="text/javascript">
			/*<![CDATA[*/
				(function($){
					var tous_les_elements = $('div#liste_plugins ul > li');

					// afficher le nombre de plugin au chargement de la page
					calculer_nbr_plugin(tous_les_elements);

					// on filtre les plugins
					$('input#filtrer').keyup(function(){
						var that = this;
						jQuery('h1.grostitre').attr('data',$(this).val());
						var elements_trouves = tous_les_elements.filter(function(i, li){
							var listItemText = $(li).text().toUpperCase()
							searchText       = that.value.toUpperCase();
							return ~listItemText.indexOf(searchText);
						});
						tous_les_elements.hide();
						elements_trouves.show();

						// recalculer le nombre de plugin
						calculer_nbr_plugin(elements_trouves);
					});

					$("#select_tous").click(function(){
						jQuery("input.select_plugin").prop("checked",true);
						return false;
					});
					$("#select_aucun").click(function(){
						$("input.select_plugin").prop("checked",false);
						return false;
					});
					var cocher_plugins_up = function(){
						if ($(".plugins li.item.up").length != 0) {
							$("#select_up").click(function(){
								$(".plugins li.item.up input.select_plugin")
									.prop("checked",true)
									.parents("li.item.up").siblings(":not(.up)").find("input.select_plugin").prop("checked",false);
								$("select#action_globale>option#option_up").prop("selected",true);
								return false;
							});
						} else {
							$("#select_up").hide();
							$("#select_up").prev(".sep").hide();
							$("#option_up").hide();
						}
					}
					// lorsqu'il y a de nombreux plugins et comme la remontee ajax est desactivee
					// on ne voit pas forcement les erreurs. A ce monent la, on remonte dessus.
					var remonter_sur_erreurs = function() {
						if ($('#formulaire_admin_plugin .reponse_formulaire_erreur').length) {
							$(document).scrollTop($('#formulaire_admin_plugin').offset().top - 20);
						}
					}
					cocher_plugins_up();
					onAjaxLoad(cocher_plugins_up);
					onAjaxLoad(remonter_sur_erreurs);
					onAjaxLoad(refiltrer);

					// Au rechargement de la page et lors du chargement du descriptif d'un plugin
					// on recupere l'éventuel filtre et on l'applique si présent
					function refiltrer(){
						if (jQuery('h1.grostitre').attr('data')) {
							var elements_trouves = tous_les_elements.filter(function(i, li){
								var listItemText = $(li).text().toUpperCase()
								var searchText = jQuery('h1.grostitre').attr('data');
								jQuery('input#filtrer').val(searchText);
								return ~listItemText.indexOf(searchText.toUpperCase());
							});
							tous_les_elements.hide();
							elements_trouves.show();
						}
					}

					function calculer_nbr_plugin(liste_plugins){
						var nbr_plugin = liste_plugins.length;
						if (nbr_plugin > 1){
							var texte = '<:svp:info_nb_plugins|texte_script:>';
							texte = texte.replace('@nb@', nbr_plugin);
							jQuery('span#nbr_plugin').text(texte);
						} else if (nbr_plugin === 1){
							jQuery('span#nbr_plugin').text('<:svp:info_1_plugin|texte_script:>');
						} else {
							jQuery('span#nbr_plugin').text('<:svp:info_0_plugin|texte_script:>');
						}
					}
				})(jQuery);

			/*]]>*/
			</script>
		</div>
	</form>
</div>