Subversion Repositories eFlore/Applications.del

Rev

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

Rev 1683 Rev 1867
1
<?php
1
<?php
2
// declare(encoding='UTF-8');
2
// declare(encoding='UTF-8');
3
/**
3
/**
4
 * Script gérant les statistiques de DEL.
4
 * Script gérant les statistiques de DEL.
5
 *
5
 *
6
 * @category	php 5.4
6
 * @category   DEL
7
 * @package		DEL
7
 * @package    Scripts
8
 * @subpackage 	Scripts
8
 * @subpackage Stats
9
 * @author		Mathias CHOUET <mathias@tela-botanica.org>
9
 * @author     Mathias CHOUET <mathias@tela-botanica.org>
-
 
10
 * @author     Jean-Pascal MILCENT <jpm@tela-botanica.org>
10
 * @copyright	Copyright (c) 2014, Tela Botanica (accueil@tela-botanica.org)
11
 * @author     Aurelien PERONNET <aurelien@tela-botanica.org>
-
 
12
 * @license    GPL v3 <http://www.gnu.org/licenses/gpl.txt>
11
 * @license		CeCILL v2 http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt
13
 * @license    CECILL v2 <http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt>
12
 * @license		GNU-GPL http://www.gnu.org/licenses/gpl.html
14
 * @copyright  1999-2014 Tela Botanica <accueil@tela-botanica.org>
13
 */
15
 */
14
class Stats extends DelScript {
16
class Stats extends DelScript {
15
 
17
 
16
	public function executer() {
18
	public function executer() {
17
		$this->mettreAJourStats();
19
		$this->mettreAJourStats();
18
	}
20
	}
19
 
21
 
20
	/**
22
	/**
21
	 * Met à jour la table des statistiques en la vidant et en recalculant la moyenne pondérée,
23
	 * Met à jour la table des statistiques en la vidant et en recalculant la moyenne pondérée,
22
	 * le nombre de votes et le nombre de points pour chaque image - utilise "commun".
24
	 * le nombre de votes et le nombre de points pour chaque image - utilise "commun".
23
	 * Attention, c'est over-pas-optimisé, ça prend du temps !
25
	 * Attention, c'est over-pas-optimisé, ça prend du temps !
24
	 */
26
	 */
25
	private function mettreAJourStats() {
27
	private function mettreAJourStats() {
26
		$requete = "SELECT id_image FROM del_image ORDER BY id_image ASC";
28
		$requete = "SELECT id_image FROM del_image ORDER BY id_image ASC";
27
		$ids = $this->getBdd()->recupererTous($requete);
29
		$ids = $this->getBdd()->recupererTous($requete);
28
 
30
 
29
		$requete = "SELECT id_protocole FROM del_image_protocole ORDER BY id_protocole ASC";
31
		$requete = "SELECT id_protocole FROM del_image_protocole ORDER BY id_protocole ASC";
30
		$protos = $this->getBdd()->recupererTous($requete);
32
		$protos = $this->getBdd()->recupererTous($requete);
31
 
33
 
32
		foreach ($ids as $id) {
34
		foreach ($ids as $id) {
33
			echo "ID: " . $id['id_image'] . "\n";
35
			echo "ID: " . $id['id_image'] . "\n";
34
			foreach ($protos as $proto) {
36
			foreach ($protos as $proto) {
35
				TelaBotanica\Del\Commun\Stats::updateStats($this->getBdd(), $id['id_image'], $proto['id_protocole']);
37
				TelaBotanica\Del\Commun\Stats::updateStats($this->getBdd(), $id['id_image'], $proto['id_protocole']);
36
			}
38
			}
37
		}
39
		}
38
	}
40
	}
39
}
41
}