EDIT: http://tracker.anidb.info/view.php?id=661
I found a bug/typo in the mylist export template "xml-dark", about the "Complete" button;
Original code "mylista.js"
Code: Select all
var xmlURL = "mylist.xml";
var xslURL = "mylistb.xsl";
var resultElementId = "resultDiv";
var lastclass ="";
var sfv = 0;
var selected = 0;
var lastsel = 0;
var watched = 0;
var completed = 0;
var sortName = "Name";
var sortOrder = "ascending";
var sortType = "text";
function over(obj, name){
	obj.style.cursor='pointer';
	obj.className=name;
}
function out(obj){
	obj.style.cursor='';
	obj.className='';
}
function over2(obj, name){
	lastclass = obj.className;
	obj.className=name;
}
function out2(obj){
	obj.className=lastclass;
}
function sort(field, type){
	selected = 0;
	if(sortName==field){
		if(sortOrder=="ascending")
			sortOrder="descending";
		else	sortOrder="ascending";
	}
	else sortName = field;
	sortType = type;
	
	setVariable(xslDocument, "selected", selected);
	sortColumns(xmlDocument, xslDocument, resultElementId, sortName, sortType, sortOrder);
	update();
}
function select(nr){
	if(lastsel==nr) nr = 0;
	lastsel = nr;
	selected=nr;
	
	setVariable(xslDocument, "selected", selected);
	update();
}
function swWatched(obj, name){
	selectedN = '0';
	if(watched=='0'){
		watched = '1';
		obj.className=name;
	}else{
		watched = '0';
		obj.className='';
	}
	
	setVariable(xslDocument, "watched", watched);
	update();
}
function swComplete(obj){
	selectedN = 0;
	if(completed=='0'){
			completed = '1';
			obj.className='opt';
		}else{
			completed = '0';
			obj.className='';
		}
	setVariable(xslDocument, "completed", completed);
	update();
}
function swSFV(obj){
	if(sfv==0){
			sfv = 1;
			obj.className='opt';
	}else{
		sfv = 0;
		obj.className='';
	}
	setVariable(xslDocument, "sfv", sfv);
	update();
}
function setVariable(xslDocument, varname, value) {
  var xslNamespace = 'http://www.w3.org/1999/XSL/Transform';
  if (typeof xslDocument.setProperty != 'undefined') {
    xslDocument.setProperty('SelectionLanguage', 'XPath');
    xslDocument.setProperty('SelectionNamespaces', 'xmlns:xsl="' + xslNamespace + '"');
    var xslvar = xslDocument.selectSingleNode("//xsl:variable[@name='"+varname+"']/@select");
    xslvar.value = value;
  }
  else if (typeof xslDocument.getElementsByTagNameNS != 'undefined'){
    var xslApplyTemplates = xslDocument.getElementsByTagNameNS(xslNamespace, 'variable');
    for(var i = 0; i < xslApplyTemplates.length; i++) {
      var xslApplyTemplate = xslApplyTemplates[i];
    if (xslApplyTemplate.getAttribute('name') == varname) {
        xslApplyTemplate.setAttribute('select', value);
        break;
      }
    }
  }
}
function sortColumns(xmlDocument, xslDocument, resultElementId, orderBy, dataType, sortOrder) {
  removeXslSort(xslDocument, 'Anime');
  if (typeof orderBy != 'undefined') {
    if (typeof dataType == 'undefined') {
      dataType = 'text';
    }
    if (typeof sortOrder == 'undefined') {
      sortOrder = 'ascending';
    }
    addXslSort(xslDocument, 'Anime', orderBy, dataType, sortOrder);
  }
}
function removeXslSort (xslDocument, tagName) {
  var xslNamespace = 'http://www.w3.org/1999/XSL/Transform';
  if (typeof xslDocument.setProperty != 'undefined') {
    xslDocument.setProperty('SelectionLanguage', 'XPath');
    xslDocument.setProperty('SelectionNamespaces', 'xmlns:xsl="' + xslNamespace + '"');
    var xslSort = xslDocument.selectSingleNode('//xsl:sort');
    if (xslSort) {
      xslSort.parentNode.removeChild(xslSort);
    }
  }
  else if (typeof xslDocument.getElementsByTagNameNS != 'undefined') {
    var xslSorts = xslDocument.getElementsByTagNameNS(xslNamespace, 'sort');
    if (xslSorts.length > 0) {
      xslSorts[0].parentNode.removeChild(xslSorts[0]);
    }
  }
}
function addXslSort (xslDocument, tagName, orderBy, dataType, sortOrder) {
  var xslNamespace = 'http://www.w3.org/1999/XSL/Transform';
  if (typeof xslDocument.setProperty != 'undefined') {
    xslDocument.setProperty('SelectionLanguage', 'XPath');
    xslDocument.setProperty('SelectionNamespaces', 'xmlns:xsl="' + xslNamespace + '"');
    var xslApplyTemplates = xslDocument.selectSingleNode('//xsl:apply-templates[@select = "' + tagName + '"]');
    if (xslApplyTemplates) {
      var xslSort = xslDocument.createNode(1, 'xsl:sort', xslNamespace);
      xslSort.setAttribute('select', orderBy);
      xslSort.setAttribute('data-type', dataType);
      xslSort.setAttribute('order', sortOrder);
      xslApplyTemplates.appendChild(xslSort);
    }
  }
  else if (typeof xslDocument.getElementsByTagNameNS != 'undefined'){
    var xslApplyTemplates = xslDocument.getElementsByTagNameNS(xslNamespace, 'apply-templates');
    for (var i = 0; i < xslApplyTemplates.length; i++) {
      var xslApplyTemplate = xslApplyTemplates[i];
      if (xslApplyTemplate.getAttribute('select') == tagName) {
        var xslSort = xslDocument.createElementNS(xslNamespace, 'xsl:sort');
        xslSort.setAttribute('select', orderBy);
        xslSort.setAttribute('data-type', dataType);
        xslSort.setAttribute('order', sortOrder);
        xslApplyTemplate.appendChild(xslSort);
        break;
      }
    }
  }
}
function update(){
  var resultElement;
  if (document.getElementById){
    resultElement = document.getElementById(resultElementId);
    if (resultElement) {
      if (typeof xmlDocument.transformNode != 'undefined') {
        resultElement.innerHTML = xmlDocument.transformNode(xslDocument);
      }
      else if (typeof XSLTProcessor != 'undefined') {
        var xsltProcessor = new XSLTProcessor()
        if (typeof xsltProcessor.importStylesheet != 'undefined') {
          xsltProcessor.importStylesheet(xslDocument);
          var documentFragment = xsltProcessor.transformToFragment(xmlDocument, resultElement.ownerDocument);
          while (resultElement.hasChildNodes()) {
            resultElement.removeChild(resultElement.lastChild);
          }
          resultElement.appendChild(documentFragment);
        }
        else if (typeof xsltProcessor.transformDocument != 'undefined') {
          var resultDocument = document.implementation.createDocument('', 'dummy', null);
          xsltProcessor.transformDocument(xmlDocument, xslDocument, resultDocument, null);
          while (resultElement.hasChildNodes()) {
            resultElement.removeChild(resultElement.lastChild);
          }
          resultElement.appendChild(resultElement.ownerDocument.importNode(resultDocument.documentElement, true));
        }
      }
    }
  }
}
////INIT////
function transformIfLoaded () {
	if(xmlDocument.readyState == 4 && xslDocument.readyState == 4) {
		sortColumns(xmlDocument, xslDocument, resultElementId);
		update();
	}
}
function initDocuments (xmlURL, xslURL) {
  if (typeof ActiveXObject != 'undefined') {
    xmlDocument = new ActiveXObject('Msxml2.DOMDocument');
    xmlDocument.async = false;///!
    xmlDocument.onreadystatechange = transformIfLoaded;
    xslDocument = new ActiveXObject('Msxml2.DOMDocument');
    xslDocument.async = false;///!
    xslDocument.onreadystatechange = transformIfLoaded;
  }
  else if (typeof document.implementation != 'undefined' &&
           typeof document.implementation.createDocument != 'undefined') {
    xmlDocument = document.implementation.createDocument('', 'dummy', null);
    xmlDocument.async = true;
    xslDocument = document.implementation.createDocument('', 'dummy', null);
    xslDocument.async = true;
    xmlDocument.onload = function (evt) {
      xmlDocument.readyState = 4;
      transformIfLoaded();
    };
    xslDocument.onload = function (evt) {
      xslDocument.readyState = 4;
      transformIfLoaded();
    };
  }
  if (typeof xmlDocument != 'undefined' &&
      typeof xmlDocument.load != 'undefined') {
    xmlDocument.load(xmlURL);
    xslDocument.load(xslURL);
  }
  else {
    var message = 'This browser doesn\'t seem to support scripting of XML documents.';
    var p;
    if (document.createElement && (p = document.createElement('p'))) {
      p.appendChild(document.createTextNode(message));
      document.getElementById(resultElementId).appendChild(p);
    }
    else {
      alert(message);
    }
  }
}
window.onload = function (evt) {
  initDocuments(xmlURL, xslURL);
}
Code: Select all
<?xml version="1.0" encoding="utf-8"?> 
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:output method="html" encoding="UTF-8" />
<xsl:variable name="completed" select="0"/>
<xsl:variable name="watched" select="0"/>
<xsl:variable name="sfv" select="0"/>
<xsl:template match="AC">
<table width="100%" border="0">
		<tr class="options">
		<td> Options: </td>
		<td style="cursor:pointer;" onclick="javascript:swWatched(this)">
		<xsl:choose>
         <xsl:when test="$watched=1"><xsl:attribute name="class">opt</xsl:attribute></xsl:when>
         <xsl:otherwise><xsl:attribute name="class"></xsl:attribute></xsl:otherwise>
		</xsl:choose> Watched </td>
		<td style="cursor:pointer;" onclick="javascript:swComplete(this)">
		<xsl:choose>
         <xsl:when test="$completed=1"><xsl:attribute name="class">opt</xsl:attribute></xsl:when>
         <xsl:otherwise><xsl:attribute name="class"></xsl:attribute></xsl:otherwise>
		</xsl:choose> Complete </td>
		<td style="cursor:pointer;" onclick="javascript:swSFV(this)">
		<xsl:choose>
         <xsl:when test="$sfv=1"><xsl:attribute name="class">opt</xsl:attribute></xsl:when>
         <xsl:otherwise><xsl:attribute name="class"></xsl:attribute></xsl:otherwise>
		</xsl:choose> Alt. filenames </td>
		</tr>
