[SPIP] ~v3.0.20-->v3.0.25
[lhc/web/clavette_www.git] / www / ecrire / inc / presentation.php
1 <?php
2
3 /***************************************************************************\
4 * SPIP, Systeme de publication pour l'internet *
5 * *
6 * Copyright (c) 2001-2016 *
7 * Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
8 * *
9 * Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
10 * Pour plus de details voir le fichier COPYING.txt ou l'aide en ligne. *
11 \***************************************************************************/
12
13 if (!defined('_ECRIRE_INC_VERSION')) return;
14
15 include_spip('inc/presentation_mini');
16 include_spip('inc/layer');
17 include_spip('inc/texte');
18 include_spip('inc/filtres');
19 include_spip('inc/boutons');
20 include_spip('inc/actions');
21 include_spip('inc/puce_statut');
22 include_spip('inc/filtres_ecrire');
23 include_spip('inc/filtres_boites');
24
25 // http://doc.spip.org/@debut_cadre
26 function debut_cadre($style, $icone = "", $fonction = "", $titre = "", $id="", $class="", $padding=true) {
27 $style_mapping=array('r'=>'simple','e'=>'raccourcis','couleur'=>'basic highlight','couleur-foncee'=>'basic highlight','trait-couleur'=>'important','alerte'=>'notice','info'=>'info','sous_rub'=>'simple sous-rub');
28 $style_titre_mapping=array('couleur'=>'topper','trait-couleur'=>'section');
29 $c = isset($style_mapping[$style])?$style_mapping[$style]:'simple';
30 $class = $c . ($class?" $class":"");
31 if (!$padding)
32 $class .= ($class?" ":"")."no-padding";
33
34 //($id?"id='$id' ":"")
35 if (strlen($icone) > 1) {
36 if ($icone_renommer = charger_fonction('icone_renommer','inc',true))
37 list($fond,$fonction) = $icone_renommer($icone,$fonction);
38 $size = 24;
39 if (preg_match("/-([0-9]{1,3})[.](gif|png)$/i",$fond,$match))
40 $size = $match[1];
41 if ($fonction){
42 // 2 images pour composer l'icone : le fond (article) en background,
43 // la fonction (new) en image
44 $icone = http_img_pack($fonction, "", "class='cadre-icone' width='$size' height='$size'\n" .
45 http_style_background($fond, "no-repeat center center"));
46 }
47 else {
48 $icone = http_img_pack($fond, "", "class='cadre-icone' width='$size' height='$size'");
49 }
50 $titre = $icone . $titre;
51 }
52 return boite_ouvrir($titre, $class,isset($style_titre_mapping[$style])?$style_titre_mapping[$style]:'',$id);
53 }
54
55 // http://doc.spip.org/@fin_cadre
56 function fin_cadre() {return boite_fermer();}
57
58
59 function debut_cadre_relief($icone='', $dummy='', $fonction='', $titre = '', $id="", $class=""){return debut_cadre('r', $icone, $fonction, $titre, $id, $class);}
60 function fin_cadre_relief(){return fin_cadre('r');}
61 function debut_cadre_enfonce($icone='', $dummy='', $fonction='', $titre = '', $id="", $class=""){return debut_cadre('e', $icone, $fonction, $titre, $id, $class);}
62 function fin_cadre_enfonce(){return fin_cadre('e');}
63 function debut_cadre_sous_rub($icone='', $dummy='', $fonction='', $titre = '', $id="", $class=""){return debut_cadre('sous_rub', $icone, $fonction, $titre, $id, $class);}
64 function fin_cadre_sous_rub(){return fin_cadre('sous_rub');}
65 function debut_cadre_couleur($icone='', $dummy='', $fonction='', $titre='', $id="", $class=""){return debut_cadre('couleur', $icone, $fonction, $titre, $id, $class);}
66 function fin_cadre_couleur(){return fin_cadre('couleur');}
67 function debut_cadre_couleur_foncee($icone='', $dummy='', $fonction='', $titre='', $id="", $class=""){return debut_cadre('couleur-foncee', $icone, $fonction, $titre, $id, $class);}
68 function fin_cadre_couleur_foncee(){return fin_cadre('couleur-foncee');}
69 function debut_cadre_trait_couleur($icone='', $dummy='', $fonction='', $titre='', $id="", $class=""){return debut_cadre('trait-couleur', $icone, $fonction, $titre, $id, $class);}
70 function fin_cadre_trait_couleur(){return fin_cadre('trait-couleur');}
71 function debut_boite_alerte() {return debut_cadre('alerte', '', '', '', '', '');}
72 function fin_boite_alerte() {return fin_cadre('alerte');}
73 function debut_boite_info() {return debut_cadre('info', '', '', '', '', '');}
74 function fin_boite_info() {return fin_cadre('info');}
75
76 // http://doc.spip.org/@gros_titre
77 function gros_titre($titre, $ze_logo=''){return "<h1 class='grostitre'>" . $ze_logo.' ' . typo($titre)."</h1>\n";}
78
79 // La boite des raccourcis
80 // Se place a droite si l'ecran est en mode panoramique.
81 // http://doc.spip.org/@bloc_des_raccourcis
82 function bloc_des_raccourcis($bloc) {
83 return creer_colonne_droite()
84 . boite_ouvrir(_T('titre_cadre_raccourcis'),'raccourcis') . $bloc . boite_fermer();
85 }
86
87 // Compatibilite
88 // http://doc.spip.org/@afficher_plus
89 function afficher_plus($lien) {include_spip('inc/filtres_ecrire');afficher_plus_info($lien);}
90
91
92
93 //
94 // Fonctions d'affichage
95 //
96
97 // http://doc.spip.org/@afficher_objets
98 function afficher_objets($type, $titre_table,$requete,$formater='',$force=false){
99 $afficher_objets = charger_fonction('afficher_objets','inc');
100 return $afficher_objets($type, $titre_table,$requete,$formater,$force);
101 }
102
103 // Fonctions onglets
104 // http://doc.spip.org/@debut_onglet
105 // @param string $sous_classe prend la valeur second pour definir les onglet de deuxieme niveau
106 function debut_onglet($classe="barre_onglet"){return "<div class='$classe clearfix'><ul>\n";}
107 // http://doc.spip.org/@fin_onglet
108 function fin_onglet(){return "</ul></div>\n";}
109 // http://doc.spip.org/@onglet
110 function onglet($texte, $lien, $onglet_ref, $onglet, $icone=""){
111 return "<li>"
112 . ($icone?http_img_pack($icone, '', " class='cadre-icone'"):'')
113 . lien_ou_expose($lien,$texte,$onglet == $onglet_ref)
114 . "</li>";
115 }
116
117 // http://doc.spip.org/@icone_inline
118 function icone_verticale($texte, $lien, $fond, $fonction="", $align="", $javascript=""){
119 // cas d'ajax_action_auteur: faut defaire le boulot
120 // (il faudrait fusionner avec le cas $javascript)
121 if (preg_match(",^<a\shref='([^']*)'([^>]*)>(.*)</a>$,i",$lien,$r)) {
122 list($x,$lien,$atts,$texte)= $r;
123 $javascript .= $atts;
124 }
125
126 return icone_base($lien, $texte, $fond, $fonction,"verticale $align",$javascript);
127 }
128
129 // http://doc.spip.org/@icone_horizontale
130 function icone_horizontale($texte, $lien, $fond, $fonction="", $dummy="", $javascript="") {
131 $retour = '';
132 // cas d'ajax_action_auteur: faut defaire le boulot
133 // (il faudrait fusionner avec le cas $javascript)
134 if (preg_match(",^<a\shref='([^']*)'([^>]*)>(.*)</a>$,i",$lien,$r)) {
135 list($x,$lien,$atts,$texte)= $r;
136 $javascript .= $atts;
137 }
138
139 $retour = icone_base($lien, $texte, $fond, $fonction,"horizontale",$javascript);
140 return $retour;
141 }
142
143 ?>