config_load($lang_file, 'lang'); $AVE_Template->assign('config_vars', $AVE_Template->get_config_vars()); $AVE_Template->config_load($lang_file, 'admin'); switch ($action) { case 'edit': $AVE_Template->assign('field_dir', $fld_name); $AVE_Template->assign('field_id', $field_id); $AVE_Template->assign('field_value', $field_value); $tpl_file = get_field_tpl($tpl_dir, $field_id, 'admin'); return $AVE_Template->fetch($tpl_file); break; case 'doc': case 'req': // Если значение пустое, возвращаем пустую строку, чтобы не выводить шаблон с тегами if (trim($field_value) === '') return ''; if ($tpl_empty) { $field_value = clean_php($field_value); } else { $field_param = explode('|', $field_value); $field_value = preg_replace_callback( '/\[tag:parametr:(\d+)\]/i', function($data) use($field_param) { // ПРОВЕРКА: Берем индекс и проверяем его наличие в массиве параметров $index = (int)$data[1]; return isset($field_param[$index]) ? $field_param[$index] : ''; }, $tpl ); } $tpl_file = get_field_tpl($tpl_dir, $field_id, $action, $_tpl); if ($tpl_empty && $tpl_file) { $AVE_Template->assign('field_id', $field_id); $AVE_Template->assign('field_default', $default); $AVE_Template->assign('field_value', $field_value); return $AVE_Template->fetch($tpl_file); } return $field_value; break; case 'save': // Оставляем только цифры и точку $field_value = preg_replace('/[^\d.]/','',$field_value); return $field_value; case 'api': return $field_value; case 'name': return $AVE_Template->get_config_vars('name'); default: return $field_value; } } ?>