config_load($lang_file, 'lang'); $AVE_Template->assign('config_vars', $AVE_Template->get_config_vars()); $AVE_Template->config_load($lang_file, 'admin'); $res = 0; switch ($action) { case 'edit': $items = explode(',', $default); $items = array_diff($items, array('')); $tpl_file = get_field_tpl($tpl_dir, $field_id, 'admin'); $AVE_Template->assign('items', $items); $AVE_Template->assign('field_id', $field_id); $AVE_Template->assign('field_value', trim($field_value)); return $AVE_Template->fetch($tpl_file); break; case 'doc': if ($tpl_empty) { $key = (int)$field_value; $items = explode(',', $default); $items = array_diff($items, array('')); $field_value = isset($items[$key]) ? trim($items[$key]) : ''; } else { $field_param = explode('|', $field_value); $field_value = preg_replace_callback( '/\[tag:parametr:(\d+)\]/i', function($data) use($field_param) { return $field_param[(int)$data[1]]; }, $tpl ); } $tpl_file = get_field_tpl($tpl_dir, $field_id, 'doc'); if ($tpl_empty && $tpl_file) { $AVE_Template->assign('field_value', $field_value); $AVE_Template->assign('key', $key); $AVE_Template->assign('default', $default); $AVE_Template->assign('field_value', $field_value); return $AVE_Template->fetch($tpl_file); } $res = $field_value; break; case 'req': if ($tpl_empty) { $key = (int)$field_value; $items = explode(',', $default); $items = array_diff($items, array('')); $field_value = isset($items[$key]) ? trim($items[$key]) : ''; } else { $field_param = explode('|', $field_value); $field_value = preg_replace_callback( '/\[tag:parametr:(\d+)\]/i', function($data) use($field_param) { return $field_param[(int)$data[1]]; }, $tpl ); } $tpl_file = get_field_tpl($tpl_dir, $field_id, 'req'); if ($tpl_empty && $tpl_file) { $AVE_Template->assign('field_value', $field_value); $AVE_Template->assign('key', $key); $AVE_Template->assign('default', $default); $AVE_Template->assign('field_value', $field_value); return $AVE_Template->fetch($tpl_file); } $res = $field_value; break; case 'api': return $field_value; break; case 'name': return $AVE_Template->get_config_vars('name'); break; } return ($res ? $res : $field_value); } ?>