1/* Super Tables v0.30 - MIT Style License --- Copyright (c) 2008 Matt Murphy, www.matts411.com --- Contributors: Joe Gallo */
2/* Compressed with Dean Edwards' /Packer/ v3.0 --- http://dean.edwards.name/packer/ */
3var superTable=function(tableId,options){options=options||{};this.cssSkin=options.cssSkin||"";this.headerRows=parseInt(options.headerRows||"1");this.fixedCols=parseInt(options.fixedCols||"0");this.colWidths=options.colWidths||[];this.initFunc=options.onStart||null;this.callbackFunc=options.onFinish||null;this.initFunc&&this.initFunc();this.sBase=document.createElement("DIV");this.sFHeader=this.sBase.cloneNode(false);this.sHeader=this.sBase.cloneNode(false);this.sHeaderInner=this.sBase.cloneNode(false);this.sFData=this.sBase.cloneNode(false);this.sFDataInner=this.sBase.cloneNode(false);this.sData=this.sBase.cloneNode(false);this.sColGroup=document.createElement("COLGROUP");this.sDataTable=document.getElementById(tableId);this.sDataTable.style.margin="0px";if(this.cssSkin!==""){this.sDataTable.className+=" "+this.cssSkin}if(this.sDataTable.getElementsByTagName("COLGROUP").length>0){this.sDataTable.removeChild(this.sDataTable.getElementsByTagName("COLGROUP")[0])}this.sParent=this.sDataTable.parentNode;this.sParentHeight=this.sParent.offsetHeight;this.sParentWidth=this.sParent.offsetWidth;this.sBase.className="sBase";this.sFHeader.className="sFHeader";this.sHeader.className="sHeader";this.sHeaderInner.className="sHeaderInner";this.sFData.className="sFData";this.sFDataInner.className="sFDataInner";this.sData.className="sData";var alpha,beta,touched,clean,cleanRow,i,j,k,m,n,p;this.sHeaderTable=this.sDataTable.cloneNode(false);if(this.sDataTable.tHead){alpha=this.sDataTable.tHead;this.sHeaderTable.appendChild(alpha.cloneNode(false));beta=this.sHeaderTable.tHead}else{alpha=this.sDataTable.tBodies[0];this.sHeaderTable.appendChild(alpha.cloneNode(false));beta=this.sHeaderTable.tBodies[0]}alpha=alpha.rows;for(i=0;i<this.headerRows;i++){beta.appendChild(alpha[i].cloneNode(true))}this.sHeaderInner.appendChild(this.sHeaderTable);if(this.fixedCols>0){this.sFHeaderTable=this.sHeaderTable.cloneNode(true);this.sFHeader.appendChild(this.sFHeaderTable);this.sFDataTable=this.sDataTable.cloneNode(true);this.sFDataInner.appendChild(this.sFDataTable)}alpha=this.sDataTable.tBodies[0].rows;for(i=0,j=alpha.length;i<j;i++){clean=true;for(k=0,m=alpha[i].cells.length;k<m;k++){if(alpha[i].cells[k].colSpan!==1||alpha[i].cells[k].rowSpan!==1){i+=alpha[i].cells[k].rowSpan-1;clean=false;break}}if(clean===true)break}cleanRow=(clean===true)?i:0;for(i=0,j=alpha[cleanRow].cells.length;i<j;i++){if(i===this.colWidths.length||this.colWidths[i]===-1){this.colWidths[i]=alpha[cleanRow].cells[i].offsetWidth}}for(i=0,j=this.colWidths.length;i<j;i++){this.sColGroup.appendChild(document.createElement("COL"));this.sColGroup.lastChild.setAttribute("width",this.colWidths[i])}this.sDataTable.insertBefore(this.sColGroup.cloneNode(true),this.sDataTable.firstChild);this.sHeaderTable.insertBefore(this.sColGroup.cloneNode(true),this.sHeaderTable.firstChild);if(this.fixedCols>0){this.sFDataTable.insertBefore(this.sColGroup.cloneNode(true),this.sFDataTable.firstChild);this.sFHeaderTable.insertBefore(this.sColGroup.cloneNode(true),this.sFHeaderTable.firstChild)}if(this.cssSkin!==""){this.sDataTable.className+=" "+this.cssSkin+"-Main";this.sHeaderTable.className+=" "+this.cssSkin+"-Headers";if(this.fixedCols>0){this.sFDataTable.className+=" "+this.cssSkin+"-Fixed";this.sFHeaderTable.className+=" "+this.cssSkin+"-FixedHeaders"}}if(this.fixedCols>0){this.sBase.appendChild(this.sFHeader)}this.sHeader.appendChild(this.sHeaderInner);this.sBase.appendChild(this.sHeader);if(this.fixedCols>0){this.sFData.appendChild(this.sFDataInner);this.sBase.appendChild(this.sFData)}this.sBase.appendChild(this.sData);this.sParent.insertBefore(this.sBase,this.sDataTable);this.sData.appendChild(this.sDataTable);var sDataStyles,sDataTableStyles;this.sHeaderHeight=this.sDataTable.tBodies[0].rows[(this.sDataTable.tHead)?0:this.headerRows].offsetTop;sDataTableStyles="margin-top: "+(this.sHeaderHeight*-1)+"px;";sDataStyles="margin-top: "+this.sHeaderHeight+"px;";sDataStyles+="height: "+(this.sParentHeight-this.sHeaderHeight)+"px;";if(this.fixedCols>0){this.sFHeaderWidth=this.sDataTable.tBodies[0].rows[cleanRow].cells[this.fixedCols].offsetLeft;if(window.getComputedStyle){alpha=document.defaultView;beta=this.sDataTable.tBodies[0].rows[0].cells[0];if(navigator.taintEnabled){this.sFHeaderWidth+=Math.ceil(parseInt(alpha.getComputedStyle(beta,null).getPropertyValue("border-right-width"))/2)}else{this.sFHeaderWidth+=parseInt(alpha.getComputedStyle(beta,null).getPropertyValue("border-right-width"))}}else if(/*@cc_on!@*/0){alpha=this.sDataTable.tBodies[0].rows[0].cells[0];beta=[alpha.currentStyle["borderRightWidth"],alpha.currentStyle["borderLeftWidth"]];if(/px/i.test(beta[0])&&/px/i.test(beta[1])){beta=[parseInt(beta[0]),parseInt(beta[1])].sort();this.sFHeaderWidth+=Math.ceil(parseInt(beta[1])/2)}}if(window.opera){this.sFData.style.height=this.sParentHeight+"px"}this.sFHeader.style.width=this.sFHeaderWidth+"px";sDataTableStyles+="margin-left: "+(this.sFHeaderWidth*-1)+"px;";sDataStyles+="margin-left: "+this.sFHeaderWidth+"px;";sDataStyles+="width: "+(this.sParentWidth-this.sFHeaderWidth)+"px;"}else{sDataStyles+="width: "+this.sParentWidth+"px;"}this.sData.style.cssText=sDataStyles;this.sDataTable.style.cssText=sDataTableStyles;(function(st){if(st.fixedCols>0){st.sData.onscroll=function(){st.sHeaderInner.style.right=st.sData.scrollLeft+"px";st.sFDataInner.style.top=(st.sData.scrollTop*-1)+"px"}}else{st.sData.onscroll=function(){st.sHeaderInner.style.right=st.sData.scrollLeft+"px"}}if(/*@cc_on!@*/0){window.attachEvent("onunload",function(){st.sData.onscroll=null;st=null})}})(this);this.callbackFunc&&this.callbackFunc()};