<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0"
	xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
	xmlns:cac="urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2"
	xmlns:cbc="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2"
	xmlns:n1="urn:oasis:names:specification:ubl:schema:xsd:ApplicationResponse-2"
	exclude-result-prefixes="cac cbc n1">
	<xsl:output method="html" indent="yes" encoding="UTF-8"
		doctype-public="-//W3C//DTD HTML 4.01 Transitional//EN"
		doctype-system="http://www.w3.org/TR/html4/loose.dtd"/>
	<xsl:template match="/">
		<html>
			<head>
				<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
				<title>Uygulama Yanıtı</title>
				<style type="text/css">
					body {
					    background-color: #FFFFFF;
					    font-family: Tahoma, "Times New Roman", Times, serif;
					    font-size: 11px;
					    color: #000000;
					}
					h1 {
					    font-size: 1.4em;
					    font-family: Arial, Helvetica, sans-serif;
					    margin: 3px 0 8px 0;
					    color: #005087;
					}
					h2 {
					    font-size: 1em;
					    color: brown;
					    text-transform: uppercase;
					    margin: 8px 0 4px 0;
					}
					#ettnTable {
					    border-collapse: collapse;
					    font-size: 11px;
					    border-color: gray;
					    width: 100%;
					}
					#ettnTable td {
					    border: 1px solid gray;
					    padding: 3px 6px;
					}
					#partyTable {
					    border-collapse: collapse;
					    width: 100%;
					}
					#partyTable td {
					    vertical-align: top;
					    width: 50%;
					    padding: 4px 8px 4px 0;
					}
					#lineTable {
					    border-collapse: collapse;
					    width: 100%;
					    border: 2px solid black;
					}
					td.lineTableTd {
					    border: 1px solid black;
					    padding: 4px;
					    background-color: white;
					}
					.hdr {
					    background-color: #f0f0f0;
					    font-weight: bold;
					}
					.kabul { color: #006600; font-weight: bold; }
					.red { color: #aa0000; font-weight: bold; }
				</style>
			</head>
			<body style="width:800px">
				<xsl:variable name="doc" select="(//*[local-name()='ApplicationResponse'])[1]"/>
				<table style="width:100%;">
					<tr>
						<td style="width:50%; vertical-align:top;">
							<hr/>
							<h2>Gönderici</h2>
							<xsl:call-template name="PartiYaz">
								<xsl:with-param name="parti" select="$doc/cac:SenderParty | $doc/*[local-name()='SenderParty']"/>
							</xsl:call-template>
							<hr/>
							<h2>Alıcı</h2>
							<xsl:call-template name="PartiYaz">
								<xsl:with-param name="parti" select="$doc/cac:ReceiverParty | $doc/*[local-name()='ReceiverParty']"/>
							</xsl:call-template>
						</td>
						<td style="width:50%; vertical-align:top;">
							<h1>UYGULAMA YANITI</h1>
							<table id="ettnTable">
								<tr>
									<td class="hdr">Özelleştirme</td>
									<td><xsl:value-of select="$doc/cbc:CustomizationID | $doc/*[local-name()='CustomizationID']"/></td>
								</tr>
								<tr>
									<td class="hdr">Senaryo</td>
									<td><xsl:value-of select="$doc/cbc:ProfileID | $doc/*[local-name()='ProfileID']"/></td>
								</tr>
								<tr>
									<td class="hdr">Yanıt No</td>
									<td><xsl:value-of select="$doc/cbc:ID | $doc/*[local-name()='ID'][1]"/></td>
								</tr>
								<tr>
									<td class="hdr">ETTN (UUID)</td>
									<td><xsl:value-of select="$doc/cbc:UUID | $doc/*[local-name()='UUID'][1]"/></td>
								</tr>
								<tr>
									<td class="hdr">Tarih</td>
									<td><xsl:value-of select="$doc/cbc:IssueDate | $doc/*[local-name()='IssueDate'][1]"/></td>
								</tr>
								<tr>
									<td class="hdr">Saat</td>
									<td><xsl:value-of select="$doc/cbc:IssueTime | $doc/*[local-name()='IssueTime'][1]"/></td>
								</tr>
								<tr>
									<td class="hdr">Yanıt Türü</td>
									<td>
										<xsl:variable name="kod" select="($doc/cac:DocumentResponse/cac:Response/cbc:ResponseCode | $doc/*[local-name()='DocumentResponse']/*[local-name()='Response']/*[local-name()='ResponseCode'])[1]"/>
										<xsl:choose>
											<xsl:when test="$kod='KABUL'"><span class="kabul"><xsl:value-of select="$kod"/></span></xsl:when>
											<xsl:when test="$kod='RED'"><span class="red"><xsl:value-of select="$kod"/></span></xsl:when>
											<xsl:otherwise><xsl:value-of select="$kod"/></xsl:otherwise>
										</xsl:choose>
									</td>
								</tr>
							</table>
						</td>
					</tr>
				</table>
				<br/>
				<h2>İlgili Belge</h2>
				<table id="lineTable">
					<tr>
						<td class="lineTableTd hdr">Belge Türü</td>
						<td class="lineTableTd hdr">Belge No / UUID</td>
						<td class="lineTableTd hdr">Tarih</td>
					</tr>
					<xsl:for-each select="$doc/cac:DocumentResponse/cac:DocumentReference | $doc/*[local-name()='DocumentResponse']/*[local-name()='DocumentReference']">
						<tr>
							<td class="lineTableTd">
								<xsl:value-of select="cbc:DocumentType | *[local-name()='DocumentType']"/>
								<xsl:if test="cbc:DocumentTypeCode | *[local-name()='DocumentTypeCode']">
									<xsl:text> (</xsl:text>
									<xsl:value-of select="cbc:DocumentTypeCode | *[local-name()='DocumentTypeCode']"/>
									<xsl:text>)</xsl:text>
								</xsl:if>
							</td>
							<td class="lineTableTd"><xsl:value-of select="cbc:ID | *[local-name()='ID']"/></td>
							<td class="lineTableTd"><xsl:value-of select="cbc:IssueDate | *[local-name()='IssueDate']"/></td>
						</tr>
					</xsl:for-each>
				</table>
				<br/>
				<h2>Yanıt Açıklaması</h2>
				<table id="lineTable">
					<tr>
						<td class="lineTableTd">
							<xsl:value-of select="($doc/cac:DocumentResponse/cac:Response/cbc:Description | $doc/*[local-name()='DocumentResponse']/*[local-name()='Response']/*[local-name()='Description'])[1]"/>
						</td>
					</tr>
				</table>
				<xsl:if test="$doc/cbc:Note | $doc/*[local-name()='Note']">
					<br/>
					<h2>Notlar</h2>
					<table id="lineTable">
						<xsl:for-each select="$doc/cbc:Note | $doc/*[local-name()='Note']">
							<tr>
								<td class="lineTableTd"><xsl:value-of select="."/></td>
							</tr>
						</xsl:for-each>
					</table>
				</xsl:if>
			</body>
		</html>
	</xsl:template>
	<xsl:template name="PartiYaz">
		<xsl:param name="parti"/>
		<xsl:variable name="p" select="$parti[1]"/>
		<div>
			<strong>
				<xsl:value-of select="$p/cac:PartyName/cbc:Name | $p/*[local-name()='PartyName']/*[local-name()='Name']"/>
			</strong>
		</div>
		<xsl:for-each select="$p/cac:PartyIdentification | $p/*[local-name()='PartyIdentification']">
			<div>
				<xsl:value-of select="cbc:ID/@schemeID | *[local-name()='ID']/@schemeID"/>
				<xsl:text>: </xsl:text>
				<xsl:value-of select="cbc:ID | *[local-name()='ID']"/>
			</div>
		</xsl:for-each>
		<xsl:variable name="adr" select="$p/cac:PostalAddress | $p/*[local-name()='PostalAddress']"/>
		<div>
			<xsl:value-of select="$adr/cbc:StreetName | $adr/*[local-name()='StreetName']"/>
			<xsl:if test="$adr/cbc:BuildingNumber | $adr/*[local-name()='BuildingNumber']">
				<xsl:text> No: </xsl:text>
				<xsl:value-of select="$adr/cbc:BuildingNumber | $adr/*[local-name()='BuildingNumber']"/>
			</xsl:if>
		</div>
		<div>
			<xsl:value-of select="$adr/cbc:CitySubdivisionName | $adr/*[local-name()='CitySubdivisionName']"/>
			<xsl:text> </xsl:text>
			<xsl:value-of select="$adr/cbc:CityName | $adr/*[local-name()='CityName']"/>
			<xsl:text> </xsl:text>
			<xsl:value-of select="$adr/cbc:PostalZone | $adr/*[local-name()='PostalZone']"/>
		</div>
		<div>
			<xsl:value-of select="$adr/cac:Country/cbc:Name | $adr/*[local-name()='Country']/*[local-name()='Name']"/>
		</div>
		<div>
			<xsl:value-of select="$p/cac:PartyTaxScheme/cac:TaxScheme/cbc:Name | $p/*[local-name()='PartyTaxScheme']/*[local-name()='TaxScheme']/*[local-name()='Name']"/>
		</div>
		<xsl:if test="$p/cac:Contact/cbc:Telephone | $p/*[local-name()='Contact']/*[local-name()='Telephone']">
			<div>Tel: <xsl:value-of select="$p/cac:Contact/cbc:Telephone | $p/*[local-name()='Contact']/*[local-name()='Telephone']"/></div>
		</xsl:if>
		<xsl:if test="$p/cac:Contact/cbc:ElectronicMail | $p/*[local-name()='Contact']/*[local-name()='ElectronicMail']">
			<div>E-posta: <xsl:value-of select="$p/cac:Contact/cbc:ElectronicMail | $p/*[local-name()='Contact']/*[local-name()='ElectronicMail']"/></div>
		</xsl:if>
	</xsl:template>
</xsl:stylesheet>
