<?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>