Subversion Repositories eFlore/Applications.cel

Rev

Rev 2181 | Rev 2317 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 2181 Rev 2182
Line 452... Line 452...
452
		);
452
		);
453
		$liste = array();
453
		$liste = array();
454
		if ($resultats != false) {
454
		if ($resultats != false) {
455
			foreach ($resultats as $resultat) {
455
			foreach ($resultats as $resultat) {
456
				// essayons de faire du JSON propre
456
				// essayons de faire du JSON propre
-
 
457
				if (isset($resultat['nombreImg'])) {
457
				$resultat['nombreImg'] = intval($resultat['nombreImg']);
458
					$resultat['nombreImg'] = intval($resultat['nombreImg']);
-
 
459
				}
-
 
460
				if (isset($resultat['nombreObs'])) {
458
				$resultat['nombreObs'] = intval($resultat['nombreObs']);
461
					$resultat['nombreObs'] = intval($resultat['nombreObs']);
-
 
462
				}
-
 
463
				if (isset($resultat['somme'])) {
459
				$resultat['somme'] = intval($resultat['somme']);
464
					$resultat['somme'] = intval($resultat['somme']);
-
 
465
				}
460
				$liste[] = $resultat; // pas de clefs afin de renvoyer une "liste" JSON, qui sera interprétée en conservant l'ordre
466
				$liste[] = $resultat; // pas de clefs afin de renvoyer une "liste" JSON, qui sera interprétée en conservant l'ordre
461
			}
467
			}
462
			$retour['resultats'] = $liste;
468
			$retour['resultats'] = $liste;
463
		}
469
		}
464
		return $retour;
470
		return $retour;
Line 466... Line 472...
466
 
472
 
467
	private function construireRequeteGrandsContributeurs($nombre = 10, $jours = 7, $critere = null) {
473
	private function construireRequeteGrandsContributeurs($nombre = 10, $jours = 7, $critere = null) {
468
		$req = "";
474
		$req = "";
469
		switch ($critere) {
475
		switch ($critere) {
470
			case "obs":
476
			case "obs":
471
				$req = "SELECT ce_utilisateur , prenom_utilisateur , nom_utilisateur , courriel_utilisateur , count(*) as nombre" .
477
				$req = "SELECT ce_utilisateur , prenom_utilisateur , nom_utilisateur , courriel_utilisateur , count(*) as nombreObs" .
472
					" FROM cel_obs" .
478
					" FROM cel_obs" .
473
					" WHERE transmission = 1" .
479
					" WHERE transmission = 1" .
474
					" AND TO_DAYS(NOW()) - TO_DAYS(date_transmission) <= $jours" .
480
					" AND TO_DAYS(NOW()) - TO_DAYS(date_transmission) <= $jours" .
475
					" GROUP BY ce_utilisateur ORDER BY nombre DESC LIMIT $nombre;";
481
					" GROUP BY ce_utilisateur ORDER BY nombreObs DESC LIMIT $nombre;";
476
				break;
482
				break;
477
			case "img":
483
			case "img":
478
				$req = "SELECT co.ce_utilisateur , co.prenom_utilisateur , co.nom_utilisateur , co.courriel_utilisateur , count(DISTINCT ci.id_image) as nombre" .
484
				$req = "SELECT co.ce_utilisateur , co.prenom_utilisateur , co.nom_utilisateur , co.courriel_utilisateur , count(DISTINCT ci.id_image) as nombreImg" .
479
					" FROM cel_images ci" .
485
					" FROM cel_images ci" .
480
					" RIGHT JOIN cel_obs_images coi ON coi.id_image = ci.id_image" .
486
					" RIGHT JOIN cel_obs_images coi ON coi.id_image = ci.id_image" .
481
					" LEFT JOIN cel_obs co ON coi.id_observation = co.id_observation" .
487
					" LEFT JOIN cel_obs co ON coi.id_observation = co.id_observation" .
482
					" WHERE co.transmission = 1" .
488
					" WHERE co.transmission = 1" .
483
					" AND TO_DAYS(NOW()) - TO_DAYS(co.date_transmission) <= $jours" .
489
					" AND TO_DAYS(NOW()) - TO_DAYS(co.date_transmission) <= $jours" .
484
					" GROUP BY co.ce_utilisateur ORDER BY nombre DESC LIMIT $nombre;";
490
					" GROUP BY co.ce_utilisateur ORDER BY nombreImg DESC LIMIT $nombre;";
485
				break;
491
				break;
486
			default:
492
			default:
487
				$req = "SELECT co.ce_utilisateur , co.prenom_utilisateur , co.nom_utilisateur , co.courriel_utilisateur ," .
493
				$req = "SELECT co.ce_utilisateur , co.prenom_utilisateur , co.nom_utilisateur , co.courriel_utilisateur ," .
488
						" count(DISTINCT ci.id_image) as nombreImg, count(DISTINCT co.id_observation) as nombreObs," .
494
						" count(DISTINCT ci.id_image) as nombreImg, count(DISTINCT co.id_observation) as nombreObs," .