<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
	<xsl:template name="replace" match="text()" mode="replace">
		<xsl:param name="str" select="."/>
		<xsl:param name="search-for" select="'&#xA;'"/>
		<xsl:param name="replace-with">
			<xsl:element name="BR"/>
			<xsl:text>&#xA;</xsl:text>
		</xsl:param>
		<xsl:choose>
			<xsl:when test="contains($str, $search-for)">
				<xsl:value-of select="substring-before($str, $search-for)"/>
				<xsl:copy-of select="$replace-with"/>
				<xsl:call-template name="replace">
					<xsl:with-param name="str"
						select="substring-after($str, $search-for)"/>
					<xsl:with-param name="search-for" select="$search-for"/>
					<xsl:with-param name="replace-with" select="$replace-with"/>
				</xsl:call-template>
			</xsl:when>
			<xsl:otherwise>
				<xsl:value-of select="$str"/>
			</xsl:otherwise>
		</xsl:choose>
	</xsl:template>
	<xsl:template name="convertdatetime" match="text()" mode="replace">
		<xsl:param name="str" select="."/>
		<xsl:copy-of select="substring($str, 12, 8)"/>
		<xsl:text> </xsl:text>
		<xsl:copy-of select="substring($str, 9, 2)"/>
		<xsl:text>.</xsl:text>
		<xsl:copy-of select="substring($str, 6, 2)"/>
		<xsl:text>.</xsl:text>
		<xsl:copy-of select="substring($str, 1, 4)"/>
	</xsl:template>
	<xsl:template match="/">
		<html>
			<head>
				<link rel="stylesheet" type="text/css" href="%ServerUrl%/StorageServer/Fetch.aspx?BaseName=%BaseName%&amp;TransformID=464D8B6E-5A2F-4BFD-A293-631C813DDF56"/>
				<title><xsl:value-of select="Data/Process[1]/MainInfo/@Name"/></title>
			</head>
			<body>
				<span class="header">
					<xsl:value-of select="Data/Process[1]/MainInfo/@Name"/>
				</span>
				<br/>				
				<span class="header2">Інформація про бізнес-процес</span>
				<table border="0" width="100%">
					<tr>
						<td class="fieldheader" width="25%">Ім'я:</td>
						<td colspan="3"><xsl:value-of select="Data/Process[1]/MainInfo/@Name"/></td>
					</tr>
					<tr>
						<td class="fieldheader" width="25%">Опис:</td>
						<td colspan="3">
							<xsl:call-template name="replace">
								<xsl:with-param name="str" select="Data/Process[1]/MainInfo/@Description"/>
							</xsl:call-template>
						</td>
					</tr>
					<tr>
						<td class="fieldheader" width="25%">Дата створення:</td>
						<td width="25%">
							<xsl:call-template name="convertdatetime">
								<xsl:with-param name="str" select="Data/Process[1]/@CreationDateTime"/>
							</xsl:call-template>
						</td>
						<td class="fieldheader" width="25%">Дата редагування:</td>
						<td width="25%">
							<xsl:call-template name="convertdatetime">
								<xsl:with-param name="str" select="Data/Process[1]/@ChangeDateTime"/>
							</xsl:call-template>
						</td>
					</tr>
					<tr>
						<td class="fieldheader" width="25%">Підпроцес:</td>
						<td width="25%">
							<xsl:choose>
								<xsl:when test="Data/Process[1]/MainInfo/@SubProcess=1">Да</xsl:when>
								<xsl:otherwise>Нет</xsl:otherwise>
							</xsl:choose>
						</td>
						<td class="fieldheader" width="25%">Версія:</td>
						<td width="25%"><xsl:value-of select="Data/Process[1]/MainInfo/@Version"/></td>
					</tr>
				</table>
				<br/>												

				<xsl:for-each select="Data/Process[1]/Functions/FunctionsRow">
					<xsl:if test="position()=1">
						<xsl:text disable-output-escaping="yes">
							&lt;span class="header2"&gt;Функції бізнес-процесу&lt;/span&gt;
							&lt;table border="0" cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE: collapse" bordercolor="black" width="100%"&gt;
								&lt;tr&gt;
									&lt;th class="tableheader" align="left"&gt;Заголовок&lt;/th&gt;
									&lt;th class="tableheader" align="left"&gt;Опис&lt;/th&gt;
								&lt;/tr&gt;
						</xsl:text>
					</xsl:if>
					<tr>
						<td class="field" width="25%"><xsl:value-of select="@Caption"/></td>
						<td class="field" width="75%"><xsl:value-of select="@Description"/></td>
					</tr>
					<xsl:if test="position()=last()">
						<xsl:text disable-output-escaping="yes">
							&lt;/table&gt;
							&lt;br/&gt;
						</xsl:text>
					</xsl:if>
				</xsl:for-each>
				<xsl:for-each select="Data/Process[1]/Variables/VariablesRow">
					<xsl:sort select="@Name"/>
					<xsl:if test="position()=1">
						<xsl:text disable-output-escaping="yes">
							&lt;span class="header2"&gt;Змінні бізнес-процесу&lt;/span&gt;
							&lt;table border="0" cellpadding="0" cellspacing="0" style="BORDER-COLLAPSE: collapse" bordercolor="black" width="100%"&gt;
								&lt;tr&gt;
									&lt;th class="tableheader" align="left"&gt;Ім'я&lt;/th&gt;
									&lt;th class="tableheader" align="left"&gt;Опис&lt;/th&gt;
									&lt;th class="tableheader" align="left"&gt;Значення&lt;/th&gt;
									&lt;th class="tableheader" align="left"&gt;Тип&lt;/th&gt;
								&lt;/tr&gt;
						</xsl:text>
					</xsl:if>
					<tr>
						<td class="field" width="25%"><xsl:value-of select="@Name"/></td>
						<td class="field" width="25%"><xsl:value-of select="@Description"/></td>
						<td class="field" width="30%"><xsl:value-of select="@DisplayValue"/></td>
						<td class="field" width="20%">
							<xsl:choose>
								<xsl:when test="@VarType=0">Об'єкт шлюзу</xsl:when>
								<xsl:when test="@VarType=1">Ціле</xsl:when>
								<xsl:when test="@VarType=2">Дробове</xsl:when>
								<xsl:when test="@VarType=3">Рядок</xsl:when>
								<xsl:when test="@VarType=4">Так/Ні</xsl:when>
								<xsl:when test="@VarType=5">Дата/час</xsl:when>
								<xsl:when test="@VarType=6">Перерахунок</xsl:when>
							</xsl:choose>
						</td>
					</tr>
					<xsl:if test="position()=last()">
						<xsl:text disable-output-escaping="yes">
							&lt;/table&gt;
							&lt;br/&gt;
						</xsl:text>
					</xsl:if>
				</xsl:for-each>
				<p class="smalltext">
				Для того щоб змінити вигляд даного шаблону, Ви можете відредагувати "Стандартний шаблон друку" для картки "Бізнес-процес" або створити новий шаблон на основі даного. 
				<br>DocsVision © 2002-2009. Всі права захищені.</br>
				</p>
			</body>
		</html>
	</xsl:template>
</xsl:stylesheet>
