Subversion Repositories Sites.obs-saisons.fr

Rev

Rev 70 | Go to most recent revision | Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
61 aurelien 1
<?php
2
// declare(encoding='UTF-8');
3
 
4
/**
5
 * Classe de gestion des liens.
6
 *
7
 * @package     ODS_saisie
8
 * @category    Php 5.2
9
 * @author      Aurélien Peronnet <aurelien@tela-botanica.org>
10
 * @copyright   2010 Tela-Botanica
11
 * @license     http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt Licence CECILL
12
 * @license     http://www.gnu.org/licenses/gpl.html Licence GNU-GPL
13
 * @version     SVN: $Id: Fiche.php 152 2010-09-06 16:19:12Z jpm $
14
 */
15
class Liens extends aControleur {
16
 
17
	private static $inclusion_scripts = null;
18
	private static $inclusion_styles  = null ;
19
 
20
	private static $self;
21
 
22
	public function __construct()  {
23
 
24
		parent::__construct();
25
 
26
		self::$inclusion_scripts = array();
27
		self::$inclusion_styles = array();
28
 
29
    }
30
 
31
    public static function instance() {
32
 
33
    	if (empty(self::$self)) {
34
    		self::$self = new Liens();
35
    	}
36
 
37
    	return self::$self;
38
    }
39
 
40
	public function construireUrl($tableau_params, $conserver_parametres_actuels = false) {
41
 
42
		if ($conserver_parametres_actuels) {
43
			return '?'.http_build_query($tableau_params + $_GET);
44
		}
45
		return '?'.http_build_query($tableau_params);
46
	}
47
 
48
	public function getUrlSquelette() {
49
 
50
    	$url_base = self::instance()->getUrlBaseComplete();
51
    	$url_base_squelette = $url_base.Config::get('dossier_squelettes').DS;
52
 
53
    	return $url_base_squelette;
54
    }
55
 
56
    public function getUrlStyle() {
57
    	$url_base_style = self::instance()->getUrlSquelette().'css'.DS;
58
 
59
    	return $url_base_style;
60
    }
61
 
62
    public function getUrlScript() {
63
    	$url_base_script = self::instance()->getUrlSquelette().'js'.DS;
64
 
65
    	return $url_base_script;
66
    }
67
 
68
    public function getUrlImage() {
69
    	$url_base_image = self::instance()->getUrlSquelette().'images'.DS;
70
 
71
    	return $url_base_image;
72
    }
73
 
74
	public function getUrlBaseReecrite() {
75
 
76
		if(isset($_SERVER['REDIRECT_URL']) && $_SERVER['REDIRECT_URL'] != '') {
77
 
78
		}
79
 
80
		$base_url_reecrite = 'http://'.$_SERVER['SERVER_NAME'].$_SERVER['REDIRECT_URL'];
81
		$base_url_reecrite .= '/';
82
 
83
		return $base_vrai_chemin;
84
	}
85
 
86
	public function getUrlBase() {
87
 
88
		$base_vrai_chemin = str_replace(realpath($_SERVER['DOCUMENT_ROOT']),'',realpath(Application::getChemin()));
89
		$base_vrai_chemin .= '/';
90
 
91
		return $base_vrai_chemin;
92
	}
93
 
94
	public function getUrlBaseComplete() {
95
		return 'http://'.$_SERVER['SERVER_NAME'].str_replace(realpath($_SERVER['DOCUMENT_ROOT']),'',realpath(Application::getChemin())).'/';
96
	}
97
 
98
    public function getUrlConsultationFicheStation($id_station) {
99
 
100
    	$params = array(
101
    		'module' => 'Station',
102
    		'action' => 'afficherInformationsStation',
103
    		'id_station' => $id_station
104
    	);
105
    	return self::instance()->construireUrl($params);
106
    }
107
 
108
    public function getUrlFormulaireSaisieStation() {
109
 
110
    	$params = array(
111
    		'module' => 'Station',
112
    		'action' => 'afficherFormulaireSaisieStation',
113
    		'id_station' => 'saisie'
114
    	);
115
    	return self::instance()->construireUrl($params);
116
    }
117
 
118
    public function getUrlValidationFormulaireSaisieStation() {
119
    	$params = array(
120
    		'module' => 'Station',
121
    		'action' => 'validerFormulaireSaisieStation'
122
    	);
123
    	return self::instance()->construireUrl($params);
124
    }
125
 
126
    public function getUrlFormulaireModificationStation($id_station) {
127
    	$params = array(
128
    		'module' => 'Station',
129
    		'action' => 'afficherFormulaireModificationStation',
130
    		'id_station' => $id_station
131
    	);
132
    	return self::instance()->construireUrl($params);
133
    }
134
 
135
	public function getUrlFormulaireAjoutEspece($id_station) {
136
 
137
		$params = array(
138
    		'module' => 'Espece',
139
    		'action' => 'afficherFormulaireSaisieEspece',
140
    		'id_station' => $id_station,
141
    		'id_espece' => 'saisie'
142
    	);
143
 
144
    	return self::instance()->construireUrl($params);
145
	}
146
 
147
	public function getUrlValidationFormulaireSaisieEspece($id_station) {
148
 
149
		$params = array(
150
    		'module' => 'Espece',
151
    		'action' => 'validerFormulaireSaisieEspece',
152
    		'id_station' => $id_station,
153
    		'id_espece' => 'saisie'
154
    	);
155
 
156
    	return self::instance()->construireUrl($params);
157
	}
158
 
159
    public function getUrlConsultationFicheIndividu($id_station, $id_espece, $id_individu) {
160
 
161
    	$params = array(
162
    		'module' => 'Individu',
163
    		'action' => 'afficherInformationsIndividu',
164
    		'id_station' => $id_station,
165
    		'id_espece' => $id_espece,
166
    		'id_individu' => $id_individu
167
    	);
168
    	return self::instance()->construireUrl($params);
169
 
170
    }
171
 
172
	public function getUrlFormulaireSaisieIndividu($id_station, $id_espece) {
173
 
174
		$params = array(
175
    		'module' => 'Individu',
176
    		'action' => 'afficherFormulaireSaisieIndividu',
177
    		'id_station' => $id_station,
178
    		'id_espece' => $id_espece
179
    	);
180
    	return self::instance()->construireUrl($params);
181
    }
182
 
183
	public function getUrlValidationFormulaireSaisieIndividu($id_station, $id_espece) {
184
 
185
		$params = array(
186
    		'module' => 'Individu',
187
    		'action' => 'validerFormulaireSaisieIndividu',
188
    		'id_station' => $id_station,
189
    		'id_espece' => $id_espece
190
    	);
191
    	return self::instance()->construireUrl($params);
192
    }
193
 
194
    public function getUrlConsultationEspeceStation($id_station, $id_espece, $annee = null) {
195
 
196
        if($annee == null) {
197
    		$annee = date('Y');
198
    	}
199
 
200
    	$params = array(
201
    		'module' => 'Individu',
202
    		'action' => 'afficherListeIndividu',
203
    		'id_station' => $id_station,
204
    		'id_espece' => $id_espece,
205
    		'annee' => $annee
206
    	);
207
 
208
    	return self::instance()->construireUrl($params);
209
    }
210
 
211
    public function getUrlFormulaireModificationObservation($id_station,$id_espece, $id_individu, $annee = null) {
212
 
213
        if($annee == null) {
214
    		$annee = date('Y');
215
    	}
216
 
217
    	$params = array(
218
    		'module' => 'Observation',
219
    		'action' => 'afficherFormulaireModificationObservation',
220
    		'id_station' => $id_station,
221
    		'id_espece' => $id_espece,
222
    		'id_individu' => $id_individu,
223
    		'annee' => $annee
224
    	);
225
 
226
    	return self::instance()->construireUrl($params);
227
    }
228
 
229
	public function getUrlValidationFormulaireModificationObservation($id_station,$id_espece, $id_individu, $annee = null) {
230
 
231
		if($annee == null) {
232
    		$annee = date('Y');
233
    	}
234
 
235
    	$params = array(
236
    		'module' => 'Observation',
237
    		'action' => 'validerFormulaireModificationObservation',
238
    		'id_station' => $id_station,
239
    		'id_espece' => $id_espece,
240
    		'id_individu' => $id_individu,
241
    		'annee' => $annee
242
    	);
243
 
244
		return self::instance()->construireUrl($params);
245
    }
246
 
247
    public function renvoyerStylesInclus() {
248
 
249
    	$styles = '';
250
    	$styles .= '<link href="'.Liens::instance()->getUrlStyle().'saisie.css" rel="stylesheet" type="text/css"/>';
251
		$styles .= '<link href="'.Liens::instance()->getUrlStyle().'jquery_ui/jquery-ui-1.8.6.custom.css" rel="stylesheet" type="text/css"/>';
252
		$styles .= '<link href="'.Liens::instance()->getUrlStyle().'jquery_ui/jquery.ui.datepicker.css" rel="stylesheet" type="text/css"/>';
253
 
254
    	return $styles;
255
 
256
    }
257
 
258
	public function renvoyerScriptsInclus() {
259
 
260
    	$scripts = '';
261
    	$scripts .= '<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false"></script>';
262
    	$scripts .= '<script type="text/javascript" src="'.Liens::instance()->getUrlScript().'jquery-1.4.4.min.js"></script>';
263
    	$scripts .= '<script type="text/javascript" src="'.Liens::instance()->getUrlScript().'jquery_ui/jquery-ui-1.8.6.custom.min.js"></script>';
264
		$scripts .= '<script type="text/javascript" src="'.Liens::instance()->getUrlScript().'saisie.min.js"></script>';
265
    	$scripts .= '<script type="text/javascript" src="'.Liens::instance()->getUrlScript().'jquery_ui/jquery.ui.datepicker.js"></script>';
266
    	$scripts .= '<script type="text/javascript" src="'.Liens::instance()->getUrlScript().'jquery_ui/jquery.ui.datepicker-fr.js"></script>';
267
 
268
    	return $scripts;
269
 
270
    }
271
 
272
 
273
}