diff --git a/htdocs/adherents/index.php b/htdocs/adherents/index.php
index a48e86c87a1..5995dadbe80 100644
--- a/htdocs/adherents/index.php
+++ b/htdocs/adherents/index.php
@@ -137,15 +137,49 @@ print '';
print "";
-print '
';
-
-
-$var=true;
+print '';
+print '| '.$langs->trans("Statistics").' | ';
+print '| ';
$SommeA=0;
$SommeB=0;
$SommeC=0;
$SommeD=0;
+$dataval=array();
+$datalabels=array();
+foreach ($AdherentType as $key => $adhtype)
+{
+ $datalabels[]=$adhtype->getNomUrl(0,dol_size(16));
+ $dataval['draft'][]=isset($MemberToValidate[$key])?$MemberToValidate[$key]:0;
+ $dataval['notuptodate'][]=isset($MembersValidated[$key])?$MembersValidated[$key]-$MemberUpToDate[$key]:0;
+ $dataval['uptodate'][]=isset($MemberUpToDate[$key])?$MemberUpToDate[$key]:0;
+ $dataval['resiliated'][]=isset($MembersResiliated[$key])?$MembersResiliated[$key]:0;
+ $SommeA+=isset($MemberToValidate[$key])?$MemberToValidate[$key]:0;
+ $SommeB+=isset($MembersValidated[$key])?$MembersValidated[$key]-$MemberUpToDate[$key]:0;
+ $SommeC+=isset($MemberUpToDate[$key])?$MemberUpToDate[$key]:0;
+ $SommeD+=isset($MembersResiliated[$key])?$MembersResiliated[$key]:0;
+}
+/*
+$dataseries[]=array('label'=>$langs->trans("MembersStatusToValid"),'values'=> $dataval['draft']);
+$dataseries[]=array('label'=>$langs->trans("MenuMembersNotUpToDate"),'values'=> $dataval['notuptodate']);
+$dataseries[]=array('label'=>$langs->trans("MenuMembersUpToDate"),'values'=> $dataval['uptodate']);
+$dataseries[]=array('label'=>$langs->trans("MembersStatusResiliated"),'values'=> $dataval['resiliated']);
+$data=array('series'=>$dataseries,'xlabel'=>$datalabels);
+dol_print_graph('stats',300,180,$data,1,'bar');
+*/
+$dataseries[]=array('label'=>$langs->trans("MenuMembersNotUpToDate"),'values'=>array(round($SommeB)));
+$dataseries[]=array('label'=>$langs->trans("MenuMembersUpToDate"),'values'=>array(round($SommeC)));
+$dataseries[]=array('label'=>$langs->trans("MembersStatusResiliated"),'values'=>array(round($SommeD)));
+$dataseries[]=array('label'=>$langs->trans("MembersStatusToValid"),'values'=>array(round($SommeA)));
+$data=array('series'=>$dataseries);
+dol_print_graph('stats',300,180,$data,1,'pie');
+print ' | ';
+print ' ';
+
+print ' | ';
+
+
+$var=true;
// Summary of members by type
print '';
@@ -167,10 +201,6 @@ foreach ($AdherentType as $key => $adhtype)
print '| '.(isset($MemberUpToDate[$key]) && $MemberUpToDate[$key] > 0 ? $MemberUpToDate[$key]:'').' '.$staticmember->LibStatut(1,$adhtype->cotisation,gmmktime(),3).' | ';
print ''.(isset($MembersResiliated[$key]) && $MembersResiliated[$key]> 0 ?$MembersResiliated[$key]:'').' '.$staticmember->LibStatut(0,$adhtype->cotisation,0,3).' | ';
print "\n";
- $SommeA+=isset($MemberToValidate[$key])?$MemberToValidate[$key]:0;
- $SommeB+=isset($MembersValidated[$key])?$MembersValidated[$key]-$MemberUpToDate[$key]:0;
- $SommeC+=isset($MemberUpToDate[$key])?$MemberUpToDate[$key]:0;
- $SommeD+=isset($MembersResiliated[$key])?$MembersResiliated[$key]:0;
}
print '';
print '| '.$langs->trans("Total").' | ';
diff --git a/htdocs/lib/functions.lib.php b/htdocs/lib/functions.lib.php
index f76afe9565d..1fc727c02f4 100644
--- a/htdocs/lib/functions.lib.php
+++ b/htdocs/lib/functions.lib.php
@@ -1234,7 +1234,8 @@ function dolibarr_trunc($string,$size=40,$trunc='right',$stringencoding='')
* @param width Width in pixel
* @param height Height in pixel
* @param data Data array
- * @param type Type of graph
+ * @param showlegend Show legend
+ * @param type Type of graph (pie, bar, line)
*/
function dol_print_graph($htmlid,$width,$height,$data,$showlegend=0,$type='pie')
{
@@ -1264,21 +1265,25 @@ function dol_print_graph($htmlid,$width,$height,$data,$showlegend=0,$type='pie')
{
if ($type == 'pie')
{
- print '';
}
+ else if ($type == 'bar')
+ {
+ // data is array('series'=>array(0=>serie1,1=>serie2,...),'xlabel'=>array(0=>label1,1=>label2,...));
+ // serie is array('label'=>'label', values=>array(0=>val1,1=>val2,...))
+ print '
+ ';
+ }
+ else print 'BadValueForPArameterType';
}
}
diff --git a/htdocs/societe/index.php b/htdocs/societe/index.php
index bc29ec5294a..fb17552386f 100644
--- a/htdocs/societe/index.php
+++ b/htdocs/societe/index.php
@@ -103,10 +103,11 @@ print ' | '.$langs->trans("Statistics").'
if ($conf->use_javascript_ajax && ((round($third['prospect'])?1:0)+(round($third['customer'])?1:0)+(round($third['supplier'])?1:0) >= 2))
{
print ' | | ';
- $data=array();
- if ($conf->societe->enabled && empty($conf->global->SOCIETE_DISABLE_PROSPECTS)) $data[]=array('label'=>$langs->trans("Prospects"),'values'=>array(round($third['prospect'])));
- if ($conf->societe->enabled && empty($conf->global->SOCIETE_DISABLE_CUSTOMERS)) $data[]=array('label'=>$langs->trans("Customers"),'values'=>array(round($third['customer'])));
- if ($conf->fournisseur->enabled) $data[]=array('label'=>$langs->trans("Suppliers"),'values'=>array(round($third['supplier'])));
+ $dataseries=array();
+ if ($conf->societe->enabled && empty($conf->global->SOCIETE_DISABLE_PROSPECTS)) $dataseries[]=array('label'=>$langs->trans("Prospects"),'values'=>array(round($third['prospect'])));
+ if ($conf->societe->enabled && empty($conf->global->SOCIETE_DISABLE_CUSTOMERS)) $dataseries[]=array('label'=>$langs->trans("Customers"),'values'=>array(round($third['customer'])));
+ if ($conf->fournisseur->enabled) $dataseries[]=array('label'=>$langs->trans("Suppliers"),'values'=>array(round($third['supplier'])));
+ $data=array('series'=>$dataseries);
dol_print_graph('stats',300,180,$data,0,'pie');
print ' | ';
}
|