diff --git a/htdocs/core/lib/product.lib.php b/htdocs/core/lib/product.lib.php
index 6deaf7eae08..7bdb6cd5756 100644
--- a/htdocs/core/lib/product.lib.php
+++ b/htdocs/core/lib/product.lib.php
@@ -101,7 +101,7 @@ function product_prepare_head($object)
$head[$h][2] = 'stats';
$h++;
- $head[$h][0] = DOL_URL_ROOT."/product/stats/facture.php?id=".$object->id;
+ $head[$h][0] = DOL_URL_ROOT."/product/stats/facture.php?showmessage=1&id=".$object->id;
$head[$h][1] = $langs->trans('Referers');
$head[$h][2] = 'referers';
$h++;
@@ -201,22 +201,25 @@ function product_admin_prepare_head()
*
* @param Product $product Product object
* @param int $socid Thirdparty id
- * @return integer
+ * @return integer NB of lines shown into array
*/
function show_stats_for_company($product,$socid)
{
global $conf,$langs,$user,$db;
+ $nblines = 0;
+
print '
';
print '| '.$langs->trans("Referers").' | ';
print ''.$langs->trans("NbOfThirdParties").' | ';
- print ''.$langs->trans("NbOfReferers").' | ';
+ print ''.$langs->trans("NbOfObjectReferers").' | ';
print ''.$langs->trans("TotalQuantity").' | ';
print '
';
// Propals
if (! empty($conf->propal->enabled) && $user->rights->propale->lire)
{
+ $nblines++;
$ret=$product->load_stats_propale($socid);
if ($ret < 0) dol_print_error($db);
$langs->load("propal");
@@ -234,6 +237,7 @@ function show_stats_for_company($product,$socid)
// Commandes clients
if (! empty($conf->commande->enabled) && $user->rights->commande->lire)
{
+ $nblines++;
$ret=$product->load_stats_commande($socid);
if ($ret < 0) dol_print_error($db);
$langs->load("orders");
@@ -251,6 +255,7 @@ function show_stats_for_company($product,$socid)
// Commandes fournisseurs
if (! empty($conf->fournisseur->enabled) && $user->rights->fournisseur->commande->lire)
{
+ $nblines++;
$ret=$product->load_stats_commande_fournisseur($socid);
if ($ret < 0) dol_print_error($db);
$langs->load("orders");
@@ -268,6 +273,7 @@ function show_stats_for_company($product,$socid)
// Contrats
if (! empty($conf->contrat->enabled) && $user->rights->contrat->lire)
{
+ $nblines++;
$ret=$product->load_stats_contrat($socid);
if ($ret < 0) dol_print_error($db);
$langs->load("contracts");
@@ -285,6 +291,7 @@ function show_stats_for_company($product,$socid)
// Factures clients
if (! empty($conf->facture->enabled) && $user->rights->facture->lire)
{
+ $nblines++;
$ret=$product->load_stats_facture($socid);
if ($ret < 0) dol_print_error($db);
$langs->load("bills");
@@ -302,6 +309,7 @@ function show_stats_for_company($product,$socid)
// Factures fournisseurs
if (! empty($conf->fournisseur->enabled) && $user->rights->fournisseur->facture->lire)
{
+ $nblines++;
$ret=$product->load_stats_facture_fournisseur($socid);
if ($ret < 0) dol_print_error($db);
$langs->load("bills");
@@ -317,7 +325,7 @@ function show_stats_for_company($product,$socid)
print '';
}
- return 0;
+ return $nblines++;
}
diff --git a/htdocs/langs/en_US/main.lang b/htdocs/langs/en_US/main.lang
index eebec1e7f88..834611558a2 100644
--- a/htdocs/langs/en_US/main.lang
+++ b/htdocs/langs/en_US/main.lang
@@ -537,6 +537,7 @@ NbOfCustomers=Number of customers
NbOfLines=Number of lines
NbOfObjects=Number of objects
NbOfReferers=Number of referrers
+NbOfObjectReferers=Number of refering objects
Referers=Refering objects
TotalQuantity=Total quantity
DateFromTo=From %s to %s
diff --git a/htdocs/langs/en_US/products.lang b/htdocs/langs/en_US/products.lang
index b8a7d377904..ea480222aa7 100644
--- a/htdocs/langs/en_US/products.lang
+++ b/htdocs/langs/en_US/products.lang
@@ -313,3 +313,4 @@ DefaultPriceRealPriceMayDependOnCustomer=Default price, real price may depend on
WarningSelectOneDocument=Please select at least one document
DefaultUnitToShow=Unit
NbOfQtyInProposals=Qty in proposals
+ClinkOnALinkOfColumn=Click on a link of column %s to get a detailed view...
diff --git a/htdocs/product/stats/facture.php b/htdocs/product/stats/facture.php
index 590830702bb..57c426dc3a1 100644
--- a/htdocs/product/stats/facture.php
+++ b/htdocs/product/stats/facture.php
@@ -1,6 +1,6 @@
- * Copyright (C) 2004-2010 Laurent Destailleur
+ * Copyright (C) 2004-2016 Laurent Destailleur
* Copyright (C) 2005-2012 Regis Houssin
* Copyright (C) 2014 Juanjo Menent
* Copyright (C) 2014 Florian Henry
@@ -48,7 +48,7 @@ $result=restrictedArea($user,'produit|service',$fieldvalue,'product&product','',
// Initialize technical object to manage hooks of thirdparties. Note that conf->hooks_modules contains array array
$hookmanager->initHooks(array('productstatsinvoice'));
-$mesg = '';
+$showmessage=GETPOST('showmessage');
$sortfield = GETPOST("sortfield",'alpha');
$sortorder = GETPOST("sortorder",'alpha');
@@ -67,6 +67,8 @@ if (GETPOST("button_removefilter_x") || GETPOST("button_removefilter")) {
$search_year='';
}
+
+
/*
* View
*/
@@ -107,7 +109,7 @@ if ($id > 0 || ! empty($ref))
print '';
print '';
- show_stats_for_company($product,$socid);
+ $nboflines = show_stats_for_company($product,$socid);
print "
";
@@ -116,8 +118,11 @@ if ($id > 0 || ! empty($ref))
dol_fiche_end();
-
- if ($user->rights->facture->lire)
+ if ($showmessage && $nboflines > 1)
+ {
+ print $langs->trans("ClinkOnALinkOfColumn", $langs->transnoentitiesnoconv("Referers"));
+ }
+ elseif ($user->rights->facture->lire)
{
$sql = "SELECT DISTINCT s.nom as name, s.rowid as socid, s.code_client,";
$sql.= " f.facnumber, f.datef, f.paye, f.fk_statut as statut, f.rowid as facid,";