</table>
<table width="100%">
	<tr class="thead">
		<td> # </td>
		<td onClick="sort('Name', 'text')"    onMouseOver="over(this, 'sort')" onMouseOut="out(this)"> 
			Name </td>
		<td onClick="sort('substring(Year,1,4)', 'number')"  	onMouseOver="over(this, 'sort')" onMouseOut="out(this)"> 
			Year </td>
		<td onClick="sort('Rate', 'number')" 	onMouseOver="over(this, 'sort')" onMouseOut="out(this)"> 
			Rating </td>
		<td onClick="sort('Files/@number','number')" 	onMouseOver="over(this, 'sort')" onMouseOut="out(this)"> 
			Files </td>
		<td onClick="sort('translate(Size, \'.\', \'\')', 'number')"  onMouseOver="over(this, 'sort')" onMouseOut="out(this)"> 
			Size </td>	
	</tr>
<xsl:apply-templates select="Anime"/>
</table>
</xsl:template>
<xsl:template match="Anime">
<xsl:variable name="selected" select="0"/>
<xsl:variable name="position" select="position()"/>
<xsl:if test="($watched=0 or @watched=1) and ($completed=0 or @completed=1)">
<tr onMouseOver="over2(this, 'high1')" onMouseOut="out2(this)">
      <xsl:choose>
         <xsl:when test="position() mod 2"><xsl:attribute name="class">even</xsl:attribute></xsl:when>
         <xsl:otherwise><xsl:attribute name="class">odd</xsl:attribute></xsl:otherwise>
      </xsl:choose>
	<td align="center" style="cursor:pointer;" onClick="select('{$position}')"> <xsl:value-of select="$position"/></td>
	<td align="left">	<a href="http://anidb.info/a{Url}" target="_blank"> <xsl:value-of select="Name" /> </a> </td>
	<td align="center"> <xsl:value-of select="Year"/> </td>
	<td align="center"> <xsl:value-of select="Rate"/> </td>
	<td align="center"> <xsl:value-of select="Files/@number"/> </td>
	<td align="right"> 	<xsl:value-of select="Size"/> </td>
