Subversion Repositories Applications.bazar

Rev

Rev 22 | Rev 39 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
5 florian 1
<?php
2
/*vim: set expandtab tabstop=4 shiftwidth=4: */
3
// +------------------------------------------------------------------------------------------------------+
4
// | PHP version 4.1                                                                                      |
5
// +------------------------------------------------------------------------------------------------------+
6
// | Copyright (C) 2004 Tela Botanica (accueil@tela-botanica.org)                                         |
7
// +------------------------------------------------------------------------------------------------------+
8
// | This library is free software; you can redistribute it and/or                                        |
9
// | modify it under the terms of the GNU Lesser General Public                                           |
10
// | License as published by the Free Software Foundation; either                                         |
11
// | version 2.1 of the License, or (at your option) any later version.                                   |
12
// |                                                                                                      |
13
// | This library is distributed in the hope that it will be useful,                                      |
14
// | but WITHOUT ANY WARRANTY; without even the implied warranty of                                       |
15
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU                                    |
16
// | Lesser General Public License for more details.                                                      |
17
// |                                                                                                      |
18
// | You should have received a copy of the GNU Lesser General Public                                     |
19
// | License along with this library; if not, write to the Free Software                                  |
20
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA                            |
21
// +------------------------------------------------------------------------------------------------------+
30 ddelon 22
// CVS : $Id: bazar.php,v 1.10 2005-10-12 17:20:33 ddelon Exp $
5 florian 23
/**
24
*
25
*@package bazar
26
//Auteur original :
27
*@author        Alexandre GRANIER <alexandre@tela-botanica.org>
28
*@author        Florian Schmitt <florian@ecole-et-nature.org>
29
//Autres auteurs :
30
*@copyright     Tela-Botanica 2000-2004
30 ddelon 31
*@version       $Revision: 1.10 $ $Date: 2005-10-12 17:20:33 $
5 florian 32
// +------------------------------------------------------------------------------------------------------+
33
*/
34
 
35
// +------------------------------------------------------------------------------------------------------+
36
// |                             LES CONSTANTES DES ACTIONS DE BAZAR                                      |
37
// +------------------------------------------------------------------------------------------------------+
38
 
39
define ('BAZ_VOIR_VOS_ANNONCES', 0);
40
define ('BAZ_VOIR_TOUTES_ANNONCES', 1) ;
41
define ('BAZ_RECHERCHER_ANNONCE', 2) ;
42
define ('BAZ_DEPOSER_ANNONCE', 3) ;
43
define ('BAZ_ANNONCES_A_VALIDER', 4) ;
44
define ('BAZ_GERER_DROITS', 5) ;
45
define ('BAZ_ADMINISTRER_ANNONCES', 6) ;
46
define ('BAZ_MODIFIER_FICHE', 7) ;
30 ddelon 47
if (!defined('BAZ_VOIR_FICHE')) define ('BAZ_VOIR_FICHE', 8) ;
5 florian 48
define ('BAZ_SUPPRIMER_FICHE', 9) ;
49
define ('BAZ_ACTION_NOUVEAU', 10) ;
50
define ('BAZ_ACTION_NOUVEAU_V', 11) ;
51
define ('BAZ_ACTION_MODIFIER', 12) ;
52
define ('BAZ_ACTION_MODIFIER_V', 13) ;
53
define ('BAZ_ACTION_SUPPRESSION', 14) ;
54
define ('BAZ_ACTION_PUBLIER', 15) ;
55
define ('BAZ_ACTION_PAS_PUBLIER', 16) ;
56
define ('BAZ_S_INSCRIRE', 17);
57
define ('BAZ_VOIR_FLUX_RSS', 18);
58
 
59
 
60
// +------------------------------------------------------------------------------------------------------+
61
// |                                            ENTETE du PROGRAMME                                       |
62
// +------------------------------------------------------------------------------------------------------+
63
 
64
error_reporting(E_ALL);
65
include_once 'DB.php' ;
66
include_once 'Auth.php' ;
67
include_once 'configuration/baz_config.inc.php'; //fichier de configuration de Bazar
68
include_once 'bibliotheque/bazar.fonct.php'; //fichier des fonctions de Bazar
69
 
70
if (defined('PAP_VERSION')) { //si on est dans Papyrus
71
	GEN_stockerStyleExterne( 'bazar_interne', 'client/bazar/bazar.interne.css');
72
}
73
 
