<?xml version="1.0" encoding="UTF-8"?> <?xml-stylesheet href="xsltforms/xsltforms.xsl" type="text/xsl"?> <html xmlns="http://www.w3.org/1999/xhtml" xmlns:ev="http://www.w3.org/2001/xml-events" xmlns:xf="http://www.w3.org/2002/xforms"> <head> <xf:model id="xformId_mainModel"> <xf:instance id="xformId_mainInstance"> <schema xmlns=""/> </xf:instance> <xf:bind> <xf:bind nodeset="instance('xformId_mainInstance')/data/@processKey" required="true()" readonly="instance('xformId_mainInstance')/data/@existing = 'true' or instance('xformId_mainInstance')/data/@newProcess = 'false'"/> <xf:bind nodeset="instance('xformId_mainInstance')/data/@processName" required="true()" readonly="instance('xformId_mainInstance')/data/@existing = 'true' or instance('xformId_mainInstance')/data/@newProcess = 'false'"/> <xf:bind nodeset="instance('xformId_mainInstance')/data/@newProcess" type="boolean" readonly="instance('xformId_mainInstance')/data/@existing = 'true'"/> </xf:bind> </xf:model> </head> <body> <!-- <xf:output value="serialize(instance('xformId_mainInstance'))"/> --> <div class = "boolInput200" > <xf:input ref="instance('xformId_mainInstance')/data/@newProcess"> <xf:label>Новый процесс</xf:label> <xf:action ev:event="xforms-value-changed"> <xf:setvalue ref="instance('xformId_mainInstance')/data/@processKey" value=""/> <xf:setvalue ref="instance('xformId_mainInstance')/data/@processName" value=""/> </xf:action> </xf:input> </div> <xf:group ref = "instance('xformId_mainInstance')/data[./@newProcess='false' and ./@existing='false']"> <div class = "baseInput200 break" > <xf:input ref="instance('xformId_mainInstance')/data/@processKey"> <xf:label>Ключ:</xf:label> </xf:input> </div> <div class="selectorLong400" > <xf:input ref="instance('xformId_mainInstance')/data/@processName"> <xf:label>Название:</xf:label> </xf:input> <xf:selector buttonLabel="..." procListAndCount="'workflow.xforms.selectionProcess.processListAndCount.celesta'" generalFilters="" currentValue="''" windowCaption="'Выбор процесса'" xpathMapping="{'XPath(instance(quot(xformId_mainInstance))/data/@processKey)' : 'id', 'XPath(instance(quot(xformId_mainInstance))/data/@processName)' : 'name'}"/> <xf:trigger> <xf:label>X</xf:label> <xf:action ev:event="DOMActivate"> <xf:load resource="javascript:gwtXFormUpdate('xformId','2', null)" > </xf:load> <xf:setvalue ref="instance('xformId_mainInstance')/data/@processKey" value=""/> <xf:setvalue ref="instance('xformId_mainInstance')/data/@processName" value=""/> <xf:setvalue ref="instance('xformId_mainInstance')/data/@existing" value="'false'"/> </xf:action> </xf:trigger> </div> </xf:group> <xf:group ref = "instance('xformId_mainInstance')/data[./@newProcess='false' and ./@existing='true']"> <div class = "baseInput200 break" > <xf:input ref="instance('xformId_mainInstance')/data/@processKey"> <xf:label>Ключ:</xf:label> </xf:input> </div> <div class="baseInput400" > <xf:input ref="instance('xformId_mainInstance')/data/@processName"> <xf:label>Название:</xf:label> </xf:input> </div> </xf:group> <xf:group ref = "instance('xformId_mainInstance')/data[./@newProcess='true']"> <div class = "baseInput200 break" > <xf:input ref="instance('xformId_mainInstance')/data/@processKey"> <xf:label>Ключ:</xf:label> </xf:input> </div> <div class="baseInput400" > <xf:input ref="instance('xformId_mainInstance')/data/@processName"> <xf:label>Название:</xf:label> </xf:input> </div> </xf:group> <xf:group ref = "instance('xformId_mainInstance')/data[./@existing='false']"> </xf:group> <xf:group ref = "instance('xformId_mainInstance')/data[./@newProcess='false']"> <!-- <div class="button400 break"> При редактировании процесса описание процесса будет сформировано по схеме согласования, а старое описание процесса будет удалено. </div> --> <div class="button200 break"> <xf:trigger> <xf:label>Редактировать</xf:label> <xf:action ev:event="DOMActivate" if="(is-valid(instance('xformId_mainInstance'))=false())"> <xf:message>Поля "Ключ", "Название" и "Статусная модель" обязательны для заполнения</xf:message> </xf:action> <xf:action ev:event="DOMActivate" if="(is-valid(instance('xformId_mainInstance'))=true())"> <xf:load resource="javascript:gwtXFormSave('xformId','1', Writer.toString(getSubformInstanceDocument('xformId_mainModel', 'xformId_mainInstance')))" > </xf:load> <xf:setvalue ref="instance('xformId_mainInstance')/data/@existing" value="'true'"/> </xf:action> </xf:trigger> </div> </xf:group> <xf:group ref = "instance('xformId_mainInstance')/data[./@newProcess='true']"> <div class="button200 break"> <xf:trigger> <xf:label>Создать процесс</xf:label> <xf:action ev:event="DOMActivate" if="(is-valid(instance('xformId_mainInstance'))=false())"> <xf:message>Поля "Ключ" и "Название" обязательны для заполнения</xf:message> </xf:action> <xf:action ev:event="DOMActivate" if="(is-valid(instance('xformId_mainInstance'))=true())"> <xf:load resource="javascript:gwtXFormSave('xformId','1', Writer.toString(getSubformInstanceDocument('xformId_mainModel', 'xformId_mainInstance')))" > </xf:load> <xf:setvalue ref="instance('xformId_mainInstance')/data/@existing" value="'true'"/> </xf:action> </xf:trigger> </div> </xf:group> <xf:group ref = "instance('xformId_mainInstance')/data[./@existing='true']"> <div class="button200"> <xf:trigger> <xf:label>Вернуться к выбору процесса</xf:label> <xf:action ev:event="DOMActivate"> <xf:setvalue ref="instance('xformId_mainInstance')/data/@existing" value="'false'"/> <xf:load resource="javascript:gwtXFormUpdate('xformId','2', null)" > </xf:load> </xf:action> </xf:trigger> </div> </xf:group> </body> </html>