</tr>
<xsl:if test="position()=$selected">
<xsl:for-each select="Files/Episode/File">
	<tr class="dir" onMouseOver="over2(this, 'high2');window.status='State: {State}'" onMouseOut="out2(this);window.status=''">
		
<xsl:choose>
         <xsl:when test="$sfv=0">
		 	<td align="center"> <xsl:value-of select="position()" /></td>
		 	<td colspan="3"><a href="http://anidb.info/f{@fid}" target="_blank"><xsl:value-of select="Name"/></a> </td>
			<td align="center"><a href="{ED2K}">ed2k</a></td>
			<td align="right"> <xsl:value-of select="Size"/> </td>
		 </xsl:when>
         <xsl:otherwise>
		 	<td> </td>
		 	<td colspan="5">[<xsl:value-of select="translate(Group,' ','')"/>]_<xsl:value-of select="translate(../../../Name,' ','_')"/>_-_<xsl:value-of select="../@nr"/>_[<xsl:value-of select="translate(CRC,'abcdef','ABCDEF')"/>].<xsl:value-of select="Type"/></td>
		</xsl:otherwise>
</xsl:choose>
		
	</tr>
</xsl:for-each>
</xsl:if>
</xsl:if>
</xsl:template>
</xsl:stylesheet>
-
Here is a code that works; (only fixed the code that had anything to do with the Complete list)
Working code "mylista.js"
Code: Select all
var xmlURL = "mylist.xml";
var xslURL = "mylistb.xsl";
var resultElementId = "resultDiv";
var lastclass ="";
var sfv = 0;
var selected = 0;
var lastsel = 0;
var watched = 0;
var complete = 0;
var sortName = "Name";
var sortOrder = "ascending";
var sortType = "text";
function over(obj, name){
	obj.style.cursor='pointer';
	obj.className=name;
}
function out(obj){
	obj.style.cursor='';
	obj.className='';
}
function over2(obj, name){
	lastclass = obj.className;
	obj.className=name;
}
function out2(obj){
	obj.className=lastclass;
}
function sort(field, type){
	selected = 0;
	if(sortName==field){
		if(sortOrder=="ascending")
			sortOrder="descending";
		else	sortOrder="ascending";
	}
	else sortName = field;
	sortType = type;
	
	setVariable(xslDocument, "selected", selected);
	sortColumns(xmlDocument, xslDocument, resultElementId, sortName, sortType, sortOrder);
	update();
}
function select(nr){
	if(lastsel==nr) nr = 0;
	lastsel = nr;
	selected=nr;
	
	setVariable(xslDocument, "selected", selected);
	update();
}
function swWatched(obj, name){
	selectedN = '0';
	if(watched=='0'){
		watched = '1';
		obj.className=name;
	}else{
		watched = '0';
		obj.className='';
	}
	
	setVariable(xslDocument, "watched", watched);
	update();
}
function swComplete(obj){
	selectedN = 0;
	if(complete=='0'){
			complete = '1';
			obj.className='opt';
		}else{
			complete = '0';
			obj.className='';
		}
	setVariable(xslDocument, "complete", complete);
	update();
}
function swSFV(obj){
	if(sfv==0){
			sfv = 1;
			obj.className='opt';
	}else{
		sfv = 0;
		obj.className='';
	}
	setVariable(xslDocument, "sfv", sfv);
	update();
}
function setVariable(xslDocument, varname, value) {
  var xslNamespace = 'http://www.w3.org/1999/XSL/Transform';
  if (typeof xslDocument.setProperty != 'undefined') {
    xslDocument.setProperty('SelectionLanguage', 'XPath');
    xslDocument.setProperty('SelectionNamespaces', 'xmlns:xsl="' + xslNamespace + '"');
    var xslvar = xslDocument.selectSingleNode("//xsl:variable[@name='"+varname+"']/@select");
    xslvar.value = value;
  }
  else if (typeof xslDocument.getElementsByTagNameNS != 'undefined'){
    var xslApplyTemplates = xslDocument.getElementsByTagNameNS(xslNamespace, 'variable');
    for(var i = 0; i < xslApplyTemplates.length; i++) {
      var xslApplyTemplate = xslApplyTemplates[i];
    if (xslApplyTemplate.getAttribute('name') == varname) {
        xslApplyTemplate.setAttribute('select', value);
        break;
      }
    }
  }
}
function sortColumns(xmlDocument, xslDocument, resultElementId, orderBy, dataType, sortOrder) {
  removeXslSort(xslDocument, 'Anime');
  if (typeof orderBy != 'undefined') {
    if (typeof dataType == 'undefined') {
      dataType = 'text';
    }
    if (typeof sortOrder == 'undefined') {
      sortOrder = 'ascending';
    }
    addXslSort(xslDocument, 'Anime', orderBy, dataType, sortOrder);
  }
}
function removeXslSort (xslDocument, tagName) {
  var xslNamespace = 'http://www.w3.org/1999/XSL/Transform';
  if (typeof xslDocument.setProperty != 'undefined') {
    xslDocument.setProperty('SelectionLanguage', 'XPath');
    xslDocument.setProperty('SelectionNamespaces', 'xmlns:xsl="' + xslNamespace + '"');
    var xslSort = xslDocument.selectSingleNode('//xsl:sort');
    if (xslSort) {
      xslSort.parentNode.removeChild(xslSort);
    }
  }
  else if (typeof xslDocument.getElementsByTagNameNS != 'undefined') {
    var xslSorts = xslDocument.getElementsByTagNameNS(xslNamespace, 'sort');
    if (xslSorts.length > 0) {
      xslSorts[0].parentNode.removeChild(xslSorts[0]);
    }
  }
}
function addXslSort (xslDocument, tagName, orderBy, dataType, sortOrder) {
  var xslNamespace = 'http://www.w3.org/1999/XSL/Transform';
  if (typeof xslDocument.setProperty != 'undefined') {
    xslDocument.setProperty('SelectionLanguage', 'XPath');
    xslDocument.setProperty('SelectionNamespaces', 'xmlns:xsl="' + xslNamespace + '"');
    var xslApplyTemplates = xslDocument.selectSingleNode('//xsl:apply-templates[@select = "' + tagName + '"]');
    if (xslApplyTemplates) {
      var xslSort = xslDocument.createNode(1, 'xsl:sort', xslNamespace);
      xslSort.setAttribute('select', orderBy);
      xslSort.setAttribute('data-type', dataType);
      xslSort.setAttribute('order', sortOrder);
      xslApplyTemplates.appendChild(xslSort);
    }
  }
  else if (typeof xslDocument.getElementsByTagNameNS != 'undefined'){
    var xslApplyTemplates = xslDocument.getElementsByTagNameNS(xslNamespace, 'apply-templates');
    for (var i = 0; i < xslApplyTemplates.length; i++) {
      var xslApplyTemplate = xslApplyTemplates[i];
      if (xslApplyTemplate.getAttribute('select') == tagName) {
        var xslSort = xslDocument.createElementNS(xslNamespace, 'xsl:sort');
        xslSort.setAttribute('select', orderBy);
        xslSort.setAttribute('data-type', dataType);
        xslSort.setAttribute('order', sortOrder);
        xslApplyTemplate.appendChild(xslSort);
        break;
      }
    }
  }
}
function update(){
  var resultElement;
  if (document.getElementById){
    resultElement = document.getElementById(resultElementId);
    if (resultElement) {
      if (typeof xmlDocument.transformNode != 'undefined') {
        resultElement.innerHTML = xmlDocument.transformNode(xslDocument);
      }
      else if (typeof XSLTProcessor != 'undefined') {
        var xsltProcessor = new XSLTProcessor()
        if (typeof xsltProcessor.importStylesheet != 'undefined') {
          xsltProcessor.importStylesheet(xslDocument);
          var documentFragment = xsltProcessor.transformToFragment(xmlDocument, resultElement.ownerDocument);
          while (resultElement.hasChildNodes()) {
            resultElement.removeChild(resultElement.lastChild);
          }
          resultElement.appendChild(documentFragment);
        }
        else if (typeof xsltProcessor.transformDocument != 'undefined') {
          var resultDocument = document.implementation.createDocument('', 'dummy', null);
          xsltProcessor.transformDocument(xmlDocument, xslDocument, resultDocument, null);
          while (resultElement.hasChildNodes()) {
            resultElement.removeChild(resultElement.lastChild);
          }
          resultElement.appendChild(resultElement.ownerDocument.importNode(resultDocument.documentElement, true));
        }
      }
    }
  }
}
////INIT////
function transformIfLoaded () {
	if(xmlDocument.readyState == 4 && xslDocument.readyState == 4) {
		sortColumns(xmlDocument, xslDocument, resultElementId);
		update();
	}
}
function initDocuments (xmlURL, xslURL) {
  if (typeof ActiveXObject != 'undefined') {
    xmlDocument = new ActiveXObject('Msxml2.DOMDocument');
    xmlDocument.async = false;///!
    xmlDocument.onreadystatechange = transformIfLoaded;
    xslDocument = new ActiveXObject('Msxml2.DOMDocument');
    xslDocument.async = false;///!
    xslDocument.onreadystatechange = transformIfLoaded;
  }
  else if (typeof document.implementation != 'undefined' &&
           typeof document.implementation.createDocument != 'undefined') {
    xmlDocument = document.implementation.createDocument('', 'dummy', null);
    xmlDocument.async = true;
    xslDocument = document.implementation.createDocument('', 'dummy', null);
    xslDocument.async = true;
    xmlDocument.onload = function (evt) {
      xmlDocument.readyState = 4;
      transformIfLoaded();
    };
    xslDocument.onload = function (evt) {
      xslDocument.readyState = 4;
      transformIfLoaded();
    };
  }
  if (typeof xmlDocument != 'undefined' &&
      typeof xmlDocument.load != 'undefined') {
    xmlDocument.load(xmlURL);
    xslDocument.load(xslURL);
  }
  else {
    var message = 'This browser doesn\'t seem to support scripting of XML documents.';
    var p;
    if (document.createElement && (p = document.createElement('p'))) {
      p.appendChild(document.createTextNode(message));
      document.getElementById(resultElementId).appendChild(p);
    }
    else {
      alert(message);
    }
  }
}
window.onload = function (evt) {
  initDocuments(xmlURL, xslURL);
}
Working code "mylistb.xsl"
Code: Select all
<?xml version="1.0" encoding="utf-8"?> 
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:output method="html" encoding="UTF-8" />
<xsl:variable name="complete" select="0"/>
<xsl:variable name="watched" select="0"/>
<xsl:variable name="sfv" select="0"/>
<xsl:template match="AC">
<table width="100%" border="0">
		<tr class="options">
		<td> Options: </td>
		<td style="cursor:pointer;" onclick="javascript:swWatched(this)">
		<xsl:choose>
         <xsl:when test="$watched=1"><xsl:attribute name="class">opt</xsl:attribute></xsl:when>
         <xsl:otherwise><xsl:attribute name="class"></xsl:attribute></xsl:otherwise>
		</xsl:choose> Watched </td>
		<td style="cursor:pointer;" onclick="javascript:swComplete(this)">
		<xsl:choose>
         <xsl:when test="$complete=1"><xsl:attribute name="class">opt</xsl:attribute></xsl:when>
         <xsl:otherwise><xsl:attribute name="class"></xsl:attribute></xsl:otherwise>
		</xsl:choose> Complete </td>
		<td style="cursor:pointer;" onclick="javascript:swSFV(this)">
		<xsl:choose>
         <xsl:when test="$sfv=1"><xsl:attribute name="class">opt</xsl:attribute></xsl:when>
         <xsl:otherwise><xsl:attribute name="class"></xsl:attribute></xsl:otherwise>
		</xsl:choose> Alt. filenames </td>
		</tr>
