source: spip-zone/_plugins_/Association/Associaspip/inc/navigation_modules.php @ 59723

Last change on this file since 59723 was 59723, checked in by jeannolapin@…, 9 years ago

Associaspip Retour des icones de comptabilité en 24px pour ne pas déborder sur le texte + meilleur affichage du cadre d'export du compte de resultat.

File size: 5.8 KB
Line 
1<?php
2/***************************************************************************\
3 *  Associaspip, extension de SPIP pour gestion d'associations             *
4 *                                                                         *
5 *  Copyright (c) 2007 Bernard Blazin & François de Montlivault (V1)       *
6 *  Copyright (c) 2010-2011 Emmanuel Saint-James & Jeannot Lapin (V2)       *
7 *                                                                         *
8 *  Ce programme est un logiciel libre distribue sous licence GNU/GPL.     *
9 *  Pour plus de details voir le fichier COPYING.txt ou l'aide en ligne.   *
10\***************************************************************************/
11
12
13include_spip('inc/presentation'); // utilise par "onglet1_association" (pour "onglet") puis aussi dans les pages appelantes
14include_spip('inc/autoriser'); // utilise par "onglet1_association" (pour le test "autoriser") puis aussi dans les pages appelantes
15
16// Afficher le titre de la/le page/module courante puis (en dessous) les onglets des differents modules actives dans la configuration
17function onglets_association($titre='', $INSERT_HEAD=TRUE)
18{
19
20        /* onglet de retour a la page d'accueil */
21        $res = onglet1_association('association', 'association', 'Association', 'annonce.gif');
22
23        /* onglet de gestion des membres */
24        $res .= onglet1_association('gestion_membres', 'adherents', 'Membres', 'annonce.gif');
25
26        /* onglet de gestion des dons */
27        if ($GLOBALS['association_metas']['dons']) {
28                $res .= onglet1_association('gestion_dons', 'dons', 'Dons', 'dons-24.gif');
29        }
30
31        /* onglet de gestion des ventes */
32        if ($GLOBALS['association_metas']['ventes']) {
33                $res .= onglet1_association('ventes_asso', 'ventes', 'Ventes', 'ventes.gif');
34        }
35
36        /* onglet de gestion des activites */
37        if ($GLOBALS['association_metas']['activites']) {
38                $res .= onglet1_association('gestion_activites', 'activites', 'Activites', 'activites.gif');
39        }
40
41        /* onglet de gestion des prets */
42        if ($GLOBALS['association_metas']['prets']) {
43                $res .= onglet1_association('gestion_prets', 'ressources', 'Prets', 'pret-24.gif');
44        }
45
46        /* onglet de gestion comptable */
47        if ($GLOBALS['association_metas']['comptes']) {
48                $res .= onglet1_association('livres_comptes', 'comptes', 'Comptes', 'finances-24.png');
49        }
50
51        /* Affichage */
52        if ($INSERT_HEAD) { // mettre ''|0|FALSE|NULL dans la balise (appel dans une page HTML-SPIPee donc et non PHP) pour eviter l'erreur de "Double occurrence de INSERT_HEAD"
53                $commencer_page = charger_fonction('commencer_page', 'inc');
54                echo $commencer_page();
55        }
56        echo '<div class="table_page">';
57        // Nom du module
58        echo '<h1 class="asso_titre">', $titre?_T("asso:$titre"):_T('asso:gestion_de_lassoc', array('nom'=>$GLOBALS['association_metas']['nom']) ), '</h1>'; //  <http://programmer.spip.org/Contenu-d-un-fichier-exec>
59        // Onglets actifs
60        if ($res)
61                echo '<div class="bandeau_actions">', debut_onglet(), $res, fin_onglet(), '</div>';
62        echo '</div>';
63        if ($INSERT_HEAD) { // Tant qu'a faire, on s'embete pas a le retaper dans toutes les pages...
64                echo debut_gauche('',true);
65                echo debut_boite_info(true);
66        }
67}
68function association_onglets($titre='', $INSERT_HEAD=TRUE)
69{
70        onglets_association($titre,$INSERT_HEAD);
71}
72
73// dessin d'un onglet seul
74function onglet1_association($texte, $objet, $libelle, $image)
75{
76        if (autoriser('associer', $objet)) {
77                return onglet(_T("asso:menu2_titre_$texte"), generer_url_ecrire($objet), '', $libelle, _DIR_PLUGIN_ASSOCIATION_ICONES . $image, 'rien.gif');
78        } else
79                return '';
80}
81
82// cette fonction remplace et personnalise le couplet final <http://programmer.spip.org/Contenu-d-un-fichier-exec> : echo fin_gauche(), fin_page();
83function fin_page_association($FIN_CADRE_RELIEF=true)
84{
85        $copyright = fin_page();
86        // Pour eliminer le copyright a l'impression
87        $copyright = str_replace("<div class='table_page'>", "<div class='table_page contenu_nom_site'>", $copyright);
88        echo ($FIN_CADRE_RELIEF ? fin_cadre_relief() : '') . fin_gauche() . $copyright;
89}
90
91//cadre en relief debutant la colonne centrale/principale essentiellement
92function debut_cadre_association($icone,$titre,$T_argrs='',$DEBUT_DROITE=true)
93{
94        if ($DEBUT_DROITE)
95                echo debut_droite('',true);
96        debut_cadre_relief(_DIR_PLUGIN_ASSOCIATION_ICONES.$icone, false, '', (is_array($T_args)?_T("asso:$titre",$T_args): _T("asso:$titre")." $T_args") );
97}
98
99// bloc de raccourci(s) constitue au moins du bouton retour
100// chaque raccourci precedant est defini sous la forme : 'titre' => array('icone', 'url_ecrire', 'parametre_url'),
101// echo association_date_du_jour(), fin_boite_info(true), association_retour($adresse_retour) <=> bloc_raccourcis_association($adresse_retour)
102function icones_association($adresse_retour='',  $raccourcis=array(), $FIN_BOITE_INFO=TRUE)
103{
104        $res = ''; // initialisation
105        if ( is_array($raccourcis) AND count($raccourcis) ) {
106                foreach($raccourcis as $raccourci_titre => $raccourci_parametres) {
107                        $res .= icone1_association($raccourci_titre,  generer_url_ecrire($raccourci_parametres[1],$raccourci_parametres[2]), $raccourci_parametres[0]);
108                }
109        }
110        if ( is_array($adresse_retour) ) { // tableau : url_exec, parametres_exec
111                if ( is_array($adresse_retour) AND count($adresse_retour) )
112                        $res .= icone1_association('bouton_retour',  generer_url_ecrire($adresse_retour[0],$adresse_retour[1]), 'retour-24.png');
113        } else { // chaine de caractere : uri_complet
114                $res .= icone1_association('bouton_retour',  ($adresse_retour=='')?str_replace('&', '&amp;', $_SERVER['HTTP_REFERER']):$adresse_retour, 'retour-24.png');
115        }
116        if ($FIN_BOITE_INFO) {
117                echo association_date_du_jour();
118                echo fin_boite_info(true);
119        }
120        echo bloc_des_raccourcis($res);
121}
122
123// dessin de bouton+texte+lien de raccourci seul
124function icone1_association($texte, $lien, $image, $sup='rien.gif')
125{
126        return icone_horizontale(_T("asso:$texte"), $lien, _DIR_PLUGIN_ASSOCIATION_ICONES. $image, $sup, false);
127}
128
129
130?>
Note: See TracBrowser for help on using the repository browser.