2
0
forked from Wavyzz/dolibarr

FIX Trigger on expense report was not fired

FIX Bad dates on info tabs
This commit is contained in:
Laurent Destailleur
2021-02-04 11:56:53 +01:00
parent c3b409df31
commit eca010937f
9 changed files with 42 additions and 55 deletions

View File

@@ -33,7 +33,9 @@ $langs->load("admin");
if (!$user->admin) accessforbidden(); if (!$user->admin) accessforbidden();
$action = GETPOST('action', 'aZ09'); $action = GETPOST('action', 'aZ09');
if (empty($action)) $action = 'edit';
// Define list of managed delays
$modules = array( $modules = array(
'agenda' => array( 'agenda' => array(
array( array(
@@ -190,6 +192,10 @@ if ($action == 'update')
for ($i = 0; $i < 4; $i++) { for ($i = 0; $i < 4; $i++) {
if (GETPOSTISSET('MAIN_METEO'.$plus.'_LEVEL'.$i)) dolibarr_set_const($db, 'MAIN_METEO'.$plus.'_LEVEL'.$i, GETPOST('MAIN_METEO'.$plus.'_LEVEL'.$i, 'int'), 'chaine', 0, '', $conf->entity); if (GETPOSTISSET('MAIN_METEO'.$plus.'_LEVEL'.$i)) dolibarr_set_const($db, 'MAIN_METEO'.$plus.'_LEVEL'.$i, GETPOST('MAIN_METEO'.$plus.'_LEVEL'.$i, 'int'), 'chaine', 0, '', $conf->entity);
} }
setEventMessages($langs->trans("SetupSaved"), null, 'mesgs');
$action = 'edit';
} }

View File

@@ -315,7 +315,7 @@ function dol_print_object_info($object, $usetable = 0)
if ($usetable) print '</td><td>'; if ($usetable) print '</td><td>';
else print ': '; else print ': ';
print dol_print_date($object->date_validation, 'dayhour', 'tzserver'); print dol_print_date($object->date_validation, 'dayhour', 'tzserver');
if ($deltadateforuser) print ' '.$langs->trans("CurrentHour").' &nbsp; / &nbsp; '.dol_print_date($object->date_validation, "dayhour", 'tzserver').' &nbsp;'.$langs->trans("ClientHour"); if ($deltadateforuser) print ' '.$langs->trans("CurrentHour").' &nbsp; / &nbsp; '.dol_print_date($object->date_validation, "dayhour", 'tzuserrel').' &nbsp;'.$langs->trans("ClientHour");
if ($usetable) print '</td></tr>'; if ($usetable) print '</td></tr>';
else print '<br>'; else print '<br>';
} }
@@ -349,7 +349,7 @@ function dol_print_object_info($object, $usetable = 0)
if ($usetable) print '</td><td>'; if ($usetable) print '</td><td>';
else print ': '; else print ': ';
print dol_print_date($object->date_approve, 'dayhour', 'tzserver'); print dol_print_date($object->date_approve, 'dayhour', 'tzserver');
if ($deltadateforuser) print ' '.$langs->trans("CurrentHour").' &nbsp; / &nbsp; '.dol_print_date($object->date_approve, "dayhour", 'tzserver').' &nbsp;'.$langs->trans("ClientHour"); if ($deltadateforuser) print ' '.$langs->trans("CurrentHour").' &nbsp; / &nbsp; '.dol_print_date($object->date_approve, "dayhour", 'tzuserrel').' &nbsp;'.$langs->trans("ClientHour");
if ($usetable) print '</td></tr>'; if ($usetable) print '</td></tr>';
else print '<br>'; else print '<br>';
} }
@@ -377,7 +377,7 @@ function dol_print_object_info($object, $usetable = 0)
if ($usetable) print '</td><td>'; if ($usetable) print '</td><td>';
else print ': '; else print ': ';
print dol_print_date($object->date_approve2, 'dayhour', 'tzserver'); print dol_print_date($object->date_approve2, 'dayhour', 'tzserver');
if ($deltadateforuser) print ' '.$langs->trans("CurrentHour").' &nbsp; / &nbsp; '.dol_print_date($object->date_approve2, "dayhour", 'tzserver').' &nbsp;'.$langs->trans("ClientHour"); if ($deltadateforuser) print ' '.$langs->trans("CurrentHour").' &nbsp; / &nbsp; '.dol_print_date($object->date_approve2, "dayhour", 'tzuserrel').' &nbsp;'.$langs->trans("ClientHour");
if ($usetable) print '</td></tr>'; if ($usetable) print '</td></tr>';
else print '<br>'; else print '<br>';
} }
@@ -413,7 +413,7 @@ function dol_print_object_info($object, $usetable = 0)
if ($usetable) print '</td><td>'; if ($usetable) print '</td><td>';
else print ': '; else print ': ';
print dol_print_date($object->date_closing, 'dayhour', 'tzserver'); print dol_print_date($object->date_closing, 'dayhour', 'tzserver');
if ($deltadateforuser) print ' '.$langs->trans("CurrentHour").' &nbsp; / &nbsp; '.dol_print_date($object->date_closing, "dayhour", 'tzserver').' &nbsp;'.$langs->trans("ClientHour"); if ($deltadateforuser) print ' '.$langs->trans("CurrentHour").' &nbsp; / &nbsp; '.dol_print_date($object->date_closing, "dayhour", 'tzuserrel').' &nbsp;'.$langs->trans("ClientHour");
if ($usetable) print '</td></tr>'; if ($usetable) print '</td></tr>';
else print '<br>'; else print '<br>';
} }
@@ -447,7 +447,7 @@ function dol_print_object_info($object, $usetable = 0)
if ($usetable) print '</td><td>'; if ($usetable) print '</td><td>';
else print ': '; else print ': ';
print dol_print_date($object->date_rappro, 'dayhour', 'tzserver'); print dol_print_date($object->date_rappro, 'dayhour', 'tzserver');
if ($deltadateforuser) print ' '.$langs->trans("CurrentHour").' &nbsp; / &nbsp; '.dol_print_date($object->date_rappro, "dayhour", 'tzserver').' &nbsp;'.$langs->trans("ClientHour"); if ($deltadateforuser) print ' '.$langs->trans("CurrentHour").' &nbsp; / &nbsp; '.dol_print_date($object->date_rappro, "dayhour", 'tzuserrel').' &nbsp;'.$langs->trans("ClientHour");
if ($usetable) print '</td></tr>'; if ($usetable) print '</td></tr>';
else print '<br>'; else print '<br>';
} }
@@ -460,7 +460,7 @@ function dol_print_object_info($object, $usetable = 0)
if ($usetable) print '</td><td>'; if ($usetable) print '</td><td>';
else print ': '; else print ': ';
print dol_print_date($object->date_envoi, 'dayhour', 'tzserver'); print dol_print_date($object->date_envoi, 'dayhour', 'tzserver');
if ($deltadateforuser) print ' '.$langs->trans("CurrentHour").' &nbsp; / &nbsp; '.dol_print_date($object->date_envoi, "dayhour", 'tzserver').' &nbsp;'.$langs->trans("ClientHour"); if ($deltadateforuser) print ' '.$langs->trans("CurrentHour").' &nbsp; / &nbsp; '.dol_print_date($object->date_envoi, "dayhour", 'tzuserrel').' &nbsp;'.$langs->trans("ClientHour");
if ($usetable) print '</td></tr>'; if ($usetable) print '</td></tr>';
else print '<br>'; else print '<br>';
} }

