2013-11-10 12:20:08 +01:00
<?xml version="1.0" encoding="utf-8" ?>
< xsl:stylesheet version = "1.0" xmlns:xsl = "http://www.w3.org/1999/XSL/Transform" xmlns:msxsl = 'urn:schemas-microsoft-com:xslt' >
< xsl:key name = "ProjectKey" match = "Event" use = "@Project" / >
< xsl:template match = "Events" mode = "createProjects" >
< projects >
< xsl:for-each select = "Event" >
<!-- xsl:sort select="@Project" order="descending"/ -->
< xsl:if test = "(1=position()) or (preceding-sibling::*[1]/@Project != @Project)" >
< xsl:variable name = "ProjectName" select = "@Project" / >
< project >
< xsl:attribute name = "name" >
< xsl:value-of select = "@Project" / >
< / xsl:attribute >
< xsl:if test = "@Project=''" >
< xsl:attribute name = "solution" >
< xsl:value-of select = "@Solution" / >
< / xsl:attribute >
< / xsl:if >
< xsl:for-each select = "key('ProjectKey', $ProjectName)" >
<!-- xsl:sort select="@Source" / -->
< xsl:if test = "(1=position()) or (preceding-sibling::*[1]/@Source != @Source)" >
< source >
< xsl:attribute name = "name" >
< xsl:value-of select = "@Source" / >
< / xsl:attribute >
< xsl:variable name = "Source" >
< xsl:value-of select = "@Source" / >
< / xsl:variable >
< xsl:for-each select = "key('ProjectKey', $ProjectName)[ @Source = $Source ]" >
< event >
< xsl:attribute name = "error-level" >
< xsl:value-of select = "@ErrorLevel" / >
< / xsl:attribute >
< xsl:attribute name = "description" >
< xsl:value-of select = "@Description" / >
< / xsl:attribute >
< / event >
< / xsl:for-each >
< / source >
< / xsl:if >
< / xsl:for-each >
< / project >
< / xsl:if >
< / xsl:for-each >
< / projects >
< / xsl:template >
< xsl:template match = "projects" >
< xsl:for-each select = "project" >
< xsl:sort select = "@Name" order = "ascending" / >
< h2 >
< xsl:if test = "@solution" > < a _locID = "Solution" > Solution< / a > : < xsl:value-of select = "@solution" / > < / xsl:if >
< xsl:if test = "not(@solution)" > < a _locID = "Project" > Project< / a > : < xsl:value-of select = "@name" / >
< xsl:for-each select = "source" >
< xsl:variable name = "Hyperlink" select = "@name" / >
< xsl:for-each select = "event[@error-level='4']" >
  < A class = "note" > < xsl:attribute name = "HREF" > < xsl:value-of select = "$Hyperlink" / > < / xsl:attribute > < xsl:value-of select = "@description" / > < / A >
