diff --git a/htdocs/admin/salaries.php b/htdocs/admin/salaries.php index 58e85dbf8d3..2d32db71af7 100644 --- a/htdocs/admin/salaries.php +++ b/htdocs/admin/salaries.php @@ -113,11 +113,11 @@ print ''; print "\n"; -print ''; - dol_fiche_end(); print '
'; +print ''; + llxFooter(); $db->close(); diff --git a/htdocs/contrat/card.php b/htdocs/contrat/card.php index 5ddb0b343fa..e0d08dbc1fa 100644 --- a/htdocs/contrat/card.php +++ b/htdocs/contrat/card.php @@ -830,7 +830,7 @@ if (empty($reshook)) setEventMessages($object->error, $object->errors, 'errors'); } - $result = $object->setValueFrom('ref',GETPOST('ref','alpha'));; + $result = $object->setValueFrom('ref',GETPOST('ref','alpha')); if ($result < 0) { setEventMessages($object->error, $object->errors, 'errors'); $action = 'editref'; @@ -843,6 +843,30 @@ if (empty($reshook)) header("Location: " . $_SERVER['PHP_SELF'] . "?id=" . $id); exit; } + } + elseif ($action=='setdate_contrat') + { + $cancelbutton = GETPOST('cancel'); + + if (!$cancelbutton) { + $result = $object->fetch($id); + if ($result < 0) { + setEventMessages($object->error, $object->errors, 'errors'); + } + $datacontrat=dol_mktime(GETPOST('date_contrathour'), GETPOST('date_contratmin'), 0, GETPOST('date_contratmonth'), GETPOST('date_contratday'), GETPOST('date_contratyear')); + $result = $object->setValueFrom('date_contrat',$datacontrat,'',null,'date'); + if ($result < 0) { + setEventMessages($object->error, $object->errors, 'errors'); + $action = 'editdate_contrat'; + } else { + header("Location: " . $_SERVER['PHP_SELF'] . "?id=" . $object->id); + exit; + } + } + else { + header("Location: " . $_SERVER['PHP_SELF'] . "?id=" . $id); + exit; + } } // Generation doc (depuis lien ou depuis cartouche doc) @@ -1278,8 +1302,15 @@ else print ""; // Date - print ''.$langs->trans("Date").''; - print ''.dol_print_date($object->date_contrat,"dayhour")."\n"; + print ''; + print ''; + print $form->editfieldkey("Date",'date_contrat',$object->date_contrat,$object,$user->rights->contrat->creer); + print ''; + print $form->editfieldval("Date",'date_contrat',$object->date_contrat,$object,$user->rights->contrat->creer,'datehourpicker'); + print ''; + print ''; + /* print ''.$langs->trans("Date").''; + print ''.dol_print_date($object->date_contrat,"dayhour")."\n";*/ // Projet if (! empty($conf->projet->enabled)) diff --git a/htdocs/core/db/DoliDB.class.php b/htdocs/core/db/DoliDB.class.php index f1909a91ea0..4103b095330 100644 --- a/htdocs/core/db/DoliDB.class.php +++ b/htdocs/core/db/DoliDB.class.php @@ -221,7 +221,7 @@ abstract class DoliDB implements Database * Define sort criteria of request * * @param string $sortfield List of sort fields, separated by comma. Example: 't1.fielda, t2.fieldb' - * @param string $sortorder Sort order + * @param 'ASC'|'DESC' $sortorder Sort order * @return string String to provide syntax of a sort sql string */ function order($sortfield=null,$sortorder=null) @@ -236,9 +236,11 @@ abstract class DoliDB implements Database else $return.=','; $return.=preg_replace('/[^0-9a-z_\.]/i','',$val); - if (! empty($sortorder)) - { - $return.=' '.preg_replace('/[^0-9a-z]/i','',$sortorder); + // Only ASC and DESC values are valid SQL + if ($sortorder === 'ASC') { + $return .= ' ASC'; + } elseif ($sortorder === 'DESC') { + $return .= ' DESC'; } } return $return; diff --git a/htdocs/core/js/lib_head.js b/htdocs/core/js/lib_head.js index eab995d062b..ad799e72bd0 100644 --- a/htdocs/core/js/lib_head.js +++ b/htdocs/core/js/lib_head.js @@ -864,8 +864,8 @@ function confirmConstantAction(action, url, code, input, box, entity, yesButton, .addClass( "ui-widget ui-widget-content ui-corner-left dolibarrcombobox" ); input.data("ui-autocomplete")._renderItem = function( ul, item ) { - return $("
  • ") - .data( "item.autocomplete", item ) + return $("
  • ") + .data( "ui-autocomplete-item", item ) // jQuery UI > 1.10.0 .append( "" + item.label + "" ) .appendTo( ul ); }; diff --git a/htdocs/core/lib/ajax.lib.php b/htdocs/core/lib/ajax.lib.php index 44de58ed4a8..fa150e6fbb7 100644 --- a/htdocs/core/lib/ajax.lib.php +++ b/htdocs/core/lib/ajax.lib.php @@ -170,8 +170,8 @@ function ajax_autocompleter($selected, $htmlname, $url, $urloption='', $minLengt } ,delay: 500 }).data("ui-autocomplete")._renderItem = function( ul, item ) { - return $("
  • ") - .data( "item.autocomplete", item ) + return $("
  • ") + .data( "ui-autocomplete-item", item ) // jQuery UI > 1.10.0 .append( \'\' + item.label + "" ) .appendTo(ul); }; diff --git a/htdocs/langs/en_US/products.lang b/htdocs/langs/en_US/products.lang index 8471e3b0a14..0d3f83d49a9 100644 --- a/htdocs/langs/en_US/products.lang +++ b/htdocs/langs/en_US/products.lang @@ -313,3 +313,4 @@ PropalMergePdfProductChooseFile=Select PDF files IncludingProductWithTag=Including product/service with tag DefaultPriceRealPriceMayDependOnCustomer=Default price, real price may depend on customer WarningSelectOneDocument=Please select at least one document +DefaultUnitToShow=Units diff --git a/htdocs/langs/fr_FR/products.lang b/htdocs/langs/fr_FR/products.lang index 455cb209986..b9f5a664fe5 100644 --- a/htdocs/langs/fr_FR/products.lang +++ b/htdocs/langs/fr_FR/products.lang @@ -297,3 +297,4 @@ PropalMergePdfProductChooseFile=Sélectionnez les fichiers PDF IncludingProductWithTag=Incluant un produit ayant le tag/catégorie DefaultPriceRealPriceMayDependOnCustomer=Prix ​​par défaut, le prix réel peut dépendre du client WarningSelectOneDocument=Sélectionnez au moins un document +DefaultUnitToShow=Unités