View File

@@ -198,8 +198,8 @@ class MenuManager
$submenu->add("/admin/translation.php?mainmenu=home", $langs->trans("Translation"), 1); $submenu->add("/admin/translation.php?mainmenu=home", $langs->trans("Translation"), 1);
$submenu->add("/admin/defaultvalues.php?mainmenu=home", $langs->trans("DefaultValues"), 1); $submenu->add("/admin/defaultvalues.php?mainmenu=home", $langs->trans("DefaultValues"), 1);
$submenu->add("/admin/boxes.php", $langs->trans("Boxes"), 1); $submenu->add("/admin/boxes.php?mainmenu=home", $langs->trans("Boxes"), 1);
$submenu->add("/admin/delais.php", $langs->trans("Alerts"), 1); $submenu->add("/admin/delais.php?mainmenu=home", $langs->trans("Alerts"), 1);
$submenu->add("/admin/proxy.php?mainmenu=home", $langs->trans("Security"), 1); $submenu->add("/admin/proxy.php?mainmenu=home", $langs->trans("Security"), 1);
$submenu->add("/admin/limits.php?mainmenu=home", $langs->trans("MenuLimits"), 1); $submenu->add("/admin/limits.php?mainmenu=home", $langs->trans("MenuLimits"), 1);
$submenu->add("/admin/pdf.php?mainmenu=home", $langs->trans("PDF"), 1); $submenu->add("/admin/pdf.php?mainmenu=home", $langs->trans("PDF"), 1);
@@ -340,8 +340,8 @@ class MenuManager
$this->menu->add("/admin/translation.php?mainmenu=home", $langs->trans("Translation"), 1); $this->menu->add("/admin/translation.php?mainmenu=home", $langs->trans("Translation"), 1);
$this->menu->add("/admin/defaultvalues.php?mainmenu=home", $langs->trans("DefaultValues"), 1); $this->menu->add("/admin/defaultvalues.php?mainmenu=home", $langs->trans("DefaultValues"), 1);
$this->menu->add("/admin/boxes.php", $langs->trans("Boxes"), 1); $this->menu->add("/admin/boxes.php?mainmenu=home", $langs->trans("Boxes"), 1);
$this->menu->add("/admin/delais.php", $langs->trans("Alerts"), 1); $this->menu->add("/admin/delais.php?mainmenu=home", $langs->trans("Alerts"), 1);
$this->menu->add("/admin/proxy.php?mainmenu=home", $langs->trans("Security"), 1); $this->menu->add("/admin/proxy.php?mainmenu=home", $langs->trans("Security"), 1);
$this->menu->add("/admin/limits.php?mainmenu=home", $langs->trans("MenuLimits"), 1); $this->menu->add("/admin/limits.php?mainmenu=home", $langs->trans("MenuLimits"), 1);
$this->menu->add("/admin/pdf.php?mainmenu=home", $langs->trans("PDF"), 1); $this->menu->add("/admin/pdf.php?mainmenu=home", $langs->trans("PDF"), 1);