< / xsl:for-each >
< / xsl:for-each >
< / xsl:if >
< / h2 >
< table cellpadding = "2" cellspacing = "0" width = "98%" border = "1" bordercolor = "white" class = "infotable" >
< tr >
< td nowrap = "1" class = "header" _locID = "Filename" > Filename< / td >
< td nowrap = "1" class = "header" _locID = "Status" > Status< / td >
< td nowrap = "1" class = "header" _locID = "Errors" > Errors< / td >
< td nowrap = "1" class = "header" _locID = "Warnings" > Warnings< / td >
< / tr >
< xsl:for-each select = "source" >
< xsl:sort select = "@name" order = "ascending" / >
< xsl:variable name = "source-id" select = "generate-id(.)" / >
< xsl:if test = "count(event)!=count(event[@error-level='4'])" >
< tr class = "row" >
< td class = "content" >
< A HREF = "javascript:" > < xsl:attribute name = "onClick" > javascript:document.images['< xsl:value-of select = "$source-id" / > '].click()< / xsl:attribute > < IMG border = "0" _locID = "IMG.alt" _locAttrData = "alt" alt = "expand/collapse section" class = "expandable" height = "11" onclick = "changepic()" src = "_UpgradeReport_Files/UpgradeReport_Plus.gif" width = "9" > < xsl:attribute name = "name" > < xsl:value-of select = "$source-id" / > < / xsl:attribute > < xsl:attribute name = "child" > src< xsl:value-of select = "$source-id" / > < / xsl:attribute > < / IMG > < / A >   < xsl:value-of select = "@name" / >
< / td >
< td class = "content" >
< xsl:if test = "count(event[@error-level='3'])=1" >
< xsl:for-each select = "event[@error-level='3']" >
< xsl:if test = "@description='Converted'" > < a _locID = "Converted1" > Converted< / a > < / xsl:if >
< xsl:if test = "@description!='Converted'" > < xsl:value-of select = "@description" / > < / xsl:if >
< / xsl:for-each >
< / xsl:if >
< xsl:if test = "count(event[@error-level='3'])!=1 and count(event[@error-level='3' and @description='Converted'])!=0" > < a _locID = "Converted2" > Converted< / a >
< / xsl:if >
< / td >
< td class = "content" > < xsl:value-of select = "count(event[@error-level='2'])" / > < / td >
< td class = "content" > < xsl:value-of select = "count(event[@error-level='1'])" / > < / td >
< / tr >
< tr class = "collapsed" bgcolor = "#ffffff" >
< xsl:attribute name = "id" > src< xsl:value-of select = "$source-id" / > < / xsl:attribute >
< td colspan = "7" >
< table width = "97%" border = "1" bordercolor = "#dcdcdc" rules = "cols" class = "issuetable" >
< tr >
< td colspan = "7" class = "issuetitle" _locID = "ConversionIssues" > Conversion Report - < xsl:value-of select = "@name" / > :< / td >
< / tr >
< xsl:for-each select = "event[@error-level!='3']" >
< xsl:if test = "@error-level!='4'" >
< tr >
< td class = "issuenone" style = "border-bottom:solid 1 lightgray" >
< xsl:value-of select = "@description" / >
< / td >
< / tr >
< / xsl:if >
< / xsl:for-each >
< / table >
< / td >
< / tr >
< / xsl:if >
< / xsl:for-each >
< tr valign = "top" >
< td class = "foot" >
< xsl:if test = "count(source)!=1" >
< xsl:value-of select = "count(source)" / > < a _locID = "file1" > files< / a >
< / xsl:if >
< xsl:if test = "count(source)=1" >
< a _locID = "file2" > 1 file< / a >
< / xsl:if >
< / td >
< td class = "foot" >
< a _locID = "Converted3" > Converted< / a > :  < xsl:value-of select = "count(source/event[@error-level='3' and @description='Converted'])" / > < BR / >
< a _locID = "NotConverted" > Not converted< / a > :  < xsl:value-of select = "count(source) - count(source/event[@error-level='3' and @description='Converted'])" / >
< / td >
< td class = "foot" > < xsl:value-of select = "count(source/event[@error-level='2'])" / > < / td >
< td class = "foot" > < xsl:value-of select = "count(source/event[@error-level='1'])" / > < / td >
< / tr >
< / table >
< / xsl:for-each >
< / xsl:template >
< xsl:template match = "Property" >
< xsl:if test = "@Name!='Date' and @Name!='Time' and @Name!='LogNumber' and @Name!='Solution'" >
< tr > < td nowrap = "1" > < b > < xsl:value-of select = "@Name" / > : < / b > < xsl:value-of select = "@Value" / > < / td > < / tr >
< / xsl:if >
< / xsl:template >
< xsl:template match = "UpgradeLog" >
< html >
< head >
< META HTTP-EQUIV = "Content-Type" content = "text/html; charset=utf-8" / >
< link rel = "stylesheet" href = "_UpgradeReport_Files\UpgradeReport.css" / >
< title _locID = "ConversionReport0" > Conversion Report 
< xsl:if test = "Properties/Property[@Name='LogNumber']" >
< xsl:value-of select = "Properties/Property[@Name='LogNumber']/@Value" / >
< / xsl:if >
< / title >
< script language = "javascript" >
function outliner () {
oMe = window.event.srcElement
//get child element
var child = document.all[event.srcElement.getAttribute("child",false)];
//if child element exists, expand or collapse it.
if (null != child)
child.className = child.className == "collapsed" ? "expanded" : "collapsed";
}
function changepic() {
uMe = window.event.srcElement;
var check = uMe.src.toLowerCase();
if (check.lastIndexOf("upgradereport_plus.gif") != -1)
{
uMe.src = "_UpgradeReport_Files/UpgradeReport_Minus.gif"
}
else
{
uMe.src = "_UpgradeReport_Files/UpgradeReport_Plus.gif"
}
}
< / script >
< / head >
< body topmargin = "0" leftmargin = "0" rightmargin = "0" onclick = "outliner();" >
< h1 _locID = "ConversionReport" > Conversion Report - < xsl:value-of select = "Properties/Property[@Name='Solution']/@Value" / > < / h1 >
< p > < span class = "note" >
< b _locID = "TimeOfConversion" > Time of Conversion:< / b >     < xsl:value-of select = "Properties/Property[@Name='Date']/@Value" / >     < xsl:value-of select = "Properties/Property[@Name='Time']/@Value" / > < br / >
< / span > < / p >
< xsl:variable name = "SortedEvents" >
< Events >
< xsl:for-each select = "Event" >
< xsl:sort select = "@Project" order = "ascending" / >
< xsl:sort select = "@Source" order = "ascending" / >
< xsl:sort select = "@ErrorLevel" order = "ascending" / >
< Event >
< xsl:attribute name = "Project" > < xsl:value-of select = "@Project" / > < / xsl:attribute >
< xsl:attribute name = "Solution" > < xsl:value-of select = "/UpgradeLog/Properties/Property[@Name='Solution']/@Value" / > < / xsl:attribute >
< xsl:attribute name = "Source" > < xsl:value-of select = "@Source" / > < / xsl:attribute >
< xsl:attribute name = "ErrorLevel" > < xsl:value-of select = "@ErrorLevel" / > < / xsl:attribute >
< xsl:attribute name = "Description" > < xsl:value-of select = "@Description" / > < / xsl:attribute >
< / Event >
< / xsl:for-each >
< / Events >
< / xsl:variable >
< xsl:variable name = "Projects" >
< xsl:apply-templates select = "msxsl:node-set($SortedEvents)/*" mode = "createProjects" / >
< / xsl:variable >
< xsl:apply-templates select = "msxsl:node-set($Projects)/*" / >
< p > < / p > < p >
< table class = "note" >
< tr >
< td nowrap = "1" >
< b _locID = "ConversionSettings" > Conversion Settings< / b >
< / td >
< / tr >
< xsl:apply-templates select = "Properties" / >
< / table > < / p >
< / body >
< / html >
< / xsl:template >
< / xsl:stylesheet >