Merge remote-tracking branch 'upstream/develop' into completeTabHead
This commit is contained in:
commit
59e046112c
@ -366,7 +366,7 @@ class AdherentType extends CommonObject
|
||||
$sql .= "libelle = '".$this->db->escape($this->label)."',";
|
||||
$sql .= "morphy = '".$this->db->escape($this->morphy)."',";
|
||||
$sql .= "subscription = '".$this->db->escape($this->subscription)."',";
|
||||
$sql .= "amount = '".$this->db->escape($this->amount)."',";
|
||||
$sql .= "amount = ".((empty($this->amount) && $this->amount == '') ? 'null' : ((float) $this->amount)).",";
|
||||
$sql .= "duration = '".$this->db->escape($this->duration_value.$this->duration_unit)."',";
|
||||
$sql .= "note = '".$this->db->escape($this->note)."',";
|
||||
$sql .= "vote = ".(integer) $this->db->escape($this->vote).",";
|
||||
|
||||
@ -198,8 +198,8 @@ foreach ($data as $val) {
|
||||
//print '</a>';
|
||||
print '</td>';
|
||||
print '<td class="right">'.$val['nb'].'</td>';
|
||||
print '<td class="right">'.price(price2num($val['total'], 'MT'), 1).'</td>';
|
||||
print '<td class="right">'.price(price2num($val['avg'], 'MT'), 1).'</td>';
|
||||
print '<td class="right"><span class="amount">'.price(price2num($val['total'], 'MT'), 1).'</span></td>';
|
||||
print '<td class="right"><span class="amount">'.price(price2num($val['avg'], 'MT'), 1).'</span></td>';
|
||||
print '</tr>';
|
||||
$oldyear = $year;
|
||||
}
|
||||
|
||||
@ -71,7 +71,7 @@ $label = GETPOST("label", "alpha");
|
||||
$morphy = GETPOST("morphy", "alpha");
|
||||
$status = GETPOST("status", "int");
|
||||
$subscription = GETPOST("subscription", "int");
|
||||
$amount = price2num(GETPOST('amount', 'alpha'), 'MT');
|
||||
$amount = GETPOST('amount', 'alpha');
|
||||
$duration_value = GETPOST('duration_value', 'int');
|
||||
$duration_unit = GETPOST('duration_unit', 'alpha');
|
||||
$vote = GETPOST("vote", "int");
|
||||
@ -119,7 +119,7 @@ if ($action == 'add' && $user->rights->adherent->configurer) {
|
||||
$object->morphy = trim($morphy);
|
||||
$object->status = (int) $status;
|
||||
$object->subscription = (int) $subscription;
|
||||
$object->amount = $amount;
|
||||
$object->amount = ($amount == '' ? '' : price2num($amount, 'MT'));
|
||||
$object->duration_value = $duration_value;
|
||||
$object->duration_unit = $duration_unit;
|
||||
$object->note = trim($comment);
|
||||
@ -166,12 +166,11 @@ if ($action == 'update' && $user->rights->adherent->configurer) {
|
||||
$object->fetch($rowid);
|
||||
|
||||
$object->oldcopy = clone $object;
|
||||
|
||||
$object->label= trim($label);
|
||||
$object->morphy = trim($morphy);
|
||||
$object->status = (int) $status;
|
||||
$object->subscription = (int) $subscription;
|
||||
$object->amount = $amount;
|
||||
$object->amount = ($amount == '' ? '' : price2num($amount, 'MT'));;
|
||||
$object->duration_value = $duration_value;
|
||||
$object->duration_unit = $duration_unit;
|
||||
$object->note = trim($comment);
|
||||
@ -306,7 +305,7 @@ if (!$rowid && $action != 'create' && $action != 'edit') {
|
||||
}
|
||||
print '</td>';
|
||||
print '<td class="center">'.yn($objp->subscription).'</td>';
|
||||
print '<td class="center">'.price($objp->amount).'</td>';
|
||||
print '<td class="center"><span class="amount">'.(is_null($objp->amount) || $objp->amount === '' ? '' : price($objp->amount)).'</span></td>';
|
||||
print '<td class="center">'.yn($objp->vote).'</td>';
|
||||
print '<td class="center">'.$membertype->getLibStatut(5).'</td>';
|
||||
if ($user->rights->adherent->configurer) {
|
||||
@ -446,7 +445,7 @@ if ($rowid > 0) {
|
||||
print '</tr>';
|
||||
|
||||
print '<tr><td class="titlefield">'.$langs->trans("Amount").'</td><td>';
|
||||
print price($object->amount);
|
||||
print ((is_null($object->amount) || $object->amount === '') ? '' : price($object->amount));
|
||||
print '</tr>';
|
||||
|
||||
print '<tr><td>'.$langs->trans("VoteAllowed").'</td><td>';
|
||||
@ -594,24 +593,24 @@ if ($rowid > 0) {
|
||||
$titre .= " (".$membertype->label.")";
|
||||
}
|
||||
|
||||
$param = "&rowid=".$object->id;
|
||||
$param = "&rowid=".urlencode($object->id);
|
||||
if (!empty($status)) {
|
||||
$param .= "&status=".$status;
|
||||
$param .= "&status=".urlencode($status);
|
||||
}
|
||||
if (!empty($search_lastname)) {
|
||||
$param .= "&search_lastname=".$search_lastname;
|
||||
$param .= "&search_lastname=".urlencode($search_lastname);
|
||||
}
|
||||
if (!empty($search_firstname)) {
|
||||
$param .= "&search_firstname=".$search_firstname;
|
||||
$param .= "&search_firstname=".urlencode($search_firstname);
|
||||
}
|
||||
if (!empty($search_login)) {
|
||||
$param .= "&search_login=".$search_login;
|
||||
$param .= "&search_login=".urlencode($search_login);
|
||||
}
|
||||
if (!empty($search_email)) {
|
||||
$param .= "&search_email=".$search_email;
|
||||
$param .= "&search_email=".urlencode($search_email);
|
||||
}
|
||||
if (!empty($filter)) {
|
||||
$param .= "&filter=".$filter;
|
||||
$param .= "&filter=".urlencode($filter);
|
||||
}
|
||||
|
||||
if ($sall) {
|
||||
@ -797,7 +796,9 @@ if ($rowid > 0) {
|
||||
print '</td></tr>';
|
||||
|
||||
print '<tr><td>'.$langs->trans("Amount").'</td><td>';
|
||||
print '<input name="amount" size="5" value="'.price($object->amount).'">';
|
||||
print '<input name="amount" size="5" value="';
|
||||
print ((is_null($object->amount) || $object->amount === '') ? '' : price($object->amount));
|
||||
print '">';
|
||||
print '</td></tr>';
|
||||
|
||||
print '<tr><td>'.$langs->trans("VoteAllowed").'</td><td>';
|
||||
|
||||
@ -40,6 +40,8 @@ if (GETPOST('action', 'aZ09') == 'donothing') {
|
||||
exit;
|
||||
}
|
||||
|
||||
$execmethod = empty($conf->global->MAIN_EXEC_USE_POPEN) ? 1 : $conf->global->MAIN_EXEC_USE_POPEN;
|
||||
|
||||
|
||||
/*
|
||||
* View
|
||||
@ -74,7 +76,13 @@ print "<strong>PHP allow_url_include</strong> = ".(ini_get('allow_url_include')
|
||||
print "<strong>PHP disable_functions</strong> = ";
|
||||
$arrayoffunctionsdisabled = explode(',', ini_get('disable_functions'));
|
||||
$arrayoffunctionstodisable = explode(',', 'pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals');
|
||||
$arrayoffunctionstodisable2 = explode(',', 'exec,passthru,shell_exec,system,proc_open,popen');
|
||||
if ($execmethod == 1) {
|
||||
$arrayoffunctionstodisable2 = explode(',', 'passthru,shell_exec,system,proc_open,popen');
|
||||
$functiontokeep = 'exec';
|
||||
} else {
|
||||
$arrayoffunctionstodisable2 = explode(',', 'exec,passthru,shell_exec,system,proc_open');
|
||||
$functiontokeep = 'popen';
|
||||
}
|
||||
$i = 0;
|
||||
foreach ($arrayoffunctionsdisabled as $functionkey) {
|
||||
if ($i > 0) {
|
||||
@ -115,6 +123,13 @@ if ($todisabletext) {
|
||||
print '<br>';
|
||||
}
|
||||
|
||||
print $langs->trans("PHPFunctionsRequiredForCLI").': ';
|
||||
if (in_array($functiontokeep, $arrayoffunctionsdisabled)) {
|
||||
print img_picto($langs->trans("PHPFunctionsRequiredForCLI"), 'warning');
|
||||
}
|
||||
print '<span class="opacitymedium">'.$functiontokeep.'</span>';
|
||||
print '<br>';
|
||||
|
||||
print '<br>';
|
||||
|
||||
// XDebug
|
||||
@ -245,6 +260,22 @@ print '<strong>MAIN_SECURITY_ANTI_SSRF_SERVER_IP</strong> = '.(empty($conf->glob
|
||||
print '<br>';
|
||||
|
||||
|
||||
print '<strong>MAIN_EXEC_USE_POPEN</strong> = ';
|
||||
if (empty($conf->global->MAIN_EXEC_USE_POPEN)) {
|
||||
print '<span class="opacitymedium">'.$langs->trans("Undefined").'</span> ';
|
||||
} else {
|
||||
print $conf->global->MAIN_EXEC_USE_POPEN.' ';
|
||||
}
|
||||
if ($execmethod == 1) {
|
||||
print ' --> "exec" PHP method will be used for shell commands.';
|
||||
}
|
||||
if ($execmethod == 2) {
|
||||
print ' --> "popen" PHP method will be used for shell commands.';
|
||||
}
|
||||
print "<br>";
|
||||
print '<br>';
|
||||
|
||||
|
||||
print '<strong>'.$langs->trans("AntivirusEnabledOnUpload").'</strong>: ';
|
||||
print empty($conf->global->MAIN_ANTIVIRUS_COMMAND) ? '' : img_picto('', 'tick').' ';
|
||||
print yn($conf->global->MAIN_ANTIVIRUS_COMMAND ? 1 : 0);
|
||||
|
||||
@ -338,14 +338,13 @@ if ($result) {
|
||||
if ($search_accountancy_subledger > 0) {
|
||||
$param .= '&search_accountancy_subledger='.urlencode($search_accountancy_subledger);
|
||||
}
|
||||
|
||||
if ($optioncss != '') {
|
||||
$param .= '&optioncss='.urlencode($optioncss);
|
||||
$param .= '&optioncss='.urlencode($optioncss);
|
||||
}
|
||||
|
||||
$url = DOL_URL_ROOT.'/compta/bank/various_payment/card.php?action=create';
|
||||
if (!empty($socid)) {
|
||||
$url .= '&socid='.$socid;
|
||||
$url .= '&socid='.urlencode($socid);
|
||||
}
|
||||
$newcardbutton = dolGetButtonTitle($langs->trans('MenuNewVariousPayment'), '', 'fa fa-plus-circle', $url, '', $user->rights->banque->modifier);
|
||||
|
||||
@ -423,7 +422,7 @@ if ($result) {
|
||||
|
||||
// Payment type
|
||||
if ($arrayfields['type']['checked']) {
|
||||
print '<td class="liste_titre left">';
|
||||
print '<td class="liste_titre center">';
|
||||
$form->select_types_paiements($typeid, 'typeid', '', 0, 1, 1, 16, 1, 'maxwidth100');
|
||||
print '</td>';
|
||||
}
|
||||
@ -498,7 +497,7 @@ if ($result) {
|
||||
print_liste_field_titre($arrayfields['ref']['label'], $_SERVER["PHP_SELF"], 'v.rowid', '', $param, '', $sortfield, $sortorder);
|
||||
}
|
||||
if ($arrayfields['label']['checked']) {
|
||||
print_liste_field_titre($arrayfields['label']['label'], $_SERVER["PHP_SELF"], 'v.label', '', $param, '', $sortfield, $sortorder, 'left ');
|
||||
print_liste_field_titre($arrayfields['label']['label'], $_SERVER["PHP_SELF"], 'v.label', '', $param, '', $sortfield, $sortorder);
|
||||
}
|
||||
if ($arrayfields['datep']['checked']) {
|
||||
print_liste_field_titre($arrayfields['datep']['label'], $_SERVER["PHP_SELF"], 'v.datep,v.rowid', '', $param, '', $sortfield, $sortorder, 'center ');
|
||||
@ -507,7 +506,7 @@ if ($result) {
|
||||
print_liste_field_titre($arrayfields['datev']['label'], $_SERVER["PHP_SELF"], 'v.datev,v.rowid', '', $param, '', $sortfield, $sortorder, 'center ');
|
||||
}
|
||||
if ($arrayfields['type']['checked']) {
|
||||
print_liste_field_titre($arrayfields['type']['label'], $_SERVER["PHP_SELF"], 'type', '', $param, '', $sortfield, $sortorder, 'left ');
|
||||
print_liste_field_titre($arrayfields['type']['label'], $_SERVER["PHP_SELF"], 'type', '', $param, '', $sortfield, $sortorder, 'center ');
|
||||
}
|
||||
if ($arrayfields['project']['checked']) {
|
||||
print_liste_field_titre($arrayfields['project']['label'], $_SERVER["PHP_SELF"], 'fk_project', '', $param, '', $sortfield, $sortorder);
|
||||
@ -590,7 +589,7 @@ if ($result) {
|
||||
|
||||
// Type
|
||||
if ($arrayfields['type']['checked']) {
|
||||
print '<td>';
|
||||
print '<td class="center">';
|
||||
if ($obj->payment_code) {
|
||||
print $langs->trans("PaymentTypeShort".$obj->payment_code);
|
||||
print ' ';
|
||||
|
||||
@ -88,8 +88,8 @@ class FormOther
|
||||
*/
|
||||
$out .= '<br>';
|
||||
$out .= '<center>';
|
||||
$out .= '<input type="submit" class="button paddingleftonly paddingrightonly" name="addscan" value="'.$langs->trans("Add").'">';
|
||||
$out .= '<input type="submit" class="button paddingleftonly paddingrightonly" name="cancel" value="'.$langs->trans("Cancel").'">';
|
||||
$out .= '<input type="submit" class="button marginleftonly marginrightonly" name="addscan" value="'.$langs->trans("Add").'">';
|
||||
$out .= '<input type="submit" class="button marginleftonly marginrightonly" name="cancel" value="'.$langs->trans("Cancel").'">';
|
||||
$out .= '<br>';
|
||||
|
||||
$out .= '<span class="opacitymedium">'.$langs->trans("FeatureNotYetAvailable").'</span>';
|
||||
|
||||
@ -354,7 +354,7 @@ class Utils
|
||||
$execmethod = 1;
|
||||
}
|
||||
|
||||
dol_syslog("Utils::dumpDatabase execmethod=".$execmethod." command:".$fullcommandcrypted, LOG_DEBUG);
|
||||
dol_syslog("Utils::dumpDatabase execmethod=".$execmethod." command:".$fullcommandcrypted, LOG_INFO);
|
||||
|
||||
// TODO Replace with executeCLI function
|
||||
if ($execmethod == 1) {
|
||||
|
||||
@ -33,7 +33,7 @@ global $langs;
|
||||
|
||||
$err = 0;
|
||||
|
||||
$setuplang = GETPOST("selectlang", '', 3) ? GETPOST("selectlang", '', 3) : (GETPOST('lang', 'alpha', 1) ? GETPOST('lang', 'alpha', 1) : 'auto');
|
||||
$setuplang = GETPOST("selectlang", 'alpha', 3) ? GETPOST("selectlang", 'alpha', 3) : (GETPOST('lang', 'alpha', 1) ? GETPOST('lang', 'alpha', 1) : 'auto');
|
||||
$langs->setDefaultLang($setuplang);
|
||||
|
||||
$langs->loadLangs(array("install", "errors"));
|
||||
|
||||
@ -64,6 +64,10 @@ ALTER TABLE llx_export_model MODIFY COLUMN type varchar(64);
|
||||
|
||||
-- For v14
|
||||
|
||||
ALTER TABLE llx_product_lot ADD COLUMN eol_date datetime NULL;
|
||||
ALTER TABLE llx_product_lot ADD COLUMN manufacturing_date datetime NULL;
|
||||
ALTER TABLE llx_product_lot ADD COLUMN scrapping_date datetime NULL;
|
||||
|
||||
create table llx_accounting_groups_account
|
||||
(
|
||||
rowid integer AUTO_INCREMENT PRIMARY KEY,
|
||||
|
||||
@ -24,6 +24,9 @@ CREATE TABLE llx_product_lot (
|
||||
batch varchar(128) DEFAULT NULL, -- Lot or serial number
|
||||
eatby date DEFAULT NULL, -- Eatby date
|
||||
sellby date DEFAULT NULL, -- Sellby date
|
||||
eol_date datetime NULL,
|
||||
manufacturing_date datetime NULL,
|
||||
scrapping_date datetime NULL,
|
||||
datec datetime,
|
||||
tms timestamp DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
fk_user_creat integer,
|
||||
|
||||
@ -2127,7 +2127,8 @@ ConfFileIsReadableOrWritableByAnyUsers=The conf file is readable or writable by
|
||||
MailToSendEventOrganization=Event Organization
|
||||
AGENDA_EVENT_DEFAULT_STATUS=Default event status when creating a event from the form
|
||||
YouShouldDisablePHPFunctions=You should disable PHP functions
|
||||
IfCLINotRequiredYouShouldDisablePHPFunctions=Except if you need to run system commands (for the module Scheduled job, or to run the external command line Anti-virus for example), you shoud disable PHP functions
|
||||
IfCLINotRequiredYouShouldDisablePHPFunctions=Except if you need to run system commands in custom code, you shoud disable PHP functions
|
||||
PHPFunctionsRequiredForCLI=For shell purpose (like scheduled job backup or running an anitivurs program), you must keep PHP functions
|
||||
NoWritableFilesFoundIntoRootDir=No writable files or directories of the common programs were found into your root directory (Good)
|
||||
RecommendedValueIs=Recommended: %s
|
||||
NotRecommended=Not recommanded
|
||||
@ -2137,3 +2138,4 @@ CheckForModuleUpdateHelp=This action will connect to editors of external modules
|
||||
ModuleUpdateAvailable=An update is available
|
||||
NoExternalModuleWithUpdate=No updates found for external modules
|
||||
SwaggerDescriptionFile=Swagger API description file (for use with redoc for example)
|
||||
YouEnableDeprecatedWSAPIsUseRESTAPIsInstead=You enabled deprecated WS API. You should use REST API instead.
|
||||
@ -117,7 +117,7 @@ ErrorCantReadFile=Failed to read file '%s'
|
||||
ErrorCantReadDir=Failed to read directory '%s'
|
||||
ErrorBadLoginPassword=Bad value for login or password
|
||||
ErrorLoginDisabled=Your account has been disabled
|
||||
ErrorFailedToRunExternalCommand=Failed to run external command. Check it is available and runnable by your PHP server. If PHP <b>Safe Mode</b> is enabled, check that command is inside a directory defined by parameter <b>safe_mode_exec_dir</b>.
|
||||
ErrorFailedToRunExternalCommand=Failed to run external command. Check it is available and runnable by your PHP server user. Check also the command is not protected on shell level by a security layer like apparmor.
|
||||
ErrorFailedToChangePassword=Failed to change password
|
||||
ErrorLoginDoesNotExists=User with login <b>%s</b> could not be found.
|
||||
ErrorLoginHasNoEmail=This user has no email address. Process aborted.
|
||||
|
||||
@ -249,7 +249,7 @@ SelectAStockMovementFileToImport=select a stock movement file to import
|
||||
InfoTemplateImport=Uploaded file needs to have this format (* are mandatory fields):<br>Source Warehouse* | Target Warehouse* | Product* | Quantity* | Lot/serial number<br>CSV character separator must be "<b>%s</b>"
|
||||
LabelOfInventoryMovemement=Inventory %s
|
||||
ReOpen=Reopen
|
||||
ConfirmFinish=Do you confirm the closing of the inventory ? This will generate all stock movements to update your stock.
|
||||
ConfirmFinish=Do you confirm the closing of the inventory ? This will generate all stock movements to update your stock to the real qty you entered into the inventory.
|
||||
ObjectNotFound=%s not found
|
||||
MakeMovementsAndClose=Generate movements and close
|
||||
AutofillWithExpected=Fill real quantity with expected quantity
|
||||
@ -586,7 +586,8 @@ if ($resql) {
|
||||
$paramsCat .= "&search_category_product_list[]=".urlencode($searchCategoryProduct);
|
||||
}
|
||||
|
||||
llxHeader('', $title, $helpurl, '', 0, 0, array(), array(), $paramsCat, 'classforhorizontalscrolloftabs');
|
||||
//llxHeader('', $title, $helpurl, '', 0, 0, array(), array(), $paramsCat, 'classforhorizontalscrolloftabs');
|
||||
llxHeader('', $title, $helpurl, '', 0, 0, array(), array(), $paramsCat, '');
|
||||
|
||||
// Displays product removal confirmation
|
||||
if (GETPOST('delprod')) {
|
||||
|
||||
@ -91,11 +91,11 @@ class Productlot extends CommonObject
|
||||
'batch' => array('type'=>'varchar(30)', 'label'=>'Batch', 'enabled'=>1, 'visible'=>1, 'notnull'=>0, 'showoncombobox'=>1, 'index'=>1, 'position'=>10, 'comment'=>'Batch', 'searchall'=>1),
|
||||
'entity' => array('type'=>'integer', 'label'=>'Entity', 'enabled'=>1, 'visible'=>0, 'default'=>1, 'notnull'=>1, 'index'=>1, 'position'=>20),
|
||||
'sellby' => array('type'=>'date', 'label'=>'SellByDate', 'enabled'=>'empty($conf->global->PRODUCT_DISABLE_SELLBY)?1:0', 'visible'=>5, 'position'=>60),
|
||||
'eol_date' => array('type'=>'date', 'label'=>'EndOfLife', 'enabled'=>'empty($conf->global->PRODUCT_DISABLE_TRACEABILITY)?1:0', 'visible'=>5, 'position'=>70),
|
||||
'manufacturing_date' => array('type'=>'date', 'label'=>'ManufacturingDate', 'enabled'=>'empty($conf->global->PRODUCT_DISABLE_TRACEABILITY)?1:0', 'visible'=>5, 'position'=>80),
|
||||
'scrapping_date' => array('type'=>'date', 'label'=>'DestructionDate', 'enabled'=>'empty($conf->global->PRODUCT_DISABLE_TRACEABILITY)?1:0', 'visible'=>5, 'position'=>90),
|
||||
'commissionning_date' => array('type'=>'date', 'label'=>'FirstUseDate', 'enabled'=>'empty($conf->global->PRODUCT_DISABLE_TRACEABILITY)?1:0', 'visible'=>5, 'position'=>100),
|
||||
'qc_frequency' => array('type'=>'varchar(6)', 'label'=>'QCFrequency', 'enabled'=>'empty($conf->global->PRODUCT_DISABLE_TRACEABILITY)?1:0', 'visible'=>5, 'position'=>110),
|
||||
'eol_date' => array('type'=>'date', 'label'=>'EndOfLife', 'enabled'=>'empty($conf->global->PRODUCT_ENABLE_TRACEABILITY)?0:1', 'visible'=>5, 'position'=>70),
|
||||
'manufacturing_date' => array('type'=>'date', 'label'=>'ManufacturingDate', 'enabled'=>'empty($conf->global->PRODUCT_ENABLE_TRACEABILITY)?0:1', 'visible'=>5, 'position'=>80),
|
||||
'scrapping_date' => array('type'=>'date', 'label'=>'DestructionDate', 'enabled'=>'empty($conf->global->PRODUCT_ENABLE_TRACEABILITY)?0:1', 'visible'=>5, 'position'=>90),
|
||||
//'commissionning_date' => array('type'=>'date', 'label'=>'FirstUseDate', 'enabled'=>'empty($conf->global->PRODUCT_ENABLE_TRACEABILITY)?0:1', 'visible'=>5, 'position'=>100),
|
||||
//'qc_frequency' => array('type'=>'varchar(6)', 'label'=>'QCFrequency', 'enabled'=>'empty($conf->global->PRODUCT_ENABLE_QUALITYCONTROL)?1:0', 'visible'=>5, 'position'=>110),
|
||||
'eatby' => array('type'=>'date', 'label'=>'EatByDate', 'enabled'=>'empty($conf->global->PRODUCT_DISABLE_EATBY)?1:0', 'visible'=>5, 'position'=>62),
|
||||
'datec' => array('type'=>'datetime', 'label'=>'DateCreation', 'enabled'=>1, 'visible'=>1, 'notnull'=>1, 'position'=>500),
|
||||
'tms' => array('type'=>'timestamp', 'label'=>'DateModification', 'enabled'=>1, 'visible'=>-2, 'notnull'=>1, 'position'=>501),
|
||||
@ -120,8 +120,8 @@ class Productlot extends CommonObject
|
||||
public $eol_date = '';
|
||||
public $manufacturing_date = '';
|
||||
public $scrapping_date = '';
|
||||
public $commissionning_date = '';
|
||||
public $qc_frequency = '';
|
||||
//public $commissionning_date = '';
|
||||
//public $qc_frequency = '';
|
||||
public $datec = '';
|
||||
public $tms = '';
|
||||
|
||||
@ -184,8 +184,6 @@ class Productlot extends CommonObject
|
||||
$this->import_key = trim($this->import_key);
|
||||
}
|
||||
|
||||
|
||||
|
||||
// Check parameters
|
||||
// Put here code to add control on parameters values
|
||||
|
||||
@ -199,8 +197,8 @@ class Productlot extends CommonObject
|
||||
$sql .= 'eol_date,';
|
||||
$sql .= 'manufacturing_date,';
|
||||
$sql .= 'scrapping_date,';
|
||||
$sql .= 'commissionning_date,';
|
||||
$sql .= 'qc_frequency,';
|
||||
//$sql .= 'commissionning_date,';
|
||||
//$sql .= 'qc_frequency,';
|
||||
$sql .= 'datec,';
|
||||
$sql .= 'fk_user_creat,';
|
||||
$sql .= 'fk_user_modif,';
|
||||
@ -214,9 +212,8 @@ class Productlot extends CommonObject
|
||||
$sql .= ' '.(!isset($this->eol_date) || dol_strlen($this->eol_date) == 0 ? 'NULL' : "'".$this->db->idate($this->eol_date)."'").',';
|
||||
$sql .= ' '.(!isset($this->manufacturing_date) || dol_strlen($this->manufacturing_date) == 0 ? 'NULL' : "'".$this->db->idate($this->manufacturing_date)."'").',';
|
||||
$sql .= ' '.(!isset($this->scrapping_date) || dol_strlen($this->scrapping_date) == 0 ? 'NULL' : "'".$this->db->idate($this->scrapping_date)."'").',';
|
||||
$sql .= ' '.(!isset($this->commissionning_date) || dol_strlen($this->commissionning_date) == 0 ? 'NULL' : "'".$this->db->idate($this->commissionning_date)."'").',';
|
||||
$sql .= ' '.(!isset($this->qc_frequency) ? 'NULL' : $this->qc_frequency).',';
|
||||
|
||||
//$sql .= ' '.(!isset($this->commissionning_date) || dol_strlen($this->commissionning_date) == 0 ? 'NULL' : "'".$this->db->idate($this->commissionning_date)."'").',';
|
||||
//$sql .= ' '.(!isset($this->qc_frequency) ? 'NULL' : $this->qc_frequency).',';
|
||||
$sql .= ' '."'".$this->db->idate(dol_now())."'".',';
|
||||
$sql .= ' '.(!isset($this->fk_user_creat) ? 'NULL' : $this->fk_user_creat).',';
|
||||
$sql .= ' '.(!isset($this->fk_user_modif) ? 'NULL' : $this->fk_user_modif).',';
|
||||
@ -292,8 +289,8 @@ class Productlot extends CommonObject
|
||||
$sql .= " t.eol_date,";
|
||||
$sql .= " t.manufacturing_date,";
|
||||
$sql .= " t.scrapping_date,";
|
||||
$sql .= " t.commissionning_date,";
|
||||
$sql .= " t.qc_frequency,";
|
||||
//$sql .= " t.commissionning_date,";
|
||||
//$sql .= " t.qc_frequency,";
|
||||
$sql .= " t.datec,";
|
||||
$sql .= " t.tms,";
|
||||
$sql .= " t.fk_user_creat,";
|
||||
@ -322,11 +319,10 @@ class Productlot extends CommonObject
|
||||
$this->eatby = $this->db->jdate($obj->eatby);
|
||||
$this->sellby = $this->db->jdate($obj->sellby);
|
||||
$this->eol_date = $this->db->jdate($obj->eol_date);
|
||||
|
||||
$this->manufacturing_date = $this->db->jdate($obj->manufacturing_date);
|
||||
$this->scrapping_date = $this->db->jdate($obj->scrapping_date);
|
||||
$this->commissionning_date = $this->db->jdate($obj->commissionning_date);
|
||||
$this->qc_frequency = $obj->qc_frequency;
|
||||
//$this->commissionning_date = $this->db->jdate($obj->commissionning_date);
|
||||
//$this->qc_frequency = $obj->qc_frequency;
|
||||
|
||||
$this->datec = $this->db->jdate($obj->datec);
|
||||
$this->tms = $this->db->jdate($obj->tms);
|
||||
@ -407,8 +403,8 @@ class Productlot extends CommonObject
|
||||
$sql .= ' eol_date = '.(!isset($this->eol_date) || dol_strlen($this->eol_date) != 0 ? "'".$this->db->idate($this->eol_date)."'" : 'null').',';
|
||||
$sql .= ' manufacturing_date = '.(!isset($this->manufacturing_date) || dol_strlen($this->manufacturing_date) != 0 ? "'".$this->db->idate($this->manufacturing_date)."'" : 'null').',';
|
||||
$sql .= ' scrapping_date = '.(!isset($this->destruction_date) || dol_strlen($this->destruction_date) != 0 ? "'".$this->db->idate($this->destruction_date)."'" : 'null').',';
|
||||
$sql .= ' commissionning_date = '.(!isset($this->first_use_date) || dol_strlen($this->first_use_date) != 0 ? "'".$this->db->idate($this->first_use_date)."'" : 'null').',';
|
||||
$sql .= ' qc_frequency = '.(!isset($this->qc_frequency) || dol_strlen($this->qc_frequency) != 0 ? "'".$this->db->escape($this->qc_frequency)."'" : 'null').',';
|
||||
//$sql .= ' commissionning_date = '.(!isset($this->first_use_date) || dol_strlen($this->first_use_date) != 0 ? "'".$this->db->idate($this->first_use_date)."'" : 'null').',';
|
||||
//$sql .= ' qc_frequency = '.(!isset($this->qc_frequency) || dol_strlen($this->qc_frequency) != 0 ? "'".$this->db->escape($this->qc_frequency)."'" : 'null').',';
|
||||
$sql .= ' datec = '.(!isset($this->datec) || dol_strlen($this->datec) != 0 ? "'".$this->db->idate($this->datec)."'" : 'null').',';
|
||||
$sql .= ' tms = '.(dol_strlen($this->tms) != 0 ? "'".$this->db->idate($this->tms)."'" : "'".$this->db->idate(dol_now())."'").',';
|
||||
$sql .= ' fk_user_creat = '.(isset($this->fk_user_creat) ? $this->fk_user_creat : "null").',';
|
||||
|
||||
@ -238,16 +238,16 @@ foreach ($data as $val) {
|
||||
print '<tr class="oddeven" height="24">';
|
||||
print '<td align="center"><a href="'.$_SERVER["PHP_SELF"].'?year='.$oldyear.'">'.$oldyear.'</a></td>';
|
||||
print '<td class="right">0</td>';
|
||||
print '<td class="right">0</td>';
|
||||
print '<td class="right">0</td>';
|
||||
print '<td class="right"><span class="amount">0</span></td>';
|
||||
print '<td class="right"><span class="amount">0</span></td>';
|
||||
print '</tr>';
|
||||
}
|
||||
|
||||
print '<tr class="oddeven" height="24">';
|
||||
print '<td align="center"><a href="'.$_SERVER["PHP_SELF"].'?year='.$year.'">'.$year.'</a></td>';
|
||||
print '<td class="right">'.$val['nb'].'</td>';
|
||||
print '<td class="right">'.price(price2num($val['total'], 'MT'), 1).'</td>';
|
||||
print '<td class="right">'.price(price2num($val['avg'], 'MT'), 1).'</td>';
|
||||
print '<td class="right"><span class="amount">'.price(price2num($val['total'], 'MT'), 1).'</span></td>';
|
||||
print '<td class="right"><span class="amount">'.price(price2num($val['avg'], 'MT'), 1).'</span></td>';
|
||||
print '</tr>';
|
||||
$oldyear = $year;
|
||||
}
|
||||
|
||||
@ -369,7 +369,7 @@ select.vmenusearchselectcombo {
|
||||
background-color: unset;
|
||||
}
|
||||
|
||||
textarea:focus, button:focus {
|
||||
textarea:focus {
|
||||
/* v6 box-shadow: 0 0 4px #8091BF; */
|
||||
border: 1px solid #aaa !important;
|
||||
}
|
||||
@ -738,6 +738,9 @@ div.floatright
|
||||
.largenumber {
|
||||
font-size: 1.4em;
|
||||
}
|
||||
button:focus {
|
||||
outline: none;
|
||||
}
|
||||
|
||||
th .button {
|
||||
-webkit-box-shadow: none !important;
|
||||
@ -790,10 +793,19 @@ textarea.centpercent {
|
||||
color: #777;
|
||||
}
|
||||
|
||||
.flip {
|
||||
transform: scaleX(-1) translate(2px, 0);
|
||||
}
|
||||
.rotate90 {
|
||||
transform: rotate(90deg) translate(0, 2px);
|
||||
}
|
||||
.center {
|
||||
text-align: center;
|
||||
margin: 0px auto;
|
||||
}
|
||||
.alignstart {
|
||||
text-align: start;
|
||||
}
|
||||
.left {
|
||||
text-align: <?php print $left; ?>;
|
||||
}
|
||||
@ -3833,7 +3845,7 @@ tr.liste_titre_sel th, th.liste_titre_sel, tr.liste_titre_sel td, td.liste_titre
|
||||
font-family: <?php print $fontlist ?>;
|
||||
font-weight: normal;
|
||||
border-bottom: 1px solid #FDFFFF;
|
||||
text-decoration: underline;
|
||||
/* text-decoration: underline; */
|
||||
}
|
||||
input.liste_titre {
|
||||
background: transparent;
|
||||
@ -4278,10 +4290,10 @@ div.divphotoref > a > .photowithmargin { /* Margin right for photo not inside a
|
||||
.photowithborder {
|
||||
border: 1px solid #f0f0f0;
|
||||
}
|
||||
.photointoolitp {
|
||||
.photointooltip {
|
||||
margin-top: 8px;
|
||||
margin-bottom: 6px;
|
||||
text-align: center;
|
||||
text-align: center !important;
|
||||
}
|
||||
.photodelete {
|
||||
margin-top: 6px !important;
|
||||
|
||||
Loading…
Reference in New Issue
Block a user