Subversion Repositories Applications.annuaire

Compare Revisions

No changes between revisions

Regard whitespace Rev 441 → Rev 442

/trunk/composants/statistiques/Statistiques.php
15,25 → 15,25
 
const GRAPH_CAMEMBERT = 'pie';
const GRAPH_COURBE = 'courbe';
private $chemin_lib_graph = '';
 
public function __construct() {
$this->chemin_lib_graph = Config::get('chemin_jpgraph');
}
 
public function genererGraphique($type_graphique, $valeurs, $titre = '', $taille = array(800, 800), $nom_axe_x = '', $nom_axe_y = '') {
include_once $this->chemin_lib_graph.'jpgraph.php';
 
// Inclusion de la librairie JpGraph
include_once("lib/jpgraph.php");
$graph = null;
 
switch($type_graphique) {
case Statistiques::GRAPH_CAMEMBERT:
$graph = $this->genererGraphiqueCamembert($valeurs, $titre, $taille);
break;
 
case Statistiques::GRAPH_COURBE:
$graph = $this->genererGraphiqueCourbe($valeurs, $titre, $taille, $nom_axe_x, $nom_axe_y);
break;
 
default:
$graph = $this->genererGraphiqueCourbe($valeurs);
break;
}
 
return $graph;
40,36 → 40,28
}
 
public function genererGraphiqueCamembert($valeurs, $titre, $taille) {
 
include_once("lib/jpgraph_pie.php");
$graph = new PieGraph($taille[0],$taille[1]);
include_once $this->chemin_lib_graph.'jpgraph_pie.php';
$legendes = array_keys($valeurs);
$valeurs = array_values($valeurs);
 
//die('<pre>'.print_r($valeurs, true).'</pre>');
$oPie = new PiePlot($valeurs);
$oPie->SetLegends($legendes);
 
// Ajouter le titre du graphique
$graph->title->Set($titre);
 
// position du graphique (légèrement à droite)
$oPie->SetCenter(0.35);
 
$oPie->SetValueType(PIE_VALUE_PER);
 
// Format des valeurs de type "entier"
$oPie->value->SetFormat('%1.2f%%');
 
$graph = new PieGraph($taille[0],$taille[1]);
// Ajouter le titre du graphique
$graph->title->Set($titre);
$graph->Add($oPie);
return $graph;
}
 
public function genererGraphiqueCourbe($valeurs, $titre, $taille, $nom_axe_x, $nom_axe_y) {
include_once $this->chemin_lib_graph.'jpgraph_line.php';
 
include_once("lib/jpgraph_line.php");
 
// Création du conteneur
$graph = new Graph($taille[0],$taille[1],"auto");
 
130,8 → 122,8
}
 