</table>
<table width="100%">
	<tr class="thead">
		<td> # </td>
		<td onClick="sort('Name', 'text')"    onMouseOver="over(this, 'sort')" onMouseOut="out(this)"> 
			Name </td>
		<td onClick="sort('substring(Year,1,4)', 'number')"  	onMouseOver="over(this, 'sort')" onMouseOut="out(this)"> 
			Year </td>
		<td onClick="sort('Rate', 'number')" 	onMouseOver="over(this, 'sort')" onMouseOut="out(this)"> 
			Rating </td>
		<td onClick="sort('Files/@number','number')" 	onMouseOver="over(this, 'sort')" onMouseOut="out(this)"> 
			Files </td>
		<td onClick="sort('translate(Size, \'.\', \'\')', 'number')"  onMouseOver="over(this, 'sort')" onMouseOut="out(this)"> 
			Size </td>	
	</tr>
<xsl:apply-templates select="Anime"/>
</table>
</xsl:template>
<xsl:template match="Anime">
<xsl:variable name="selected" select="0"/>
<xsl:variable name="position" select="position()"/>
<xsl:if test="($watched=0 or @watched=1) and ($complete=0 or @complete=1)">
<tr onMouseOver="over2(this, 'high1')" onMouseOut="out2(this)">
      <xsl:choose>
         <xsl:when test="position() mod 2"><xsl:attribute name="class">even</xsl:attribute></xsl:when>
         <xsl:otherwise><xsl:attribute name="class">odd</xsl:attribute></xsl:otherwise>
      </xsl:choose>
	<td align="center" style="cursor:pointer;" onClick="select('{$position}')"> <xsl:value-of select="$position"/></td>
	<td align="left">	<a href="http://anidb.info/a{Url}" target="_blank"> <xsl:value-of select="Name" /> </a> </td>
	<td align="center"> <xsl:value-of select="Year"/> </td>
	<td align="center"> <xsl:value-of select="Rate"/> </td>
	<td align="center"> <xsl:value-of select="Files/@number"/> </td>
	<td align="right"> 	<xsl:value-of select="Size"/> </td>
