37@phan-var-force Conf $conf
38@phan-var-force DoliDB $db
39@phan-var-force ?Form $form
40@phan-var-force HookManager $hookmanager
41@phan-var-force AssetDepreciationOptions $assetdepreciationoptions
42@phan-var-force Translate $langs
43@phan-var-force ?array<array{mode_key:string,field_key:string,value:string,target:string}> $enabled_field_info
48 print
"Error, template page can't be called as URL";
52if (!is_object($form)) {
56if (!isset($formadmin) || !is_object($formadmin)) {
57 require_once DOL_DOCUMENT_ROOT .
'/core/class/html.formadmin.class.php';
63<!-- BEGIN PHP TEMPLATE depreciation_options_edit.tpl.php -->
66if (!is_array($parameters)) {
67 $parameters = array();
69$enabled_field_info = array();
70if (empty($parameters[
'enabled_field_info'])) {
71 $parameters[
'enabled_field_info'] = &$enabled_field_info;
73if (empty($parameters[
'assetdepreciationoptions'])) {
74 $parameters[
'assetdepreciationoptions'] = &$assetdepreciationoptions;
76$reshook = $hookmanager->executeHooks(
'formAssetDeprecationOptions', $parameters,
$object, $action);
77print $hookmanager->resPrint;
83 $class_type = get_class(
$object) ==
'Asset' ? 0 : 1;
84 foreach ($assetdepreciationoptions->deprecation_options_fields as $mode_key => $mode_info) {
85 if (!empty($mode_info[
'enabled_field'])) {
86 $info = explode(
':', $mode_info[
'enabled_field']);
87 $enabled_field_info[] = array(
88 'mode_key' => $info[0],
89 'field_key' => $info[1],
91 'target' =>
'block_' . $mode_key,
95 $assetdepreciationoptions->setInfosForMode($mode_key, $class_type,
true);
96 $prefix_html_name = $mode_key .
'_';
97 $width = ($mode_key ==
"economic") ?
"width50p pull-left" :
"width50p";
98 print
'<table class="border '. $width .
'" id="block_' . $mode_key .
'">' .
"\n";
99 print
'<tr><td class="info-box-title">'.$langs->trans($mode_info[
'label']).
'</td></tr>';
100 if ($mode_key ==
"economic") {
103 $mode_info[
'fields'] =
dol_sort_array($mode_info[
'fields'],
'position');
104 foreach ($mode_info[
'fields'] as $field_key => $field_info) {
106 if (abs($field_info[
'visible']) != 1 && abs($field_info[
'visible']) != 3 && abs($field_info[
'visible']) != 4) {
109 if (array_key_exists(
'enabled', $field_info) && isset($field_info[
'enabled']) && !
verifCond($field_info[
'enabled'])) {
114 $html_name = $prefix_html_name . $field_key;
115 if (!empty($field_info[
'enabled_field'])) {
116 $info = explode(
':', $field_info[
'enabled_field']);
117 $enabled_field_info[] = array(
118 'mode_key' => $info[0],
119 'field_key' => $info[1],
121 'target' =>
'field_' . $html_name,
126 if (!empty($field_info[
'required'])) {
127 $more_class .=
'width40p fieldrequired';
129 if (isset($val[
'type']) && preg_match(
'/^(text|html)/', $val[
'type'])) {
130 $more_class .=
' tdtop';
133 print
'<tr class="field_' . $html_name .
'" id="field_' . $html_name .
'"><td';
134 print
' class="' . $more_class .
'">';
135 if (!empty($field_info[
'help'])) {
136 print $form->textwithpicto($langs->trans($field_info[
'label']), $langs->trans($field_info[
'help']));
138 print $langs->trans($field_info[
'label']);
141 print
'<td class="valuefieldcreate">';
142 if (!empty($field_info[
'picto'])) {
143 print
img_picto(
'', $field_info[
'picto'],
'', 0, 0, 0,
'',
'pictofixedwidth');
145 if (in_array($field_info[
'type'], array(
'int',
'integer'))) {
146 $value = GETPOSTISSET($html_name) ?
GETPOSTINT($html_name) : $assetdepreciationoptions->$field_key;
147 } elseif ($field_info[
'type'] ==
'double') {
148 $value = GETPOSTISSET($html_name) ?
price2num(
GETPOST($html_name,
'alphanohtml')) : $assetdepreciationoptions->$field_key;
149 } elseif (preg_match(
'/^(text|html)/', $field_info[
'type'])) {
150 $tmparray = explode(
':', $field_info[
'type']);
151 if (!empty($tmparray[1])) {
152 $check = $tmparray[1];
154 $check =
'restricthtml';
156 $value = GETPOSTISSET($html_name) ?
GETPOST($html_name, $check) : $assetdepreciationoptions->$field_key;
157 } elseif ($field_info[
'type'] ==
'price') {
158 $value = GETPOSTISSET($html_name) ?
price2num(
GETPOST($html_name)) : ($assetdepreciationoptions->$field_key ?
price2num($assetdepreciationoptions->$field_key) : (!empty($field_info[
'default']) ?
dol_eval((
string) $field_info[
'default'], 1) : 0));
160 $value = GETPOSTISSET($html_name) ?
GETPOST($html_name,
'alpha') : $assetdepreciationoptions->$field_key;
162 if (!empty($field_info[
'noteditable'])) {
163 print $assetdepreciationoptions->showOutputField($field_info, $field_key, $value,
'',
'', $prefix_html_name, 0);
165 if ($field_key ==
'lang') {
166 print
img_picto(
'',
'language',
'class="pictofixedwidth"');
167 print $formadmin->select_language($value, $html_name, 0, array(), 1, 0, 0,
'minwidth300', 2);
169 print $assetdepreciationoptions->showInputField($field_info, $field_key, $value,
'',
'', $prefix_html_name, 0);
177 print
'<div class="clearboth"></div>';
180if (!empty($enabled_field_info)) {
181 $enabled_field_info = json_encode($enabled_field_info);
183<script
type=
"text/javascript">
184 jQuery(document).ready(
function () {
185 var enabled_field_info = $enabled_field_info;
188 enabled_field_info.map(
function(info) {
189 var html_name = info.mode_key +
'_' + info.field_key;
190 var source = $(
'#' + html_name);
191 if (!(source.length > 0)) source = $(
'[name="' + html_name +
'"]');
192 if (source.length > 0) {
193 source.attr(
'data-asset-enabled-field-value', info.value);
194 source.attr(
'data-asset-enabled-field-target', info.target);
195 updateEnabledField(source);
196 source.on(
'change click',
function() {
197 updateEnabledField(jQuery(
this));
202 function updateEnabledField(_this) {
203 var value = _this.attr(
'data-asset-enabled-field-value');
204 var target_name = _this.attr(
'data-asset-enabled-field-target');
207 var target = $(
'table#' + target_name);
210 if (!(target.length > 0)) {
211 target = $(
'#' + target_name);
212 if (!(target.length > 0)) target = $(
'[name="' + target_name +
'"]');
213 if (target.length > 0) target = target.closest(
'tr');
216 if (target.length > 0) {
217 var source_value = _this.attr(
'type') ==
'checkbox' ? (_this.is(
':checked') ? 1 : 0) : _this.val();
219 if (source_value != value) {
232<!-- END PHP TEMPLATE depreciation_options_edit.tpl.php -->
if(! $sortfield) if(! $sortorder) $object
verifCond($strToEvaluate, $onlysimplestring='1')
Verify if condition in string is ok or not.
setEventMessages($mesg, $mesgs, $style='mesgs', $messagekey='', $noduplicate=0, $attop=0)
Set event messages in dol_events session object.
img_picto($titlealt, $picto, $moreatt='', $pictoisfullpath=0, $srconly=0, $notitle=0, $alt='', $morecss='', $marginleftonlyshort=2, $allowothertags=array())
Show picto whatever it's its name (generic function)
GETPOSTINT($paramname, $method=0)
Return the value of a $_GET or $_POST supervariable, converted into integer.
price2num($amount, $rounding='', $option=0)
Function that return a number with universal decimal format (decimal separator is '.
dol_eval($s, $returnvalue=1, $hideerrors=1, $onlysimplestring='1')
Replace eval function to add more security.
dol_sort_array(&$array, $index, $order='asc', $natsort=0, $case_sensitive=0, $keepindex=0)
Advanced sort array by the value of a given key, which produces ascending (default) or descending out...
GETPOST($paramname, $check='alphanohtml', $method=0, $filter=null, $options=null, $noreplace=0)
Return value of a param into GET or POST supervariable.
print $langs trans("Show") . '< td style="' . $timeColor . '" align="center"> s</td > badge status0 badge status4 badge status3 Error badge status8< td align="center">< span class="badge ' . $badge . '"></span ></td >< td align="center">< a href="#" class="button button-small" onclick="openLogModal(this)" data-req="' . dol_escape_htmltag($reqSafe) . '" data-res="' . dol_escape_htmltag($resSafe) . '" data-err="' . dol_escape_htmltag($errSafe) . '">< span class="fa fa-search-plus"></span ></a ></td ></tr >< tr >< td colspan="' . $colspan . '" class="opacitymedium"></td ></tr ></table ></div ></form > logModal none logModal none s a JSON string
buildzip.php
if(preg_match('/(crypted|dolcrypt):/i', $dolibarr_main_db_pass)||!empty($dolibarr_main_db_encrypted_pass)) $conf db type
'integer', 'integer:ObjectClass:PathToClass[:AddCreateButtonOrNot[:Filter[:Sortfield]]]',...