From 8cf06718044a4916f07ba635bbbdff524855072e Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sun, 18 Aug 2019 18:56:21 +0200 Subject: [PATCH 1/7] FIX Missing transaction --- htdocs/compta/bank/card.php | 31 +++++++++++++++++++++++-------- 1 file changed, 23 insertions(+), 8 deletions(-) diff --git a/htdocs/compta/bank/card.php b/htdocs/compta/bank/card.php index f6633f279d591..883018b259b8c 100644 --- a/htdocs/compta/bank/card.php +++ b/htdocs/compta/bank/card.php @@ -236,8 +236,13 @@ $error++; } - // Fill array 'array_options' with data from add form - $ret = $extrafields->setOptionalsFromPost($extralabels, $object); + $db->begin(); + + if (! $error) + { + // Fill array 'array_options' with data from add form + $ret = $extrafields->setOptionalsFromPost($extralabels, $object); + } if (! $error) { @@ -252,10 +257,20 @@ } else { + $error++; setEventMessages($object->error, $object->errors, 'errors'); $action='edit'; // Force chargement page edition } } + + if (! $error) + { + $db->commit(); + } + else + { + $db->rollback(); + } } if ($action == 'confirm_delete' && $_POST["confirm"] == "yes" && $user->rights->banque->configurer) @@ -412,7 +427,7 @@ $doleditor->Create(); print ''; - // Other attributes + // Other attributes $parameters=array(); $reshook=$hookmanager->executeHooks('formObjectOptions', $parameters, $object, $action); // Note that $action and $object may have been modified by hook print $hookmanager->resPrint; @@ -639,12 +654,12 @@ print ''.$langs->trans("AccountancyJournal").''; print ''; - if ($object->fk_accountancy_journal > 0) { - $accountingjournal = new AccountingJournal($db); - $accountingjournal->fetch($object->fk_accountancy_journal); + if ($object->fk_accountancy_journal > 0) { + $accountingjournal = new AccountingJournal($db); + $accountingjournal->fetch($object->fk_accountancy_journal); - print $accountingjournal->getNomUrl(0, 1, 1, '', 1); - } + print $accountingjournal->getNomUrl(0, 1, 1, '', 1); + } print ''; } From ad5f2dbe9d36de1e7610eeb856debd6955208f20 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sun, 18 Aug 2019 18:56:58 +0200 Subject: [PATCH 2/7] Fix update on id --- htdocs/compta/bank/class/account.class.php | 1 - 1 file changed, 1 deletion(-) diff --git a/htdocs/compta/bank/class/account.class.php b/htdocs/compta/bank/class/account.class.php index 89a05f3e21549..453e7dd5a80d4 100644 --- a/htdocs/compta/bank/class/account.class.php +++ b/htdocs/compta/bank/class/account.class.php @@ -749,7 +749,6 @@ public function update(User $user, $notrigger = 0) $sql.= ",fk_pays = ".$this->country_id; $sql.= " WHERE rowid = ".$this->id; - $sql.= " AND entity = ".$conf->entity; dol_syslog(get_class($this)."::update", LOG_DEBUG); $result = $this->db->query($sql); From d8d927547f4680dcd007f63236fea6788405fd65 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sun, 18 Aug 2019 19:09:53 +0200 Subject: [PATCH 3/7] Fix option ACCOUNTANCY_SHOW_EXPORT_FILES_MENU --- htdocs/core/menus/standard/eldy.lib.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/core/menus/standard/eldy.lib.php b/htdocs/core/menus/standard/eldy.lib.php index 4522d9067e03c..b1c3111034fb6 100644 --- a/htdocs/core/menus/standard/eldy.lib.php +++ b/htdocs/core/menus/standard/eldy.lib.php @@ -1330,7 +1330,7 @@ function print_left_eldy_menu($db, $menu_array_before, $menu_array_after, &$tabM if (! empty($conf->comptabilite->enabled)) { // Files - if (! empty($conf->global->MAIN_FEATURES_LEVEL) && $conf->global->MAIN_FEATURES_LEVEL >= 1) + if ((! empty($conf->global->MAIN_FEATURES_LEVEL) && $conf->global->MAIN_FEATURES_LEVEL >= 1) || ! empty($conf->global->ACCOUNTANCY_SHOW_EXPORT_FILES_MENU)) { $newmenu->add("/compta/accounting-files.php?mainmenu=accountancy&leftmenu=accountancy_files", $langs->trans("AccountantFiles"), 0, $user->rights->compta->resultat->lire, '', $mainmenu, 'files'); } From 477384105f0a1127bf183252709cc2ea62fb7f8d Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sun, 18 Aug 2019 19:25:36 +0200 Subject: [PATCH 4/7] FIX missing test on permission on button to delete ledger record --- htdocs/accountancy/bookkeeping/list.php | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/htdocs/accountancy/bookkeeping/list.php b/htdocs/accountancy/bookkeeping/list.php index 05561f4a9d5c5..e67b19991b0b9 100644 --- a/htdocs/accountancy/bookkeeping/list.php +++ b/htdocs/accountancy/bookkeeping/list.php @@ -855,10 +855,12 @@ print ''; // TODO Replace this with mass delete action -print '
' . "\n"; -print '' . $langs->trans("DeleteMvt") . ''; -print '
'; - +if ($user->rights->mouvements->creer) +{ + print '
' . "\n"; + print '' . $langs->trans("DeleteMvt") . ''; + print '
'; +} print ''; From bbc1dfb0f7588e452548df03c84735f8dc42a88d Mon Sep 17 00:00:00 2001 From: andreubisquerra Date: Sun, 18 Aug 2019 09:33:02 +0200 Subject: [PATCH 5/7] Cashcontrol TakePOS fixes --- htdocs/compta/cashcontrol/cashcontrol_card.php | 15 +++------------ htdocs/compta/cashcontrol/report.php | 16 ++++++++++++---- 2 files changed, 15 insertions(+), 16 deletions(-) diff --git a/htdocs/compta/cashcontrol/cashcontrol_card.php b/htdocs/compta/cashcontrol/cashcontrol_card.php index 378d6087cc71d..1fa95eb0b46ce 100644 --- a/htdocs/compta/cashcontrol/cashcontrol_card.php +++ b/htdocs/compta/cashcontrol/cashcontrol_card.php @@ -88,7 +88,7 @@ $backurlforlist = dol_buildpath('/compta/cashcontrol/cashcontrol_list.php', 1); $triggermodname = 'CACHCONTROL_MODIFY'; // Name of trigger action code to execute when we modify record -if (empty($conf->global->CASHDESK_ID_BANKACCOUNT_CASH)) +if (empty($conf->global->CASHDESK_ID_BANKACCOUNT_CASH) && empty($conf->global->CASHDESK_ID_BANKACCOUNT_CASH1)) { setEventMessages($langs->trans("CashDesk")." - ".$langs->trans("NotConfigured"), null, 'errors'); } @@ -132,16 +132,7 @@ $error=0; foreach($arrayofpaymentmode as $key=>$val) { - if (GETPOST($key.'_amount', 'alpha') == '') - { - setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv($val)), null, 'errors'); - $action='start'; - $error++; - } - else - { - $object->$key = price2num(GETPOST($key.'_amount', 'alpha')); - } + $object->$key = price2num(GETPOST($key.'_amount', 'alpha')); } if (! $error) @@ -235,7 +226,7 @@ $posmodule = GETPOST('posmodule', 'alpha'); $terminalid = GETPOST('posnumber', 'alpha'); $terminaltouse = $terminalid; - if ($terminaltouse == '1') $terminaltouse = ''; + if ($terminaltouse == '1' && $posmodule=='cashdesk') $terminaltouse = ''; // Calculate $initialbalanceforterminal for terminal 0 foreach($arrayofpaymentmode as $key => $val) diff --git a/htdocs/compta/cashcontrol/report.php b/htdocs/compta/cashcontrol/report.php index 6584af5db9848..ce0cdeed9fb33 100644 --- a/htdocs/compta/cashcontrol/report.php +++ b/htdocs/compta/cashcontrol/report.php @@ -196,10 +196,18 @@ // Bank account print ''; print $bankaccount->getNomUrl(1); - if ($conf->global->CASHDESK_ID_BANKACCOUNT_CASH==$bankaccount->id) $cash+=$objp->amount; - elseif ($conf->global->CASHDESK_ID_BANKACCOUNT_CB==$bankaccount->id) $bank+=$objp->amount; - elseif ($conf->global->CASHDESK_ID_BANKACCOUNT_CHEQUE==$bankaccount->id) $cheque+=$objp->amount; - else $other+=$objp->amount; + if ($cashcontrol->posmodule=="takepos"){ + if ($conf->global->{'CASHDESK_ID_BANKACCOUNT_CASH'.$cashcontrol->posnumber}==$bankaccount->id) $cash+=$objp->amount; + elseif ($conf->global->{'CASHDESK_ID_BANKACCOUNT_CB'.$cashcontrol->posnumber}==$bankaccount->id) $bank+=$objp->amount; + elseif ($conf->global->{'CASHDESK_ID_BANKACCOUNT_CHEQUE'.$cashcontrol->posnumber}==$bankaccount->id) $cheque+=$objp->amount; + else $other+=$objp->amount; + } + else{ + if ($conf->global->CASHDESK_ID_BANKACCOUNT_CASH==$bankaccount->id) $cash+=$objp->amount; + elseif ($conf->global->CASHDESK_ID_BANKACCOUNT_CB==$bankaccount->id) $bank+=$objp->amount; + elseif ($conf->global->CASHDESK_ID_BANKACCOUNT_CHEQUE==$bankaccount->id) $cheque+=$objp->amount; + else $other+=$objp->amount; + } print "\n"; if (! $i) $totalarray['nbfield']++; From 783e01588c1179eb65afd26ea4c1ff93b9ebcef9 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sun, 18 Aug 2019 20:47:40 +0200 Subject: [PATCH 6/7] FIX It was possible to create cashfence without entering data. --- htdocs/compta/cashcontrol/cashcontrol_card.php | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/htdocs/compta/cashcontrol/cashcontrol_card.php b/htdocs/compta/cashcontrol/cashcontrol_card.php index 1fa95eb0b46ce..4f67f02d7f5cf 100644 --- a/htdocs/compta/cashcontrol/cashcontrol_card.php +++ b/htdocs/compta/cashcontrol/cashcontrol_card.php @@ -132,7 +132,16 @@ $error=0; foreach($arrayofpaymentmode as $key=>$val) { - $object->$key = price2num(GETPOST($key.'_amount', 'alpha')); + if (GETPOST($key.'_amount', 'alpha') == '') + { + setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv($val)), null, 'errors'); + $action='start'; + $error++; + } + else + { + $object->$key = price2num(GETPOST($key.'_amount', 'alpha')); + } } if (! $error) From cef88283b3dc96f12bb6e74a99c1e69e32187225 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sun, 18 Aug 2019 20:52:18 +0200 Subject: [PATCH 7/7] Fix missing error message --- htdocs/langs/en_US/cashdesk.lang | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/htdocs/langs/en_US/cashdesk.lang b/htdocs/langs/en_US/cashdesk.lang index 8ba3bda053f5d..749c749293c8b 100644 --- a/htdocs/langs/en_US/cashdesk.lang +++ b/htdocs/langs/en_US/cashdesk.lang @@ -67,4 +67,5 @@ ValidateAndClose=Validate and close Terminal=Terminal NumberOfTerminals=Number of Terminals TerminalSelect=Select terminal you want to use: -POSTicket=POS Ticket \ No newline at end of file +POSTicket=POS Ticket +SetupOfTerminalNotComplete=Setup of terminal %s is not complete \ No newline at end of file