View File

@@ -976,34 +976,6 @@ if (empty($reshook))
} }
} }
if ($action == 'set_unpaid' && $id > 0 && $user->rights->expensereport->to_paid)
{
$object = new ExpenseReport($db);
$object->fetch($id);
$result = $object->set_unpaid($user);
if ($result > 0)
{
// Define output language
if (empty($conf->global->MAIN_DISABLE_PDF_AUTOUPDATE))
{
$outputlangs = $langs;
$newlang = '';
if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id', 'aZ09')) $newlang = GETPOST('lang_id', 'aZ09');
if ($conf->global->MAIN_MULTILANGS && empty($newlang)) $newlang = $object->thirdparty->default_lang;
if (!empty($newlang)) {
$outputlangs = new Translate("", $conf);
$outputlangs->setDefaultLang($newlang);
}
$model = $object->model_pdf;
$ret = $object->fetch($id); // Reload to get new records
$object->generateDocument($model, $outputlangs, $hidedetails, $hidedesc, $hideref);
}
}
}
if ($action == 'set_paid' && $id > 0 && $user->rights->expensereport->to_paid) if ($action == 'set_paid' && $id > 0 && $user->rights->expensereport->to_paid)
{ {
$object = new ExpenseReport($db); $object = new ExpenseReport($db);
@@ -1492,8 +1464,7 @@ if ($action == 'create')
print '</form>'; print '</form>';
} else { } else {
if ($id > 0 || $ref) if ($id > 0 || $ref) {
{
$result = $object->fetch($id, $ref); $result = $object->fetch($id, $ref);
$res = $object->fetch_optionals(); $res = $object->fetch_optionals();
@@ -1755,6 +1726,7 @@ if ($action == 'create')
} }
print '</td></tr>'; print '</td></tr>';
// Period
print '<tr>'; print '<tr>';
print '<td class="titlefield">'.$langs->trans("Period").'</td>'; print '<td class="titlefield">'.$langs->trans("Period").'</td>';
print '<td>'; print '<td>';
@@ -1772,9 +1744,9 @@ if ($action == 'create')
// Validation date // Validation date
print '<tr>'; print '<tr>';
print '<td>'.$langs->trans("DATE_SAVE").'</td>'; print '<td>'.$langs->trans("DATE_SAVE").'</td>';
print '<td>'.dol_print_date($object->date_valid, 'dayhour'); print '<td>'.dol_print_date($object->date_valid, 'dayhour', 'tzuser');
if ($object->status == 2 && $object->hasDelay('toapprove')) print ' '.img_warning($langs->trans("Late")); if ($object->status == 2 && $object->hasDelay('toapprove')) print ' '.img_warning($langs->trans("Late").' - '.$langs->trans("ToApprove"));
if ($object->status == 5 && $object->hasDelay('topay')) print ' '.img_warning($langs->trans("Late")); if ($object->status == 5 && $object->hasDelay('topay')) print ' '.img_warning($langs->trans("Late").' - '.$langs->trans("ToPay"));
print '</td></tr>'; print '</td></tr>';
print '</tr>'; print '</tr>';
@@ -1815,7 +1787,7 @@ if ($action == 'create')
print '</tr>'; print '</tr>';
print '<tr>'; print '<tr>';
print '<td>'.$langs->trans("DATE_CANCEL").'</td>'; print '<td>'.$langs->trans("DATE_CANCEL").'</td>';
print '<td>'.dol_print_date($object->date_cancel, 'dayhour').'</td></tr>'; print '<td>'.dol_print_date($object->date_cancel, 'dayhour', 'tzuser').'</td></tr>';
print '</tr>'; print '</tr>';
} else { } else {
print '<tr>'; print '<tr>';
@@ -1831,7 +1803,7 @@ if ($action == 'create')
print '<tr>'; print '<tr>';
print '<td>'.$langs->trans("DateApprove").'</td>'; print '<td>'.$langs->trans("DateApprove").'</td>';
print '<td>'.dol_print_date($object->date_approve, 'dayhour').'</td></tr>'; print '<td>'.dol_print_date($object->date_approve, 'dayhour', 'tzuser').'</td></tr>';
print '</tr>'; print '</tr>';
} }
@@ -1847,7 +1819,7 @@ if ($action == 'create')
print '<tr>'; print '<tr>';
print '<td>'.$langs->trans("DATE_REFUS").'</td>'; print '<td>'.$langs->trans("DATE_REFUS").'</td>';
print '<td>'.dol_print_date($object->date_refuse, 'dayhour'); print '<td>'.dol_print_date($object->date_refuse, 'dayhour', 'tzuser');
if ($object->detail_refuse) print ' - '.$object->detail_refuse; if ($object->detail_refuse) print ' - '.$object->detail_refuse;
print '</td>'; print '</td>';
print '</tr>'; print '</tr>';

