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 '
'.$label.' | ';