Merge branch 'develop' of https://github.com/Dolibarr/dolibarr into pr/bb2a/21596
This commit is contained in:
commit
16c2e8cbc9
@ -4200,6 +4200,12 @@ class OrderLine extends CommonOrderLine
|
|||||||
$result = $this->db->query($sql);
|
$result = $this->db->query($sql);
|
||||||
if ($result) {
|
if ($result) {
|
||||||
$objp = $this->db->fetch_object($result);
|
$objp = $this->db->fetch_object($result);
|
||||||
|
|
||||||
|
if (!$objp) {
|
||||||
|
$this->error = 'OrderLine with id '. $rowid .' not found sql='.$sql;
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
$this->rowid = $objp->rowid;
|
$this->rowid = $objp->rowid;
|
||||||
$this->id = $objp->rowid;
|
$this->id = $objp->rowid;
|
||||||
$this->fk_commande = $objp->fk_commande;
|
$this->fk_commande = $objp->fk_commande;
|
||||||
|
|||||||
@ -5812,6 +5812,11 @@ class FactureLigne extends CommonInvoiceLine
|
|||||||
if ($result) {
|
if ($result) {
|
||||||
$objp = $this->db->fetch_object($result);
|
$objp = $this->db->fetch_object($result);
|
||||||
|
|
||||||
|
if (!$objp) {
|
||||||
|
$this->error = 'InvoiceLine with id '. $rowid .' not found sql='.$sql;
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
$this->rowid = $objp->rowid;
|
$this->rowid = $objp->rowid;
|
||||||
$this->id = $objp->rowid;
|
$this->id = $objp->rowid;
|
||||||
$this->fk_facture = $objp->fk_facture;
|
$this->fk_facture = $objp->fk_facture;
|
||||||
|
|||||||
@ -50,7 +50,7 @@ require_once DOL_DOCUMENT_ROOT.'/core/lib/admin.lib.php';
|
|||||||
$action = GETPOST('action', 'aZ09'); // set or del
|
$action = GETPOST('action', 'aZ09'); // set or del
|
||||||
$name = GETPOST('name', 'alpha');
|
$name = GETPOST('name', 'alpha');
|
||||||
$entity = GETPOST('entity', 'int');
|
$entity = GETPOST('entity', 'int');
|
||||||
$value = ((GETPOST('value', 'int') || GETPOST('value', 'int') == '0') ? GETPOST('value', 'int') : 1);
|
$value = (GETPOST('value', 'aZ09') != '' ? GETPOST('value', 'aZ09') : 1);
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|||||||
@ -5612,6 +5612,9 @@ abstract class CommonObject
|
|||||||
if ($this->element == 'contrat' && !empty($conf->global->CONTRACT_ALLOW_EXTERNAL_DOWNLOAD)) {
|
if ($this->element == 'contrat' && !empty($conf->global->CONTRACT_ALLOW_EXTERNAL_DOWNLOAD)) {
|
||||||
$setsharekey = true;
|
$setsharekey = true;
|
||||||
}
|
}
|
||||||
|
if ($this->element == 'fichinter' && !empty($conf->global->FICHINTER_ALLOW_EXTERNAL_DOWNLOAD)) {
|
||||||
|
$setsharekey = true;
|
||||||
|
}
|
||||||
if ($this->element == 'supplier_proposal' && !empty($conf->global->SUPPLIER_PROPOSAL_ALLOW_EXTERNAL_DOWNLOAD)) {
|
if ($this->element == 'supplier_proposal' && !empty($conf->global->SUPPLIER_PROPOSAL_ALLOW_EXTERNAL_DOWNLOAD)) {
|
||||||
$setsharekey = true;
|
$setsharekey = true;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -725,9 +725,9 @@ class Translate
|
|||||||
|
|
||||||
return $str;
|
return $str;
|
||||||
} else {
|
} else {
|
||||||
if ($key[0] == '$') {
|
/*if ($key[0] == '$') {
|
||||||
return dol_eval($key, 1, 1, '1');
|
return dol_eval($key, 1, 1, '1');
|
||||||
}
|
}*/
|
||||||
return $this->getTradFromKey($key);
|
return $this->getTradFromKey($key);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1255,9 +1255,10 @@ class Utils
|
|||||||
* @param string $message Message
|
* @param string $message Message
|
||||||
* @param string $filename List of files to attach (full path of filename on file system)
|
* @param string $filename List of files to attach (full path of filename on file system)
|
||||||
* @param string $filter Filter file send
|
* @param string $filter Filter file send
|
||||||
|
* @param string $sizelimit Limit size to send file
|
||||||
* @return int 0 if OK, < 0 if KO (this function is used also by cron so only 0 is OK)
|
* @return int 0 if OK, < 0 if KO (this function is used also by cron so only 0 is OK)
|
||||||
*/
|
*/
|
||||||
public function sendBackup($sendto = '', $from = '', $subject = '', $message = '', $filename = '', $filter = '')
|
public function sendBackup($sendto = '', $from = '', $subject = '', $message = '', $filename = '', $filter = '', $sizelimit = 100000000)
|
||||||
{
|
{
|
||||||
global $conf, $langs;
|
global $conf, $langs;
|
||||||
|
|
||||||
@ -1315,9 +1316,13 @@ class Utils
|
|||||||
}
|
}
|
||||||
|
|
||||||
if ($filepath) {
|
if ($filepath) {
|
||||||
if ($filesize > 100000000) {
|
if ($filesize > $sizelimit) {
|
||||||
$output = 'Sorry, last backup file is too large to be send by email';
|
$message .= '<br>'.$langs->trans("BackupIsTooLargeSend");
|
||||||
$error++;
|
$documenturl = $dolibarr_main_url_root.'/document.php?modulepart=systemtools&atachement=1&file=backup/'.urlencode($filename[0]);
|
||||||
|
$message .= '<br><a href='.$documenturl.'>Lien de téléchargement</a>';
|
||||||
|
$filepath = '';
|
||||||
|
$mimetype = '';
|
||||||
|
$filename = '';
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
$output = 'No backup file found';
|
$output = 'No backup file found';
|
||||||
|
|||||||
@ -131,7 +131,12 @@ function bank_prepare_head(Account $object)
|
|||||||
*/
|
*/
|
||||||
function bank_admin_prepare_head($object)
|
function bank_admin_prepare_head($object)
|
||||||
{
|
{
|
||||||
global $langs, $conf, $user;
|
global $langs, $conf, $user, $db;
|
||||||
|
|
||||||
|
$extrafields = new ExtraFields($db);
|
||||||
|
$extrafields->fetch_name_optionals_label('bank_account');
|
||||||
|
$extrafields->fetch_name_optionals_label('bank');
|
||||||
|
|
||||||
$h = 0;
|
$h = 0;
|
||||||
$head = array();
|
$head = array();
|
||||||
|
|
||||||
@ -154,11 +159,19 @@ function bank_admin_prepare_head($object)
|
|||||||
|
|
||||||
$head[$h][0] = DOL_URL_ROOT.'/admin/bank_extrafields.php';
|
$head[$h][0] = DOL_URL_ROOT.'/admin/bank_extrafields.php';
|
||||||
$head[$h][1] = $langs->trans("ExtraFields").' ('.$langs->trans("BankAccounts").')';
|
$head[$h][1] = $langs->trans("ExtraFields").' ('.$langs->trans("BankAccounts").')';
|
||||||
|
$nbExtrafields = $extrafields->attributes['bank_account']['count'];
|
||||||
|
if ($nbExtrafields > 0) {
|
||||||
|
$head[$h][1] .= '<span class="badge marginleftonlyshort">'.$nbExtrafields.'</span>';
|
||||||
|
}
|
||||||
$head[$h][2] = 'attributes';
|
$head[$h][2] = 'attributes';
|
||||||
$h++;
|
$h++;
|
||||||
|
|
||||||
$head[$h][0] = DOL_URL_ROOT.'/admin/bankline_extrafields.php';
|
$head[$h][0] = DOL_URL_ROOT.'/admin/bankline_extrafields.php';
|
||||||
$head[$h][1] = $langs->trans("ExtraFields").' ('.$langs->trans("BankTransactions").')';
|
$head[$h][1] = $langs->trans("ExtraFields").' ('.$langs->trans("BankTransactions").')';
|
||||||
|
$nbExtrafields = $extrafields->attributes['bank']['count'];
|
||||||
|
if ($nbExtrafields > 0) {
|
||||||
|
$head[$h][1] .= '<span class="badge marginleftonlyshort">'.$nbExtrafields.'</span>';
|
||||||
|
}
|
||||||
$head[$h][2] = 'bankline_extrafields';
|
$head[$h][2] = 'bankline_extrafields';
|
||||||
$h++;
|
$h++;
|
||||||
|
|
||||||
|
|||||||
@ -139,7 +139,11 @@ function fichinter_prepare_head($object)
|
|||||||
*/
|
*/
|
||||||
function fichinter_admin_prepare_head()
|
function fichinter_admin_prepare_head()
|
||||||
{
|
{
|
||||||
global $langs, $conf, $user;
|
global $langs, $conf, $user, $db;
|
||||||
|
|
||||||
|
$extrafields = new ExtraFields($db);
|
||||||
|
$extrafields->fetch_name_optionals_label('fichinter');
|
||||||
|
$extrafields->fetch_name_optionals_label('fichinterdet');
|
||||||
|
|
||||||
$h = 0;
|
$h = 0;
|
||||||
$head = array();
|
$head = array();
|
||||||
@ -159,19 +163,25 @@ function fichinter_admin_prepare_head()
|
|||||||
|
|
||||||
$head[$h][0] = DOL_URL_ROOT.'/fichinter/admin/fichinter_extrafields.php';
|
$head[$h][0] = DOL_URL_ROOT.'/fichinter/admin/fichinter_extrafields.php';
|
||||||
$head[$h][1] = $langs->trans("ExtraFields");
|
$head[$h][1] = $langs->trans("ExtraFields");
|
||||||
|
$nbExtrafields = $extrafields->attributes['fichinter']['count'];
|
||||||
|
if ($nbExtrafields > 0) {
|
||||||
|
$head[$h][1] .= '<span class="badge marginleftonlyshort">'.$nbExtrafields.'</span>';
|
||||||
|
}
|
||||||
$head[$h][2] = 'attributes';
|
$head[$h][2] = 'attributes';
|
||||||
$h++;
|
$h++;
|
||||||
|
|
||||||
$head[$h][0] = DOL_URL_ROOT.'/fichinter/admin/fichinterdet_extrafields.php';
|
$head[$h][0] = DOL_URL_ROOT.'/fichinter/admin/fichinterdet_extrafields.php';
|
||||||
$head[$h][1] = $langs->trans("ExtraFieldsLines");
|
$head[$h][1] = $langs->trans("ExtraFieldsLines");
|
||||||
|
$nbExtrafields = $extrafields->attributes['fichinterdet']['count'];
|
||||||
|
if ($nbExtrafields > 0) {
|
||||||
|
$head[$h][1] .= '<span class="badge marginleftonlyshort">'.$nbExtrafields.'</span>';
|
||||||
|
}
|
||||||
$head[$h][2] = 'attributesdet';
|
$head[$h][2] = 'attributesdet';
|
||||||
$h++;
|
$h++;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
complete_head_from_modules($conf, $langs, null, $head, $h, 'fichinter_admin', 'remove');
|
complete_head_from_modules($conf, $langs, null, $head, $h, 'fichinter_admin', 'remove');
|
||||||
|
|
||||||
return $head;
|
return $head;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@ -7787,6 +7787,9 @@ function getCommonSubstitutionArray($outputlangs, $onlykey = 0, $exclude = null,
|
|||||||
if (is_object($object) && $object->element == 'contrat') {
|
if (is_object($object) && $object->element == 'contrat') {
|
||||||
$typeforonlinepayment = 'contract';
|
$typeforonlinepayment = 'contract';
|
||||||
}
|
}
|
||||||
|
if (is_object($object) && $object->element == 'fichinter') {
|
||||||
|
$typeforonlinepayment = 'ficheinter';
|
||||||
|
}
|
||||||
$url = getOnlinePaymentUrl(0, $typeforonlinepayment, $substitutionarray['__REF__']);
|
$url = getOnlinePaymentUrl(0, $typeforonlinepayment, $substitutionarray['__REF__']);
|
||||||
$paymenturl = $url;
|
$paymenturl = $url;
|
||||||
}
|
}
|
||||||
@ -7819,6 +7822,11 @@ function getCommonSubstitutionArray($outputlangs, $onlykey = 0, $exclude = null,
|
|||||||
} else {
|
} else {
|
||||||
$substitutionarray['__DIRECTDOWNLOAD_URL_CONTRACT__'] = '';
|
$substitutionarray['__DIRECTDOWNLOAD_URL_CONTRACT__'] = '';
|
||||||
}
|
}
|
||||||
|
if (!empty($conf->global->FICHINTER_ALLOW_EXTERNAL_DOWNLOAD) && is_object($object) && $object->element == 'fichinter') {
|
||||||
|
$substitutionarray['__DIRECTDOWNLOAD_URL_FICHINTER__'] = $object->getLastMainDocLink($object->element);
|
||||||
|
} else {
|
||||||
|
$substitutionarray['__DIRECTDOWNLOAD_URL_FICHINTER__'] = '';
|
||||||
|
}
|
||||||
if (!empty($conf->global->SUPPLIER_PROPOSAL_ALLOW_EXTERNAL_DOWNLOAD) && is_object($object) && $object->element == 'supplier_proposal') {
|
if (!empty($conf->global->SUPPLIER_PROPOSAL_ALLOW_EXTERNAL_DOWNLOAD) && is_object($object) && $object->element == 'supplier_proposal') {
|
||||||
$substitutionarray['__DIRECTDOWNLOAD_URL_SUPPLIER_PROPOSAL__'] = $object->getLastMainDocLink($object->element);
|
$substitutionarray['__DIRECTDOWNLOAD_URL_SUPPLIER_PROPOSAL__'] = $object->getLastMainDocLink($object->element);
|
||||||
} else {
|
} else {
|
||||||
@ -7837,6 +7845,9 @@ function getCommonSubstitutionArray($outputlangs, $onlykey = 0, $exclude = null,
|
|||||||
if (is_object($object) && $object->element == 'contrat') {
|
if (is_object($object) && $object->element == 'contrat') {
|
||||||
$substitutionarray['__URL_CONTRACT__'] = DOL_MAIN_URL_ROOT."/contrat/card.php?id=".$object->id;
|
$substitutionarray['__URL_CONTRACT__'] = DOL_MAIN_URL_ROOT."/contrat/card.php?id=".$object->id;
|
||||||
}
|
}
|
||||||
|
if (is_object($object) && $object->element == 'fichinter') {
|
||||||
|
$substitutionarray['__URL_FICHINTER__'] = DOL_MAIN_URL_ROOT."/fichinter/card.php?id=".$object->id;
|
||||||
|
}
|
||||||
if (is_object($object) && $object->element == 'supplier_proposal') {
|
if (is_object($object) && $object->element == 'supplier_proposal') {
|
||||||
$substitutionarray['__URL_SUPPLIER_PROPOSAL__'] = DOL_MAIN_URL_ROOT."/supplier_proposal/card.php?id=".$object->id;
|
$substitutionarray['__URL_SUPPLIER_PROPOSAL__'] = DOL_MAIN_URL_ROOT."/supplier_proposal/card.php?id=".$object->id;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -2,7 +2,7 @@
|
|||||||
/* Copyright (C) 2005-2012 Laurent Destailleur <eldy@users.sourceforge.net>
|
/* Copyright (C) 2005-2012 Laurent Destailleur <eldy@users.sourceforge.net>
|
||||||
* Copyright (C) 2005-2012 Regis Houssin <regis.houssin@inodbox.com>
|
* Copyright (C) 2005-2012 Regis Houssin <regis.houssin@inodbox.com>
|
||||||
* Copyright (C) 2013 Florian Henry <florian.henry@open-concept.pro>
|
* Copyright (C) 2013 Florian Henry <florian.henry@open-concept.pro>
|
||||||
* Copyright (C) 2015 Juanjo Menent <jmenent@2byte.es>
|
* Copyright (C) 2015 Juanjo Menent <jmenent@2byte.es>
|
||||||
* Copyright (C) 2017 Charlie Benke <charlie@patas-monkey.com>
|
* Copyright (C) 2017 Charlie Benke <charlie@patas-monkey.com>
|
||||||
* Copyright (C) 2017 ATM-CONSULTING <contact@atm-consulting.fr>
|
* Copyright (C) 2017 ATM-CONSULTING <contact@atm-consulting.fr>
|
||||||
*
|
*
|
||||||
@ -137,7 +137,13 @@ function facture_prepare_head($object)
|
|||||||
*/
|
*/
|
||||||
function invoice_admin_prepare_head()
|
function invoice_admin_prepare_head()
|
||||||
{
|
{
|
||||||
global $langs, $conf, $user;
|
global $langs, $conf, $user, $db;
|
||||||
|
|
||||||
|
$extrafields = new ExtraFields($db);
|
||||||
|
$extrafields->fetch_name_optionals_label('facture');
|
||||||
|
$extrafields->fetch_name_optionals_label('facturedet');
|
||||||
|
$extrafields->fetch_name_optionals_label('facture_rec');
|
||||||
|
$extrafields->fetch_name_optionals_label('facturedet_rec');
|
||||||
|
|
||||||
$h = 0;
|
$h = 0;
|
||||||
$head = array();
|
$head = array();
|
||||||
@ -160,25 +166,41 @@ function invoice_admin_prepare_head()
|
|||||||
|
|
||||||
$head[$h][0] = DOL_URL_ROOT.'/compta/facture/admin/facture_cust_extrafields.php';
|
$head[$h][0] = DOL_URL_ROOT.'/compta/facture/admin/facture_cust_extrafields.php';
|
||||||
$head[$h][1] = $langs->trans("ExtraFieldsCustomerInvoices");
|
$head[$h][1] = $langs->trans("ExtraFieldsCustomerInvoices");
|
||||||
|
$nbExtrafields = $extrafields->attributes['facture']['count'];
|
||||||
|
if ($nbExtrafields > 0) {
|
||||||
|
$head[$h][1] .= '<span class="badge marginleftonlyshort">'.$nbExtrafields.'</span>';
|
||||||
|
}
|
||||||
$head[$h][2] = 'attributes';
|
$head[$h][2] = 'attributes';
|
||||||
$h++;
|
$h++;
|
||||||
|
|
||||||
$head[$h][0] = DOL_URL_ROOT.'/compta/facture/admin/facturedet_cust_extrafields.php';
|
$head[$h][0] = DOL_URL_ROOT.'/compta/facture/admin/facturedet_cust_extrafields.php';
|
||||||
$head[$h][1] = $langs->trans("ExtraFieldsLines");
|
$head[$h][1] = $langs->trans("ExtraFieldsLines");
|
||||||
|
$nbExtrafields = $extrafields->attributes['facturedet']['count'];
|
||||||
|
if ($nbExtrafields > 0) {
|
||||||
|
$head[$h][1] .= '<span class="badge marginleftonlyshort">'.$nbExtrafields.'</span>';
|
||||||
|
}
|
||||||
$head[$h][2] = 'attributeslines';
|
$head[$h][2] = 'attributeslines';
|
||||||
$h++;
|
$h++;
|
||||||
|
|
||||||
$head[$h][0] = DOL_URL_ROOT.'/compta/facture/admin/facture_rec_cust_extrafields.php';
|
$head[$h][0] = DOL_URL_ROOT.'/compta/facture/admin/facture_rec_cust_extrafields.php';
|
||||||
$head[$h][1] = $langs->trans("ExtraFieldsCustomerInvoicesRec");
|
$head[$h][1] = $langs->trans("ExtraFieldsCustomerInvoicesRec");
|
||||||
|
$nbExtrafields = $extrafields->attributes['facture_rec']['count'];
|
||||||
|
if ($nbExtrafields > 0) {
|
||||||
|
$head[$h][1] .= '<span class="badge marginleftonlyshort">'.$nbExtrafields.'</span>';
|
||||||
|
}
|
||||||
$head[$h][2] = 'attributesrec';
|
$head[$h][2] = 'attributesrec';
|
||||||
$h++;
|
$h++;
|
||||||
|
|
||||||
$head[$h][0] = DOL_URL_ROOT.'/compta/facture/admin/facturedet_rec_cust_extrafields.php';
|
$head[$h][0] = DOL_URL_ROOT.'/compta/facture/admin/facturedet_rec_cust_extrafields.php';
|
||||||
$head[$h][1] = $langs->trans("ExtraFieldsLinesRec");
|
$head[$h][1] = $langs->trans("ExtraFieldsLinesRec");
|
||||||
|
$nbExtrafields = $extrafields->attributes['facturedet_rec']['count'];
|
||||||
|
if ($nbExtrafields > 0) {
|
||||||
|
$head[$h][1] .= '<span class="badge marginleftonlyshort">'.$nbExtrafields.'</span>';
|
||||||
|
}
|
||||||
$head[$h][2] = 'attributeslinesrec';
|
$head[$h][2] = 'attributeslinesrec';
|
||||||
$h++;
|
$h++;
|
||||||
|
|
||||||
if ($conf->global->INVOICE_USE_SITUATION) { // Warning, implementation is seriously bugged and a new one not compatible is expected to become stable
|
if (!empty($conf->global->INVOICE_USE_SITUATION)) { // Warning, implementation is seriously bugged and a new one not compatible is expected to become stable
|
||||||
$head[$h][0] = DOL_URL_ROOT.'/admin/facture_situation.php';
|
$head[$h][0] = DOL_URL_ROOT.'/admin/facture_situation.php';
|
||||||
$head[$h][1] = $langs->trans("InvoiceSituation");
|
$head[$h][1] = $langs->trans("InvoiceSituation");
|
||||||
$head[$h][2] = 'situation';
|
$head[$h][2] = 'situation';
|
||||||
|
|||||||
@ -1713,8 +1713,14 @@ if ($action == 'create') {
|
|||||||
$linktoelem = $form->showLinkToObjectBlock($object, null, array('fichinter'));
|
$linktoelem = $form->showLinkToObjectBlock($object, null, array('fichinter'));
|
||||||
$somethingshown = $form->showLinkedObjectBlock($object, $linktoelem);
|
$somethingshown = $form->showLinkedObjectBlock($object, $linktoelem);
|
||||||
|
|
||||||
|
// Show direct download link
|
||||||
|
if ($object->statut != Fichinter::STATUS_DRAFT && !empty($conf->global->FICHINTER_ALLOW_EXTERNAL_DOWNLOAD)) {
|
||||||
|
print '<br><!-- Link to download main doc -->'."\n";
|
||||||
|
print showDirectDownloadLink($object).'<br>';
|
||||||
|
}
|
||||||
|
|
||||||
// Show online signature link
|
// Show online signature link
|
||||||
if ($object->statut != Fichinter::STATUS_DRAFT && $conf->global->FICHINTER_ALLOW_ONLINE_SIGN) {
|
if ($object->statut != Fichinter::STATUS_DRAFT && !empty($conf->global->FICHINTER_ALLOW_ONLINE_SIGN)) {
|
||||||
print '<br><!-- Link to sign -->';
|
print '<br><!-- Link to sign -->';
|
||||||
require_once DOL_DOCUMENT_ROOT.'/core/lib/signature.lib.php';
|
require_once DOL_DOCUMENT_ROOT.'/core/lib/signature.lib.php';
|
||||||
|
|
||||||
|
|||||||
@ -1398,7 +1398,7 @@ class CommandeFournisseur extends CommonOrder
|
|||||||
$sql .= ", '".$this->db->escape($this->ref_supplier)."'";
|
$sql .= ", '".$this->db->escape($this->ref_supplier)."'";
|
||||||
$sql .= ", '".$this->db->escape($this->note_private)."'";
|
$sql .= ", '".$this->db->escape($this->note_private)."'";
|
||||||
$sql .= ", '".$this->db->escape($this->note_public)."'";
|
$sql .= ", '".$this->db->escape($this->note_public)."'";
|
||||||
$sql .= ", ".((int) $conf->entity);
|
$sql .= ", ".setEntity($this);
|
||||||
$sql .= ", ".((int) $this->socid);
|
$sql .= ", ".((int) $this->socid);
|
||||||
$sql .= ", ".($this->fk_project > 0 ? ((int) $this->fk_project) : "null");
|
$sql .= ", ".($this->fk_project > 0 ? ((int) $this->fk_project) : "null");
|
||||||
$sql .= ", '".$this->db->idate($date)."'";
|
$sql .= ", '".$this->db->idate($date)."'";
|
||||||
|
|||||||
@ -197,6 +197,12 @@ ALTER TABLE llx_societe_remise_except ADD COLUMN multicurrency_tx double(24,8) N
|
|||||||
|
|
||||||
ALTER TABLE llx_hrm_evaluationdet CHANGE COLUMN rank rankorder integer;
|
ALTER TABLE llx_hrm_evaluationdet CHANGE COLUMN rank rankorder integer;
|
||||||
|
|
||||||
|
|
||||||
|
-- Rename const to hide public and private notes (fix allow notes const was used to hide)
|
||||||
|
UPDATE llx_const SET name = 'MAIN_LIST_HIDE_PUBLIC_NOTES' WHERE name = 'MAIN_LIST_ALLOW_PUBLIC_NOTES';
|
||||||
|
UPDATE llx_const SET name = 'MAIN_LIST_HIDE_PRIVATE_NOTES' WHERE name = 'MAIN_LIST_ALLOW_PRIVATE_NOTES';
|
||||||
|
|
||||||
|
|
||||||
ALTER TABLE llx_projet ADD COLUMN date_start_event datetime;
|
ALTER TABLE llx_projet ADD COLUMN date_start_event datetime;
|
||||||
ALTER TABLE llx_projet ADD COLUMN date_end_event datetime;
|
ALTER TABLE llx_projet ADD COLUMN date_end_event datetime;
|
||||||
ALTER TABLE llx_projet ADD COLUMN location varchar(255);
|
ALTER TABLE llx_projet ADD COLUMN location varchar(255);
|
||||||
|
|||||||
@ -84,6 +84,7 @@ MakeLocalDatabaseDumpShort=Local database backup
|
|||||||
MakeLocalDatabaseDump=Create a local database dump. Parameters are: compression ('gz' or 'bz' or 'none'), backup type ('mysql', 'pgsql', 'auto'), 1, 'auto' or filename to build, number of backup files to keep
|
MakeLocalDatabaseDump=Create a local database dump. Parameters are: compression ('gz' or 'bz' or 'none'), backup type ('mysql', 'pgsql', 'auto'), 1, 'auto' or filename to build, number of backup files to keep
|
||||||
MakeSendLocalDatabaseDumpShort=Send local database backup
|
MakeSendLocalDatabaseDumpShort=Send local database backup
|
||||||
MakeSendLocalDatabaseDump=Send local database backup by email. Parameters are: to, from, subject, message, filename (Name of file sent), filter ('sql' for backup of database only)
|
MakeSendLocalDatabaseDump=Send local database backup by email. Parameters are: to, from, subject, message, filename (Name of file sent), filter ('sql' for backup of database only)
|
||||||
|
BackupIsTooLargeSend=Sorry, last backup file is too large to be send by email
|
||||||
CleanUnfinishedCronjobShort=Clean unfinished cronjob
|
CleanUnfinishedCronjobShort=Clean unfinished cronjob
|
||||||
CleanUnfinishedCronjob=Clean cronjob stuck in processing when the process is no longer running
|
CleanUnfinishedCronjob=Clean cronjob stuck in processing when the process is no longer running
|
||||||
WarningCronDelayed=Attention, for performance purpose, whatever is next date of execution of enabled jobs, your jobs may be delayed to a maximum of %s hours, before being run.
|
WarningCronDelayed=Attention, for performance purpose, whatever is next date of execution of enabled jobs, your jobs may be delayed to a maximum of %s hours, before being run.
|
||||||
|
|||||||
@ -1866,7 +1866,12 @@ if (is_object($objcanvas) && $objcanvas->displayCanvasExists($action)) {
|
|||||||
print '<table class="border allwidth">';
|
print '<table class="border allwidth">';
|
||||||
|
|
||||||
// Ref
|
// Ref
|
||||||
print '<tr><td class="titlefieldcreate fieldrequired">'.$langs->trans("Ref").'</td><td colspan="3"><input name="ref" class="maxwidth200" maxlength="128" value="'.dol_escape_htmltag($object->ref).'"></td></tr>';
|
if (empty($conf->global->MAIN_PRODUCT_REF_NOT_EDITABLE)) {
|
||||||
|
print '<tr><td class="titlefieldcreate fieldrequired">'.$langs->trans("Ref").'</td><td colspan="3"><input name="ref" class="maxwidth200" maxlength="128" value="'.dol_escape_htmltag($object->ref).'"></td></tr>';
|
||||||
|
} else {
|
||||||
|
print '<tr><td class="titlefieldcreate fieldrequired">'.$langs->trans("Ref").'</td><td colspan="3"><input name="ref" class="maxwidth200" maxlength="128" value="'.dol_escape_htmltag($object->ref).'" readonly="true"></td></tr>';
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
// Label
|
// Label
|
||||||
print '<tr><td class="fieldrequired">'.$langs->trans("Label").'</td><td colspan="3"><input name="label" class="minwidth300 maxwidth400onsmartphone" maxlength="255" value="'.dol_escape_htmltag($object->label).'"></td></tr>';
|
print '<tr><td class="fieldrequired">'.$langs->trans("Label").'</td><td colspan="3"><input name="label" class="minwidth300 maxwidth400onsmartphone" maxlength="255" value="'.dol_escape_htmltag($object->label).'"></td></tr>';
|
||||||
|
|||||||
@ -150,6 +150,8 @@ class PriceParser
|
|||||||
"length" => $product->length,
|
"length" => $product->length,
|
||||||
"surface" => $product->surface,
|
"surface" => $product->surface,
|
||||||
"price_min" => $product->price_min,
|
"price_min" => $product->price_min,
|
||||||
|
"cost_price" => $product->cost_price,
|
||||||
|
"pmp" => $product->pmp,
|
||||||
));
|
));
|
||||||
|
|
||||||
//Retrieve all extrafield for product and add it to values
|
//Retrieve all extrafield for product and add it to values
|
||||||
|
|||||||
@ -78,6 +78,9 @@ $message = GETPOST('message', 'aZ09');
|
|||||||
$suffix = GETPOST("suffix", 'aZ09');
|
$suffix = GETPOST("suffix", 'aZ09');
|
||||||
$source = GETPOST("source", 'alpha');
|
$source = GETPOST("source", 'alpha');
|
||||||
$ref = $REF = GETPOST("ref", 'alpha');
|
$ref = $REF = GETPOST("ref", 'alpha');
|
||||||
|
$urlok = '';
|
||||||
|
$urlko = '';
|
||||||
|
|
||||||
|
|
||||||
if (empty($source)) {
|
if (empty($source)) {
|
||||||
$source = 'proposal';
|
$source = 'proposal';
|
||||||
|
|||||||
@ -84,6 +84,7 @@ if ($action == 'getProducts') {
|
|||||||
}
|
}
|
||||||
unset($prod->fields);
|
unset($prod->fields);
|
||||||
unset($prod->db);
|
unset($prod->db);
|
||||||
|
$prod->price_formated=price(price2num($prod->price, 'MU'), 1, $langs, 1, -1, -1, $conf->currency);
|
||||||
$res[] = $prod;
|
$res[] = $prod;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -301,7 +302,7 @@ if ($action == 'getProducts') {
|
|||||||
'object' => 'product',
|
'object' => 'product',
|
||||||
'img' => $ig,
|
'img' => $ig,
|
||||||
'qty' => 1,
|
'qty' => 1,
|
||||||
//'price_formated' => price(price2num($obj->price, 'MU'), 1, $langs, 1, -1, -1, $conf->currency)
|
'price_formated' => price(price2num($obj->price, 'MU'), 1, $langs, 1, -1, -1, $conf->currency)
|
||||||
);
|
);
|
||||||
// Add entries to row from hooks
|
// Add entries to row from hooks
|
||||||
$parameters=array();
|
$parameters=array();
|
||||||
|
|||||||
@ -826,10 +826,6 @@ div#moreinfo, div#infowarehouse {
|
|||||||
clear: both;
|
clear: both;
|
||||||
}
|
}
|
||||||
|
|
||||||
.div5 .price {
|
|
||||||
display: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
.div5 .imgadd {
|
.div5 .imgadd {
|
||||||
display: none;
|
display: none;
|
||||||
}
|
}
|
||||||
@ -925,18 +921,12 @@ div#moreinfo, div#infowarehouse {
|
|||||||
.div5 .arrow .centerinmiddle {
|
.div5 .arrow .centerinmiddle {
|
||||||
transform: translate(0, 0);
|
transform: translate(0, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
.div5 .price {
|
|
||||||
font-size: 14px;
|
|
||||||
margin-left: auto;
|
|
||||||
margin-right: 30px;
|
|
||||||
padding-right: 10px;
|
|
||||||
font-weight: bold;
|
|
||||||
color: #ff6d6d;
|
|
||||||
display: flex;
|
|
||||||
}
|
|
||||||
|
|
||||||
.div5 .imgadd {
|
.div5 .imgadd {
|
||||||
display: flex;
|
display: flex;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
div.wrapper2{
|
||||||
|
height:10%;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
@ -1375,9 +1375,6 @@ if (!empty($conf->global->TAKEPOS_WEIGHING_SCALE)) {
|
|||||||
<div class="description" id="prodivdesc<?php echo $count; ?>">
|
<div class="description" id="prodivdesc<?php echo $count; ?>">
|
||||||
<div class="description_content" id="prodesc<?php echo $count; ?>"></div>
|
<div class="description_content" id="prodesc<?php echo $count; ?>"></div>
|
||||||
</div>
|
</div>
|
||||||
<div class="price" id="prodivprice<?php echo $count; ?>">
|
|
||||||
</div>
|
|
||||||
<span class="fa fa-plus"></span>
|
|
||||||
<?php } ?>
|
<?php } ?>
|
||||||
<div class="catwatermark" id='prowatermark<?php echo $count; ?>'>...</div>
|
<div class="catwatermark" id='prowatermark<?php echo $count; ?>'>...</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user