Files
spec/svc.cfm
T
2025-06-19 14:59:50 +03:00

177 lines
6.1 KiB
Plaintext

<cfsilent>
<cfimport prefix="m" taglib="lib"/>
<cfimport prefix="c" taglib="lib/controls"/>
<cfimport prefix="d" taglib="lib/data"/>
<cfimport prefix="layout" taglib="layout"/>
</cfsilent><m:silent silent="No">
<cffunction name="plain2HtmClean">
<cfargument name="s" type="string"/>
<cfreturn request.plain2htm(request.cleanHtm(s))/>
</cffunction>
<cffunction name="cleanInput">
<cfargument name="s" type="string"/>
<cfreturn htmlEditFormat(s)/>
</cffunction>
<m:prepare_detail entity="svc" accessObject="" key="svc_id" pageInfoOut="pageInfo"/>
<d:bean readonly=#!pageInfo.writePermitted()# table="svc" datasource="#request.DS#" output="d" status="pageInfo.status">
<d:param field="svc_id" type="integer" key /><!--- autoincrement --->
<d:param field="svc" type="varchar" size="255" required preprocessor=#cleanInput#/>
<d:param field="svc_short" type="varchar" size="255" preprocessor=#cleanInput#/>
<d:param field="code" type="varchar" size="255" preprocessor=#cleanInput#/>
<d:param field="version" type="varchar" size="255" preprocessor=#cleanInput#/>
<d:param field="orchestrator_name" type="varchar" size="255" preprocessor=#cleanInput#/>
<d:param field="is_production_ready" type="boolean" default="0"/>
<d:param field="sort" type="integer" forNull=""/>
<d:param field="descr" type="varchar" preprocessor=#plain2HtmClean#/>
<d:param field="man" type="varchar" preprocessor=#plain2HtmClean#/>
<d:param field="creator_id" type="integer" value="#request.usr_id#" skipUpdate/>
<d:param field="updater_id" type="integer" value="#request.usr_id#" />
<d:param field="dt_created" type="timestamp" value="#Now()#" skipUpdate/>
<d:param field="dt_updated" type="timestamp" value="#Now()#"/>
</d:bean>
<m:dispatch_detail
usePRG="No"<!---*** --->
pageInfo=#pageInfo#
id="#d.svc_id#"
status=#pageInfo.status#
trackOut="tr"
idAttributesOut="id"
/>
<!--- decoration --->
<cfquery name="qDecoration" datasource="#request.DS#">
select
a.login as creator, a.shortname as creator_shortname, m.login as updater, m.shortname as updater_shortname
from svc g
left outer join usr a on (g.creator_id=a.usr_id)
left outer join usr m on (g.updater_id=m.usr_id)
where g.svc_id=<cfqueryparam attributeCollection=#id#/>
</cfquery>
</m:silent><!---
------------------------------------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------------------------------------
---><layout:page section="header" pageInfo=#pageInfo#>
<layout:attribute name="title">
<cfoutput>
Сервис
<cfif d.svc_id GT 0>
<b>#d.svc#</b>
[#d.svc_id#]
</cfif>
</cfoutput>
</layout:attribute>
</layout:page>
<!--- <cfif status.errorState GT 0>
<cfoutput><div class="err">#status.errorMessage#</div></cfoutput>
</cfif> --->
<cfoutput>
<!--- <input type="hidden" name="svc_id" value="#d.svc_id#"/> --->
<input type="hidden" name="track" value="#tr.self#"/>
<input type="hidden" name="pass" value=""/><!--- pass marker to prevent save on submit --->
<div class="detail">
<div class="tr">
<div class="th">ID</div>
<div class="td">
<input type="text" name="svc_id" value="#d.svc_id#" size="3"/>
</div>
</div>
<div class="tr">
<div class="th">Наименование *</div>
<div class="td">
<input type="text" name="svc" value="#d.svc#" size="70"/>
</div>
</div>
<div class="tr">
<div class="th">Сокращение *</div>
<div class="td">
<input type="text" name="svc_short" value="#d.svc_short#" size="70"/>
<i>используется для формирования имени экземпляра</i>
</div>
</div>
<div class="tr">
<div class="th">Имя для оркестратора *</div>
<div class="td">
<input type="text" name="orchestrator_name" value="#d.orchestrator_name#" size="30"/><i></i>
</div>
</div>
<div class="tr">
<div class="th">Код</div>
<div class="td">
<input type="text" name="code" value="#d.code#" size="70"/><i>код по каталогу (сопоставление модификатора с параметрами - открытый вопрос)</i>
</div>
</div>
<div class="tr">
<div class="th">Версия</div>
<div class="td">
<input type="text" name="version" value="#d.version#" size="10"/><i></i>
</div>
</div>
<div class="tr">
<div class="th">Production Ready</div>
<div class="td">
<input type="checkbox" name="is_production_ready" value="1"<cfif d.is_production_ready GT 0> checked</cfif>/>
</div>
</div>
<div class="tr">
<div class="th">Сортировка</div>
<div class="td"><input type="text" name="sort" value="#d.sort#" size="3"/><i>порядок вывода в форме, целое число, рекомендуется через 10</i></div>
</div>
<div class="tr">
<div class="th">Описание</div>
<div class="td">
<textarea name="descr" rows="5" cols="100">#request.htm2plain(d.descr)#</textarea>
</div>
</div>
<div class="tr">
<div class="th">Руководство</div>
<div class="td">
<textarea name="man" rows="5" cols="100">#request.htm2plain(d.man)#</textarea>
</div>
</div>
<div class="tr">
<div class="th">Создано</div>
<div class="td">
#dateFormat(d.dt_created,'YYYY-MM-DD')# #timeFormat(d.dt_created,'HH:MM')#
#qDecoration.creator# <cfif len(qDecoration.creator_shortname)>(#qDecoration.creator_shortname#)</cfif>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
Изменено
#dateFormat(d.dt_updated,'YYYY-MM-DD')# #timeFormat(d.dt_updated,'HH:MM')#
#qDecoration.updater# <cfif len(qDecoration.updater_shortname)>(#qDecoration.updater_shortname#)</cfif>
</div>
</div>
</div>
</cfoutput>
<layout:page section="extension" closeForm="Yes"/>
<layout:page section="footer"/>