Skip to content

Commit

Permalink
Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into d…
Browse files Browse the repository at this point in the history
…evelop
  • Loading branch information
eldy committed Nov 15, 2024
2 parents a2dce69 + 01687b3 commit 6e43b77
Show file tree
Hide file tree
Showing 65 changed files with 122 additions and 118 deletions.
30 changes: 0 additions & 30 deletions build/phpstan/phpstan-baseline.neon
Original file line number Diff line number Diff line change
Expand Up @@ -11106,12 +11106,6 @@ parameters:
count: 4
path: ../../htdocs/core/class/ctyperesource.class.php

-
message: '#^Property CUnits\:\:\$scale \(string\) in isset\(\) is not nullable\.$#'
identifier: isset.property
count: 4
path: ../../htdocs/core/class/cunits.class.php

-
message: '#^Property CUnits\:\:\$short_label \(string\) in isset\(\) is not nullable\.$#'
identifier: isset.property
Expand Down Expand Up @@ -22308,12 +22302,6 @@ parameters:
count: 1
path: ../../htdocs/fourn/commande/card.php

-
message: '#^Variable \$text might not be defined\.$#'
identifier: variable.undefined
count: 2
path: ../../htdocs/fourn/commande/card.php

-
message: '#^If condition is always false\.$#'
identifier: if.alwaysFalse
Expand Down Expand Up @@ -27252,12 +27240,6 @@ parameters:
count: 1
path: ../../htdocs/partnership/partnership_card.php

-
message: '#^Variable \$upload_dir might not be defined\.$#'
identifier: variable.undefined
count: 1
path: ../../htdocs/partnership/partnership_document.php

-
message: '#^Negated boolean expression is always true\.$#'
identifier: booleanNot.alwaysTrue
Expand Down Expand Up @@ -30432,18 +30414,6 @@ parameters:
count: 1
path: ../../htdocs/projet/tasks/comment.php

-
message: '#^Variable \$mode might not be defined\.$#'
identifier: variable.undefined
count: 1
path: ../../htdocs/projet/tasks/comment.php

-
message: '#^Variable \$socid might not be defined\.$#'
identifier: variable.undefined
count: 1
path: ../../htdocs/projet/tasks/comment.php

-
message: '#^Call to function method_exists\(\) with Project and ''fetchComments'' will always evaluate to true\.$#'
identifier: function.alreadyNarrowedType
Expand Down
6 changes: 6 additions & 0 deletions htdocs/adherents/class/api_members.class.php
Original file line number Diff line number Diff line change
Expand Up @@ -689,6 +689,12 @@ public function getCategories($id, $sortfield = "s.rowid", $sortorder = 'ASC', $
throw new RestException(403);
}

$member = new Adherent($this->db);
$result = $member->fetch($id);
if (0 === $result) {
throw new RestException(404, 'Member not found');
}

$categories = new Categorie($this->db);

$result = $categories->getListForItem($id, 'member', $sortfield, $sortorder, $limit, $page);
Expand Down
6 changes: 3 additions & 3 deletions htdocs/admin/pdf_other.php
Original file line number Diff line number Diff line change
Expand Up @@ -227,7 +227,7 @@
*/

