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

This commit is contained in:
Laurent Destailleur 2022-04-30 17:28:55 +02:00
commit 7b8e08bbf6
7 changed files with 26 additions and 19 deletions

View File

@ -8532,7 +8532,7 @@ class Form
public function showLinkToObjectBlock($object, $restrictlinksto = array(), $excludelinksto = array())
{
global $conf, $langs, $hookmanager;
global $bc, $action;
global $action;
$linktoelem = '';
$linktoelemlist = '';
@ -8579,11 +8579,10 @@ class Form
);
}
// Can complete the possiblelink array
$hookmanager->initHooks(array('commonobject'));
$parameters = array('listofidcompanytoscan' => $listofidcompanytoscan);
if (!empty($listofidcompanytoscan)) { // If empty, we don't have criteria to scan the object we can link to
// Can complete the possiblelink array
$hookmanager->initHooks(array('commonobject'));
$parameters = array('listofidcompanytoscan' => $listofidcompanytoscan, 'possiblelinks' => $possiblelinks);
$reshook = $hookmanager->executeHooks('showLinkToObjectBlock', $parameters, $object, $action); // Note that $action and $object may have been modified by hook
}

View File

@ -125,14 +125,14 @@ class mod_project_simple extends ModeleNumRefProjects
*/
public function getNextValue($objsoc, $project)
{
global $db, $conf;
global $db;
// First, we get the max value
$posindice = strlen($this->prefix) + 6;
$sql = "SELECT MAX(CAST(SUBSTRING(ref FROM ".$posindice.") AS SIGNED)) as max";
$sql .= " FROM ".MAIN_DB_PREFIX."projet";
$sql .= " WHERE ref LIKE '".$db->escape($this->prefix)."____-%'";
$sql .= " AND entity = ".$conf->entity;
$sql .= " AND entity IN (".getEntity('projectnumber', 1, $project).")";
$resql = $db->query($sql);
if ($resql) {
@ -147,7 +147,7 @@ class mod_project_simple extends ModeleNumRefProjects
return -1;
}
$date = empty($project->date_c) ?dol_now() : $project->date_c;
$date = (empty($project->date_c) ? dol_now() : $project->date_c);
//$yymm = strftime("%y%m",time());
$yymm = strftime("%y%m", $date);

View File

@ -136,8 +136,11 @@ class mod_project_universal extends ModeleNumRefProjects
return 0;
}
$date = empty($project->date_c) ?dol_now() : $project->date_c;
$numFinal = get_next_value($db, $mask, 'projet', 'ref', '', (is_object($objsoc) ? $objsoc->code_client : ''), $date);
// Get entities
$entity = getEntity('projectnumber', 1, $project);
$date = (empty($project->date_c) ? dol_now() : $project->date_c);
$numFinal = get_next_value($db, $mask, 'projet', 'ref', '', (is_object($objsoc) ? $objsoc : ''), $date, 'next', false, null, $entity);
return $numFinal;
}

View File

@ -129,7 +129,7 @@ class mod_ticket_simple extends ModeleNumRefTicket
$sql .= " FROM ".MAIN_DB_PREFIX."ticket";
$search = $this->prefix."____-%";
$sql .= " WHERE ref LIKE '".$db->escape($search)."'";
$sql .= " AND entity = ".$conf->entity;
$sql .= " AND entity IN (".getEntity('ticketnumber', 1, $ticket).")";
$resql = $db->query($sql);
if ($resql) {

View File

@ -134,8 +134,11 @@ class mod_ticket_universal extends ModeleNumRefTicket
return 0;
}
// Get entities
$entity = getEntity('ticketnumber', 1, $ticket);
$date = empty($ticket->datec) ? dol_now() : $ticket->datec;
$numFinal = get_next_value($db, $mask, 'ticket', 'ref', '', $objsoc->code_client, $date);
$numFinal = get_next_value($db, $mask, 'ticket', 'ref', '', $objsoc->code_client, $date, 'next', false, null, $entity);
return $numFinal;
}

View File

