Subversion Repositories eFlore/Applications.del

Rev

Rev 1747 | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1747 Rev 1867
1
<?php
1
<?php
2
//declare(encoding='UTF-8');
2
//declare(encoding='UTF-8');
3
/**
3
/**
4
 * Exemple de lancement du script : :
4
 * Script récupèrant tous les commentaires et déterminations fait ce jour et envoie un mail
5
 * /opt/lampp/bin/php cli.php adeterminer -a alerteMail
5
 * aux auteurs des observations récapitulant celle-ci.
6
 *
6
 *
-
 
7
 * Utilisation : <code>/opt/lampp/bin/php cli.php adeterminer -a alerteMail</code>
-
 
8
 *
7
 * @category	php 5.4
9
 * @category   DEL
8
 * @package		DEL
10
 * @package    Scripts
9
 * @subpackage	Scripts
11
 * @subpackage ADeterminer
-
 
12
 * @author     Mathias CHOUET <mathias@tela-botanica.org>
10
 * @author		Jean-Pascal MILCENT <jpm@tela-botanica.org>
13
 * @author     Jean-Pascal MILCENT <jpm@tela-botanica.org>
11
 * @copyright	Copyright (c) 2012-2014, Tela Botanica (accueil@tela-botanica.org)
14
 * @author     Aurelien PERONNET <aurelien@tela-botanica.org>
-
 
15
 * @license    GPL v3 <http://www.gnu.org/licenses/gpl.txt>
12
 * @license		CeCILL v2 http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt
16
 * @license    CECILL v2 <http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt>
13
 * @license		GNU-GPL http://www.gnu.org/licenses/gpl.html
17
 * @copyright  1999-2014 Tela Botanica <accueil@tela-botanica.org>
14
 */
18
 */
15
class Adeterminer extends DelScript {
19
class Adeterminer extends DelScript {
16
 
20
 
17
	protected $parametres_autorises = array(
21
	protected $parametres_autorises = array(
18
		'-t' => array(false, true, 'Indiquez votre e-mail pour tester le script.'),
22
		'-t' => array(false, true, 'Indiquez votre e-mail pour tester le script.'),
19
		'-d' => array(false, true, "Indiquer une date au format yyyy-mm-dd pour renvoyer l'alerte de cette date."));
23
		'-d' => array(false, true, "Indiquer une date au format yyyy-mm-dd pour renvoyer l'alerte de cette date."));
20
 
24
 
21
	public function executer() {
25
	public function executer() {
22
		try {
26
		try {
23
			$this->initialiserProjet('adeterminer');
27
			$this->initialiserProjet('adeterminer');
24
 
28
 
25
			// Lancement de l'action demandée
29
			// Lancement de l'action demandée
26
			$cmd = $this->getParametre('a');
30
			$cmd = $this->getParametre('a');
27
			switch ($cmd) {
31
			switch ($cmd) {
28
				case 'alerteMail' :
32
				case 'alerteMail' :
29
					$script = $this->chargerClasse('AlerteMailADeterminer');
33
					$script = $this->chargerClasse('AlerteMailADeterminer');
30
					$script->executer();
34
					$script->executer();
31
					break;
35
					break;
32
				default :
36
				default :
33
					throw new Exception("Erreur : la commande '$cmd' n'existe pas!");
37
					throw new Exception("Erreur : la commande '$cmd' n'existe pas!");
34
			}
38
			}
35
		} catch (Exception $e) {
39
		} catch (Exception $e) {
36
			$this->traiterErreur($e->getMessage());
40
			$this->traiterErreur($e->getMessage());
37
		}
41
		}
38
	}
42
	}
39
 
43
 
40
	private function chargerClasse($classe) {
44
	private function chargerClasse($classe) {
41
		require_once $classe.'.php';
45
		require_once $classe.'.php';
42
		$conteneur = new Conteneur($this->parametres);
46
		$conteneur = new Conteneur($this->parametres);
43
		return new $classe($conteneur);
47
		return new $classe($conteneur);
44
	}
48
	}
45
}
-
 
46
?>
-
 
47
49
}
-
 
50
48
51