public function combinerGraphiques($graph1, $graph2, $taille) {
include_once $this->chemin_lib_graph.'jpgraph_mgraph.php';
 
include_once('lib/jpgraph_mgraph.php');
$mgraph = new MGraph($taille[0],$taille[1],"auto");
$xpos1=300;$ypos1=3;
$xpos2=3;$ypos2=200;
150,6 → 142,5
public function dessinerGraph($graph) {
return $graph->Stroke(_IMG_HANDLER);
}
 
}
?>
?>
/trunk/jrest/services/StatistiquesAnnuaire.php
15,7 → 15,6
class StatistiquesAnnuaire extends JRestService {
 
public function getElement($uid){
 
if (!isset($uid[0])) {
$id_annuaire = $uid[0];
} else {
/trunk/configurations/config.defaut.ini
147,4 → 147,9
url_services_applications_inscription = ""
url_services_applications_resume = ""
; url des application qui possèdent une fonction de gestion de l'appli
url_services_applications_gestion = "";
url_services_applications_gestion = "";
 
; +-----------------------------------------------------------------------------------------------------+
; Chemins
; Chemin vers la bibliothèque jpgraph
chemin_jpgraph = "/home/telabotap/www/commun/jpgraph/2.1.4/"
/trunk/squelettes/css/annuaire_complexe.css
480,10 → 480,6
margin-top: -5px;
}
 
.resultat_recherche .profil_avatar {
margin-right: 0px;
}
 
.resultat_recherche .element_resultat {
height: 85px;
margin: 10px !important;
492,7 → 488,8
}
 
.resultat_recherche .profil_avatar {
width: 110px;
width: 80px;
margin-right: 0;
}
 
.resultat_recherche .selection_destinataire {
/trunk/controleurs/StatistiqueControleur.php
18,19 → 18,19
private $champ_pays = '12';
private $champ_rapport_activite_bota = '102';
private $champ_experience_bota = '4';
private $tab_mois = array('Jan','Fev','Mar','Avr','Mai','Juin','Juil','Aout','Sep','Oct','Nov','Dec');
 
public function StatistiqueControleur() {
$this->__construct();
$this->statistiques = Composant::fabrique('statistiques', array());
}
public function obtenirStatistiquesInscritsParContinents($id_annuaire) {
$cartographe = new CartoControleur();
$annuaire_controleur = new AnnuaireControleur();
$continents = array('Afrique (%1.2f%%)' => 'pays_afrique',
$continents = array(
'Afrique (%1.2f%%)' => 'pays_afrique',
'Amerique du nord (%1.2f%%)' => 'pays_nord_amerique',
'Asie (%1.2f%%)' => 'pays_asie',
'Europe (%1.2f%%)' => 'pays_europe',
51,7 → 51,6
}
public function obtenirStatistiquesInscritsEurope($id_annuaire) {
$cartographe = new CartoControleur();
$annuaire_controleur = new AnnuaireControleur();
$cartographe = new CartoControleur();
71,7 → 70,6
$somme_autres_pays = 0;
foreach($nb_inscrits_par_code as $code_pays => $inscrits_pays) {
$label_pays = $this->convertirPourLegende($ids_zones_europe[$code_pays][2].' (%1.2f%%)');
$nb_inscrits_par_legende[$label_pays] = $inscrits_pays;
$somme_autres_pays += $inscrits_pays;
80,14 → 78,13
$tableau_france_autres = array('France (%1.2f%%)' => $inscrits_france, 'Autres (%1.2f%%)' => $somme_autres_pays);
$graph_france = $this->statistiques->genererGraphique(Statistiques::GRAPH_CAMEMBERT,$tableau_france_autres,'', array(320, 200));
$graph_autres = $this->statistiques->genererGraphique(Statistiques::GRAPH_CAMEMBERT,$nb_inscrits_par_legende,'', array(900, 700));
$graph = $this->statistiques->combinerGraphiques($graph_france, $graph_autres, array(920, 1200));
$graph_autres = $this->statistiques->genererGraphique(Statistiques::GRAPH_CAMEMBERT, $nb_inscrits_par_legende, '', array(930, 900));
$graph = $this->statistiques->combinerGraphiques($graph_france, $graph_autres, array(940, 1110));
return $this->dessinerGraph($graph);
}
 
public function obtenirStatistiquesParPays($id_annuaire) {
 
$controleur = new AnnuaireControleur();
//$controleur = new AnnuaireControleur();
116,11 → 113,9
 
$graph = $this->statistiques->genererGraphique(Statistiques::GRAPH_CAMEMBERT,$valeurs_a_stat_legende);
return $this->dessinerGraph($graph);
 
}
 
public function obtenirStatistiquesParCritere($id_annuaire, $code_champ, $titre = '') {
 
$modele_meta = new MetadonneeModele();
$modele_onto = new OntologieModele();
$id_champ = $modele_meta->renvoyerIdChampMetadonneeParAbreviation($id_annuaire, $code_champ);
143,18 → 138,14
if(isset($valeurs_a_stat_code[$legende_code])) {
$valeurs_a_stat_legende[$legende_nom] = $valeurs_a_stat_code[$legende_code];
} else {
}
}
$graph = $this->statistiques->genererGraphique(Statistiques::GRAPH_CAMEMBERT,$valeurs_a_stat_legende, $titre, array(650, 400));
return $this->dessinerGraph($graph);
}
 
public function obtenirStatistiquesPourAnnee($id_annuaire, $annee = null) {
$annee = ($annee == null) ? date("Y") : $annee;
$annuaire_modele = new AnnuaireModele();
161,8 → 152,6
$valeurs_a_stat_code = array();
$valeurs_a_stat_legende = array();
$tab_mois = array("Jan","Fev","Mar","Avr","Mai","Juin","Juil","Aout","Sep","Oct","Nov","Dec");
$annee_debut = $annee;
$mois = 1;
$annee = $annee;
179,8 → 168,7
//Requete par mois
$i = 1;
while ($tps_courant <= $tps_fin) {
if (($mois)/12 > 1) {
if ($mois/12 > 1) {
$mois = 1;
$annee = $annee+1;
}
187,7 → 175,7
$tps_mois_suivant = mktime(0,0,0,$mois+1,1,$annee);
$nb_inscrits_dans_intervalle = $annuaire_modele->obtenirNombreInscriptionsDansIntervalleDate($id_annuaire, $tps_debut, $tps_courant);
$valeurs_a_stat_legende[$tab_mois[$mois-1].' '.$annee] = $nb_inscrits_dans_intervalle;
$valeurs_a_stat_legende[$this->tab_mois[$mois-1].' '.$annee] = $nb_inscrits_dans_intervalle;
$tps_courant = $tps_mois_suivant;
$mois++;
201,14 → 189,11
}
 
public function obtenirStatistiquesParAnnees($id_annuaire, $annee_fin = '') {
 
$annuaire_modele = new AnnuaireModele();
 
$valeurs_a_stat_code = array();
$valeurs_a_stat_legende = array();
$tab_mois = array("Jan","Fev","Mar","Avr","Mai","Juin","Juil","Aout","Sep","Oct","Nov","Dec");
$annee_debut = 2002;
$mois = 4;
$annee = 2002;
224,7 → 209,6
//Requete par mois
$i = 1;
while ($tps_courant <= $tps_fin) {
if (($mois)/12 > 1) {
$mois = 1;
$annee = $annee+1;
234,7 → 218,7
$nb_inscrits_dans_intervalle = $annuaire_modele->obtenirNombreInscriptionsDansIntervalleDate($id_annuaire, $tps_debut, $tps_courant);
$valeurs_a_stat_legende[$tab_mois[$mois-1].' '.$annee] = $nb_inscrits_dans_intervalle;
$valeurs_a_stat_legende[$this->tab_mois[$mois-1].' '.$annee] = $nb_inscrits_dans_intervalle;
$tps_courant = $tps_mois_suivant;
$mois++;
245,18 → 229,14
$graph = $this->statistiques->genererGraphique(Statistiques::GRAPH_COURBE,$valeurs_a_stat_legende, '', array(500,490), $nom_axeX, '');
return $this->dessinerGraph($graph);
 
}
public function obtenirStatistiquesModificationsProfil($id_annuaire, $annee_fin = '') {
 
$modele = new StatistiqueModele();
 
$valeurs_a_stat_code = array();
$valeurs_a_stat_legende = array();
$tab_mois = array("Jan","Fev","Mar","Avr","Mai","Juin","Juil","Aout","Sep","Oct","Nov","Dec");
$annee_debut = 2010;
$mois = 1;
$annee = 2010;
281,7 → 261,6
//Requete par mois
$i = 1;
while ($tps_courant <= $tps_fin) {
if (($mois)/12 > 1) {
$mois = 1;
$annee = $annee+1;
291,7 → 270,7
$nb_modif_dans_intervalle = $modele->obtenirEvenementsDansIntervalle($id_annuaire,'modification', $tps_debut, $tps_courant);
$valeurs_a_stat_legende[$tab_mois[$mois-1].' '.$annee] = $nb_modif_dans_intervalle;
$valeurs_a_stat_legende[$this->tab_mois[$mois-1].' '.$annee] = $nb_modif_dans_intervalle;
$tps_courant = $tps_mois_suivant;
$mois++;
302,11 → 281,9
$graph = $this->statistiques->genererGraphique(Statistiques::GRAPH_COURBE,$valeurs_a_stat_legende, '', array(500,490), $nom_axeX, '');
return $this->dessinerGraph($graph);
 
}
public function ajouterEvenementStatistique($id_annuaire, $id_utilisateur, $type) {
$this->chargerModele('StatistiqueModele');
$this->StatistiqueModele->ajouterEvenementStatistique($id_annuaire, $id_utilisateur, $type);
313,7 → 290,6
}
public function obtenirDerniersEvenementsStatistique($id_annuaire, $type) {
$this->chargerModele('StatistiqueModele');
return $this->StatistiqueModele->obtenirDerniersEvenementsStatistique($id_annuaire, $type);
324,7 → 300,6
}
private function convertirPourLegende($texte) {
 
if(trim($texte) == '') {
$texte = '' ;
}
/trunk
Property changes:
Added: svn:mergeinfo
Merged /branches/v1.2-autel:r438-441