Merge branch '17.0' of git@github.com:Dolibarr/dolibarr.git into develop

This commit is contained in:
Laurent Destailleur 2023-01-02 16:46:48 +01:00
commit a7e8460e3c
6 changed files with 25 additions and 15 deletions

View File

@ -21,7 +21,7 @@ For users:
NEW: Minimal PHP version is now PHP 7.0 instead of PHP 5.6
NEW: #21780 Add pid field to Cronjob class and store PID on job execution
NEW: #19680 Add option PRODUCT_ALLOW_EXTERNAL_DOWNLOAD to automatically have uploaded files shared publicly by a link
NEW: #20650 can move the checkbox column on left (experimental option)
NEW: #20650 can move the checkbox column on left (experimental option MAIN_CHECKBOX_LEFT_COLUMN)
NEW: #21000 Added columns 'alias_name' on project, supplier invoice, supplier order, supplier proposals and task list
NEW: #21395 Added option for dark theme mode in display - color and theme
NEW: #21397 added option to auto define barcode numbers for third-parties in barcode module setup

View File

@ -194,7 +194,7 @@ function ajax_autocompleter($selected, $htmlname, $url, $urloption = '', $minLen
$("#'.$htmlnamejquery.'").attr("data-tvatx", ui.item.tva_tx);
$("#'.$htmlnamejquery.'").attr("data-default-vat-code", ui.item.default_vat_code);
';
if (!empty($conf->global->PRODUIT_CUSTOMER_PRICES_BY_QTY)) {
if (!empty($conf->global->PRODUIT_CUSTOMER_PRICES_BY_QTY) || !empty($conf->global->PRODUIT_CUSTOMER_PRICES_BY_QTY_MULTIPRICES)) {
$script .= '
// For customer price when PRODUIT_CUSTOMER_PRICES_BY_QTY is on
console.log("PRODUIT_CUSTOMER_PRICES_BY_QTY is on, propagate also prices by quantity into data-pbqxxx properties");

View File

@ -937,7 +937,7 @@ if (!empty($usemargins) && $user->rights->margins->creer) {
?>
<?php
if (!empty($conf->global->PRODUIT_CUSTOMER_PRICES_BY_QTY)) {
if (!empty($conf->global->PRODUIT_CUSTOMER_PRICES_BY_QTY) || !empty($conf->global->PRODUIT_CUSTOMER_PRICES_BY_QTY_MULTIPRICES)) {
?>
/* To process customer price per quantity (PRODUIT_CUSTOMER_PRICES_BY_QTY works only if combo product is not an ajax after x key pressed) */
var pbq = parseInt($('option:selected', this).attr('data-pbq')); // When select is done from HTML select

View File

@ -378,7 +378,7 @@ class Stripe extends CommonObject
$paymentintent = null;
if (is_object($object) && !empty($conf->global->STRIPE_REUSE_EXISTING_INTENT_IF_FOUND) && empty($conf->global->STRIPE_CARD_PRESENT)) {
if (is_object($object) && getDolGlobalInt('STRIPE_REUSE_EXISTING_INTENT_IF_FOUND') && !getDolGlobalInt('STRIPE_CARD_PRESENT')) {
// Warning. If a payment was tried and failed, a payment intent was created.
// But if we change something on object to pay (amount or other that does not change the idempotency key), reusing same payment intent is not allowed by Stripe.
// Recommended solution is to recreate a new payment intent each time we need one (old one will be automatically closed by Stripe after a delay), Stripe will
@ -435,26 +435,26 @@ class Stripe extends CommonObject
// list of payment method types
$paymentmethodtypes = array("card");
$descriptor = dol_trunc($tag, 10, 'right', 'UTF-8', 1);
if (!empty($conf->global->STRIPE_SEPA_DIRECT_DEBIT)) {
if (getDolGlobalInt('STRIPE_SEPA_DIRECT_DEBIT')) {
$paymentmethodtypes[] = "sepa_debit"; //&& ($object->thirdparty->isInEEC())
//$descriptor = preg_replace('/ref=[^:=]+/', '', $descriptor); // Clean ref
}
if (!empty($conf->global->STRIPE_KLARNA)) {
if (getDolGlobalInt('STRIPE_KLARNA')) {
$paymentmethodtypes[] = "klarna";
}
if (!empty($conf->global->STRIPE_BANCONTACT)) {
if (getDolGlobalInt('STRIPE_BANCONTACT')) {
$paymentmethodtypes[] = "bancontact";
}
if (!empty($conf->global->STRIPE_IDEAL)) {
if (getDolGlobalInt('STRIPE_IDEAL')) {
$paymentmethodtypes[] = "ideal";
}
if (!empty($conf->global->STRIPE_GIROPAY)) {
if (getDolGlobalInt('STRIPE_GIROPAY')) {
$paymentmethodtypes[] = "giropay";
}
if (!empty($conf->global->STRIPE_SOFORT)) {
if (getDolGlobalInt('STRIPE_SOFORT')) {
$paymentmethodtypes[] = "sofort";
}
if (!empty($conf->global->STRIPE_CARD_PRESENT) && $mode == 'terminal') {
if (getDolGlobalInt('STRIPE_CARD_PRESENT') && $mode == 'terminal') {
$paymentmethodtypes = array("card_present");
}
@ -484,13 +484,13 @@ class Stripe extends CommonObject
//$dataforintent["setup_future_usage"] = "off_session";
$dataforintent["off_session"] = true;
}
if (!empty($conf->global->STRIPE_GIROPAY)) {
if (getDolGlobalInt('STRIPE_GIROPAY')) {
unset($dataforintent['setup_future_usage']);
}
if (!empty($conf->global->STRIPE_KLARNA)) {
if (getDolGlobalInt('STRIPE_KLARNA')) {
unset($dataforintent['setup_future_usage']);
}
if (!empty($conf->global->STRIPE_CARD_PRESENT) && $mode == 'terminal') {
if (getDolGlobalInt('STRIPE_CARD_PRESENT') && $mode == 'terminal') {
unset($dataforintent['setup_future_usage']);
$dataforintent["capture_method"] = "manual";
$dataforintent["confirmation_method"] = "manual";
@ -500,7 +500,7 @@ class Stripe extends CommonObject
$description .= ' - '.$payment_method;
}
if ($conf->entity != $conf->global->STRIPECONNECT_PRINCIPAL && $stripefee > 0) {
if ($conf->entity != getDolGlobalInt('STRIPECONNECT_PRINCIPAL') && $stripefee > 0) {
$dataforintent["application_fee_amount"] = $stripefee;
}
if ($usethirdpartyemailforreceiptemail && is_object($object) && $object->thirdparty->email) {

View File

@ -171,6 +171,11 @@ table.liste th.wrapcolumntitle.liste_titre_sel:not(.maxwidthsearch), table.liste
max-width: 100px;
text-overflow: ellipsis;
}
th.wrapcolumntitle dl dt a span.fas.fa-list {
padding-bottom: 0;
vertical-align: bottom;
}
/*.liste_titre input[name=month_date_when], .liste_titre input[name=monthvalid], .liste_titre input[name=search_ordermonth], .liste_titre input[name=search_deliverymonth],
.liste_titre input[name=search_smonth], .liste_titre input[name=search_month], .liste_titre input[name=search_emonth], .liste_titre input[name=smonth], .liste_titre input[name=month], .liste_titre select[name=month],
.liste_titre select[name=year],

View File

@ -485,6 +485,11 @@ th.wrapcolumntitle.liste_titre_sel:not(.maxwidthsearch), td.wrapcolumntitle.list
max-width: 120px;
text-overflow: ellipsis;
}
th.wrapcolumntitle dl dt a span.fas.fa-list {
padding-bottom: 0;
vertical-align: bottom;
}
.liste_titre input[name=month_date_when], .liste_titre input[name=monthvalid], .liste_titre input[name=search_ordermonth], .liste_titre input[name=search_deliverymonth],
.liste_titre input[name=search_smonth], .liste_titre input[name=search_month], .liste_titre input[name=search_emonth], .liste_titre input[name=smonth], .liste_titre input[name=month],
.liste_titre input[name=month_lim], .liste_titre input[name=month_start], .liste_titre input[name=month_end], .liste_titre input[name=month_create],