From 247b14afac51b952f81c8eea66520f7a456e7564 Mon Sep 17 00:00:00 2001 From: squarou Date: Thu, 10 Apr 2014 22:13:59 +0200 Subject: [PATCH] Add region stats and tab Added ($mode == 'memberbystate') --- htdocs/adherents/stats/geo.php | 41 +++++++++++++++++++++++++++++----- 1 file changed, 36 insertions(+), 5 deletions(-) diff --git a/htdocs/adherents/stats/geo.php b/htdocs/adherents/stats/geo.php index 090e414c54860..65bf4f3f22b08 100644 --- a/htdocs/adherents/stats/geo.php +++ b/htdocs/adherents/stats/geo.php @@ -1,4 +1,4 @@ - * * This program is free software; you can redistribute it and/or modify @@ -60,6 +60,8 @@ if ($mode == 'memberbycountry') $title=$langs->trans("MembersStatisticsByCountries"); if ($mode == 'memberbystate') $title=$langs->trans("MembersStatisticsByState"); if ($mode == 'memberbytown') $title=$langs->trans("MembersStatisticsByTown"); +if ($mode == 'memberbyregion') $title=$langs->trans("MembersStatisticsByRegion"); + print_fiche_titre($title, $mesg); @@ -67,7 +69,7 @@ if ($mode) { - // Define sql + // Define sql if ($mode == 'memberbycountry') { $label=$langs->trans("Country"); @@ -81,14 +83,15 @@ $sql.=" GROUP BY c.libelle, c.code"; //print $sql; } - if ($mode == 'memberbystate') + + if ($mode == 'memberbystate') { $label=$langs->trans("Country"); $label2=$langs->trans("State"); $tab='statsstate'; $data = array(); - $sql.="SELECT COUNT(d.rowid) as nb, MAX(d.datevalid) as lastdate, p.code, p.libelle as label, c.nom as label2"; + $sql.="SELECT COUNT(d.rowid) as nb, MAX(d.datevalid) as lastdate, p.code, p.libelle as label, c.nom as label2"; // $sql.=" FROM ".MAIN_DB_PREFIX."adherent as d LEFT JOIN ".MAIN_DB_PREFIX."c_departements as c on d.state_id = c.rowid"; $sql.=" LEFT JOIN ".MAIN_DB_PREFIX."c_regions as r on c.fk_region = r.code_region"; $sql.=" LEFT JOIN ".MAIN_DB_PREFIX."c_pays as p on d.country = p.rowid"; @@ -97,6 +100,22 @@ $sql.=" GROUP BY p.libelle, p.code, c.nom"; //print $sql; } + if ($mode == 'memberbyregion') // + { + $label=$langs->trans("Country"); //pays + $label2=$langs->trans("Region"); //département + $tab='statsregion'; //onglet + + $data = array(); //tableau de donnée + $sql.="SELECT COUNT(d.rowid) as nb, MAX(d.datevalid) as lastdate, p.code, p.libelle as label, r.nom as label2"; + $sql.=" FROM ".MAIN_DB_PREFIX."adherent as d LEFT JOIN ".MAIN_DB_PREFIX."c_departements as c on d.state_id = c.rowid"; + $sql.=" LEFT JOIN ".MAIN_DB_PREFIX."c_regions as r on c.fk_region = r.code_region"; + $sql.=" LEFT JOIN ".MAIN_DB_PREFIX."c_pays as p on d.country = p.rowid"; + $sql.=" WHERE d.entity IN (".getEntity().")"; + $sql.=" AND d.statut = 1"; + $sql.=" GROUP BY p.libelle, p.code, r.nom"; //+ + //print $sql; + } if ($mode == 'memberbytown') { $label=$langs->trans("Country"); @@ -137,6 +156,15 @@ 'lastdate'=>$db->jdate($obj->lastdate) ); } + if ($mode == 'memberbyregion') //+ + { + $data[]=array('label'=>(($obj->code && $langs->trans("Country".$obj->code)!="Country".$obj->code)?$langs->trans("Country".$obj->code):($obj->label?$obj->label:$langs->trans("Unknown"))), + 'label_en'=>(($obj->code && $langsen->transnoentitiesnoconv("Country".$obj->code)!="Country".$obj->code)?$langsen->transnoentitiesnoconv("Country".$obj->code):($obj->label?$obj->label:$langs->trans("Unknown"))), + 'label2'=>($obj->label2?$obj->label2:$langs->trans("Unknown")), + 'nb'=>$obj->nb, + 'lastdate'=>$db->jdate($obj->lastdate) + ); + } if ($mode == 'memberbystate') { $data[]=array('label'=>(($obj->code && $langs->trans("Country".$obj->code)!="Country".$obj->code)?$langs->trans("Country".$obj->code):($obj->label?$obj->label:$langs->trans("Unknown"))), @@ -183,6 +211,7 @@ if ($mode == 'memberbycountry') print $langs->trans("MembersByCountryDesc").'
'; else if ($mode == 'memberbystate') print $langs->trans("MembersByStateDesc").'
'; else if ($mode == 'memberbytown') print $langs->trans("MembersByTownDesc").'
'; + else if ($mode == 'memberbyregion') print $langs->trans("MembersByRegion").'
';//+ else { print $langs->trans("MembersStatisticsDesc").'
'; @@ -192,6 +221,8 @@ print ''.$langs->trans("MembersStatisticsByState").'
'; print '
'; print ''.$langs->trans("MembersStatisticsByTown").'
'; + print '
';//+ + print ''.$langs->trans("MembersStatisticsByRegion").'
';//+ } print '
'; } @@ -249,7 +280,7 @@ if ($mode) { - // Print array + // Print array / Affiche le tableau print ''; print ''; print '';
'.$label.'