74
// +------------------------------------------------------------------------------------------------------+
75
// |                                           LISTE de FONCTIONS                                         |
76
// +------------------------------------------------------------------------------------------------------+
77
 
78
function afficherContenuCorps() {
79
 
80
	$GLOBALS['id_user']=$GLOBALS['AUTH']->getAuthData(BAZ_CHAMPS_ID);
81
 
82
	$res = '';
83
	//---------------l'entête de l'appli-----------
84
	$res.='<div id="BAZ_hautdepage">'."\n";
7 florian 85
	$res.='<h1>'.$GLOBALS['_GEN_commun']['info_menu']->gm_titre.'</h1>'."\n";
5 florian 86
	$res.='</div>'."\n";
87
 
88
	//---------------le menu de l'appli-----------
89
	$res.='<div id="BAZ_menu">'."\n";
90
	$res .='<ul>'."\n";
91
	$GLOBALS['_BAZAR_']['url']->addQueryString('action', BAZ_VOIR_TOUTES_ANNONCES);
92
	$GLOBALS['_BAZAR_']['url']->addQueryString('nature', 'toutes');
93
	//partie consultation d'annonces
22 florian 94
	$res .= '<li><a href="'.$GLOBALS['_BAZAR_']['url']->getURL().'">'.BAZ_CONSULTER.'</a>'."\n".'</li>'."\n";
5 florian 95
	$GLOBALS['_BAZAR_']['url']->removeQueryString('nature');
96
 
22 florian 97
	/*$requete = 'SELECT bn_id_nature, bn_label_nature FROM bazar_nature WHERE bn_ce_id_menu='.$GLOBALS['_GEN_commun']['info_menu']->gm_id_menu.' or  bn_ce_id_menu=0';
5 florian 98
	$resultat = $GLOBALS['_BAZAR_']['db']->query($requete) ;
99
	if (DB::isError($resultat)) {
100
		die ($resultat->getMessage().$resultat->getDebugInfo()) ;
101
	}
102
	while ($ligne = $resultat->fetchRow(DB_FETCHMODE_ASSOC)) {
103
		$GLOBALS['_BAZAR_']['url']->addQueryString('nature', $ligne['bn_label_nature']);
104
		$res .='<li><a href="'.$GLOBALS['_BAZAR_']['url']->getURL().'">'.$ligne['bn_label_nature'].'</a></li>'."\n";
105
		$GLOBALS['_BAZAR_']['url']->removeQueryString('nature');
106
	}
107
 
108
	$GLOBALS['_BAZAR_']['url']->addQueryString('nature', 'toutes');
109
	$res .='<li><a href="'.$GLOBALS['_BAZAR_']['url']->getURL().'">'.BAZ_TOUTES_LES_ANNONCES.'</a></li></ul></li>'."\n";
110
	$GLOBALS['_BAZAR_']['url']->removeQueryString('nature');
111
	$GLOBALS['_BAZAR_']['url']->removeQueryString('action');
112
 
113
	//partie recherche d'annonces
114
	$GLOBALS['_BAZAR_']['url']->addQueryString('action', BAZ_RECHERCHER_ANNONCE);
22 florian 115
	$res .='<li><a href="'.$GLOBALS['_BAZAR_']['url']->getURL().'">'.BAZ_RECHERCHER.'</a></li>'."\n";
5 florian 116
	$GLOBALS['_BAZAR_']['url']->removeQueryString('action');
117
 
118
	//pour les identifiés seulement
22 florian 119
	if ($GLOBALS['AUTH']->getAuth()) {*/
5 florian 120
		//partie abonnement aux annonces
121
		$GLOBALS['_BAZAR_']['url']->addQueryString('action', BAZ_S_INSCRIRE);
22 florian 122
		$res .= '<li><a href="'.$GLOBALS['_BAZAR_']['url']->getURL().'">'.BAZ_S_ABONNER.'</a></li>'."\n" ;
5 florian 123
		$GLOBALS['_BAZAR_']['url']->removeQueryString('action');
124
 
125
		//partie saisie d'annonces
126
		$GLOBALS['_BAZAR_']['url']->addQueryString('action', BAZ_DEPOSER_ANNONCE);
127
		$res .= '<li><a href="'.$GLOBALS['_BAZAR_']['url']->getURL().'">'.BAZ_SAISIR.'</a>'."\n".'<ul>'."\n";
128
		$res .= '<li><a href="'.$GLOBALS['_BAZAR_']['url']->getURL().'">'.BAZ_DEPOSE_UNE_NOUVELLE_ANNONCE.'</a></li>'."\n" ;
129
		$GLOBALS['_BAZAR_']['url']->removeQueryString('action');
130
 
131
		//annonces propres
132
		$GLOBALS['_BAZAR_']['url']->addQueryString('action', BAZ_VOIR_VOS_ANNONCES);
133
		$res .='<li><a href="'.$GLOBALS['_BAZAR_']['url']->getURL().'">'.BAZ_VOS_ANNONCES.'</a></li>'."\n";
134
		$GLOBALS['_BAZAR_']['url']->removeQueryString('action');
135
		$res .='</ul></li>'."\n";
136
 
137
 
138
		//choix des administrateurs
139
		$est_admin=0;
22 florian 140
		if ($GLOBALS['AUTH']->getAuth()) {
141
			$requete='SELECT bn_id_nature FROM bazar_nature';
142
			$resultat = $GLOBALS['_BAZAR_']['db']->query($requete) ;
143
			if (DB::isError($resultat)) {
144
				die ($resultat->getMessage().$resultat->getDebugInfo()) ;
5 florian 145
			}
22 florian 146
			while ($ligne = $resultat->fetchRow(DB_FETCHMODE_ASSOC)) {
147
				if ((niveau_droit($ligne['bn_id_nature'],$GLOBALS['AUTH']->getAuthData(BAZ_CHAMPS_ID)))=='administrateur') {
148
					$est_admin=1;
149
			    }
150
			}
151
			if (($est_admin)or(niveau_droit($id_nature_offre='0',$GLOBALS['AUTH']->getAuthData(BAZ_CHAMPS_ID))=='superadministrateur')) {
5 florian 152
			//partie administrer
153
			$GLOBALS['_BAZAR_']['url']->addQueryString('action', BAZ_ANNONCES_A_VALIDER);
154
			$res .= '<li><a href="'.$GLOBALS['_BAZAR_']['url']->getURL().'">'.BAZ_ADMINISTRER.'</a><ul>'."\n";
155
			$res .= '<li><a href="'.$GLOBALS['_BAZAR_']['url']->getURL().'">'.BAZ_ANNONCES_A_ADMINISTRER.'</a></li>'."\n" ;
156
			$GLOBALS['_BAZAR_']['url']->removeQueryString('action');
157
 
158
			if (niveau_droit($id_nature_offre='0',$GLOBALS['AUTH']->getAuthData(BAZ_CHAMPS_ID))=='superadministrateur') {
159
				$GLOBALS['_BAZAR_']['url']->addQueryString('action', BAZ_GERER_DROITS);
160
				$res .= '<li><a href="'.$GLOBALS['_BAZAR_']['url']->getURL().'">'.BAZ_GESTION_DES_DROITS.'</a></li>'."\n" ;
161
				$GLOBALS['_BAZAR_']['url']->removeQueryString('action');
162
 
163
				$GLOBALS['_BAZAR_']['url']->addQueryString('action', BAZ_ADMINISTRER_ANNONCES);
164
				$res .= '<li><a href="'.$GLOBALS['_BAZAR_']['url']->getURL().'">'.BAZ_ADMIN_ANNONCES.'</a></li>'."\n" ;
165
				$GLOBALS['_BAZAR_']['url']->removeQueryString('action');
166
			}
167
			$res .= '</ul></li>'."\n";
22 florian 168
			}
169
	}
170
	$res.= '</ul>'."\n";
5 florian 171
	$res.='</div>'."\n";
172
 
173
	//le corps de l'appli
174
	$res.='<div id="BAZ_corps">'."\n";
175
	if (isset($_GET['action'])) {
176
		switch ($_GET['action']) {
177
			case BAZ_VOIR_VOS_ANNONCES : $res .= mes_fiches(); break;
22 florian 178
			case BAZ_VOIR_TOUTES_ANNONCES : $res .= baz_liste($_REQUEST['nature'],'',''); break;
5 florian 179
			case BAZ_RECHERCHER_ANNONCE : $res .= baz_rechercher(); break;
180
			case BAZ_DEPOSER_ANNONCE : $res .= baz_formulaire(BAZ_DEPOSER_ANNONCE); break;
181
			case BAZ_ANNONCES_A_VALIDER : $res .= fiches_a_valider(); break;
182
			case BAZ_ADMINISTRER_ANNONCES : $res .= baz_administrer_annonces(); break;
183
			case BAZ_MODIFIER_FICHE : $res .= baz_formulaire(BAZ_ACTION_MODIFIER); break;
184
			case BAZ_SUPPRIMER_FICHE : $res .= baz_suppression().baz_liste('',$GLOBALS['id_user'],''); break;
185
			case BAZ_VOIR_FICHE : $res .= baz_voir_fiche(1); break;
186
			case BAZ_ACTION_NOUVEAU : $res .= baz_formulaire(BAZ_ACTION_NOUVEAU); break;
187
			case BAZ_ACTION_NOUVEAU_V : $res .= baz_formulaire().mes_fiches(); break;
188
			case BAZ_ACTION_MODIFIER : $res .= baz_formulaire(BAZ_ACTION_MODIFIER); break;
189
			case BAZ_ACTION_MODIFIER_V : $res .= baz_formulaire(BAZ_ACTION_MODIFIER_V).mes_fiches(); break;
190
			case BAZ_ACTION_SUPPRESSION : $res .= baz_suppression().mes_fiches(); break;
191
			case BAZ_ACTION_PUBLIER : publier_fiche(1) ;$res .= fiches_a_valider(); break;
192
			case BAZ_ACTION_PAS_PUBLIER : publier_fiche(0) ;$res .= fiches_a_valider(); break;
193
			case BAZ_GERER_DROITS : $res .= baz_formulaire(BAZ_GERER_DROITS); break;
194
			case BAZ_S_INSCRIRE : $res .= baz_s_inscrire(); break;
195
			case BAZ_VOIR_FLUX_RSS : header('Content-type: text/xml; charset=ISO-8859-1');include("bazarRSS.php");exit(0);break;
196
			default : $res .= accueil() ;
197
		}
198
	}
199
	else {
200
		$res .= baz_liste('toutes','','');
201
	}
202
	$res.='</div>'."\n";
203
	return $res ;
204
}
205
 
