diff --git a/ChangeLog b/ChangeLog index 7113b325833670bc1af6a933897dfe101537164e..ff8a576300804ab83e1528831bb4f00d829f87cc 100644 --- a/ChangeLog +++ b/ChangeLog @@ -240,6 +240,11 @@ FIX [ bug #3288 ] Tasks box is not properly drawn FIX [ bug #3211 ] Outstading bill amount of a client showed wrong amounts FIX [ bug #3321 ] Users with certain permissions were shown a "forbidden access" page even if they had the rights FIX [ bug #3426 ] Unable to create an invoice from a contract with extrafields +FIX [ bug #3431 ] Invoice bank account is not respected +FIX [ bug #3432 ] Spaces should be removed from IBAN when formatting it +FIX [ bug #3358 ] Tasks box does not work with PostgreSQL +FIX [ bug #3383 ] Company name is overlapped with company direction in PDF models +FIX [ bug #3460 ] Bank account is not saved when creating a customer invoice and facing an error message NEW: Created new ContratLigne::insert function diff --git a/htdocs/accountancy/admin/account.php b/htdocs/accountancy/admin/account.php index bff9dbe426588f5bf219865f13069c36c99ab9d5..0bf37a7753e4851dda89767db2171754093151df 100644 --- a/htdocs/accountancy/admin/account.php +++ b/htdocs/accountancy/admin/account.php @@ -173,11 +173,12 @@ if ($result) { print '</td>'; print '</tr>'; - $var = true; + $var = false; $accountstatic=new AccountingAccount($db); - while ( $i < min($num, $limit) ) { + while ( $i < min($num, $limit) ) + { $obj = $db->fetch_object($resql); $accountstatic->id=$obj->rowid; diff --git a/htdocs/accountancy/admin/export.php b/htdocs/accountancy/admin/export.php index 3da29bd9cc134c8d29d839b9117d59f1fd53ccd2..856670e18e23b98fe9eba953dbc5b975e0c3f896 100644 --- a/htdocs/accountancy/admin/export.php +++ b/htdocs/accountancy/admin/export.php @@ -99,12 +99,13 @@ print_fiche_titre($langs->trans('ConfigAccountingExpert'),$linkback,'title_setup $head = admin_accounting_prepare_head(); -dol_fiche_head($head, 'export', $langs->trans("Configuration"), 0, 'cron'); print '<form action="' . $_SERVER["PHP_SELF"] . '" method="post">'; print '<input type="hidden" name="token" value="' . $_SESSION['newtoken'] . '">'; print '<input type="hidden" name="action" value="update">'; +dol_fiche_head($head, 'export', $langs->trans("Configuration"), 0, 'cron'); + print '<table class="noborder" width="100%">'; $var = true; @@ -169,7 +170,9 @@ if ($num) print "</table>\n"; } -print '<br><div style="text-align:center"><input type="submit" class="button" value="' . dol_escape_htmltag($langs->trans('Modify')) . '" name="button"></div>'; +dol_fiche_end(); + +print '<div class="center"><input type="submit" class="button" value="' . dol_escape_htmltag($langs->trans('Modify')) . '" name="button"></div>'; print '</form>'; diff --git a/htdocs/accountancy/admin/index.php b/htdocs/accountancy/admin/index.php index fc8994c4836b19231783083a4ea7282097a693c5..44b2268dc0607cd0d8958dcfd386800a031ca914 100644 --- a/htdocs/accountancy/admin/index.php +++ b/htdocs/accountancy/admin/index.php @@ -157,12 +157,13 @@ print_fiche_titre($langs->trans('ConfigAccountingExpert'),$linkback,'title_setup $head = admin_accounting_prepare_head($accounting); -dol_fiche_head($head, 'general', $langs->trans("Configuration"), 0, 'cron'); print '<form action="'.$_SERVER["PHP_SELF"].'" method="post">'; print '<input type="hidden" name="token" value="'.$_SESSION['newtoken'].'">'; print '<input type="hidden" name="action" value="update">'; +dol_fiche_head($head, 'general', $langs->trans("Configuration"), 0, 'cron'); + print '<table class="noborder" width="100%">'; // Cas du parametre ACCOUNTING_MODE @@ -291,7 +292,11 @@ print '</tr>'; print "</table>\n"; -print '<br /><br /><div style="text-align:center"><input type="submit" class="button" value="'.$langs->trans('Modify').'" name="button"></div>'; +dol_fiche_end(); + +print '<div class="center"><input type="submit" class="button" value="'.$langs->trans('Modify').'" name="button"></div>'; + print '</form>'; + llxFooter(); $db->close(); diff --git a/htdocs/accountancy/admin/journaux.php b/htdocs/accountancy/admin/journal.php similarity index 95% rename from htdocs/accountancy/admin/journaux.php rename to htdocs/accountancy/admin/journal.php index e2359ebd8ee1e866bc28b314c6c822ad01504d47..e1d4894788aedc929748825ed2dc5f12e803e3d7 100644 --- a/htdocs/accountancy/admin/journaux.php +++ b/htdocs/accountancy/admin/journal.php @@ -22,7 +22,7 @@ */ /** - * \file htdocs/accountancy/admin/journaux.php + * \file htdocs/accountancy/admin/journal.php * \ingroup Accounting Expert * \brief Setup page to configure accounting expert module */ @@ -87,12 +87,12 @@ print_fiche_titre($langs->trans('ConfigAccountingExpert'),$linkback,'title_setup $head = admin_accounting_prepare_head(null); -dol_fiche_head($head, 'journal', $langs->trans("Configuration"), 0, 'cron'); - print '<form action="' . $_SERVER["PHP_SELF"] . '" method="post">'; print '<input type="hidden" name="token" value="' . $_SESSION['newtoken'] . '">'; print '<input type="hidden" name="action" value="update">'; +dol_fiche_head($head, 'journal', $langs->trans("Configuration"), 0, 'cron'); + print '<table class="noborder" width="100%">'; print '<tr class="liste_titre">'; print '<td colspan="3">' . $langs->trans('Journaux') . '</td>'; @@ -115,10 +115,9 @@ foreach ( $list as $key ) { print "</table>\n"; -print '<br /><div style="text-align:center"><input type="submit" class="button" value="' . $langs->trans('Modify') . '" name="button"></div>'; -print '</form>'; -print '<br />'; +print '<br>'; + print '<table class="noborder" width="100%">'; print '<tr class="liste_titre">'; @@ -164,9 +163,12 @@ $db->free($resql); print "</table>\n"; -print '</div>'; +dol_fiche_end(); + +print '<div class="center"><input type="submit" class="button" value="' . $langs->trans('Modify') . '" name="button"></div>'; + +print '</form>'; -print '<br>'; llxFooter(); $db->close(); \ No newline at end of file diff --git a/htdocs/accountancy/admin/productaccount.php b/htdocs/accountancy/admin/productaccount.php index 315c9f553255800012786fec51e64cc32307f07c..9898064f6d5ec7ffb695f4690667cb88b01d396e 100644 --- a/htdocs/accountancy/admin/productaccount.php +++ b/htdocs/accountancy/admin/productaccount.php @@ -287,8 +287,9 @@ if ($result) { print '<th align="left">' . $langs->trans("Accountancy_code_sell_suggest") . '</td>'; } // print_liste_field_titre(''); - print '<td align="center">' . $langs->trans("Ventilate") . '<br><label id="select-all">' . $langs->trans('All') . '</label>/<label id="unselect-all">' . $langs->trans('None') . '</label>' . '</td>'; + print_liste_field_titre($langs->trans("Ventilate") . '<br><label id="select-all">' . $langs->trans('All') . '</label> / <label id="unselect-all">' . $langs->trans('None') . '</label>'); print '</tr>'; + print '<tr class="liste_titre">'; print '<td class="liste_titre"><input type="text" class="flat" size="20" name="search_ref" value="' . $search_ref . '"></td>'; print '<td class="liste_titre"><input type="text" class="flat" size="20" name="search_label" value="' . $search_label . '"></td>'; @@ -359,7 +360,7 @@ if ($result) { // print '<td align="left">' . $compta_prodbuy . '</td>'; // TODO: we shoul set a user defined value to adjust user square / wide screen size // $trunclenghform = defined('ACCOUNTING_LENGTH_DESCRIPTION_ACCOUNT') ? ACCOUNTING_LENGTH_DESCRIPTION_ACCOUNT : 50; - print '<td align="center">'; + print '<td align="left">'; print $form->select_account($compta_prodbuy_id, 'codeventil_'.$product_static->id, 1); print '</td>'; } else { @@ -369,7 +370,7 @@ if ($result) { // TODO: replace by select // TODO: we shoul set a user defined value to adjust user square / wide screen size // $trunclenghform = defined('ACCOUNTING_LENGTH_DESCRIPTION_ACCOUNT') ? ACCOUNTING_LENGTH_DESCRIPTION_ACCOUNT : 50; - print '<td align="center">'; + print '<td align="left">'; print $form->select_account($compta_prodsell_id, 'codeventil_'.$product_static->id, 1); print '</td>'; } diff --git a/htdocs/accountancy/journal/bankjournal.php b/htdocs/accountancy/journal/bankjournal.php index f4d6400449fb8c55bae7603e7a402fdd0cd0a0bc..250d90016795b8330ab41bcadd2ac4d96d2dc9d2 100644 --- a/htdocs/accountancy/journal/bankjournal.php +++ b/htdocs/accountancy/journal/bankjournal.php @@ -571,7 +571,7 @@ else // Title print '<tr>'; - print '<td valign="top" width="110">'.$langs->trans("ReportName").'</td>'; + print '<td width="110">'.$langs->trans("ReportName").'</td>'; print '<td colspan="3">'.$namereport.'</td>'; print '</td>'; print '</tr>'; @@ -588,7 +588,7 @@ else // Description print '<tr>'; - print '<td valign="top">'.$langs->trans("ReportDescription").'</td>'; + print '<td>'.$langs->trans("ReportDescription").'</td>'; print '<td colspan="3">'.$description.'</td>'; print '</tr>'; diff --git a/htdocs/commande/orderstoinvoice.php b/htdocs/commande/orderstoinvoice.php index e75a9dda73b679c4bbfc53062973682163c98b13..cb3ede38f2488f4485608ab868b2e10e2928c0fc 100644 --- a/htdocs/commande/orderstoinvoice.php +++ b/htdocs/commande/orderstoinvoice.php @@ -394,6 +394,9 @@ if ($action == 'create' && !$error) print '<input type="hidden" name="origin" value="'.GETPOST('origin').'">'; print '<input type="hidden" name="originid" value="'.GETPOST('originid').'">'; print '<input type="hidden" name="autocloseorders" value="'.GETPOST('autocloseorders').'">'; + + dol_fiche_head(); + print '<table class="border" width="100%">'; // Ref @@ -495,16 +498,20 @@ if ($action == 'create' && !$error) $i++; } + dol_fiche_end(); + // Button "Create Draft" - print '<br><div class="center"><input type="submit" class="button" name="bouton" value="'.$langs->trans('CreateDraft').'" /></div>'; + print '<div class="center"><input type="submit" class="button" name="bouton" value="'.$langs->trans('CreateDraft').'" /></div>'; print "</form>\n"; print '</td></tr>'; print "</table>\n"; + + } -//Mode liste -if (($action != 'create' && $action != 'add') && !$error) +// Mode liste +if (($action != 'create' && $action != 'add') || ($action == 'create' && $error)) { llxHeader(); ?> diff --git a/htdocs/compta/facture.php b/htdocs/compta/facture.php index 33734d2a84ba9dc31a90c95586f1581f0732cffb..a4a3c8a1e83c4ba026ab9b1192b08cb63d0df66d 100644 --- a/htdocs/compta/facture.php +++ b/htdocs/compta/facture.php @@ -2242,6 +2242,10 @@ if ($action == 'create') print '</td></tr>'; // Bank Account + if (isset($_POST['fk_account'])) { + $fk_account = $_POST['fk_account']; + } + print '<tr><td>' . $langs->trans('BankAccount') . '</td><td colspan="2">'; $form->select_comptes($fk_account, 'fk_account', 0, '', 1); print '</td></tr>'; diff --git a/htdocs/core/boxes/box_task.php b/htdocs/core/boxes/box_task.php index 8ee42c4473151de4ea369beb9ab5d626f0ad5085..d6a65884ffb5ba74f8fac03b1431c60033e8921c 100644 --- a/htdocs/core/boxes/box_task.php +++ b/htdocs/core/boxes/box_task.php @@ -82,7 +82,7 @@ class box_task extends ModeleBoxes $sql = "SELECT pt.fk_statut, count(pt.rowid) as nb, sum(ptt.task_duration) as durationtot, sum(pt.planned_workload) as plannedtot"; $sql.= " FROM ".MAIN_DB_PREFIX."projet_task as pt, ".MAIN_DB_PREFIX."projet_task_time as ptt"; - $sql.= " WHERE DATE_FORMAT(pt.datec,'%Y') = ".date("Y")." "; + $sql.= " WHERE DATE_FORMAT(pt.datec,'%Y') = '".date("Y")."' "; $sql.= " AND pt.rowid = ptt.fk_task"; $sql.= " GROUP BY pt.fk_statut "; $sql.= " ORDER BY pt.fk_statut DESC"; diff --git a/htdocs/core/lib/accounting.lib.php b/htdocs/core/lib/accounting.lib.php index 196dcfe0997b2f9c988b499491fe6d8f9fa42bf2..6e6da6bd6861ede6c3eef4030a4a09c46eb0cd64 100644 --- a/htdocs/core/lib/accounting.lib.php +++ b/htdocs/core/lib/accounting.lib.php @@ -47,12 +47,12 @@ function admin_accounting_prepare_head(AccountingAccount $object=null) // $this->tabs = array('entity:-tabname); to remove a tab complete_head_from_modules($conf, $langs, $object, $head, $h, 'accounting_admin'); - $head[$h][0] = dol_buildpath('/accountancy/admin/journaux.php', 1); + $head[$h][0] = DOL_URL_ROOT.'/accountancy/admin/journal.php'; $head[$h][1] = $langs->trans("Journaux"); $head[$h][2] = 'journal'; $h ++; - $head[$h][0] = dol_buildpath('/accountancy/admin/export.php', 1); + $head[$h][0] = DOL_URL_ROOT.'/accountancy/admin/export.php'; $head[$h][1] = $langs->trans("Export"); $head[$h][2] = 'export'; $h ++; @@ -75,7 +75,7 @@ function accounting_prepare_head(AccountingAccount $object) $h = 0; $head = array (); - $head[$h][0] = dol_buildpath('/accountancy/admin/card.php', 1) . '?id=' . $object->id; + $head[$h][0] = DOL_URL_ROOT.'/accountancy/admin/card.php?id=' . $object->id; $head[$h][1] = $langs->trans("Card"); $head[$h][2] = 'card'; $h ++; diff --git a/htdocs/core/lib/pdf.lib.php b/htdocs/core/lib/pdf.lib.php index da5be96151924fdd129fe7d2e3e7011d46e393f9..8beae962d0927759a88f4ff9ac6982ba19938fb7 100644 --- a/htdocs/core/lib/pdf.lib.php +++ b/htdocs/core/lib/pdf.lib.php @@ -676,7 +676,8 @@ function pdf_bank(&$pdf,$outputlangs,$curx,$cury,$account,$onlynumber=0,$default if ($account->getCountryCode() == 'IN') $ibankey="IFSC"; if (! empty($account->iban)) { - $ibanDisplay_temp = $outputlangs->convToOutputCharset($account->iban); + //Remove whitespaces to ensure we are dealing with the format we expect + $ibanDisplay_temp = str_replace(' ', '', $outputlangs->convToOutputCharset($account->iban)); $ibanDisplay = ""; for($i = 0; $i < dol_strlen($ibanDisplay_temp); $i++) diff --git a/htdocs/core/lib/report.lib.php b/htdocs/core/lib/report.lib.php index 79ab5fe0eadd1f2d642a19d4b36bcd099af8c439..8946449d5aceb12b222aa5b7094745c6e8f3efb2 100644 --- a/htdocs/core/lib/report.lib.php +++ b/htdocs/core/lib/report.lib.php @@ -61,7 +61,7 @@ function report_header($nom,$variante,$period,$periodlink,$description,$builddat // Ligne de titre print '<tr>'; - print '<td valign="top" width="110">'.$langs->trans("ReportName").'</td>'; + print '<td width="110">'.$langs->trans("ReportName").'</td>'; if (! $variantexxx) print '<td colspan="3">'; else print '<td>'; print $nom; @@ -73,7 +73,7 @@ function report_header($nom,$variante,$period,$periodlink,$description,$builddat if ($calcmode) { print '<tr>'; - print '<td valign="top" width="110">'.$langs->trans("CalculationMode").'</td>'; + print '<td width="110">'.$langs->trans("CalculationMode").'</td>'; if (! $variante) print '<td colspan="3">'; else print '<td>'; print $calcmode; @@ -94,7 +94,7 @@ function report_header($nom,$variante,$period,$periodlink,$description,$builddat // Ligne de description print '<tr>'; - print '<td valign="top">'.$langs->trans("ReportDescription").'</td>'; + print '<td>'.$langs->trans("ReportDescription").'</td>'; print '<td colspan="3">'.$description.'</td>'; print '</tr>'; diff --git a/htdocs/core/modules/commande/doc/pdf_einstein.modules.php b/htdocs/core/modules/commande/doc/pdf_einstein.modules.php index 20a80cb8be10041b2c5fa5a1b056daa379a3f656..cc1e6aeedcaf03f52d4787f62d19682f0a664da5 100644 --- a/htdocs/core/modules/commande/doc/pdf_einstein.modules.php +++ b/htdocs/core/modules/commande/doc/pdf_einstein.modules.php @@ -1325,9 +1325,11 @@ class pdf_einstein extends ModelePDFCommandes $pdf->SetFont('','B', $default_font_size); $pdf->MultiCell($widthrecbox, 4, $carac_client_name, 0, 'L'); + $posy = $pdf->getY(); + // Show recipient information $pdf->SetFont('','', $default_font_size - 1); - $pdf->SetXY($posx+2,$posy+4+(dol_nboflines_bis($carac_client_name,50)*4)); + $pdf->SetXY($posx+2,$posy); $pdf->MultiCell($widthrecbox, 4, $carac_client, 0, 'L'); } diff --git a/htdocs/core/modules/commande/doc/pdf_proforma.modules.php b/htdocs/core/modules/commande/doc/pdf_proforma.modules.php index 5afc0fe5c463a578f788162466b9eee45ed2db1a..603f151fbfdd2290efe66e6078b0e86cd8a059fd 100644 --- a/htdocs/core/modules/commande/doc/pdf_proforma.modules.php +++ b/htdocs/core/modules/commande/doc/pdf_proforma.modules.php @@ -1217,9 +1217,11 @@ class pdf_proforma extends ModelePDFCommandes $pdf->SetFont('','B', $default_font_size); $pdf->MultiCell($widthrecbox, 4, $carac_client_name, 0, 'L'); + $posy = $pdf->getY(); + // Show recipient information $pdf->SetFont('','', $default_font_size - 1); - $pdf->SetXY($posx+2,$posy+4+(dol_nboflines_bis($carac_client_name,50)*4)); + $pdf->SetXY($posx+2,$posy); $pdf->MultiCell($widthrecbox, 4, $carac_client, 0, 'L'); } diff --git a/htdocs/core/modules/contract/doc/pdf_strato.modules.php b/htdocs/core/modules/contract/doc/pdf_strato.modules.php index 150529ae30d5f55f9eb9d2cbefac1ade03de8f8d..21944afad4f5408d276c54774f59f24d68afe56e 100644 --- a/htdocs/core/modules/contract/doc/pdf_strato.modules.php +++ b/htdocs/core/modules/contract/doc/pdf_strato.modules.php @@ -647,9 +647,11 @@ class pdf_strato extends ModelePDFContract $pdf->SetFont('','B', $default_font_size); $pdf->MultiCell($widthrecbox, 4, $this->recipient->name, 0, 'L'); + $posy = $pdf->getY(); + // Show recipient information $pdf->SetFont('','', $default_font_size - 1); - $pdf->SetXY($posx+2,$posy+4+(dol_nboflines_bis($this->recipient->name,50)*4)); + $pdf->SetXY($posx+2,$posy); $pdf->MultiCell($widthrecbox, 4, $carac_client, 0, 'L'); } } diff --git a/htdocs/core/modules/expedition/doc/pdf_merou.modules.php b/htdocs/core/modules/expedition/doc/pdf_merou.modules.php index 3f4315f640cbd914f115c40693d732a3bb7e20ff..107dbb783b95382a5b093e4db8f0135e24d7090c 100644 --- a/htdocs/core/modules/expedition/doc/pdf_merou.modules.php +++ b/htdocs/core/modules/expedition/doc/pdf_merou.modules.php @@ -650,9 +650,11 @@ class pdf_merou extends ModelePdfExpedition $pdf->SetXY($blDestX,$Yoff); $pdf->MultiCell($blW,3, $carac_client_name, 0, 'L'); + $posy = $pdf->getY(); + // Show recipient information - $pdf->SetFont('','', $default_font_size - 3); - $pdf->SetXY($blDestX,$Yoff+(dol_nboflines_bis($carac_client_name,50)*4)); - $pdf->MultiCell($blW,2, $carac_client, 0, 'L'); + $pdf->SetFont('','', $default_font_size - 1); + $pdf->SetXY($posx+2,$posy); + $pdf->MultiCell($widthrecbox, 4, $carac_client, 0, 'L'); } } diff --git a/htdocs/core/modules/expedition/doc/pdf_rouget.modules.php b/htdocs/core/modules/expedition/doc/pdf_rouget.modules.php index 5123f713a6e0e4cb92662f5719a2b2997f3f1ac1..e90e11a952d6faeb6493e5ade5d4f782d917e0e7 100644 --- a/htdocs/core/modules/expedition/doc/pdf_rouget.modules.php +++ b/htdocs/core/modules/expedition/doc/pdf_rouget.modules.php @@ -694,9 +694,11 @@ class pdf_rouget extends ModelePdfExpedition $pdf->SetFont('','B', $default_font_size); $pdf->MultiCell($widthrecbox, 4, $carac_client_name, 0, 'L'); + $posy = $pdf->getY(); + // Show recipient information $pdf->SetFont('','', $default_font_size - 1); - $pdf->SetXY($posx+2,$posy+4+(dol_nboflines_bis($carac_client_name,50)*4)); + $pdf->SetXY($posx+2,$posy); $pdf->MultiCell($widthrecbox, 4, $carac_client, 0, 'L'); } diff --git a/htdocs/core/modules/facture/doc/pdf_crabe.modules.php b/htdocs/core/modules/facture/doc/pdf_crabe.modules.php index a38d64ba826b9f7f7db129e1a48a0f5dbed91909..48be2c907c8947b71b4eca2e920b7f3538074d43 100644 --- a/htdocs/core/modules/facture/doc/pdf_crabe.modules.php +++ b/htdocs/core/modules/facture/doc/pdf_crabe.modules.php @@ -958,9 +958,9 @@ class pdf_crabe extends ModelePDFFactures // If payment mode not forced or forced to VIR, show payment with BAN if (empty($object->mode_reglement_code) || $object->mode_reglement_code == 'VIR') { - if (! empty($object->fk_bank) || ! empty($conf->global->FACTURE_RIB_NUMBER)) + if (! empty($object->fk_account) || ! empty($conf->global->FACTURE_RIB_NUMBER)) { - $bankid=(empty($object->fk_bank)?$conf->global->FACTURE_RIB_NUMBER:$object->fk_bank); + $bankid=(empty($object->fk_account)?$conf->global->FACTURE_RIB_NUMBER:$object->fk_account); $account = new Account($this->db); $account->fetch($bankid); @@ -1611,11 +1611,13 @@ class pdf_crabe extends ModelePDFFactures // Show recipient name $pdf->SetXY($posx+2,$posy+3); $pdf->SetFont('','B', $default_font_size); - $pdf->MultiCell($widthrecbox, 4, $carac_client_name, 0, 'L'); + $pdf->MultiCell($widthrecbox, 2, $carac_client_name, 0, 'L'); + + $posy = $pdf->getY(); // Show recipient information $pdf->SetFont('','', $default_font_size - 1); - $pdf->SetXY($posx+2,$posy+4+(dol_nboflines_bis($carac_client_name,50)*4)); + $pdf->SetXY($posx+2,$posy); $pdf->MultiCell($widthrecbox, 4, $carac_client, 0, 'L'); } diff --git a/htdocs/core/modules/fichinter/doc/pdf_soleil.modules.php b/htdocs/core/modules/fichinter/doc/pdf_soleil.modules.php index 116cab79185b72c370c27f63b6a6b07aa8a9ea78..98485be3207dc5817752fc7e59283c7b3aceff21 100644 --- a/htdocs/core/modules/fichinter/doc/pdf_soleil.modules.php +++ b/htdocs/core/modules/fichinter/doc/pdf_soleil.modules.php @@ -641,9 +641,11 @@ class pdf_soleil extends ModelePDFFicheinter $pdf->SetFont('','B', $default_font_size); $pdf->MultiCell($widthrecbox, 4, $carac_client_name, 0, 'L'); + $posy = $pdf->getY(); + // Show recipient information $pdf->SetFont('','', $default_font_size - 1); - $pdf->SetXY($posx+2,$posy+4+(dol_nboflines_bis($carac_client_name,50)*4)); + $pdf->SetXY($posx+2,$posy); $pdf->MultiCell($widthrecbox, 4, $carac_client, 0, 'L'); } } diff --git a/htdocs/core/modules/livraison/doc/pdf_typhon.modules.php b/htdocs/core/modules/livraison/doc/pdf_typhon.modules.php index b6f674e424df03f6db18f8339a4c8a38f28fe442..747401be88c2e4479b5cbb23760de6f4d21de81e 100644 --- a/htdocs/core/modules/livraison/doc/pdf_typhon.modules.php +++ b/htdocs/core/modules/livraison/doc/pdf_typhon.modules.php @@ -875,9 +875,11 @@ class pdf_typhon extends ModelePDFDeliveryOrder $pdf->SetFont('','B', $default_font_size); $pdf->MultiCell($widthrecbox, 4, $carac_client_name, 0, 'L'); + $posy = $pdf->getY(); + // Show recipient information $pdf->SetFont('','', $default_font_size - 1); - $pdf->SetXY($posx+2,$posy+4+(dol_nboflines_bis($carac_client_name,50)*4)); + $pdf->SetXY($posx+2,$posy); $pdf->MultiCell($widthrecbox, 4, $carac_client, 0, 'L'); } diff --git a/htdocs/core/modules/propale/doc/pdf_azur.modules.php b/htdocs/core/modules/propale/doc/pdf_azur.modules.php index c3da51fc4c4f18a9c7b87a735322cd56b3cb0bdc..d54b175750c2babfcd91d17304ea31b2f1264e0c 100644 --- a/htdocs/core/modules/propale/doc/pdf_azur.modules.php +++ b/htdocs/core/modules/propale/doc/pdf_azur.modules.php @@ -1517,9 +1517,11 @@ class pdf_azur extends ModelePDFPropales $pdf->SetFont('','B', $default_font_size); $pdf->MultiCell($widthrecbox, 4, $carac_client_name, 0, 'L'); + $posy = $pdf->getY(); + // Show recipient information $pdf->SetFont('','', $default_font_size - 1); - $pdf->SetXY($posx+2,$posy+4+(dol_nboflines_bis($carac_client_name,50)*4)); + $pdf->SetXY($posx+2,$posy); $pdf->MultiCell($widthrecbox, 4, $carac_client, 0, 'L'); } diff --git a/htdocs/core/modules/supplier_invoice/pdf/pdf_canelle.modules.php b/htdocs/core/modules/supplier_invoice/pdf/pdf_canelle.modules.php index 9445d71ce8ab0c5cf3c4af09936db0c96cab7be2..265d43ca1fcfbcfadc14083b469fa1a871c02430 100644 --- a/htdocs/core/modules/supplier_invoice/pdf/pdf_canelle.modules.php +++ b/htdocs/core/modules/supplier_invoice/pdf/pdf_canelle.modules.php @@ -1132,9 +1132,11 @@ class pdf_canelle extends ModelePDFSuppliersInvoices $pdf->SetFont('','B', $default_font_size); $pdf->MultiCell($widthrecbox, 4, $carac_client_name, 0, 'L'); + $posy = $pdf->getY(); + // Show recipient information $pdf->SetFont('','', $default_font_size - 1); - $pdf->SetXY($posx+2,$posy+4+(dol_nboflines_bis($carac_client_name,50)*4)); + $pdf->SetXY($posx+2,$posy); $pdf->MultiCell($widthrecbox, 4, $carac_client, 0, 'L'); } } diff --git a/htdocs/core/modules/supplier_order/pdf/pdf_muscadet.modules.php b/htdocs/core/modules/supplier_order/pdf/pdf_muscadet.modules.php index 8e126dcd18d329c6e241054efaa48738ea56a1c8..b2ca0ee0a602210aaaa7fe978d1817ac23df3018 100644 --- a/htdocs/core/modules/supplier_order/pdf/pdf_muscadet.modules.php +++ b/htdocs/core/modules/supplier_order/pdf/pdf_muscadet.modules.php @@ -1184,9 +1184,11 @@ class pdf_muscadet extends ModelePDFSuppliersOrders $pdf->SetFont('','B', $default_font_size); $pdf->MultiCell($widthrecbox, 4, $carac_client_name, 0, 'L'); + $posy = $pdf->getY(); + // Show recipient information $pdf->SetFont('','', $default_font_size - 1); - $pdf->SetXY($posx+2,$posy+4+(dol_nboflines_bis($carac_client_name,50)*4)); + $pdf->SetXY($posx+2,$posy); $pdf->MultiCell($widthrecbox, 4, $carac_client, 0, 'L'); } } diff --git a/htdocs/holiday/card.php b/htdocs/holiday/card.php index 23c78641462761112146bfb664bbad9f0596f607..ebda47dd196878d9049ec4fd182458397b820317 100644 --- a/htdocs/holiday/card.php +++ b/htdocs/holiday/card.php @@ -51,11 +51,12 @@ $now=dol_now(); * Actions */ +// If create a request if ($action == 'create') { $cp = new Holiday($db); - // Si pas le droit de créer une demande + // If no right to create a request if (($userid == $user->id && empty($user->rights->holiday->write)) || ($userid != $user->id && empty($user->rights->holiday->write_all))) { $error++; @@ -83,21 +84,21 @@ if ($action == 'create') $description = trim(GETPOST('description')); $userID = GETPOST('userID'); - // Si pas de date de début + // If no start date if (empty($date_debut)) { header('Location: card.php?action=request&error=nodatedebut'); exit; } - // Si pas de date de fin + // If no end date if (empty($date_fin)) { header('Location: card.php?action=request&error=nodatefin'); exit; } - // Si date de début après la date de fin + // If start date after end date if ($date_debut > $date_fin) { header('Location: card.php?action=request&error=datefin'); @@ -112,7 +113,7 @@ if ($action == 'create') exit; } - // Si aucun jours ouvrés dans la demande + // If there is no Business Days within request $nbopenedday=num_open_day($date_debut_gmt, $date_fin_gmt, 0, 1, $halfday); if($nbopenedday < 0.5) { @@ -120,7 +121,7 @@ if ($action == 'create') exit; } - // Si pas de validateur choisi + // If no validator designated if ($valideur < 1) { header('Location: card.php?action=request&error=Valideur'); @@ -137,7 +138,7 @@ if ($action == 'create') $verif = $cp->create($user); - // Si pas d'erreur SQL on redirige vers la fiche de la demande + // If no SQL error we redirect to the request card if ($verif > 0) { $db->commit(); @@ -149,7 +150,7 @@ if ($action == 'create') { $db->rollback(); - // Sinon on affiche le formulaire de demande avec le message d'erreur SQL + // Otherwise we display the request form with the SQL error message header('Location: card.php?action=request&error=SQL_Create&msg='.$cp->error); exit; } @@ -169,7 +170,7 @@ if ($action == 'update') else if ($starthalfday == 'afternoon') $halfday=-1; else if ($endhalfday == 'morning') $halfday=1; - // Si pas le droit de modifier une demande + // If no right to modify a request if (! $user->rights->holiday->write) { header('Location: card.php?action=request&error=CantUpdate'); @@ -181,40 +182,40 @@ if ($action == 'update') $canedit=(($user->id == $cp->fk_user && $user->rights->holiday->write) || ($user->id != $cp->fk_user && $user->rights->holiday->write_all)); - // Si en attente de validation + // If under validation if ($cp->statut == 1) { - // Si c'est le créateur ou qu'il a le droit de tout lire / modifier + // If this is the requestor or has read/write rights if ($canedit) { $valideur = $_POST['valideur']; $description = trim($_POST['description']); - // Si pas de date de début + // If no start date if (empty($_POST['date_debut_'])) { header('Location: card.php?id='.$_POST['holiday_id'].'&action=edit&error=nodatedebut'); exit; } - // Si pas de date de fin + // If no end date if (empty($_POST['date_fin_'])) { header('Location: card.php?id='.$_POST['holiday_id'].'&action=edit&error=nodatefin'); exit; } - // Si date de début après la date de fin + // If start date after end date if ($date_debut > $date_fin) { header('Location: card.php?id='.$_POST['holiday_id'].'&action=edit&error=datefin'); exit; } - // Si pas de valideur choisi + // If no validator designated if ($valideur < 1) { header('Location: card.php?id='.$_POST['holiday_id'].'&action=edit&error=Valideur'); exit; } - // Si pas de jours ouvrés dans la demande + // If there is no Business Days within request $nbopenedday=num_open_day($date_debut_gmt, $date_fin_gmt, 0, 1, $halfday); if ($nbopenedday < 0.5) { @@ -237,7 +238,7 @@ if ($action == 'update') } else { - // Sinon on affiche le formulaire de demande avec le message d'erreur SQL + // Otherwise we display the request form with the SQL error message header('Location: card.php?id='.$_POST['holiday_id'].'&action=edit&error=SQL_Create&msg='.$cp->error); exit; } @@ -248,7 +249,7 @@ if ($action == 'update') } } -// Si suppression de la demande +// If delete of request if ($action == 'confirm_delete' && GETPOST('confirm') == 'yes' && $user->rights->holiday->delete) { $error=0; @@ -260,7 +261,7 @@ if ($action == 'confirm_delete' && GETPOST('confirm') == 'yes' && $user->rights- $canedit=(($user->id == $cp->fk_user && $user->rights->holiday->write) || ($user->id != $cp->fk_user && $user->rights->holiday->write_all)); - // Si c'est bien un brouillon + // If this is a rough draft if ($cp->statut == 1 || $cp->statut == 3) { // Si l'utilisateur à le droit de lire cette demande, il peut la supprimer