[SPIP] ~v3.0.17-->v3.0.19
[ptitvelo/web/www.git] / www / ecrire / inc / presentation_mini.php
index 1cbef7e..5754a1c 100644 (file)
-<?php\r
-\r
-/***************************************************************************\\r
- *  SPIP, Systeme de publication pour l'internet                           *\r
- *                                                                         *\r
- *  Copyright (c) 2001-2014                                                *\r
- *  Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James  *\r
- *                                                                         *\r
- *  Ce programme est un logiciel libre distribue sous licence GNU/GPL.     *\r
- *  Pour plus de details voir le fichier COPYING.txt ou l'aide en ligne.   *\r
-\***************************************************************************/\r
-\r
-/**\r
- * Fonctions d'affichage pour l'espace privé (hors squelettes)\r
- *\r
- * @package SPIP\Core\Affichage\r
-**/\r
-if (!defined('_ECRIRE_INC_VERSION')) return;\r
-\r
-/**\r
- * Affiche un code html (echo) et log l'affichage car cet echo est anormal !\r
- * \r
- * Signale une fonction qui devrait retourner un contenu mais effectue\r
- * un echo à la place pour compatibilité ascendante\r
- *\r
- * @deprecated\r
- *     Utiliser des squelettes pour l'affichage !\r
- * \r
- * @param string $f\r
- *     Nom de la fonction\r
- * @param string $ret\r
- *     Code HTML à afficher\r
- * @return void\r
-**/\r
-function echo_log($f, $ret) {\r
-       spip_log("Page " . self() . " function $f: echo ".substr($ret,0,50)."...",'echo');\r
-       echo\r
-       (_SIGNALER_ECHOS?"#Echo par $f#" :"")\r
-               . $ret;\r
-}\r
-\r
-/**\r
- * Retourne le code HTML d'un début de cadre pour le centre de page (haut de page)\r
- * @return string Code HTML\r
- */\r
-function debut_grand_cadre(){ return "\n<div class='table_page'>\n";}\r
-\r
-/**\r
- * Retourne le code HTML d'une fin de cadre pour le centre de page (haut de page)\r
- * @return string Code HTML\r
- */\r
-function fin_grand_cadre(){ return "\n</div>";}\r
-\r
-// Debut de la colonne de gauche\r
-// div navigation fermee par creer_colonne_droite qui ouvre\r
-// div extra lui-meme ferme par debut_droite qui ouvre\r
-// div contenu lui-meme ferme par fin_gauche() ainsi que\r
-// div conteneur\r
-// http://doc.spip.org/@debut_gauche\r
-/**\r
- * Retourne le code HTML du début de la colonne gauche\r
- * @return string Code HTML\r
- */\r
-function debut_gauche() {      return "<div id='conteneur' class=''>\n<div id='navigation' class='lat' role='contentinfo'>\n";}\r
-\r
-/**\r
- * Retourne le code HTML de la fin de la colonne\r
- * @return string Code HTML\r
- */\r
-function fin_gauche(){return "</div></div><br class='nettoyeur' />";}\r
-\r
-/**\r
- * Retourne le code HTML du changement de colonne (passer de la gauche à la droite)\r
- * @return string Code HTML\r
- */\r
-function creer_colonne_droite(){\r
-       static $deja_colonne_droite;\r
-       if ($GLOBALS['spip_ecran']!='large' OR $deja_colonne_droite) return '';\r
-       $deja_colonne_droite = true;\r
-       return "\n</div><div id='extra' class='lat' role='complementary'>";\r
-}\r
-\r
-/**\r
- * Retourne le code HTML de la colonne droite et du centre de page\r
- * @return string Code HTML\r
- */\r
-function debut_droite() {\r
-       return liste_objets_bloques(_request('exec'))\r
-         . creer_colonne_droite()\r
-         . "</div>"\r
-         . "\n<div id='contenu'>";\r
-}\r
-\r
-// http://doc.spip.org/@liste_articles_bloques\r
-function liste_objets_bloques($exec,$contexte=array(),$auteur=null){\r
-       $res = '';\r
-       if ($GLOBALS['meta']["articles_modif"] != "non") {\r
-               include_spip('inc/drapeau_edition');\r
-               if (is_null($auteur))\r
-                       $auteur = $GLOBALS['visiteur_session'];\r
-               if ($en_cours=trouver_objet_exec($exec)\r
-                       AND $en_cours['edition']\r
-                       AND $type = $en_cours['type']\r
-                 AND ($id = $contexte[$en_cours['id_table_objet']] OR $id = _request($en_cours['id_table_objet']))) {\r
-                       // marquer le fait que l'objet est ouvert en edition par toto\r
-                       // a telle date ; une alerte sera donnee aux autres redacteurs\r
-                       signale_edition ($id,  $auteur, $type);\r
-               }\r
-\r
-               $objets_ouverts = liste_drapeau_edition($auteur['id_auteur']);\r
-               if (count($objets_ouverts)) {\r
-                       $res .= recuperer_fond('prive/objets/liste/objets-en-edition',array(),array('ajax'=>true));\r
-               }\r
-       }\r
-       return $res;\r
-}\r
-\r
-// Fin de page de l'interface privee.\r
-// Elle comporte une image invisible declenchant une tache de fond\r
-// http://doc.spip.org/@fin_page\r
-function fin_page(){\r
-       include_spip('inc/pipelines');\r
-       // avec &var_profile=1 on a le tableau de mesures SQL\r
-       $debug = ((_request('exec') !== 'valider_xml')\r
-               AND ((_request('var_mode') == 'debug')\r
-                       OR (isset($GLOBALS['tableau_des_temps']) AND $GLOBALS['tableau_des_temps'])\r
-                       AND isset($_COOKIE['spip_admin'])));\r
-       $t = '</div><div id="pied"><div class="largeur">'\r
-       . recuperer_fond('prive/squelettes/inclure/pied')\r
-       . "</div>"\r
-       . "</div></div>" // cf. div#page et div.largeur ouvertes dans conmmencer_page()\r
-       . ($debug?erreur_squelette():'')\r
-       . "</body></html>\n";\r
-       return f_queue($t);\r
-}\r
-\r
-function html_tests_js(){\r
-       if (_SPIP_AJAX AND !defined('_TESTER_NOSCRIPT')) {\r
-         // pour le pied de page (deja defini si on est validation XML)\r
-               define('_TESTER_NOSCRIPT',\r
-                       "<noscript>\n<div style='display:none;'><img src='"\r
-                       . generer_url_ecrire('test_ajax', 'js=-1')\r
-                       . "' width='1' height='1' alt='' /></div></noscript>\n");\r
-       }\r
-       return\r
-               (defined('_SESSION_REJOUER') ? _SESSION_REJOUER : '')\r
-       . (defined('_TESTER_NOSCRIPT') ? _TESTER_NOSCRIPT : '');\r
-}\r
-\r
-function info_maj_spip(){\r
-\r
-       $maj = $GLOBALS['meta']['info_maj_spip'];\r
-       if (!$maj)\r
-               return "";\r
-\r
-       $maj = explode('|',$maj);\r
-       // c'est une ancienne notif, on a fait la maj depuis !\r
-       if ($GLOBALS['spip_version_branche']!==reset($maj))\r
-               return "";\r
-\r
-       if (!autoriser('webmestre'))\r
-               return "";\r
-\r
-       array_shift($maj);\r
-       $maj = implode('|',$maj);\r
-\r
-       return "$maj<br />";\r
-}\r
-\r
-// http://doc.spip.org/@info_copyright\r
-function info_copyright() {\r
-       global $spip_version_affichee, $spip_lang;\r
-\r
-       $version = $spip_version_affichee;\r
-\r
-       //\r
-       // Mention, le cas echeant, de la revision SVN courante\r
-       //\r
-       if ($svn_revision = version_svn_courante(_DIR_RACINE)) {\r
-               $version .= ' ' . (($svn_revision < 0) ? 'SVN ':'')\r
-               . "[<a href='http://core.spip.org/trac/spip/changeset/"\r
-               . abs($svn_revision) . "' onclick=\"window.open(this.href); return false;\">"\r
-               . abs($svn_revision) . "</a>]";\r
-       }\r
-\r
-       // et la version de l'ecran de securite\r
-       $secu = defined('_ECRAN_SECURITE')\r
-               ? "<br />"._T('ecran_securite',array('version'=>_ECRAN_SECURITE))\r
-               : '';\r
-\r
-       return _T('info_copyright',\r
-                  array('spip' => "<b>SPIP $version</b> ",\r
-                        'lien_gpl' =>\r
-                        "<a href='". generer_url_ecrire("aide", "aide=licence&var_lang=$spip_lang") . "' onclick=\"window.open(this.href, 'spip_aide', 'scrollbars=yes,resizable=yes,width=740,height=580'); return false;\">" . _T('info_copyright_gpl')."</a>"))\r
-               . $secu;\r
-\r
-}\r
-\r
-// http://doc.spip.org/@formulaire_recherche\r
-function formulaire_recherche($page, $complement=""){\r
-       $recherche = _request('recherche');\r
-       $recherche_aff = entites_html($recherche);\r
-       if (!strlen($recherche)) {\r
-               $recherche_aff = _T('info_rechercher');\r
-               $onfocus = " onfocus=\"this.value='';\"";\r
-       } else $onfocus = '';\r
-\r
-       $form = '<input type="text" size="10" value="'.$recherche_aff.'" name="recherche" class="recherche" accesskey="r"' . $onfocus . ' />';\r
-       $form .= "<input type='image' src='" . chemin_image('rechercher-20.png') . "' name='submit' class='submit' alt='"._T('info_rechercher')."' />";\r
-       return "<div class='spip_recherche'>".generer_form_ecrire($page, $form . $complement, " method='get'")."</div>";\r
-}\r
-\r
-?>\r
+<?php
+
+/***************************************************************************\
+ *  SPIP, Systeme de publication pour l'internet                           *
+ *                                                                         *
+ *  Copyright (c) 2001-2014                                                *
+ *  Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James  *
+ *                                                                         *
+ *  Ce programme est un logiciel libre distribue sous licence GNU/GPL.     *
+ *  Pour plus de details voir le fichier COPYING.txt ou l'aide en ligne.   *
+\***************************************************************************/
+
+/**
+ * Fonctions d'affichage pour l'espace privé (hors squelettes)
+ *
+ * @package SPIP\Core\Affichage
+**/
+if (!defined('_ECRIRE_INC_VERSION')) return;
+
+/**
+ * Affiche un code html (echo) et log l'affichage car cet echo est anormal !
+ * 
+ * Signale une fonction qui devrait retourner un contenu mais effectue
+ * un echo à la place pour compatibilité ascendante
+ *
+ * @deprecated
+ *     Utiliser des squelettes pour l'affichage !
+ * 
+ * @param string $f
+ *     Nom de la fonction
+ * @param string $ret
+ *     Code HTML à afficher
+ * @return void
+**/
+function echo_log($f, $ret) {
+       spip_log("Page " . self() . " function $f: echo ".substr($ret,0,50)."...",'echo');
+       echo
+       (_SIGNALER_ECHOS?"#Echo par $f#" :"")
+               . $ret;
+}
+
+/**
+ * Retourne le code HTML d'un début de cadre pour le centre de page (haut de page)
+ * @return string Code HTML
+ */
+function debut_grand_cadre(){ return "\n<div class='table_page'>\n";}
+
+/**
+ * Retourne le code HTML d'une fin de cadre pour le centre de page (haut de page)
+ * @return string Code HTML
+ */
+function fin_grand_cadre(){ return "\n</div>";}
+
+// Debut de la colonne de gauche
+// div navigation fermee par creer_colonne_droite qui ouvre
+// div extra lui-meme ferme par debut_droite qui ouvre
+// div contenu lui-meme ferme par fin_gauche() ainsi que
+// div conteneur
+// http://doc.spip.org/@debut_gauche
+/**
+ * Retourne le code HTML du début de la colonne gauche
+ * @return string Code HTML
+ */
+function debut_gauche() {      return "<div id='conteneur' class=''>\n<div id='navigation' class='lat' role='contentinfo'>\n";}
+
+/**
+ * Retourne le code HTML de la fin de la colonne
+ * @return string Code HTML
+ */
+function fin_gauche(){return "</div></div><br class='nettoyeur' />";}
+
+/**
+ * Retourne le code HTML du changement de colonne (passer de la gauche à la droite)
+ * @return string Code HTML
+ */
+function creer_colonne_droite(){
+       static $deja_colonne_droite;
+       if ($GLOBALS['spip_ecran']!='large' OR $deja_colonne_droite) return '';
+       $deja_colonne_droite = true;
+       return "\n</div><div id='extra' class='lat' role='complementary'>";
+}
+
+/**
+ * Retourne le code HTML de la colonne droite et du centre de page
+ * @return string Code HTML
+ */
+function debut_droite() {
+       return liste_objets_bloques(_request('exec'))
+         . creer_colonne_droite()
+         . "</div>"
+         . "\n<div id='contenu'>";
+}
+
+// http://doc.spip.org/@liste_articles_bloques
+function liste_objets_bloques($exec,$contexte=array(),$auteur=null){
+       $res = '';
+       if ($GLOBALS['meta']["articles_modif"] != "non") {
+               include_spip('inc/drapeau_edition');
+               if (is_null($auteur))
+                       $auteur = $GLOBALS['visiteur_session'];
+               if ($en_cours=trouver_objet_exec($exec)
+                       AND $en_cours['edition']
+                       AND $type = $en_cours['type']
+                 AND ($id = $contexte[$en_cours['id_table_objet']] OR $id = _request($en_cours['id_table_objet']))) {
+                       // marquer le fait que l'objet est ouvert en edition par toto
+                       // a telle date ; une alerte sera donnee aux autres redacteurs
+                       signale_edition ($id,  $auteur, $type);
+               }
+
+               $objets_ouverts = liste_drapeau_edition($auteur['id_auteur']);
+               if (count($objets_ouverts)) {
+                       $res .= recuperer_fond('prive/objets/liste/objets-en-edition',array(),array('ajax'=>true));
+               }
+       }
+       return $res;
+}
+
+// Fin de page de l'interface privee.
+// Elle comporte une image invisible declenchant une tache de fond
+// http://doc.spip.org/@fin_page
+function fin_page(){
+       include_spip('inc/pipelines');
+       // avec &var_profile=1 on a le tableau de mesures SQL
+       $debug = ((_request('exec') !== 'valider_xml')
+               AND ((_request('var_mode') == 'debug')
+                       OR (isset($GLOBALS['tableau_des_temps']) AND $GLOBALS['tableau_des_temps'])
+                       AND isset($_COOKIE['spip_admin'])));
+       $t = '</div><div id="pied"><div class="largeur">'
+       . recuperer_fond('prive/squelettes/inclure/pied')
+       . "</div>"
+       . "</div></div>" // cf. div#page et div.largeur ouvertes dans conmmencer_page()
+       . ($debug?erreur_squelette():'')
+       . "</body></html>\n";
+       return f_queue($t);
+}
+
+function html_tests_js(){
+       if (_SPIP_AJAX AND !defined('_TESTER_NOSCRIPT')) {
+         // pour le pied de page (deja defini si on est validation XML)
+               define('_TESTER_NOSCRIPT',
+                       "<noscript>\n<div style='display:none;'><img src='"
+                       . generer_url_ecrire('test_ajax', 'js=-1')
+                       . "' width='1' height='1' alt='' /></div></noscript>\n");
+       }
+       return
+               (defined('_SESSION_REJOUER') ? _SESSION_REJOUER : '')
+       . (defined('_TESTER_NOSCRIPT') ? _TESTER_NOSCRIPT : '');
+}
+
+function info_maj_spip(){
+
+       $maj = $GLOBALS['meta']['info_maj_spip'];
+       if (!$maj)
+               return "";
+
+       $maj = explode('|',$maj);
+       // c'est une ancienne notif, on a fait la maj depuis !
+       if ($GLOBALS['spip_version_branche']!==reset($maj))
+               return "";
+
+       if (!autoriser('webmestre'))
+               return "";
+
+       array_shift($maj);
+       $maj = implode('|',$maj);
+
+       return "$maj<br />";
+}
+
+// http://doc.spip.org/@info_copyright
+function info_copyright() {
+       global $spip_version_affichee, $spip_lang;
+
+       $version = $spip_version_affichee;
+
+       //
+       // Mention, le cas echeant, de la revision SVN courante
+       //
+       if ($svn_revision = version_svn_courante(_DIR_RACINE)) {
+               $version .= ' ' . (($svn_revision < 0) ? 'SVN ':'')
+               . "[<a href='http://core.spip.net/projects/spip/repository/revisions/"
+               . abs($svn_revision) . "' onclick=\"window.open(this.href); return false;\">"
+               . abs($svn_revision) . "</a>]";
+       }
+
+       // et la version de l'ecran de securite
+       $secu = defined('_ECRAN_SECURITE')
+               ? "<br />"._T('ecran_securite',array('version'=>_ECRAN_SECURITE))
+               : '';
+
+       return _T('info_copyright',
+                  array('spip' => "<b>SPIP $version</b> ",
+                        'lien_gpl' =>
+                        "<a href='". generer_url_ecrire("aide", "aide=licence&var_lang=$spip_lang") . "' onclick=\"window.open(this.href, 'spip_aide', 'scrollbars=yes,resizable=yes,width=740,height=580'); return false;\">" . _T('info_copyright_gpl')."</a>"))
+               . $secu;
+
+}
+
+// http://doc.spip.org/@formulaire_recherche
+function formulaire_recherche($page, $complement=""){
+       $recherche = _request('recherche');
+       $recherche_aff = entites_html($recherche);
+       if (!strlen($recherche)) {
+               $recherche_aff = _T('info_rechercher');
+               $onfocus = " onfocus=\"this.value='';\"";
+       } else $onfocus = '';
+
+       $form = '<input type="text" size="10" value="'.$recherche_aff.'" name="recherche" class="recherche" accesskey="r"' . $onfocus . ' />';
+       $form .= "<input type='image' src='" . chemin_image('rechercher-20.png') . "' name='submit' class='submit' alt='"._T('info_rechercher')."' />";
+       return "<div class='spip_recherche'>".generer_form_ecrire($page, $form . $complement, " method='get'")."</div>";
+}
+
+?>