Merge branch 'develop' into NEW_option_not_prefill_shipment_lines_qty

This commit is contained in:
uvaldenaire-opendsi 2025-01-14 11:57:04 +01:00
commit 152f2b1eaa
28 changed files with 68 additions and 49 deletions

View File

@ -664,7 +664,7 @@ class Contact extends CommonObject
$sql .= ", phone = ".(isset($this->phone_pro) ? "'".$this->db->escape($this->phone_pro)."'" : "NULL");
$sql .= ", phone_perso = ".(isset($this->phone_perso) ? "'".$this->db->escape($this->phone_perso)."'" : "NULL");
$sql .= ", phone_mobile = ".(isset($this->phone_mobile) ? "'".$this->db->escape($this->phone_mobile)."'" : "NULL");
$sql .= ", priv = '".$this->db->escape($this->priv)."'";
$sql .= ", priv = ".((int) $this->priv);
$sql .= ", fk_prospectlevel = '".$this->db->escape($this->fk_prospectlevel)."'";
if (isset($this->stcomm_id)) {
$sql .= ", fk_stcommcontact = ".($this->stcomm_id > 0 || $this->stcomm_id == -1 ? $this->stcomm_id : "0");

View File

@ -12,7 +12,7 @@
* Copyright (C) 2019-2024 Frédéric France <frederic.france@free.fr>
* Copyright (C) 2019 Josep Lluís Amador <joseplluis@lliuretic.cat>
* Copyright (C) 2020 Open-Dsi <support@open-dsi.fr>
* Copyright (C) 2024 MDW <mdeweerd@users.noreply.github.com>
* Copyright (C) 2024-2025 MDW <mdeweerd@users.noreply.github.com>
* Copyright (C) 2024 Benjamin Falière <benjamin.faliere@altairis.fr>
*
* This program is free software; you can redistribute it and/or modify
@ -368,7 +368,7 @@ if (empty($reshook)) {
if (GETPOST('button_removefilter_x', 'alpha') || GETPOST('button_removefilter.x', 'alpha') || GETPOST('button_removefilter', 'alpha')) { // All tests are required to be compatible with all browsers
$search_all = "";
$search_id = '';
$search_ref = '';
$search_ref_ext = '';
$search_firstlast_only = "";
$search_lastname = "";
$search_firstname = "";
@ -866,8 +866,8 @@ if ($search_all != '') {
if ($search_id > 0) {
$param .= "&search_id=".((int) $search_id);
}
if ($search_ref) {
$param .= "&search_ref=".urlencode($search_ref);
if ($search_ref_ext) {
$param .= "&search_ref_ext=".urlencode($search_ref_ext);
}
if ($search_lastname != '') {
$param .= '&search_lastname='.urlencode($search_lastname);

View File

@ -58,13 +58,13 @@ if ($action == 'update' && !empty($arrayofparameters) && is_array($arrayofparame
foreach ($arrayofparameters as $key => $val) {
// Modify constant only if key was posted (avoid resetting key to the null value)
if (GETPOSTISSET($key)) {
if (!empty($val['type']) && preg_match('/category:/', $val['type'])) {
if (isset($val['type']) && preg_match('/category:/', $val['type'])) {
if (GETPOSTINT($key) == '-1') {
$val_const = '';
} else {
$val_const = GETPOSTINT($key);
}
} elseif ($val['type'] == 'html') {
} elseif (isset($val['type']) && $val['type'] == 'html') {
$val_const = GETPOST($key, 'restricthtml');
} else {
$val_const = GETPOST($key, 'alpha');

View File

@ -1,8 +1,9 @@
<?php
/* Copyright (C) 2008-2021 Laurent Destailleur <eldy@users.sourceforge.net>
* Copyright (C) 2008-2021 Regis Houssin <regis.houssin@inodbox.com>
* Copyright (C) 2020 Ferran Marcet <fmarcet@2byte.es>
* Copyright (C) 2024 MDW <mdeweerd@users.noreply.github.com>
* Copyright (C) 2024-2025 MDW <mdeweerd@users.noreply.github.com>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@ -234,18 +235,18 @@ function dolDecrypt($chain, $key = '')
* If constant MAIN_SECURITY_SALT is defined, we use it as a salt (used only if hashing algorithm is something else than 'password_hash').
*
* @param string $chain String to hash
* @param string $type Type of hash:
* 'auto' or '0': will use MAIN_SECURITY_HASH_ALGO else md5
* 'sha1' or '1': sha1
* 'sha1md5' or '2': sha1md5
* 'md5' or '3': md5
* 'openldapxxx' or '4': for OpenLdap
* 'sha256' or '5': sha256
* 'password_hash' or '6': password_hash
* Use 'md5' if hash is not needed for security purpose. For security need, prefer 'auto'.
* @param 'auto'|'0'|'sha1'|'1'|'sha1md5'|'2'|'md5'|'3'|'openldap'|'4'|'sha256'|'5'|'password_hash'|'6' $type Type of hash:
* 'auto' or '0': will use MAIN_SECURITY_HASH_ALGO else md5
* 'sha1' or '1': sha1
* 'sha1md5' or '2': sha1md5
* 'md5' or '3': md5
* 'openldapxxx' or '4': for OpenLdap
* 'sha256' or '5': sha256
* 'password_hash' or '6': password_hash
* Use 'md5' if hash is not needed for security purpose. For security need, prefer 'auto'.
* @param int $nosalt Do not include any salt
* @param int $mode 0=Return encoded password, 1=Return array with encoding password + encoding algorithm
* @return string|array<pass_encrypted:string,pass_encoding:string> Hash of string or array with pass_encrypted and pass_encoding
* @return string|array{pass_encrypted:string,pass_encoding:string} Hash of string or array with pass_encrypted and pass_encoding
* @see getRandomPassword(), dol_verifyHash()
*/
function dol_hash($chain, $type = '0', $nosalt = 0, $mode = 0)

View File

@ -33,7 +33,7 @@
*/
function dolStripPhpCode($str, $replacewith = '')
{
$str = str_replace('<?=', '<?php', $str);
$str = str_replace('<?=', '<?php echo', $str); // replace a bad practive
$newstr = '';
@ -77,9 +77,9 @@ function dolStripPhpCode($str, $replacewith = '')
*/
function dolKeepOnlyPhpCode($str)
{
$str = str_replace('<?=', '<?php', $str);
$str = str_replace('<?=', '<?php echo', $str);
$str = str_replace('<?php', '__LTINTPHP__', $str);
$str = str_replace('<?', '<?php', $str); // replace the short_open_tag. It is recommended to set this is Off in php.ini
$str = str_replace('<?', '<?php', $str); // replace the short_open_tag. It is recommended to set this to Off in php.ini
$str = str_replace('__LTINTPHP__', '<?php', $str);
$newstr = '';

View File

@ -2753,8 +2753,8 @@ class DolibarrModules // Can not be abstract, because we need to instantiate it
$tmpfieldsofline = explode(';', $line);
$modulekey = strtolower($tmpfieldsofline[0]);
$conf->cache['noncompliantmodules'][$modulekey]['name'] = $tmpfieldsofline[0];
$conf->cache['noncompliantmodules'][$modulekey]['id'] = $tmpfieldsofline[1];
$conf->cache['noncompliantmodules'][$modulekey]['signature'] = $tmpfieldsofline[2];
$conf->cache['noncompliantmodules'][$modulekey]['id'] = (isset($tmpfieldsofline[1]) ? $tmpfieldsofline[1] : '');
$conf->cache['noncompliantmodules'][$modulekey]['signature'] = (isset($tmpfieldsofline[2]) ? $tmpfieldsofline[2] : '');
$conf->cache['noncompliantmodules'][$modulekey]['message'] = $langs->trans(empty($tmpfieldsofline[3]) ? 'WarningModuleAffiliatedToAReportedCompany' : $tmpfieldsofline[3]);
if (!empty($tmpfieldsofline[4])) {
$message2 = $langs->trans("WarningModuleAffiliatedToAPiratPlatform", '{s}');

View File

@ -489,15 +489,15 @@ class ConferenceOrBoothAttendee extends CommonObject
if (count($filter) > 0) {
foreach ($filter as $key => $value) {
if ($key == 't.rowid' || $key == 't.fk_soc' || $key == 't.fk_project' || $key == 't.fk_actioncomm') {
$sqlwhere[] = $key.'='.((int) $value);
} elseif (in_array($this->fields[$key]['type'], array('date', 'datetime', 'timestamp'))) {
$sqlwhere[] = $key." = '".$this->db->idate($value)."'";
$sqlwhere[] = $this->db->sanitize($key).' = '.((int) $value);
} elseif (!empty($this->fields[$key]) && in_array($this->fields[$key]['type'], array('date', 'datetime', 'timestamp'))) {
$sqlwhere[] = $this->db->sanitize($key)." = '".$this->db->idate($value)."'";
} elseif ($key == 'customsql') {
$sqlwhere[] = $value;
} elseif (strpos($value, '%') === false) {
$sqlwhere[] = $key.' IN ('.$this->db->sanitize($this->db->escape($value)).')';
$sqlwhere[] = $this->db->sanitize($key).' IN ('.$this->db->sanitize($this->db->escape($value)).')';
} else {
$sqlwhere[] = $key." LIKE '%".$this->db->escape($value)."%'";
$sqlwhere[] = $this->db->sanitize($key)." LIKE '%".$this->db->escape($value)."%'";
}
}
}

View File

@ -257,6 +257,7 @@ logOutFromYourCustomerAccount=Déconnectez-vous de votre compte client
filteredByVersion=Filtré par version
removeFilter=Supprimer filtre
viewMyCart=Voir mon panier
Shipping=Expédition
freeShipping=Expédition gratuite !
noProducts=Aucun produits
nbrItemsInCart=Il y a <span class="ajax_cart_quantity">0</span> articles dans votre panier.

View File

@ -1,7 +1,7 @@
<?php
/* Copyright (C) 2021 Dorian Vabre <dorian.vabre@gmail.com>
* Copyright (C) 2023 Laurent Destailleur <eldy@users.sourceforge.net>
* Copyright (C) 2024 MDW <mdeweerd@users.noreply.github.com>
* Copyright (C) 2024-2025 MDW <mdeweerd@users.noreply.github.com>
* Copyright (C) 2024 Frédéric France <frederic.france@free.fr>
*
* This program is free software; you can redistribute it and/or modify
@ -362,7 +362,7 @@ if (empty($reshook) && $action == 'add' && (!empty($conference->id) && $conferen
// If the registration has already been paid for this attendee
if (!empty($confattendee->date_subscription) && !empty($confattendee->amount)) {
$securekeyurl = dol_hash(getDolGlobalString('EVENTORGANIZATION_SECUREKEY') . 'conferenceorbooth'.$id, 'master');
$securekeyurl = dol_hash(getDolGlobalString('EVENTORGANIZATION_SECUREKEY') . 'conferenceorbooth'.$id, 'md5');
$redirection = $dolibarr_main_url_root.'/public/eventorganization/subscriptionok.php?id='.((int) $id).'&securekey='.urlencode($securekeyurl);
$mesg = $langs->trans("RegistrationAndPaymentWereAlreadyRecorded", $email);

View File

@ -28,6 +28,9 @@ if (!defined('ISLOADEDBYSTEELSHEET')) {
@phan-var-force string $colorblind_deuteranopes_badgeWarning
';
?>
/* IDE Hack <style type="text/css"> */
/* Badge style is based on bootstrap framework */
.badge {

View File

@ -16,7 +16,8 @@ if (!defined('ISLOADEDBYSTEELSHEET')) {
* @var string $left
*/
?>
/* <style type="text/css" > */
/* IDE Hack <style type="text/css"> */
:root {
--btncolortext: rgb(<?php print $colortextlink; ?>);

View File

@ -4,7 +4,9 @@ if (!defined('ISLOADEDBYSTEELSHEET')) {
}
include_once DOL_DOCUMENT_ROOT."/core/lib/functions2.lib.php";
?>
/* <style type="text/css" > don't remove this line it's an ide hack */
/* IDE Hack <style type="text/css"> */
/*
* Dropdown of user popup
*/

View File

@ -3,6 +3,8 @@ if (!defined('ISLOADEDBYSTEELSHEET')) {
die('Must be call by steelsheet');
}
?>
/* IDE Hack <style type="text/css"> */
.template-container {
display: flex;
justify-content: space-between;

View File

@ -28,7 +28,7 @@ if (!defined('ISLOADEDBYSTEELSHEET')) {
* @var string $path
*/
?>
/* <style type="text/css" > */ /* don't remove this line it's an ide hack */
/* IDE Hack <style type="text/css"> */
.flag-sprite {
background:url(<?php echo dol_buildpath($path.'/theme/common/flags/flag-sprite.png', 1) ?>) no-repeat top left; display:inline-block;

View File

@ -153,7 +153,7 @@ $leftmenuwidth = 240;
$borderradius = getDolGlobalString('THEME_ELDY_USEBORDERONTABLE') ? getDolGlobalInt('THEME_ELDY_BORDER_RADIUS', 6) : 0;
?>
/* <style type="text/css" > */
/* IDE Hack <style type="text/css"> */
/* ============================================================================== */
/* Default styles */

View File

@ -14,7 +14,7 @@ if (!defined('ISLOADEDBYSTEELSHEET')) {
@phan-var-force string $left
';
?>
/* <style type="text/css" > */
/* IDE Hack <style type="text/css"> */
/*
* Component: Info Box

View File

@ -25,7 +25,7 @@ if (!defined('ISLOADEDBYSTEELSHEET')) {
die('Must be call by stylesheet');
}
?>
/* <style type="text/css" > */
/* IDE Hack <style type="text/css"> */
.mainmenu::before{
/* font part */

View File

@ -55,6 +55,7 @@ if (!defined('NOSESSION')) {
}
require_once __DIR__.'/../../main.inc.php';
/**
* @var Conf $conf
*/

View File

@ -2,7 +2,9 @@
if (!defined('ISLOADEDBYSTEELSHEET')) {
die('Must be call by steelsheet');
} ?>
/* <style type="text/css" > */
/* IDE Hack <style type="text/css"> */
/*
progress style is based on bootstrap and admin lte framework
*/
@ -198,4 +200,3 @@ body[class*="colorblind-"] .progress-bar-red, body[class*="colorblind-"] .progre
.progress-bar-consumed-late {
background-color: <?php echo colorAgressiveness($badgeDanger, -95, +70) ?>;
}

View File

@ -11,7 +11,8 @@
if (!defined('ISLOADEDBYSTEELSHEET')) {
die('Must be call by steelsheet');
} ?>
/* <style type="text/css" > */
/* IDE Hack <style type="text/css"> */
/*

View File

@ -30,7 +30,9 @@ if (!defined('ISLOADEDBYSTEELSHEET')) {
@phan-var-force string $colorblind_deuteranopes_badgeWarning
';
?>
/* <style type="text/css" > */
/* IDE Hack <style type="text/css"> */
/*
Badge style is based on bootstrap framework
*/

View File

@ -13,7 +13,8 @@ if (!defined('ISLOADEDBYSTEELSHEET')) {
* @var string $textbutaction
*/
?>
/* <style type="text/css" > */
/* IDE Hack <style type="text/css"> */
:root {
--btncolortext:rgb(<?php print $colortextlink; ?>);

View File

@ -7,7 +7,9 @@ if (!defined('ISLOADEDBYSTEELSHEET')) {
$atoploginusername = empty($user->photo) ? 52 : 0;
?>
/* <style type="text/css" > don't remove this line it's an ide hack */
/* IDE Hack <style type="text/css"> */
/*
* Dropdown of user popup
*/

View File

@ -2,7 +2,8 @@
if (!defined('ISLOADEDBYSTEELSHEET')) {
die('Must be call by steelsheet');
} ?>
/* <style type="text/css" > don't remove this line it's an ide hack */
/* IDE Hack <style type="text/css"> */
.flag-sprite {
background:url(<?php echo dol_buildpath($path.'/theme/common/flags/flag-sprite.png', 1) ?>) no-repeat top left; display:inline-block;

View File

@ -16,7 +16,8 @@ if (!defined('ISLOADEDBYSTEELSHEET')) {
@phan-var-force string $left
';
?>
/* <style type="text/css" > */
/* IDE Hack <style type="text/css"> */
/*

View File

@ -1,7 +1,8 @@
<?php if (!defined('ISLOADEDBYSTEELSHEET')) {
die('Must be call by steelsheet');
} ?>
/* <style type="text/css" > */
/* IDE Hack <style type="text/css"> */
.mainmenu::before{
/* font part */

View File

@ -4,6 +4,3 @@ if (!defined('ISLOADEDBYSTEELSHEET')) {
}
include dol_buildpath($path.'/theme/eldy/progress.inc.php', 0); // actually md use same style as eldy theme
?>
/* <style type="text/css" > */

View File

@ -396,7 +396,8 @@ print '*/'."\n";
$leftmenuwidth = 242;
?>
/* <style type="text/css" > */
/* IDE Hack <style type="text/css"> */
/* ============================================================================== */