</tr>
<xsl:if test="position()=$selected">
<xsl:for-each select="Files/Episode/File">
	<tr class="dir" onMouseOver="over2(this, 'high2');window.status='State: {State}'" onMouseOut="out2(this);window.status=''">
		
<xsl:choose>
         <xsl:when test="$sfv=0">
		 	<td align="center"> <xsl:value-of select="position()" /></td>
		 	<td colspan="3"><a href="http://anidb.info/f{@fid}" target="_blank"><xsl:value-of select="Name"/></a> </td>
			<td align="center"><a href="{ED2K}">ed2k</a></td>
			<td align="right"> <xsl:value-of select="Size"/> </td>
		 </xsl:when>
         <xsl:otherwise>
		 	<td> </td>
		 	<td colspan="5">[<xsl:value-of select="translate(Group,' ','')"/>]_<xsl:value-of select="translate(../../../Name,' ','_')"/>_-_<xsl:value-of select="../@nr"/>_[<xsl:value-of select="translate(CRC,'abcdef','ABCDEF')"/>].<xsl:value-of select="Type"/></td>
		</xsl:otherwise>
</xsl:choose>
		
	</tr>
</xsl:for-each>
</xsl:if>
</xsl:if>
</xsl:template>
</xsl:stylesheet>
Hope this will get fixed soon

I'm out;
~Hybr1d


