Merge branch '13.0' of git@github.com:Dolibarr/dolibarr.git into develop
Conflicts: ChangeLog
This commit is contained in:
commit
92a19c0caa
50
ChangeLog
50
ChangeLog
@ -21,6 +21,56 @@ Following changes may create regressions for some external modules, but were nec
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
***** ChangeLog for 13.0.1 compared to 13.0.0 *****
|
||||||
|
|
||||||
|
FIX: 10.0 before crediting a withdrawal receipt, check whether it has been credited already.
|
||||||
|
FIX: 11.0 when a mandatory extrafield of type sellist contains '0' it should be considered empty and trigger an error message upon insertion
|
||||||
|
FIX: 11.0 when a new intervention is created from an object, a new $extrafields object is instantiated but not initialized
|
||||||
|
FIX: create MO, Column 'tms' cannot be null
|
||||||
|
FIX: #14290 #15900
|
||||||
|
FIX: #16076
|
||||||
|
FIX: #16077
|
||||||
|
FIX: #16079
|
||||||
|
FIX: #16080
|
||||||
|
FIX: 16084
|
||||||
|
FIX: #16107
|
||||||
|
FIX: #16118 Timezone problem on some fields
|
||||||
|
FIX: #16131
|
||||||
|
FIX: #16135
|
||||||
|
FIX: #16143
|
||||||
|
FIX: #16156
|
||||||
|
FIX: #16160
|
||||||
|
FIX: #16185
|
||||||
|
FIX: #16189, fix download/see check deposit PDF
|
||||||
|
FIX: #16215
|
||||||
|
FIX: Accountancy - label_operation is used instead of label_compte
|
||||||
|
FIX: Add critical price patch
|
||||||
|
FIX: Assignement of actors on tasks
|
||||||
|
FIX: Bad dates on info tabs
|
||||||
|
FIX: cash fence for takepos with multientity
|
||||||
|
FIX: CSRF errors on margin forms
|
||||||
|
FIX: encoding status in graph of vendor proposals
|
||||||
|
FIX: Fix detect dispached product and set to received completely when the supplier order have services (support STOCK_SUPPORTS_SERVICES)
|
||||||
|
FIX: Hide/Unhide external ICSS calendars
|
||||||
|
FIX: link to create event when task is in a project with a thirdparty
|
||||||
|
FIX: Localtax must be converted with price2num
|
||||||
|
FIX: manage price min for PRODUIT_CUSTOMER_PRICES
|
||||||
|
FIX: Missing language ico
|
||||||
|
FIX: Must not be able to edit vat of all lines if not draft
|
||||||
|
FIX: Bad "htdocs" found into a path
|
||||||
|
FIX: removed no more used proc update_modified_column_date_m on pgsql (its presence triggered errors)
|
||||||
|
FIX: Vulnerability report by Ricardo Matias
|
||||||
|
FIX: select default mail template
|
||||||
|
FIX: Select transport mode function when creating a supplier invoice and add unique key to the table llx_c_transport_mode in migrate sql
|
||||||
|
FIX: Merge of thirdparties : "unknow column fk_soc" + "Delivery" label
|
||||||
|
FIX: SQL Error in group by with postgres or mysql strict mode
|
||||||
|
FIX: takepos : load date function
|
||||||
|
FIX: Timeout during import
|
||||||
|
FIX: Trigger on expense report was not fired
|
||||||
|
FIX: User creation of expense report not visible
|
||||||
|
FIX: warning when adding a line if $remise_percent is an empty string
|
||||||
|
|
||||||
|
|
||||||
***** ChangeLog for 13.0.0 compared to 12.0.0 *****
|
***** ChangeLog for 13.0.0 compared to 12.0.0 *****
|
||||||
|
|
||||||
For users:
|
For users:
|
||||||
|
|||||||
@ -739,11 +739,11 @@ class Commande extends CommonOrder
|
|||||||
|
|
||||||
if ($usercanclose)
|
if ($usercanclose)
|
||||||
{
|
{
|
||||||
$this->db->begin();
|
|
||||||
if ($this->statut == self::STATUS_CLOSED)
|
if ($this->statut == self::STATUS_CLOSED)
|
||||||
{
|
{
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
$this->db->begin();
|
||||||
|
|
||||||
$now = dol_now();
|
$now = dol_now();
|
||||||
|
|
||||||
|
|||||||
@ -27,7 +27,7 @@ require_once DOL_DOCUMENT_ROOT.'/core/lib/functions.lib.php';
|
|||||||
require_once DOL_DOCUMENT_ROOT.'/intracommreport/class/intracommreport.class.php';
|
require_once DOL_DOCUMENT_ROOT.'/intracommreport/class/intracommreport.class.php';
|
||||||
|
|
||||||
$langs->loadLangs(array("intracommreport"));
|
$langs->loadLangs(array("intracommreport"));
|
||||||
var_dump($_POST);
|
|
||||||
$action = GETPOST('action');
|
$action = GETPOST('action');
|
||||||
$exporttype = GETPOSTISSET('exporttype') ? GETPOST('exporttype', 'alphanohtml') : 'deb'; // DEB ou DES
|
$exporttype = GETPOSTISSET('exporttype') ? GETPOST('exporttype', 'alphanohtml') : 'deb'; // DEB ou DES
|
||||||
$year = GETPOSTINT('year');
|
$year = GETPOSTINT('year');
|
||||||
|
|||||||
@ -48,7 +48,9 @@ $object->fetch($loanid);
|
|||||||
$echeances = new LoanSchedule($db);
|
$echeances = new LoanSchedule($db);
|
||||||
$echeances->fetchAll($object->id);
|
$echeances->fetchAll($object->id);
|
||||||
|
|
||||||
if ($object->paid > 0 && count($echeances->lines) == 0) $pay_without_schedule = 1;
|
if ($object->paid > 0 && count($echeances->lines) == 0) {
|
||||||
|
$pay_without_schedule = 1;
|
||||||
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Actions
|
* Actions
|
||||||
@ -86,8 +88,9 @@ if ($action == 'createecheancier' && empty($pay_without_schedule)) {
|
|||||||
$echeances->lines[] = $new_echeance;
|
$echeances->lines[] = $new_echeance;
|
||||||
$i++;
|
$i++;
|
||||||
}
|
}
|
||||||
var_dump($result);
|
if ($result > 0) {
|
||||||
if ($result > 0) $db->commit();
|
$db->commit();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($action == 'updateecheancier' && empty($pay_without_schedule)) {
|
if ($action == 'updateecheancier' && empty($pay_without_schedule)) {
|
||||||
|
|||||||
@ -46,6 +46,16 @@ $id = GETPOST('id', 'int');
|
|||||||
$ref = GETPOST('ref', 'alpha');
|
$ref = GETPOST('ref', 'alpha');
|
||||||
$taskref = GETPOST('taskref', 'alpha');
|
$taskref = GETPOST('taskref', 'alpha');
|
||||||
|
|
||||||
|
// Load variable for pagination
|
||||||
|
$limit = GETPOST('limit', 'int') ? GETPOST('limit', 'int') : $conf->liste_limit;
|
||||||
|
$sortfield = GETPOST('sortfield', 'aZ09comma');
|
||||||
|
$sortorder = GETPOST('sortorder', 'aZ09comma');
|
||||||
|
$page = GETPOSTISSET('pageplusone') ? (GETPOST('pageplusone') - 1) : GETPOST("page", 'int');
|
||||||
|
if (empty($page) || $page < 0 || GETPOST('button_search', 'alpha') || GETPOST('button_removefilter', 'alpha')) { $page = 0; } // If $page is not defined, or '' or -1 or if we click on clear filters
|
||||||
|
$offset = $limit * $page;
|
||||||
|
$pageprev = $page - 1;
|
||||||
|
$pagenext = $page + 1;
|
||||||
|
|
||||||
$backtopage = GETPOST('backtopage', 'alpha');
|
$backtopage = GETPOST('backtopage', 'alpha');
|
||||||
$cancel = GETPOST('cancel', 'alpha');
|
$cancel = GETPOST('cancel', 'alpha');
|
||||||
|
|
||||||
@ -83,6 +93,12 @@ if ($id > 0 || !empty($ref))
|
|||||||
$extrafields->fetch_name_optionals_label($taskstatic->table_element);
|
$extrafields->fetch_name_optionals_label($taskstatic->table_element);
|
||||||
$search_array_options = $extrafields->getOptionalsFromPost($taskstatic->table_element, '', 'search_');
|
$search_array_options = $extrafields->getOptionalsFromPost($taskstatic->table_element, '', 'search_');
|
||||||
|
|
||||||
|
|
||||||
|
// Default sort order (if not yet defined by previous GETPOST)
|
||||||
|
if (!$sortfield) { reset($object->fields); $sortfield="t.".key($object->fields); } // Set here default search field. By default 1st field in definition. Reset is required to avoid key() to return null.
|
||||||
|
if (!$sortorder) $sortorder = "ASC";
|
||||||
|
|
||||||
|
|
||||||
// Security check
|
// Security check
|
||||||
$socid = 0;
|
$socid = 0;
|
||||||
//if ($user->socid > 0) $socid = $user->socid; // For external user, no check is done on company because readability is managed by public status of project and assignement.
|
//if ($user->socid > 0) $socid = $user->socid; // For external user, no check is done on company because readability is managed by public status of project and assignement.
|
||||||
@ -772,11 +788,11 @@ if ($action == 'create' && $user->rights->projet->creer && (empty($object->third
|
|||||||
if (!empty($arrayfields['t.description']['checked'])) print_liste_field_titre($arrayfields['t.description']['label'], $_SERVER["PHP_SELF"], "", '', $param, '', $sortfield, $sortorder, '');
|
if (!empty($arrayfields['t.description']['checked'])) print_liste_field_titre($arrayfields['t.description']['label'], $_SERVER["PHP_SELF"], "", '', $param, '', $sortfield, $sortorder, '');
|
||||||
if (!empty($arrayfields['t.dateo']['checked'])) print_liste_field_titre($arrayfields['t.dateo']['label'], $_SERVER["PHP_SELF"], "", '', $param, '', $sortfield, $sortorder, 'center ');
|
if (!empty($arrayfields['t.dateo']['checked'])) print_liste_field_titre($arrayfields['t.dateo']['label'], $_SERVER["PHP_SELF"], "", '', $param, '', $sortfield, $sortorder, 'center ');
|
||||||
if (!empty($arrayfields['t.datee']['checked'])) print_liste_field_titre($arrayfields['t.datee']['label'], $_SERVER["PHP_SELF"], "", '', $param, '', $sortfield, $sortorder, 'center ');
|
if (!empty($arrayfields['t.datee']['checked'])) print_liste_field_titre($arrayfields['t.datee']['label'], $_SERVER["PHP_SELF"], "", '', $param, '', $sortfield, $sortorder, 'center ');
|
||||||
if (!empty($arrayfields['t.planned_workload']['checked'])) print_liste_field_titre($arrayfields['t.planned_workload']['label'], $_SERVER["PHP_SELF"], "", '', $param, '', $sortfield, $sortorder, 'right ');
|
if (!empty($arrayfields['t.planned_workload']['checked'])) print_liste_field_titre($arrayfields['t.planned_workload']['label'], $_SERVER["PHP_SELF"], "", '', $param, '', $sortfield, $sortorder, 'right ', '', 1);
|
||||||
if (!empty($arrayfields['t.duration_effective']['checked'])) print_liste_field_titre($arrayfields['t.duration_effective']['label'], $_SERVER["PHP_SELF"], "", '', $param, '', $sortfield, $sortorder, 'right ');
|
if (!empty($arrayfields['t.duration_effective']['checked'])) print_liste_field_titre($arrayfields['t.duration_effective']['label'], $_SERVER["PHP_SELF"], "", '', $param, '', $sortfield, $sortorder, 'right ', '', 1);
|
||||||
if (!empty($arrayfields['t.progress_calculated']['checked'])) print_liste_field_titre($arrayfields['t.progress_calculated']['label'], $_SERVER["PHP_SELF"], "", '', $param, '', $sortfield, $sortorder, 'right ');
|
if (!empty($arrayfields['t.progress_calculated']['checked'])) print_liste_field_titre($arrayfields['t.progress_calculated']['label'], $_SERVER["PHP_SELF"], "", '', $param, '', $sortfield, $sortorder, 'right ', '', 1);
|
||||||
if (!empty($arrayfields['t.progress']['checked'])) print_liste_field_titre($arrayfields['t.progress']['label'], $_SERVER["PHP_SELF"], "", '', $param, '', $sortfield, $sortorder, 'right ');
|
if (!empty($arrayfields['t.progress']['checked'])) print_liste_field_titre($arrayfields['t.progress']['label'], $_SERVER["PHP_SELF"], "", '', $param, '', $sortfield, $sortorder, 'right ', '', 1);
|
||||||
if (!empty($arrayfields['t.progress_summary']['checked'])) print_liste_field_titre($arrayfields['t.progress_summary']['label'], $_SERVER["PHP_SELF"], "", '', $param, '', $sortfield, $sortorder, 'center ');
|
if (!empty($arrayfields['t.progress_summary']['checked'])) print_liste_field_titre($arrayfields['t.progress_summary']['label'], $_SERVER["PHP_SELF"], "", '', $param, '', $sortfield, $sortorder, 'center ', '', 1);
|
||||||
if ($object->usage_bill_time)
|
if ($object->usage_bill_time)
|
||||||
{
|
{
|
||||||
if (!empty($arrayfields['t.tobill']['checked'])) print_liste_field_titre($arrayfields['t.tobill']['label'], $_SERVER["PHP_SELF"], "", '', $param, '', $sortfield, $sortorder, 'right ');
|
if (!empty($arrayfields['t.tobill']['checked'])) print_liste_field_titre($arrayfields['t.tobill']['label'], $_SERVER["PHP_SELF"], "", '', $param, '', $sortfield, $sortorder, 'right ');
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user