From cd1c9e7ffa1197fbdb091f83c4ef8b5270a7887c Mon Sep 17 00:00:00 2001 From: Laurent Destailleur <eldy@users.sourceforge.net> Date: Mon, 8 Jun 2009 19:11:19 +0000 Subject: [PATCH] Fix: Do not show a total of amount if currencies differs. --- htdocs/includes/boxes/box_comptes.php | 61 +++++++++++++++------------ 1 file changed, 33 insertions(+), 28 deletions(-) diff --git a/htdocs/includes/boxes/box_comptes.php b/htdocs/includes/boxes/box_comptes.php index 641fed6a2b2..7bcda12b60f 100644 --- a/htdocs/includes/boxes/box_comptes.php +++ b/htdocs/includes/boxes/box_comptes.php @@ -19,11 +19,11 @@ */ /** - \file htdocs/includes/boxes/box_comptes.php - \ingroup banque - \brief Module de g�n�ration de l'affichage de la box comptes - \version $Id$ -*/ + * \file htdocs/includes/boxes/box_comptes.php + * \ingroup banque + * \brief Module de generation de l'affichage de la box comptes + * \version $Id$ + */ include_once(DOL_DOCUMENT_ROOT."/includes/boxes/modules_boxes.php"); include_once(DOL_DOCUMENT_ROOT."/compta/bank/account.class.php"); @@ -34,7 +34,7 @@ class box_comptes extends ModeleBoxes { var $boxcode="currentaccounts"; var $boximg="object_bill"; var $boxlabel; - var $depends = array("banque"); // Box active si module banque actif + var $depends = array("banque"); // Box active if module banque active var $db; var $param; @@ -44,8 +44,8 @@ class box_comptes extends ModeleBoxes { /** - * \brief Constructeur de la classe - */ + * \brief Constructor for class + */ function box_comptes() { global $langs; @@ -55,24 +55,24 @@ class box_comptes extends ModeleBoxes { } /** - * \brief Charge les donn�es en m�moire pour affichage ult�rieur - * \param $max Nombre maximum d'enregistrements � charger - */ + * \brief Load data into info_box_contents array to show array later. + * \param $max Maximum number of records to load + */ function loadBox($max=5) { global $user, $langs, $db, $conf; $this->max=$max; - + $this->info_box_head = array('text' => $langs->trans("BoxTitleCurrentAccounts")); if ($user->rights->banque->lire) { - $sql = "SELECT rowid, ref, label, bank, number, courant, clos, rappro, url,"; - $sql.= " code_banque, code_guichet, cle_rib, bic, iban_prefix,"; - $sql.= " domiciliation, proprio, adresse_proprio,"; - $sql.= " account_number, currency_code,"; - $sql.= " min_allowed, min_desired, comment"; + $sql = "SELECT rowid, ref, label, bank, number, courant, clos, rappro, url,"; + $sql.= " code_banque, code_guichet, cle_rib, bic, iban_prefix,"; + $sql.= " domiciliation, proprio, adresse_proprio,"; + $sql.= " account_number, currency_code,"; + $sql.= " min_allowed, min_desired, comment"; $sql.= " FROM ".MAIN_DB_PREFIX."bank_account"; $sql.= " WHERE entity = ".$conf->entity; $sql.= " AND clos = 0"; @@ -89,20 +89,21 @@ class box_comptes extends ModeleBoxes { $i = 0; $solde_total = 0; + $listofcurrencies=array(); $account_static = new Account($db); while ($i < $num) { $objp = $db->fetch_object($result); - + $account_static->id = $objp->rowid; $solde=$account_static->solde(0); - + $solde_total += $solde; $this->info_box_contents[$i][0] = array('td' => 'align="left" width="16"', 'logo' => $this->boximg, 'url' => DOL_URL_ROOT."/compta/bank/account.php?account=".$objp->rowid); - + $this->info_box_contents[$i][1] = array('td' => 'align="left"', 'text' => $objp->label, 'url' => DOL_URL_ROOT."/compta/bank/account.php?account=".$objp->rowid); @@ -115,17 +116,21 @@ class box_comptes extends ModeleBoxes { 'text' => price($solde).' '.$langs->trans("Currency".$objp->currency_code) ); + $listofcurrencies[$objp->currency_code]=1; $i++; } - // Total - $this->info_box_contents[$i][0] = array('tr' => 'class="liste_total"', 'td' => 'align="right" colspan="3" class="liste_total"', - 'text' => $langs->trans('Total') - ); - $this->info_box_contents[$i][1] = array('td' => 'align="right" class="liste_total"', - 'text' => price($solde_total).' '.$langs->trans("Currency".$conf->monnaie) - ); - + // Total + if (sizeof($listofcurrencies) < 1) + { + $this->info_box_contents[$i][0] = array('tr' => 'class="liste_total"', 'td' => 'align="right" colspan="3" class="liste_total"', + 'text' => $langs->trans('Total') + ); + $totalamount=price($solde_total).' '.$langs->trans("Currency".$conf->monnaie); + $this->info_box_contents[$i][1] = array('td' => 'align="right" class="liste_total"', + 'text' => $totalamount + ); + } } else { dol_print_error($db); -- GitLab