From 488c41e3cdcbe8a418957be932b2703e9f22a784 Mon Sep 17 00:00:00 2001
From: Ludovic CHEVALIER
Date: Wed, 28 Aug 2013 15:20:42 +0200
Subject: [PATCH] [PLUGINS] +en_travaux
---
www/plugins/en_travaux/entravaux-bg.gif | Bin 0 -> 162 bytes
.../en_travaux/entravaux_administrations.php | 73 ++++++++
www/plugins/en_travaux/entravaux_options.php | 167 ++++++++++++++++++
.../formulaires/configurer_entravaux.html | 48 +++++
.../formulaires/configurer_entravaux.php | 42 +++++
www/plugins/en_travaux/inclure/entravaux.html | 26 +++
.../inclure/entravaux_notice_ecrire.html | 6 +
www/plugins/en_travaux/lang/entravaux.xml | 19 ++
www/plugins/en_travaux/lang/entravaux_de.php | 37 ++++
www/plugins/en_travaux/lang/entravaux_en.php | 37 ++++
www/plugins/en_travaux/lang/entravaux_es.php | 37 ++++
www/plugins/en_travaux/lang/entravaux_fa.php | 39 ++++
www/plugins/en_travaux/lang/entravaux_fr.php | 35 ++++
www/plugins/en_travaux/lang/entravaux_it.php | 37 ++++
www/plugins/en_travaux/lang/entravaux_sk.php | 37 ++++
.../en_travaux/lang/paquet-entravaux.xml | 15 ++
.../en_travaux/lang/paquet-entravaux_de.php | 16 ++
.../en_travaux/lang/paquet-entravaux_en.php | 16 ++
.../en_travaux/lang/paquet-entravaux_es.php | 16 ++
.../en_travaux/lang/paquet-entravaux_fr.php | 14 ++
.../en_travaux/lang/paquet-entravaux_it.php | 18 ++
.../en_travaux/lang/paquet-entravaux_sk.php | 16 ++
www/plugins/en_travaux/login_sos.html | 57 ++++++
www/plugins/en_travaux/paquet.xml | 24 +++
.../contenu/configurer_entravaux.html | 5 +
.../prive/themes/spip/images/entravaux-16.png | Bin 0 -> 914 bytes
.../prive/themes/spip/images/entravaux-32.png | Bin 0 -> 2492 bytes
.../prive/themes/spip/images/entravaux-64.png | Bin 0 -> 5802 bytes
.../prive/themes/spip/images/entravaux.png | Bin 0 -> 19671 bytes
www/plugins/en_travaux/robots.txt.html | 22 +++
www/plugins/en_travaux/svn.revision | 10 ++
31 files changed, 869 insertions(+)
create mode 100644 www/plugins/en_travaux/entravaux-bg.gif
create mode 100644 www/plugins/en_travaux/entravaux_administrations.php
create mode 100644 www/plugins/en_travaux/entravaux_options.php
create mode 100644 www/plugins/en_travaux/formulaires/configurer_entravaux.html
create mode 100644 www/plugins/en_travaux/formulaires/configurer_entravaux.php
create mode 100644 www/plugins/en_travaux/inclure/entravaux.html
create mode 100644 www/plugins/en_travaux/inclure/entravaux_notice_ecrire.html
create mode 100644 www/plugins/en_travaux/lang/entravaux.xml
create mode 100644 www/plugins/en_travaux/lang/entravaux_de.php
create mode 100644 www/plugins/en_travaux/lang/entravaux_en.php
create mode 100644 www/plugins/en_travaux/lang/entravaux_es.php
create mode 100644 www/plugins/en_travaux/lang/entravaux_fa.php
create mode 100644 www/plugins/en_travaux/lang/entravaux_fr.php
create mode 100644 www/plugins/en_travaux/lang/entravaux_it.php
create mode 100644 www/plugins/en_travaux/lang/entravaux_sk.php
create mode 100644 www/plugins/en_travaux/lang/paquet-entravaux.xml
create mode 100644 www/plugins/en_travaux/lang/paquet-entravaux_de.php
create mode 100644 www/plugins/en_travaux/lang/paquet-entravaux_en.php
create mode 100644 www/plugins/en_travaux/lang/paquet-entravaux_es.php
create mode 100644 www/plugins/en_travaux/lang/paquet-entravaux_fr.php
create mode 100644 www/plugins/en_travaux/lang/paquet-entravaux_it.php
create mode 100644 www/plugins/en_travaux/lang/paquet-entravaux_sk.php
create mode 100644 www/plugins/en_travaux/login_sos.html
create mode 100644 www/plugins/en_travaux/paquet.xml
create mode 100644 www/plugins/en_travaux/prive/squelettes/contenu/configurer_entravaux.html
create mode 100644 www/plugins/en_travaux/prive/themes/spip/images/entravaux-16.png
create mode 100644 www/plugins/en_travaux/prive/themes/spip/images/entravaux-32.png
create mode 100644 www/plugins/en_travaux/prive/themes/spip/images/entravaux-64.png
create mode 100644 www/plugins/en_travaux/prive/themes/spip/images/entravaux.png
create mode 100644 www/plugins/en_travaux/robots.txt.html
create mode 100644 www/plugins/en_travaux/svn.revision
diff --git a/www/plugins/en_travaux/entravaux-bg.gif b/www/plugins/en_travaux/entravaux-bg.gif
new file mode 100644
index 0000000000000000000000000000000000000000..5ba2ea3f2760ed88c013c5ef961ac3495ffd4bd1
GIT binary patch
literal 162
zcmZ?wbhEHbG-NPjXkcJ?_Uzf$uU{2^vM_*v4u}BBFfdj2^snT2%fC2!%c<_wemf5H
zvfblok$yQ->efoJ>YXAor@3@*n*V#r^Z&!&2HuB_7KU9DR8==;)@V&XvGU5vEomD=
z^#X7A<{eFZc=hz`pvG5*GkMz<7rxze^Ih@%{U1x_|8oyMZmurDVXX1}S$IdqiAg7R
OaNOYd*%8FRU=08%*-2*r
literal 0
HcmV?d00001
diff --git a/www/plugins/en_travaux/entravaux_administrations.php b/www/plugins/en_travaux/entravaux_administrations.php
new file mode 100644
index 0000000..15a937a
--- /dev/null
+++ b/www/plugins/en_travaux/entravaux_administrations.php
@@ -0,0 +1,73 @@
+
\ No newline at end of file
diff --git a/www/plugins/en_travaux/entravaux_options.php b/www/plugins/en_travaux/entravaux_options.php
new file mode 100644
index 0000000..b23fffe
--- /dev/null
+++ b/www/plugins/en_travaux/entravaux_options.php
@@ -0,0 +1,167 @@
+ redirection
+ else {
+ if (
+ !in_array(_request('action'),array('logout'))
+ AND !in_array(_request('exec'),array('install'))
+ ){
+ if (!autoriser('travaux')){
+ spip_initialisation_suite();
+ // si on est loge : die() avec travaux
+ if ($GLOBALS['visiteur_session']['id_auteur']){
+ $travaux = recuperer_fond("inclure/entravaux",array());
+ // fallback : le fond renvoie parfois du vide ...
+ if (!strlen($travaux)){
+ @define('_SPIP_SCRIPT','spip.php');
+ echo "Acces interdit (en travaux) Deconnexion";
+ }
+ else
+ echo $travaux;
+ die();
+ }
+ // sinon retour sur login_sos
+ else {
+ $redirect = parametre_url(generer_url_public('login_sos'),'url',self(),'&');
+ include_spip('inc/headers');
+ redirige_par_entete($redirect);
+ }
+ }
+ }
+ }
+}
+
+/**
+ * Pipeline styliser pour rerouter tous les fonds vers en_travaux
+ * sauf si l'auteur connecte est celui qui a active le plugin
+ *
+ * @param array $flux
+ * @return array
+ */
+function entravaux_styliser($flux){
+ if (is_entravaux()){
+ include_spip('inc/autoriser');
+ // les pages exceptions
+ $pages_ok = array('login_sos','robots.txt','spip_pass','favicon.ico','informer_auteur');
+ if (!autoriser('travaux')
+ AND !in_array($flux['args']['fond'],$pages_ok)
+ AND !in_array($flux['args']['contexte'][_SPIP_PAGE],$pages_ok)
+ // et on laisse passer modeles et formulaires,
+ // qui ne peuvent etre inclus ou appeles que legitimement
+ AND strpos($flux['args']['fond'],'/')===false){
+ $fond = trouver_fond('inclure/entravaux','',true);
+ $flux['data'] = $fond['fond'];
+ }
+ }
+ return $flux;
+}
+
+
+/**
+ * Afficher une icone de travaux sur tout le site public pour que le webmestre n'oublie pas
+ * de retablir le site
+ *
+ * @param string $flux
+ * @return string
+ */
+function entravaux_affichage_final($flux){
+ if (is_entravaux()
+ AND !test_espace_prive()
+ AND $GLOBALS['html']
+ AND !_AJAX){
+ include_spip('inc/filtres'); // pour http_img_pack
+ $x = ''
+ . http_img_pack(chemin_image('entravaux-64.png'), _T('entravaux:en_travaux'), '', _T('entravaux:en_travaux'))
+ . '
';
+ if (!$pos = strpos($flux, '
+
+'))
+ $pos = strlen($flux);
+ $flux = substr_replace($flux, $x, $pos, 0);
+ }
+ return $flux;
+}
+
+/**
+ * Afficher une notice sur l'accueil de ecrire
+ * @param array $flux
+ * @return array
+ */
+function entravaux_affiche_milieu($flux){
+ if (is_entravaux()){
+ if ($flux['args']['exec']=='accueil'){
+ $notice = recuperer_fond('inclure/entravaux_notice_ecrire',array());
+ if (strlen(trim($notice)))
+ $flux['data'] = $notice . $flux['data'];
+ }
+ }
+ if ($flux['args']['exec']=='configurer_identite'){
+ $flux['data'] .= recuperer_fond('prive/squelettes/contenu/configurer_entravaux',array());
+ }
+ return $flux;
+}
+
+?>
diff --git a/www/plugins/en_travaux/formulaires/configurer_entravaux.html b/www/plugins/en_travaux/formulaires/configurer_entravaux.html
new file mode 100644
index 0000000..1cfa9f4
--- /dev/null
+++ b/www/plugins/en_travaux/formulaires/configurer_entravaux.html
@@ -0,0 +1,48 @@
+[(#ENV{id_auteur}|oui)
+
+#BOITE_OUVRIR{'',notice}
+
<:entravaux:info_maintenance_en_cours:>
+#BOITE_FERMER
+
+
+]
+[(#ENV{id_auteur}|non)
+
+]
+
+
\ No newline at end of file
diff --git a/www/plugins/en_travaux/formulaires/configurer_entravaux.php b/www/plugins/en_travaux/formulaires/configurer_entravaux.php
new file mode 100644
index 0000000..b5bb613
--- /dev/null
+++ b/www/plugins/en_travaux/formulaires/configurer_entravaux.php
@@ -0,0 +1,42 @@
+ is_entravaux()?'1':'',
+ 'message' => $GLOBALS['meta']['entravaux_message'],
+ 'disallow_robots' => $GLOBALS['meta']['entravaux_disallow_robots'],
+ );
+
+ return $valeurs;
+}
+
+/**
+ * Traiter
+ * @return array
+ */
+function formulaires_configurer_entravaux_traiter_dist(){
+
+ include_spip('entravaux_administrations');
+ if (_request('accesferme'))
+ entravaux_poser_verrou('accesferme');
+ else
+ entravaux_lever_verrou('accesferme');
+
+
+ foreach(array('message','disallow_robots') as $k)
+ ecrire_meta('entravaux_'.$k,_request($k)?_request($k):'','non');
+
+ return array('message_ok' => _T('config_info_enregistree'));
+}
\ No newline at end of file
diff --git a/www/plugins/en_travaux/inclure/entravaux.html b/www/plugins/en_travaux/inclure/entravaux.html
new file mode 100644
index 0000000..bcc6fd0
--- /dev/null
+++ b/www/plugins/en_travaux/inclure/entravaux.html
@@ -0,0 +1,26 @@
+[(#HTTP_HEADER{HTTP/1.1 503 Service Temporarily Unavailable})][(#HTTP_HEADER{Status: 503 Service Temporarily Unavailable})][(#HTTP_HEADER{Retry-After: 7200})]
+
+
+
<:entravaux:en_travaux:>
+
+
+
+
+
+