Merge branch '16.0' of git@github.com:Dolibarr/dolibarr.git into 16.0
This commit is contained in:
commit
fe99e6c136
@ -1031,7 +1031,7 @@ if ($action == 'create') {
|
|||||||
|
|
||||||
// Recurring event
|
// Recurring event
|
||||||
$userepeatevent = ($conf->global->MAIN_FEATURES_LEVEL == 2 ? 1 : 0);
|
$userepeatevent = ($conf->global->MAIN_FEATURES_LEVEL == 2 ? 1 : 0);
|
||||||
if ($userepeatevent) {
|
if ($userepeatevent && !empty($object->recurid)) {
|
||||||
// Repeat
|
// Repeat
|
||||||
//print '<tr><td></td><td colspan="3" class="opacitymedium">';
|
//print '<tr><td></td><td colspan="3" class="opacitymedium">';
|
||||||
print ' <div class="opacitymedium inline-block">';
|
print ' <div class="opacitymedium inline-block">';
|
||||||
|
|||||||
@ -1609,7 +1609,7 @@ if ($action == 'create' && $usercancreate) {
|
|||||||
$fk_account = $soc->fk_account;
|
$fk_account = $soc->fk_account;
|
||||||
$availability_id = 0;
|
$availability_id = 0;
|
||||||
$shipping_method_id = $soc->shipping_method_id;
|
$shipping_method_id = $soc->shipping_method_id;
|
||||||
$warehouse_id = $soc->warehouse_id;
|
$warehouse_id = $soc->fk_warehouse;
|
||||||
$demand_reason_id = $soc->demand_reason_id;
|
$demand_reason_id = $soc->demand_reason_id;
|
||||||
$remise_percent = $soc->remise_percent;
|
$remise_percent = $soc->remise_percent;
|
||||||
$remise_absolue = 0;
|
$remise_absolue = 0;
|
||||||
@ -1698,7 +1698,7 @@ if ($action == 'create' && $usercancreate) {
|
|||||||
// Contacts (ask contact only if thirdparty already defined).
|
// Contacts (ask contact only if thirdparty already defined).
|
||||||
print "<tr><td>".$langs->trans("DefaultContact").'</td><td>';
|
print "<tr><td>".$langs->trans("DefaultContact").'</td><td>';
|
||||||
print img_picto('', 'contact', 'class="pictofixedwidth"');
|
print img_picto('', 'contact', 'class="pictofixedwidth"');
|
||||||
print $form->selectcontacts($soc->id, $contactid, 'contactid', 1, $srccontactslist, '', 1, 'maxwidth200 widthcentpercentminusx');
|
print $form->selectcontacts($soc->id, $contactid, 'contactid', 1, !empty($srccontactslist)?$srccontactslist:"", '', 1, 'maxwidth200 widthcentpercentminusx');
|
||||||
print '</td></tr>';
|
print '</td></tr>';
|
||||||
|
|
||||||
// Ligne info remises tiers
|
// Ligne info remises tiers
|
||||||
@ -1722,7 +1722,7 @@ if ($action == 'create' && $usercancreate) {
|
|||||||
// Date delivery planned
|
// Date delivery planned
|
||||||
print '<tr><td>'.$langs->trans("DateDeliveryPlanned").'</td>';
|
print '<tr><td>'.$langs->trans("DateDeliveryPlanned").'</td>';
|
||||||
print '<td colspan="3">';
|
print '<td colspan="3">';
|
||||||
$date_delivery = ($date_delivery ? $date_delivery : $object->date_delivery);
|
$date_delivery = ($date_delivery ? $date_delivery : $object->delivery_date);
|
||||||
print $form->selectDate($date_delivery ? $date_delivery : -1, 'liv_', 1, 1, 1);
|
print $form->selectDate($date_delivery ? $date_delivery : -1, 'liv_', 1, 1, 1);
|
||||||
print "</td>\n";
|
print "</td>\n";
|
||||||
print '</tr>';
|
print '</tr>';
|
||||||
@ -1803,7 +1803,12 @@ if ($action == 'create' && $usercancreate) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Other attributes
|
// Other attributes
|
||||||
$parameters = array('objectsrc' => $objectsrc, 'socid'=>$socid);
|
$parameters = array();
|
||||||
|
if (!empty($origin) && !empty($originid) && is_object($objectsrc)) {
|
||||||
|
$parameters['objectsrc'] = $objectsrc;
|
||||||
|
}
|
||||||
|
$parameters['socid'] = $socid;
|
||||||
|
|
||||||
// Note that $action and $object may be modified by hook
|
// Note that $action and $object may be modified by hook
|
||||||
$reshook = $hookmanager->executeHooks('formObjectOptions', $parameters, $object, $action);
|
$reshook = $hookmanager->executeHooks('formObjectOptions', $parameters, $object, $action);
|
||||||
print $hookmanager->resPrint;
|
print $hookmanager->resPrint;
|
||||||
|
|||||||
@ -3282,6 +3282,25 @@ class Facture extends CommonInvoice
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Set situation_final to 0 if is a credit note and the invoice source is a invoice situation (case when invoice situation is at 100%)
|
||||||
|
* So we can continue to create new invoice situation
|
||||||
|
*/
|
||||||
|
if (!$error && $this->type == self::TYPE_CREDIT_NOTE && $this->fk_facture_source > 0) {
|
||||||
|
$invoice_situation = new Facture($this->db);
|
||||||
|
$result = $invoice_situation->fetch($this->fk_facture_source);
|
||||||
|
if ($result > 0 && $invoice_situation->type == self::TYPE_SITUATION && $invoice_situation->situation_final == 1) {
|
||||||
|
$invoice_situation->situation_final = 0;
|
||||||
|
// Disable triggers because module can force situation_final to 1 by triggers (ex: SubTotal)
|
||||||
|
$result = $invoice_situation->setFinal($user, 1);
|
||||||
|
}
|
||||||
|
if ($result < 0) {
|
||||||
|
$this->error = $invoice_situation->error;
|
||||||
|
$this->errors = $invoice_situation->errors;
|
||||||
|
$error++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// Trigger calls
|
// Trigger calls
|
||||||
if (!$error && !$notrigger) {
|
if (!$error && !$notrigger) {
|
||||||
// Call trigger
|
// Call trigger
|
||||||
|
|||||||
@ -4986,7 +4986,7 @@ abstract class CommonObject
|
|||||||
}
|
}
|
||||||
|
|
||||||
$text .= ' - '.(!empty($line->label) ? $line->label : $label);
|
$text .= ' - '.(!empty($line->label) ? $line->label : $label);
|
||||||
$description .= (!empty($conf->global->PRODUIT_DESC_IN_FORM) ? '' : dol_htmlentitiesbr($line->description)); // Description is what to show on popup. We shown nothing if already into desc.
|
$description .= (!empty($conf->global->PRODUIT_DESC_IN_FORM) ? '' : (!empty($line->description) ? dol_htmlentitiesbr($line->description) : '')); // Description is what to show on popup. We shown nothing if already into desc.
|
||||||
}
|
}
|
||||||
|
|
||||||
$line->pu_ttc = price2num((!empty($line->subprice) ? $line->subprice : 0) * (1 + ((!empty($line->tva_tx) ? $line->tva_tx : 0) / 100)), 'MU');
|
$line->pu_ttc = price2num((!empty($line->subprice) ? $line->subprice : 0) * (1 + ((!empty($line->tva_tx) ? $line->tva_tx : 0) / 100)), 'MU');
|
||||||
@ -7495,33 +7495,35 @@ abstract class CommonObject
|
|||||||
$resql = $this->db->query($sql);
|
$resql = $this->db->query($sql);
|
||||||
if ($resql) {
|
if ($resql) {
|
||||||
$value = ''; // value was used, so now we reste it to use it to build final output
|
$value = ''; // value was used, so now we reste it to use it to build final output
|
||||||
|
$numrows = $this->db->num_rows($resql);
|
||||||
|
if ($numrows) {
|
||||||
|
$obj = $this->db->fetch_object($resql);
|
||||||
|
|
||||||
$obj = $this->db->fetch_object($resql);
|
// Several field into label (eq table:code|libelle:rowid)
|
||||||
|
$fields_label = explode('|', $InfoFieldList[1]);
|
||||||
|
|
||||||
// Several field into label (eq table:code|libelle:rowid)
|
if (is_array($fields_label) && count($fields_label) > 1) {
|
||||||
$fields_label = explode('|', $InfoFieldList[1]);
|
foreach ($fields_label as $field_toshow) {
|
||||||
|
$translabel = '';
|
||||||
if (is_array($fields_label) && count($fields_label) > 1) {
|
if (!empty($obj->$field_toshow)) {
|
||||||
foreach ($fields_label as $field_toshow) {
|
$translabel = $langs->trans($obj->$field_toshow);
|
||||||
$translabel = '';
|
}
|
||||||
if (!empty($obj->$field_toshow)) {
|
if ($translabel != $field_toshow) {
|
||||||
$translabel = $langs->trans($obj->$field_toshow);
|
$value .= dol_trunc($translabel, 18).' ';
|
||||||
|
} else {
|
||||||
|
$value .= $obj->$field_toshow.' ';
|
||||||
|
}
|
||||||
}
|
}
|
||||||
if ($translabel != $field_toshow) {
|
|
||||||
$value .= dol_trunc($translabel, 18).' ';
|
|
||||||
} else {
|
|
||||||
$value .= $obj->$field_toshow.' ';
|
|
||||||
}
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
$translabel = '';
|
|
||||||
if (!empty($obj->{$InfoFieldList[1]})) {
|
|
||||||
$translabel = $langs->trans($obj->{$InfoFieldList[1]});
|
|
||||||
}
|
|
||||||
if ($translabel != $obj->{$InfoFieldList[1]}) {
|
|
||||||
$value = dol_trunc($translabel, 18);
|
|
||||||
} else {
|
} else {
|
||||||
$value = $obj->{$InfoFieldList[1]};
|
$translabel = '';
|
||||||
|
if (!empty($obj->{$InfoFieldList[1]})) {
|
||||||
|
$translabel = $langs->trans($obj->{$InfoFieldList[1]});
|
||||||
|
}
|
||||||
|
if ($translabel != $obj->{$InfoFieldList[1]}) {
|
||||||
|
$value = dol_trunc($translabel, 18);
|
||||||
|
} else {
|
||||||
|
$value = $obj->{$InfoFieldList[1]};
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
@ -1122,7 +1122,7 @@ if ($resql) {
|
|||||||
$url .= '&socid='.((int) $socid);
|
$url .= '&socid='.((int) $socid);
|
||||||
$url .= '&backtopage='.urlencode(DOL_URL_ROOT.'/fourn/commande/list.php?socid='.((int) $socid));
|
$url .= '&backtopage='.urlencode(DOL_URL_ROOT.'/fourn/commande/list.php?socid='.((int) $socid));
|
||||||
}
|
}
|
||||||
$newcardbutton = dolGetButtonTitle($langs->trans('NewSupplierOrderShort'), '', 'fa fa-plus-circle', $url, '', $permissitiontoadd);
|
$newcardbutton = dolGetButtonTitle($langs->trans('NewSupplierOrderShort'), '', 'fa fa-plus-circle', $url, '', $permissiontoadd);
|
||||||
|
|
||||||
// Lines of title fields
|
// Lines of title fields
|
||||||
print '<form method="POST" id="searchFormList" action="'.$_SERVER["PHP_SELF"].'">';
|
print '<form method="POST" id="searchFormList" action="'.$_SERVER["PHP_SELF"].'">';
|
||||||
|
|||||||
@ -290,7 +290,7 @@ if ($object->id > 0) {
|
|||||||
print '</div>';
|
print '</div>';
|
||||||
|
|
||||||
if (isModEnabled('agenda') && (!empty($user->rights->agenda->myactions->read) || !empty($user->rights->agenda->allactions->read))) {
|
if (isModEnabled('agenda') && (!empty($user->rights->agenda->myactions->read) || !empty($user->rights->agenda->allactions->read))) {
|
||||||
$param = '&id='.$object->id.'&socid='.$socid;
|
$param = '&id='.$object->id.(!empty($socid) ? '&socid='.$socid : '');
|
||||||
if (!empty($contextpage) && $contextpage != $_SERVER["PHP_SELF"]) {
|
if (!empty($contextpage) && $contextpage != $_SERVER["PHP_SELF"]) {
|
||||||
$param .= '&contextpage='.urlencode($contextpage);
|
$param .= '&contextpage='.urlencode($contextpage);
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user