print '<tr class="oddeven"><td>';
print $form->textwithpicto($langs->trans("MAIN_PDF_ADD_TERMSOFSALE_PROPAL"), '');
print $form->textwithpicto($langs->trans("MAIN_PDF_ADD_TERMSOFSALE_PROPAL"), $langs->trans("PdfAddTermOfSaleHelp"));
print '</td><td>';
if ($conf->use_javascript_ajax) {
print ajax_constantonoff('MAIN_PDF_ADD_TERMSOFSALE_PROPAL');
Expand Down Expand Up @@ -259,7 +259,7 @@
print '<table summary="more" class="noborder centpercent">';
print '<tr class="liste_titre"><td class="titlefieldmiddle">'.$langs->trans("Parameters").'</td><td width="200px">'.$langs->trans("Value").'</td></tr>';
print '<tr class="oddeven"><td>';
print $form->textwithpicto($langs->trans("MAIN_PDF_ADD_TERMSOFSALE_ORDER"), '');
print $form->textwithpicto($langs->trans("MAIN_PDF_ADD_TERMSOFSALE_ORDER"), $langs->trans("PdfAddTermOfSaleHelp"));
print '</td><td>';
if ($conf->use_javascript_ajax) {
print ajax_constantonoff('MAIN_PDF_ADD_TERMSOFSALE_ORDER');
Expand Down Expand Up @@ -373,7 +373,7 @@
print '<tr class="liste_titre"><td class="titlefieldmiddle">'.$langs->trans("Parameters").'</td><td width="200px">'.$langs->trans("Value").'</td></tr>';

print '<tr class="oddeven"><td>';
print $form->textwithpicto($langs->trans("MAIN_PDF_ADD_TERMSOFSALE_INVOICE"), '');
print $form->textwithpicto($langs->trans("MAIN_PDF_ADD_TERMSOFSALE_INVOICE"), $langs->trans("PdfAddTermOfSaleHelp"));
print '</td><td>';
if ($conf->use_javascript_ajax) {
print ajax_constantonoff('MAIN_PDF_ADD_TERMSOFSALE_INVOICE');
Expand Down
2 changes: 1 addition & 1 deletion htdocs/categories/class/categorie.class.php
Original file line number Diff line number Diff line change
Expand Up @@ -1103,7 +1103,7 @@ public function getListForItem($id, $type = 'customer', $sortfield = "s.rowid",
return -1;
}
if (!count($categories)) {
return 0;
return [];
}

return $categories;
Expand Down
2 changes: 1 addition & 1 deletion htdocs/comm/action/class/actioncomm.class.php
Original file line number Diff line number Diff line change
Expand Up @@ -1938,7 +1938,7 @@ public function getTypeLabel($mode = 0)
if (!getDolGlobalString('AGENDA_USE_EVENT_TYPE') && empty($arraylist[$labeltype])) {
$labeltype = 'AC_OTH';
}
if (preg_match('/^TICKET_MSG/', $this->code)) {
if (!empty($this->code) && preg_match('/^TICKET_MSG/', $this->code)) {
$labeltype = $langs->trans("Message");
} else {
if (!empty($arraylist[$labeltype])) {
Expand Down
4 changes: 2 additions & 2 deletions htdocs/comm/propal/class/propal.class.php
Original file line number Diff line number Diff line change
Expand Up @@ -402,8 +402,8 @@ class Propal extends CommonObject
'fk_delivery_address' => array('type' => 'integer', 'label' => 'DeliveryAddress', 'enabled' => 1, 'visible' => 0, 'position' => 200), // deprecated
'fk_input_reason' => array('type' => 'integer', 'label' => 'InputReason', 'enabled' => 1, 'visible' => -1, 'position' => 205),
'extraparams' => array('type' => 'varchar(255)', 'label' => 'Extraparams', 'enabled' => 1, 'visible' => -1, 'position' => 215),
'fk_incoterms' => array('type' => 'integer', 'label' => 'IncotermCode', 'enabled' => '$conf->incoterm->enabled', 'visible' => -1, 'position' => 220),
'location_incoterms' => array('type' => 'varchar(255)', 'label' => 'IncotermLabel', 'enabled' => '$conf->incoterm->enabled', 'visible' => -1, 'position' => 225),
'fk_incoterms' => array('type' => 'integer', 'label' => 'IncotermCode', 'enabled' => 'isModEnabled("incoterm")', 'visible' => -1, 'position' => 220),
'location_incoterms' => array('type' => 'varchar(255)', 'label' => 'IncotermLabel', 'enabled' => 'isModEnabled("incoterm")', 'visible' => -1, 'position' => 225),
'fk_multicurrency' => array('type' => 'integer', 'label' => 'MulticurrencyID', 'enabled' => 1, 'visible' => -1, 'position' => 230),
'multicurrency_code' => array('type' => 'varchar(255)', 'label' => 'MulticurrencyCurrency', 'enabled' => 'isModEnabled("multicurrency")', 'visible' => -1, 'position' => 235),
'multicurrency_tx' => array('type' => 'double(24,8)', 'label' => 'MulticurrencyRate', 'enabled' => 'isModEnabled("multicurrency")', 'visible' => -1, 'position' => 240, 'isameasure' => 1),
Expand Down
2 changes: 1 addition & 1 deletion htdocs/core/bookmarks_page.php
Original file line number Diff line number Diff line change
Expand Up @@ -97,7 +97,7 @@
$searchForm = '';


if (empty($conf->bookmark->enabled)) {
if (!isModEnabled('bookmark')) {
$langs->load("admin");
$bookmarkList .= '<br><span class="opacitymedium">'.$langs->trans("WarningModuleNotActive", $langs->transnoentitiesnoconv("Bookmarks")).'</span>';
$bookmarkList .= '<br><br>';
Expand Down
8 changes: 8 additions & 0 deletions htdocs/core/class/commondocgenerator.class.php
Original file line number Diff line number Diff line change
Expand Up @@ -1565,6 +1565,14 @@ public function getExtrafieldContent($object, $extrafieldKey, $outputlangs = nul
$extrafieldOutputContent = dol_string_nohtmltag($extrafieldOutputContent);
}

// Display stars extrafield as simple string
if ($extrafields->attributes[$object->table_element]['type'][$extrafieldKey] == 'stars') {
$extrafieldOutputContent = '';
for ($i = 0; $i < $object->array_options[$extrafieldOptionsKey]; $i++) {
$extrafieldOutputContent .= ' *';
}
}

$parameters = array(
'object' => $object,
'extrafields' => $extrafields,
Expand Down
7 changes: 4 additions & 3 deletions htdocs/core/class/dolgraph.class.php
Original file line number Diff line number Diff line change
Expand Up @@ -782,6 +782,9 @@ public function GetCeilMaxValue()
{
// phpcs:enable
$max = $this->GetMaxValueInData();
if (!isset($max)) {
$max = 0;
}
if ($max != 0) {
$max++;
}
Expand All @@ -792,9 +795,7 @@ public function GetCeilMaxValue()
}

$res = 0;
if (is_numeric($max)) {
$res = ceil($max / $factor) * $factor;
}
$res = ceil($max / $factor) * $factor;

//print "max=".$max." res=".$res;
return (int) $res;
Expand Down
2 changes: 1 addition & 1 deletion htdocs/core/class/html.formfile.class.php
Original file line number Diff line number Diff line change
Expand Up @@ -507,7 +507,7 @@ public function showdocuments($modulepart, $modulesubdir, $filedir, $urlsource,
$printer = 0;
// The direct print feature is implemented only for such elements
if (in_array($modulepart, array('contract', 'facture', 'supplier_proposal', 'propal', 'proposal', 'order', 'commande', 'expedition', 'commande_fournisseur', 'expensereport', 'delivery', 'ticket'))) {
$printer = ($user->hasRight('printing', 'read') && !empty($conf->printing->enabled));
$printer = ($user->hasRight('printing', 'read') && isModEnabled('printing'));
}

$hookmanager->initHooks(array('formfile'));
Expand Down
6 changes: 3 additions & 3 deletions htdocs/core/class/infobox.class.php
Original file line number Diff line number Diff line change
Expand Up @@ -231,7 +231,7 @@ public static function saveboxorder($dbs, $zone, $boxorder, $userid = 0)

require_once DOL_DOCUMENT_ROOT.'/core/lib/functions2.lib.php';

dol_syslog(get_class()."::saveboxorder zone=".$zone." userid=".$userid);
dol_syslog(self::class."::saveboxorder zone=".$zone." userid=".$userid);

if (!$userid || $userid == 0) {
return 0;
Expand All @@ -258,15 +258,15 @@ public static function saveboxorder($dbs, $zone, $boxorder, $userid = 0)
$sql .= " AND fk_user = ".((int) $userid);
$sql .= " AND position = ".((int) $zone);

dol_syslog(get_class()."::saveboxorder", LOG_DEBUG);
dol_syslog(self::class."::saveboxorder", LOG_DEBUG);
$result = $dbs->query($sql);
if ($result) {
$colonnes = explode('-', $boxorder);
foreach ($colonnes as $collist) {
$part = explode(':', $collist);
$colonne = $part[0];
$list = $part[1];
dol_syslog(get_class()."::saveboxorder column=".$colonne.' list='.$list);
dol_syslog(self::class."::saveboxorder column=".$colonne.' list='.$list);

$i = 0;
$listarray = explode(',', $list);
Expand Down
2 changes: 1 addition & 1 deletion htdocs/core/lib/contact.lib.php
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ function contact_prepare_head(Contact $object)
$head[$tab][2] = 'card';
$tab++;

if ((!empty($conf->ldap->enabled) && getDolGlobalString('LDAP_CONTACT_ACTIVE'))
if ((isModEnabled('ldap') && getDolGlobalString('LDAP_CONTACT_ACTIVE'))
&& (!getDolGlobalString('MAIN_DISABLE_LDAP_TAB') || !empty($user->admin))) {
$langs->load("ldap");

Expand Down
8 changes: 4 additions & 4 deletions htdocs/core/lib/functions.lib.php
Original file line number Diff line number Diff line change
Expand Up @@ -11323,7 +11323,7 @@ function printCommonFooter($zone = 'private')
}

let tmpvalueisempty = false;
if (tmpvalue === null || tmpvalue === undefined || tmpvalue === '') {
if (tmpvalue === null || tmpvalue === undefined || tmpvalue === '' || tmpvalue === -1) {
tmpvalueisempty = true;
}
if (tmpvalue === '0' && tmptypefield == 'select') {
Expand Down Expand Up @@ -14605,7 +14605,7 @@ function show_actions_messaging($conf, $langs, $db, $filterobj, $objcon = null,


$out .= '<!-- timeline item -->'."\n";
$out .= '<li class="timeline-code-'.strtolower($actionstatic->code).'">';
$out .= '<li class="timeline-code-'.(!empty($actionstatic->code) ? strtolower($actionstatic->code) : "none").'">';

//$timelineicon = getTimelineIcon($actionstatic, $histo, $key);
$typeicon = $actionstatic->getTypePicto('pictofixedwidth timeline-icon-not-applicble', $labeltype);
Expand Down Expand Up @@ -14696,9 +14696,9 @@ function show_actions_messaging($conf, $langs, $db, $filterobj, $objcon = null,
}

$libelle = '';
if (preg_match('/^TICKET_MSG/', $actionstatic->code)) {
if (!empty($actionstatic->code) && preg_match('/^TICKET_MSG/', $actionstatic->code)) {
$out .= $langs->trans('TicketNewMessage');
} elseif (preg_match('/^TICKET_MSG_PRIVATE/', $actionstatic->code)) {
} elseif (!empty($actionstatic->code) && preg_match('/^TICKET_MSG_PRIVATE/', $actionstatic->code)) {
$out .= $langs->trans('TicketNewMessage').' <em>('.$langs->trans('Private').')</em>';
} elseif (isset($histo[$key]['type'])) {
if ($histo[$key]['type'] == 'action') {
Expand Down
4 changes: 2 additions & 2 deletions htdocs/core/lib/member.lib.php
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ function member_prepare_head(Adherent $object)
$head[$h][2] = 'general';
$h++;

if ((!empty($conf->ldap->enabled) && getDolGlobalString('LDAP_MEMBER_ACTIVE'))
if ((isModEnabled('ldap') && getDolGlobalString('LDAP_MEMBER_ACTIVE'))
&& (!getDolGlobalString('MAIN_DISABLE_LDAP_TAB') || !empty($user->admin))) {
$langs->load("ldap");

Expand Down Expand Up @@ -193,7 +193,7 @@ function member_type_prepare_head(AdherentType $object)
$h++;
}

if ((!empty($conf->ldap->enabled) && getDolGlobalString('LDAP_MEMBER_TYPE_ACTIVE'))
if ((isModEnabled('ldap') && getDolGlobalString('LDAP_MEMBER_TYPE_ACTIVE'))
&& (!getDolGlobalString('MAIN_DISABLE_LDAP_TAB') || !empty($user->admin))) {
$langs->load("ldap");

Expand Down
2 changes: 2 additions & 0 deletions htdocs/core/lib/modulebuilder.lib.php
Original file line number Diff line number Diff line change
Expand Up @@ -348,6 +348,8 @@ function rebuildObjectSql($destdir, $module, $objectname, $newmask, $readdir = '
$type = 'double'; // html modulebuilder type is a text type in database
} elseif (in_array($type, array('link', 'sellist', 'duration'))) {
$type = 'integer';
} elseif ($type == 'chkbxlst') {
$type = 'varchar(128)';
} elseif ($type == 'mail') {
$type = 'varchar(128)';
} elseif (strpos($type, 'stars(') === 0) {
Expand Down
2 changes: 1 addition & 1 deletion htdocs/core/lib/propal.lib.php
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ function propal_prepare_head($object)
$head[$h][2] = 'comm';
$h++;

if ((empty($conf->commande->enabled) && ((isModEnabled("shipping") && getDolGlobalInt('MAIN_SUBMODULE_EXPEDITION') && $user->hasRight('expedition', 'lire'))
if ((!isModEnabled('order') && ((isModEnabled("shipping") && getDolGlobalInt('MAIN_SUBMODULE_EXPEDITION') && $user->hasRight('expedition', 'lire'))
|| (getDolGlobalInt('MAIN_SUBMODULE_DELIVERY') && $user->hasRight('expedition', 'delivery', 'lire'))))) {
$langs->load("sendings");
$text = '';
Expand Down
4 changes: 2 additions & 2 deletions htdocs/core/lib/usergroups.lib.php
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,7 @@ function user_prepare_head(User $object)
$head[$h][2] = 'user';
$h++;

if ((!empty($conf->ldap->enabled) && getDolGlobalString('LDAP_SYNCHRO_ACTIVE'))
if ((isModEnabled('ldap') && getDolGlobalString('LDAP_SYNCHRO_ACTIVE'))
&& (!getDolGlobalString('MAIN_DISABLE_LDAP_TAB') || !empty($user->admin))) {
$langs->load("ldap");
$head[$h][0] = DOL_URL_ROOT.'/user/ldap.php?id='.$object->id;
Expand Down Expand Up @@ -254,7 +254,7 @@ function group_prepare_head($object)
$head[$h][2] = 'group';
$h++;

if ((!empty($conf->ldap->enabled) && getDolGlobalString('LDAP_SYNCHRO_ACTIVE'))
if ((isModEnabled('ldap') && getDolGlobalString('LDAP_SYNCHRO_ACTIVE'))
&& (!getDolGlobalString('MAIN_DISABLE_LDAP_TAB') || !empty($user->admin))) {
$langs->load("ldap");
$head[$h][0] = DOL_URL_ROOT.'/user/group/ldap.php?id='.$object->id;
Expand Down
9 changes: 7 additions & 2 deletions htdocs/core/lib/website.lib.php
Original file line number Diff line number Diff line change
Expand Up @@ -597,9 +597,10 @@ function redirectToContainer($containerref, $containeraliasalt = '', $containeri
* It outputs content of file sanitized from html and body part.
*
* @param string $containerref Path to file to include (must be a page from website root. Example: 'mypage.php' means 'mywebsite/mypage.php')
* @param int $once If set to 1, we use include_once.
* @return void
*/
function includeContainer($containerref)
function includeContainer($containerref, $once = 0)
{
global $conf, $db, $hookmanager, $langs, $mysoc, $user, $website, $websitepage, $weblangs; // Very important. Required to have var available when running included containers.
global $includehtmlcontentopened;
Expand Down Expand Up @@ -630,7 +631,11 @@ function includeContainer($containerref)
//print preg_replace(array('/^.*<body[^>]*>/ims','/<\/body>.*$/ims'), array('', ''), $content);*/

ob_start();
$res = @include $fullpathfile; // Include because we want to execute code content
if ($once) {
$res = @include_once $fullpathfile;
} else {
$res = @include $fullpathfile;
}
$tmpoutput = ob_get_contents();
ob_end_clean();

Expand Down
2 changes: 1 addition & 1 deletion htdocs/core/login/functions_ldap.php
Original file line number Diff line number Diff line change
Expand Up @@ -167,7 +167,7 @@ function check_user_password_ldap($usertotest, $passwordtotest, $entitytotest)
// Note: Test on date validity is done later natively with isNotIntoValidityDateRange() by core after calling checkLoginPassEntity() that call this method

// ldap2dolibarr synchronisation
if ($login && !empty($conf->ldap->enabled) && getDolGlobalInt('LDAP_SYNCHRO_ACTIVE') == Ldap::SYNCHRO_LDAP_TO_DOLIBARR) { // ldap2dolibarr synchronization
if ($login && isModEnabled('ldap') && getDolGlobalInt('LDAP_SYNCHRO_ACTIVE') == Ldap::SYNCHRO_LDAP_TO_DOLIBARR) { // ldap2dolibarr synchronization
dol_syslog("functions_ldap::check_user_password_ldap Sync ldap2dolibarr");

// On charge les attributes du user ldap
Expand Down
3 changes: 2 additions & 1 deletion htdocs/core/modules/bank/doc/pdf_sepamandate.modules.php
Original file line number Diff line number Diff line change
Expand Up @@ -575,7 +575,8 @@ protected function _signature_area(&$pdf, $object, $posy, $outputlangs)
$pdf->MultiCell($largcol, $tab_hl, $outputlangs->transnoentitiesnoconv("Signature"), 0, 'L', 1);

$pdf->SetXY($posx, $tab_top + $tab_hl);
$pdf->MultiCell($largcol, $tab_hl * 3, '', 1, 'R');
//$pdf->MultiCell($largcol, $tab_hl * 3, '', 1, 'R');
$pdf->RoundedRect($posx, $tab_top + $tab_hl + 3, $largcol, $tab_hl * 3, $this->corner_radius, '1234', 'D');

return ($tab_hl * 7);
}
Expand Down
2 changes: 1 addition & 1 deletion htdocs/core/modules/modAsset.class.php
Original file line number Diff line number Diff line change
Expand Up @@ -114,7 +114,7 @@ public function __construct($db)
);


if (!isset($conf->asset) || !isset($conf->asset->enabled)) {
if (!isModEnabled('asset')) {
$conf->asset = new stdClass();
$conf->asset->enabled = 0;
}
Expand Down
2 changes: 1 addition & 1 deletion htdocs/core/modules/modCollab.class.php
Original file line number Diff line number Diff line change
Expand Up @@ -118,7 +118,7 @@ public function __construct($db)
'url' => '/collab/index.php',
'langs' => 'collab', // Lang file to use (without .lang) by module. File must be in langs/code_CODE/ directory.
'position' => 100,
'enabled' => '$conf->collab->enabled', // Define condition to show or hide menu entry. Use '$conf->mymodule->enabled' if entry must be visible if module is enabled. Use '$leftmenu==\'system\'' to show if leftmenu system is selected.
'enabled' => 'isModEnabled("collab")', // Define condition to show or hide menu entry. Use '$conf->mymodule->enabled' if entry must be visible if module is enabled. Use '$leftmenu==\'system\'' to show if leftmenu system is selected.
'perms' => '1', // Use 'perms'=>'$user->hasRight("mymodule","level1","level2")' if you want your menu with a permission rules
'target' => '',
'user' => 2 // 0=Menu for internal users, 1=external users, 2=both
Expand Down
2 changes: 1 addition & 1 deletion htdocs/core/modules/modDataPolicy.class.php
Original file line number Diff line number Diff line change
Expand Up @@ -129,7 +129,7 @@ public function __construct($db)
'fr_FR:ParentCompany'=>'Maison mère ou revendeur'
) */

if (!isset($conf->datapolicy) || !isset($conf->datapolicy->enabled)) {
if (!isModEnabled('datapolicy')) {
$conf->datapolicy = new stdClass();
$conf->datapolicy->enabled = 0;
}
Expand Down
3 changes: 2 additions & 1 deletion htdocs/core/modules/propale/doc/pdf_azur.modules.php
Original file line number Diff line number Diff line change
Expand Up @@ -1849,7 +1849,8 @@ protected function _signature_area(&$pdf, $object, $posy, $outputlangs)
$pdf->MultiCell($largcol, $tab_hl, $outputlangs->transnoentities("ProposalCustomerSignature"), 0, 'L', 1);

$pdf->SetXY($posx, $tab_top + $tab_hl + 3);
$pdf->MultiCell($largcol, $tab_hl * 3, '', 1, 'R');
//$pdf->MultiCell($largcol, $tab_hl * 3, '', 1, 'R');
$pdf->RoundedRect($posx, $tab_top + $tab_hl + 3, $largcol, $tab_hl * 3, $this->corner_radius, '1234', 'D');
if (getDolGlobalString('MAIN_PDF_PROPAL_USE_ELECTRONIC_SIGNING')) {
// Can be retrieve with getSignatureAppearanceArray()
// Can be also detected by putting the mouse over the area when using evince pdf reader
Expand Down
4 changes: 3 additions & 1 deletion htdocs/core/modules/propale/doc/pdf_cyan.modules.php
Original file line number Diff line number Diff line change
Expand Up @@ -1919,7 +1919,9 @@ protected function drawSignatureArea(&$pdf, $object, $posy, $outputlangs)
$pdf->MultiCell($largcol, $tab_hl, $outputlangs->transnoentities("ProposalCustomerSignature"), 0, 'L', 1);

$pdf->SetXY($posx, $tab_top + $tab_hl + 3);
$pdf->MultiCell($largcol, $tab_hl * 3, '', 1, 'R');
//$pdf->MultiCell($largcol, $tab_hl * 3, '', 1, 'R');
$pdf->RoundedRect($posx, $tab_top + $tab_hl + 3, $largcol, $tab_hl * 3, $this->corner_radius, '1234', 'D');


if (getDolGlobalString('MAIN_PDF_PROPAL_USE_ELECTRONIC_SIGNING')) {
// Can be retrieve with getSignatureAppearanceArray()
Expand Down
Loading

0 comments on commit 6e43b77

Please sign in to comment.