View File

@@ -2454,10 +2454,11 @@ class ExpenseReport extends CommonObject
if ($option == 'topay' && $this->status != 5) return false; if ($option == 'topay' && $this->status != 5) return false;
$now = dol_now(); $now = dol_now();
if ($option == 'toapprove') if ($option == 'toapprove') {
{
return ($this->datevalid ? $this->datevalid : $this->date_valid) < ($now - $conf->expensereport->approve->warning_delay); return ($this->datevalid ? $this->datevalid : $this->date_valid) < ($now - $conf->expensereport->approve->warning_delay);
} else return ($this->datevalid ? $this->datevalid : $this->date_valid) < ($now - $conf->expensereport->payment->warning_delay); } else {
return ($this->datevalid ? $this->datevalid : $this->date_valid) < ($now - $conf->expensereport->payment->warning_delay);
}
} }
/** /**

View File

@@ -1369,24 +1369,24 @@ if ((empty($id) && empty($ref)) || $action == 'create' || $action == 'add')
print '<tr>'; print '<tr>';
print '<td>'.$langs->trans('DateCreation').'</td>'; print '<td>'.$langs->trans('DateCreation').'</td>';
print '<td>'.dol_print_date($object->date_create, 'dayhour').'</td>'; print '<td>'.dol_print_date($object->date_create, 'dayhour', 'tzuser').'</td>';
print '</tr>'; print '</tr>';
if ($object->statut == Holiday::STATUS_APPROVED || $object->statut == Holiday::STATUS_CANCELED) { if ($object->statut == Holiday::STATUS_APPROVED || $object->statut == Holiday::STATUS_CANCELED) {
print '<tr>'; print '<tr>';
print '<td>'.$langs->trans('DateValidCP').'</td>'; print '<td>'.$langs->trans('DateValidCP').'</td>';
print '<td>'.dol_print_date($object->date_valid, 'dayhour').'</td>'; // warning: date_valid is approval date on holiday module print '<td>'.dol_print_date($object->date_valid, 'dayhour', 'tzuser').'</td>'; // warning: date_valid is approval date on holiday module
print '</tr>'; print '</tr>';
} }
if ($object->statut == Holiday::STATUS_CANCELED) { if ($object->statut == Holiday::STATUS_CANCELED) {
print '<tr>'; print '<tr>';
print '<td>'.$langs->trans('DateCancelCP').'</td>'; print '<td>'.$langs->trans('DateCancelCP').'</td>';
print '<td>'.dol_print_date($object->date_cancel, 'dayhour').'</td>'; print '<td>'.dol_print_date($object->date_cancel, 'dayhour', 'tzuser').'</td>';
print '</tr>'; print '</tr>';
} }
if ($object->statut == Holiday::STATUS_REFUSED) { if ($object->statut == Holiday::STATUS_REFUSED) {
print '<tr>'; print '<tr>';
print '<td>'.$langs->trans('DateRefusCP').'</td>'; print '<td>'.$langs->trans('DateRefusCP').'</td>';
print '<td>'.dol_print_date($object->date_refuse, 'dayhour').'</td>'; print '<td>'.dol_print_date($object->date_refuse, 'dayhour', 'tzuser').'</td>';
print '</tr>'; print '</tr>';
} }
print '</tbody>'; print '</tbody>';

View File

@@ -102,7 +102,7 @@ insert into llx_c_action_trigger (code,label,description,elementtype,rang) value
insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('EXPENSE_REPORT_VALIDATE','Expense report validated','Executed when an expense report is validated','expensereport',202); insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('EXPENSE_REPORT_VALIDATE','Expense report validated','Executed when an expense report is validated','expensereport',202);
insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('EXPENSE_REPORT_APPROVE','Expense report approved','Executed when an expense report is approved','expensereport',203); insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('EXPENSE_REPORT_APPROVE','Expense report approved','Executed when an expense report is approved','expensereport',203);
insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('EXPENSE_REPORT_PAID','Expense report billed','Executed when an expense report is set as billed','expensereport',204); insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('EXPENSE_REPORT_PAID','Expense report billed','Executed when an expense report is set as billed','expensereport',204);
insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('EXPENSE_DELETE','Expense report deleted','Executed when an expense report is deleted','expensereport',205); insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('EXPENSE_REPORT_DELETE','Expense report deleted','Executed when an expense report is deleted','expensereport',205);
insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('HOLIDAY_VALIDATE','Expense report validated','Executed when an expense report is validated','expensereport',211); insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('HOLIDAY_VALIDATE','Expense report validated','Executed when an expense report is validated','expensereport',211);
insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('HOLIDAY_APPROVE','Expense report approved','Executed when an expense report is approved','expensereport',212); insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('HOLIDAY_APPROVE','Expense report approved','Executed when an expense report is approved','expensereport',212);
insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('PROJECT_VALIDATE','Project validation','Executed when a project is validated','project',141); insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('PROJECT_VALIDATE','Project validation','Executed when a project is validated','project',141);

View File

@@ -565,5 +565,12 @@ ALTER TABLE llx_product_fournisseur_price ADD COLUMN packaging varchar(64);
ALTER TABLE llx_projet ADD COLUMN fk_opp_status_end integer DEFAULT NULL; ALTER TABLE llx_projet ADD COLUMN fk_opp_status_end integer DEFAULT NULL;
UPDATE llx_c_action_trigger SET elementtype = 'expensereport' where elementtype = 'expense_report' AND code like 'EXPENSE_%';
UPDATE llx_c_action_trigger SET code = 'EXPENSE_REPORT_PAID' where code = 'EXPENSE_REPORT_PAYED'; UPDATE llx_c_action_trigger SET code = 'EXPENSE_REPORT_PAID' where code = 'EXPENSE_REPORT_PAYED';
UPDATE llx_c_action_trigger SET code = 'EXPENSE_REPORT_DELETE' where code = 'EXPENSE_DELETE';
insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('EXPENSE_REPORT_CREATE','Expense report created','Executed when an expense report is created','expensereport',201);
insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('EXPENSE_REPORT_VALIDATE','Expense report validated','Executed when an expense report is validated','expensereport',202);
insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('EXPENSE_REPORT_APPROVE','Expense report approved','Executed when an expense report is approved','expensereport',203);
insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('EXPENSE_REPORT_PAID','Expense report billed','Executed when an expense report is set as billed','expensereport',204);
insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('EXPENSE_REPORT_DELETE','Expense report deleted','Executed when an expense report is deleted','expensereport',205);

View File

@@ -119,6 +119,7 @@ MRP_MO_UNVALIDATEInDolibarr=MO set to draft status
MRP_MO_PRODUCEDInDolibarr=MO produced MRP_MO_PRODUCEDInDolibarr=MO produced
MRP_MO_DELETEInDolibarr=MO deleted MRP_MO_DELETEInDolibarr=MO deleted
MRP_MO_CANCELInDolibarr=MO canceled MRP_MO_CANCELInDolibarr=MO canceled
PAIDInDolibarr=%s paid
##### End agenda events ##### ##### End agenda events #####
AgendaModelModule=Document templates for event AgendaModelModule=Document templates for event
DateActionStart=Start date DateActionStart=Start date