@ -177,7 +177,7 @@ if ($action == 'updateMask') {
$file = dol_buildpath($reldir."core/modules/mymodule/doc/pdf_".$modele."_".strtolower($tmpobjectkey).".modules.php", 0);
if (file_exists($file)) {
$filefound = 1;
$classname = "pdf_".$modele;
$classname = "pdf_".$modele."_".strtolower($tmpobjectkey);
break;
}
}
@ -188,7 +188,7 @@ if ($action == 'updateMask') {
$module = new $classname($db);
if ($module->write_file($tmpobject, $langs) > 0) {
header("Location: ".DOL_URL_ROOT."/document.php?modulepart=".strtolower($tmpobjectkey)."&file=SPECIMEN.pdf");
header("Location: ".DOL_URL_ROOT."/document.php?modulepart=mymodule-".strtolower($tmpobjectkey)."&file=SPECIMEN.pdf");
return;
} else {
setEventMessages($module->error, null, 'errors');
@ -701,7 +701,8 @@ foreach ($myTmpObjects as $myTmpObjectKey => $myTmpObjectArray) {
// Preview
print '<td class="center">';
if ($module->type == 'pdf') {
print '<a href="'.$_SERVER["PHP_SELF"].'?action=specimen&module='.$name.'&object='.$myTmpObjectKey.'">'.img_object($langs->trans("Preview"), 'pdf').'</a>';
$newname = preg_replace('/_'.preg_quote(strtolower($myTmpObjectKey), '/').'/', '', $name);
print '<a href="'.$_SERVER["PHP_SELF"].'?action=specimen&module='.urlencode($newname).'&object='.urlencode($myTmpObjectKey).'">'.img_object($langs->trans("Preview"), 'pdf').'</a>';
} else {
print img_object($langs->trans("PreviewNotAvailable"), 'generic');
}

View File

@ -120,10 +120,10 @@ if ($action == 'updateMask') {
$file = ''; $classname = ''; $filefound = 0;
$dirmodels = array_merge(array('/'), (array) $conf->modules_parts['models']);
foreach ($dirmodels as $reldir) {
$file = dol_buildpath($reldir."core/modules/mymodule/doc/pdf_".$modele."_".strtolower($tmpobjectkey).".modules.php", 0);
$file = dol_buildpath($reldir."core/modules/recruitment/doc/pdf_".$modele."_".strtolower($tmpobjectkey).".modules.php", 0);
if (file_exists($file)) {
$filefound = 1;
$classname = "pdf_".$modele;
$classname = "pdf_".$modele."_".strtolower($tmpobjectkey);
break;
}
}
@ -134,7 +134,7 @@ if ($action == 'updateMask') {
$module = new $classname($db);
if ($module->write_file($tmpobject, $langs) > 0) {
header("Location: ".DOL_URL_ROOT."/document.php?modulepart=".strtolower($tmpobjectkey)."&file=SPECIMEN.pdf");
header("Location: ".DOL_URL_ROOT."/document.php?modulepart=recruitment-".strtolower($tmpobjectkey)."&file=SPECIMEN.pdf");
return;
} else {
setEventMessages($module->error, null, 'errors');
@ -501,7 +501,8 @@ foreach ($myTmpObjects as $myTmpObjectKey => $myTmpObjectArray) {
// Preview
print '<td class="center">';
if ($module->type == 'pdf') {
print '<a href="'.$_SERVER["PHP_SELF"].'?action=specimen&module='.$name.'&object='.$myTmpObjectKey.'">'.img_object($langs->trans("Preview"), 'generic').'</a>';
$newname = preg_replace('/_'.preg_quote(strtolower($myTmpObjectKey), '/').'/', '', $name);
print '<a href="'.$_SERVER["PHP_SELF"].'?action=specimen&module='.urlencode($newname).'&object='.urlencode($myTmpObjectKey).'">'.img_object($langs->trans("Preview"), 'pdf').'</a>';
} else {
print img_object($langs->trans("PreviewNotAvailable"), 'generic');
}