206
 
207
/* +--Fin du code ----------------------------------------------------------------------------------------+
208
*
10 ddelon 209
* $Log: not supported by cvs2svn $
30 ddelon 210
* Revision 1.9  2005/10/12 13:35:07  florian
211
* amélioration de l'interface de bazar, de manière a simplifier les consultations, et à harmoniser par rapport aux Ressources
212
*
22 florian 213
* Revision 1.8  2005/09/30 13:00:05  ddelon
214
* Fiche bazar generique
215
*
11 ddelon 216
* Revision 1.7  2005/09/30 12:34:44  ddelon
217
* petite modification pour integration bazar dans papyrus
218
*
10 ddelon 219
* Revision 1.6  2005/09/30 12:22:54  florian
220
* Ajouts commentaires pour fiche, modifications graphiques, maj SQL
221
*
7 florian 222
* Revision 1.4  2005/07/21 19:03:12  florian
223
* nouveautés bazar: templates fiches, correction de bugs, ...
224
*
5 florian 225
* Revision 1.2  2005/02/22 15:33:32  florian
226
* integration dans Papyrus
227
*
228
* Revision 1.1.1.1  2005/02/17 18:05:11  florian
229
* Import initial de Bazar
230
*
231
* Revision 1.1.1.1  2005/02/17 11:09:50  florian
232
* Import initial
233
*
234
* Revision 1.1.1.1  2005/02/16 18:06:35  florian
235
* import de la nouvelle version
236
*
237
* Revision 1.3  2004/07/05 15:10:14  florian
238
* changement interface de saisie
239
*
240
* Revision 1.2  2004/07/01 10:13:41  florian
241
* modif Florian
242
*
243
* Revision 1.1  2004/06/23 09:58:32  alex
244
* version initiale
245
*
246
* Revision 1.1  2004/06/18 09:00:07  alex
247
* version initiale
248
*
249
*
250
* +-- Fin du code ----------------------------------------------------------------------------------------+
251
*/
252
?>