src/ztfy/myams/resources/js/ext/jquery-dataTables-fixedHeader.min.js
changeset 0 8a19e25e39e4
equal deleted inserted replaced
-1:000000000000 0:8a19e25e39e4
       
     1 /* FixedHeader 2.1.0
       
     2  * ©2010-2014 SpryMedia Ltd - datatables.net/license
       
     3  */
       
     4 var FixedHeader;(function(c,a,d){var b=function(f,e){FixedHeader=function(h,g){if(!this instanceof FixedHeader){alert("FixedHeader warning: FixedHeader must be initialised with the 'new' keyword.");return}var j=this;var k={aoCache:[],oSides:{top:true,bottom:false,left:0,right:0},oZIndexes:{top:104,bottom:103,left:102,right:101},oCloneOnDraw:{top:false,bottom:false,left:true,right:true},oMes:{iTableWidth:0,iTableHeight:0,iTableLeft:0,iTableRight:0,iTableTop:0,iTableBottom:0},oOffset:{top:0},nTable:null,bFooter:false,bInitComplete:false};this.fnGetSettings=function(){return k};this.fnUpdate=function(){this._fnUpdateClones();this._fnUpdatePositions()};this.fnPosition=function(){this._fnUpdatePositions()};var i=f.fn.dataTable.Api?new f.fn.dataTable.Api(h).settings()[0]:h.fnSettings();i._oPluginFixedHeader=this;this.fnInit(i,g)};FixedHeader.prototype={fnInit:function(j,g){var h=this.fnGetSettings();var i=this;this.fnInitSettings(h,g);if(j.oScroll.sX!==""||j.oScroll.sY!==""){alert("FixedHeader 2 is not supported with DataTables' scrolling mode at this time");return}h.nTable=j.nTable;j.aoDrawCallback.unshift({fn:function(){FixedHeader.fnMeasure();i._fnUpdateClones.call(i);i._fnUpdatePositions.call(i)},sName:"FixedHeader"});h.bFooter=(f(">tfoot",h.nTable).length>0)?true:false;if(h.oSides.top){h.aoCache.push(i._fnCloneTable("fixedHeader","FixedHeader_Header",i._fnCloneThead))}if(h.oSides.bottom){h.aoCache.push(i._fnCloneTable("fixedFooter","FixedHeader_Footer",i._fnCloneTfoot))}if(h.oSides.left){h.aoCache.push(i._fnCloneTable("fixedLeft","FixedHeader_Left",i._fnCloneTLeft,h.oSides.left))}if(h.oSides.right){h.aoCache.push(i._fnCloneTable("fixedRight","FixedHeader_Right",i._fnCloneTRight,h.oSides.right))}FixedHeader.afnScroll.push(function(){i._fnUpdatePositions.call(i)});f(c).resize(function(){FixedHeader.fnMeasure();i._fnUpdateClones.call(i);i._fnUpdatePositions.call(i)});f(h.nTable).on("column-reorder",function(){FixedHeader.fnMeasure();i._fnUpdateClones(true);i._fnUpdatePositions()}).on("column-visibility",function(){FixedHeader.fnMeasure();i._fnUpdateClones(true);i._fnUpdatePositions()});FixedHeader.fnMeasure();i._fnUpdateClones();i._fnUpdatePositions();h.bInitComplete=true},fnInitSettings:function(h,g){if(g!==d){if(g.top!==d){h.oSides.top=g.top}if(g.bottom!==d){h.oSides.bottom=g.bottom}if(typeof g.left=="boolean"){h.oSides.left=g.left?1:0}else{if(g.left!==d){h.oSides.left=g.left}}if(typeof g.right=="boolean"){h.oSides.right=g.right?1:0}else{if(g.right!==d){h.oSides.right=g.right}}if(g.zTop!==d){h.oZIndexes.top=g.zTop}if(g.zBottom!==d){h.oZIndexes.bottom=g.zBottom}if(g.zLeft!==d){h.oZIndexes.left=g.zLeft}if(g.zRight!==d){h.oZIndexes.right=g.zRight}if(g.offsetTop!==d){h.oOffset.top=g.offsetTop}if(g.alwaysCloneTop!==d){h.oCloneOnDraw.top=g.alwaysCloneTop}if(g.alwaysCloneBottom!==d){h.oCloneOnDraw.bottom=g.alwaysCloneBottom}if(g.alwaysCloneLeft!==d){h.oCloneOnDraw.left=g.alwaysCloneLeft}if(g.alwaysCloneRight!==d){h.oCloneOnDraw.right=g.alwaysCloneRight}}},_fnCloneTable:function(m,l,k,i){var h=this.fnGetSettings();var g;if(f(h.nTable.parentNode).css("position")!="absolute"){h.nTable.parentNode.style.position="relative"}g=h.nTable.cloneNode(false);g.removeAttribute("id");var j=a.createElement("div");j.style.position="absolute";j.style.top="0px";j.style.left="0px";j.className+=" FixedHeader_Cloned "+m+" "+l;if(m=="fixedHeader"){j.style.zIndex=h.oZIndexes.top}if(m=="fixedFooter"){j.style.zIndex=h.oZIndexes.bottom}if(m=="fixedLeft"){j.style.zIndex=h.oZIndexes.left}else{if(m=="fixedRight"){j.style.zIndex=h.oZIndexes.right}}g.style.margin="0";j.appendChild(g);a.body.appendChild(j);return{nNode:g,nWrapper:j,sType:m,sPosition:"",sTop:"",sLeft:"",fnClone:k,iCells:i}},_fnMeasure:function(){var j=this.fnGetSettings(),g=j.oMes,i=f(j.nTable),h=i.offset(),l=this._fnSumScroll(j.nTable.parentNode,"scrollTop"),k=this._fnSumScroll(j.nTable.parentNode,"scrollLeft");g.iTableWidth=i.outerWidth();g.iTableHeight=i.outerHeight();g.iTableLeft=h.left+j.nTable.parentNode.scrollLeft;g.iTableTop=h.top+l;g.iTableRight=g.iTableLeft+g.iTableWidth;g.iTableRight=FixedHeader.oDoc.iWidth-g.iTableLeft-g.iTableWidth;g.iTableBottom=FixedHeader.oDoc.iHeight-g.iTableTop-g.iTableHeight},_fnSumScroll:function(j,h){var g=j[h];while(j=j.parentNode){if(j.nodeName=="HTML"||j.nodeName=="BODY"){break}g=j[h]}return g},_fnUpdatePositions:function(){var j=this.fnGetSettings();this._fnMeasure();for(var h=0,g=j.aoCache.length;h<g;h++){if(j.aoCache[h].sType=="fixedHeader"){this._fnScrollFixedHeader(j.aoCache[h])}else{if(j.aoCache[h].sType=="fixedFooter"){this._fnScrollFixedFooter(j.aoCache[h])}else{if(j.aoCache[h].sType=="fixedLeft"){this._fnScrollHorizontalLeft(j.aoCache[h])}else{this._fnScrollHorizontalRight(j.aoCache[h])}}}}},_fnUpdateClones:function(j){var k=this.fnGetSettings();if(j){k.bInitComplete=false}for(var h=0,g=k.aoCache.length;h<g;h++){k.aoCache[h].fnClone.call(this,k.aoCache[h])}if(j){k.bInitComplete=true}},_fnScrollHorizontalRight:function(m){var k=this.fnGetSettings(),l=k.oMes,h=FixedHeader.oWin,g=FixedHeader.oDoc,j=m.nWrapper,i=f(j).outerWidth();if(h.iScrollRight<l.iTableRight){this._fnUpdateCache(m,"sPosition","absolute","position",j.style);this._fnUpdateCache(m,"sTop",l.iTableTop+"px","top",j.style);this._fnUpdateCache(m,"sLeft",(l.iTableLeft+l.iTableWidth-i)+"px","left",j.style)}else{if(l.iTableLeft<g.iWidth-h.iScrollRight-i){this._fnUpdateCache(m,"sPosition","fixed","position",j.style);this._fnUpdateCache(m,"sTop",(l.iTableTop-h.iScrollTop)+"px","top",j.style);this._fnUpdateCache(m,"sLeft",(h.iWidth-i)+"px","left",j.style)}else{this._fnUpdateCache(m,"sPosition","absolute","position",j.style);this._fnUpdateCache(m,"sTop",l.iTableTop+"px","top",j.style);this._fnUpdateCache(m,"sLeft",l.iTableLeft+"px","left",j.style)}}},_fnScrollHorizontalLeft:function(m){var k=this.fnGetSettings(),l=k.oMes,h=FixedHeader.oWin,g=FixedHeader.oDoc,i=m.nWrapper,j=f(i).outerWidth();if(h.iScrollLeft<l.iTableLeft){this._fnUpdateCache(m,"sPosition","absolute","position",i.style);this._fnUpdateCache(m,"sTop",l.iTableTop+"px","top",i.style);this._fnUpdateCache(m,"sLeft",l.iTableLeft+"px","left",i.style)}else{if(h.iScrollLeft<l.iTableLeft+l.iTableWidth-j){this._fnUpdateCache(m,"sPosition","fixed","position",i.style);this._fnUpdateCache(m,"sTop",(l.iTableTop-h.iScrollTop)+"px","top",i.style);this._fnUpdateCache(m,"sLeft","0px","left",i.style)}else{this._fnUpdateCache(m,"sPosition","absolute","position",i.style);this._fnUpdateCache(m,"sTop",l.iTableTop+"px","top",i.style);this._fnUpdateCache(m,"sLeft",(l.iTableLeft+l.iTableWidth-j)+"px","left",i.style)}}},_fnScrollFixedFooter:function(n){var l=this.fnGetSettings(),m=l.oMes,h=FixedHeader.oWin,g=FixedHeader.oDoc,i=n.nWrapper,k=f("thead",l.nTable).outerHeight(),j=f(i).outerHeight();if(h.iScrollBottom<m.iTableBottom){this._fnUpdateCache(n,"sPosition","absolute","position",i.style);this._fnUpdateCache(n,"sTop",(m.iTableTop+m.iTableHeight-j)+"px","top",i.style);this._fnUpdateCache(n,"sLeft",m.iTableLeft+"px","left",i.style)}else{if(h.iScrollBottom<m.iTableBottom+m.iTableHeight-j-k){this._fnUpdateCache(n,"sPosition","fixed","position",i.style);this._fnUpdateCache(n,"sTop",(h.iHeight-j)+"px","top",i.style);this._fnUpdateCache(n,"sLeft",(m.iTableLeft-h.iScrollLeft)+"px","left",i.style)}else{this._fnUpdateCache(n,"sPosition","absolute","position",i.style);this._fnUpdateCache(n,"sTop",(m.iTableTop+j)+"px","top",i.style);this._fnUpdateCache(n,"sLeft",m.iTableLeft+"px","left",i.style)}}},_fnScrollFixedHeader:function(m){var p=this.fnGetSettings(),j=p.oMes,k=FixedHeader.oWin,o=FixedHeader.oDoc,h=m.nWrapper,n=0,l=p.nTable.getElementsByTagName("tbody");for(var g=0;g<l.length;++g){n+=l[g].offsetHeight}if(j.iTableTop>k.iScrollTop+p.oOffset.top){this._fnUpdateCache(m,"sPosition","absolute","position",h.style);this._fnUpdateCache(m,"sTop",j.iTableTop+"px","top",h.style);this._fnUpdateCache(m,"sLeft",j.iTableLeft+"px","left",h.style)}else{if(k.iScrollTop+p.oOffset.top>j.iTableTop+n){this._fnUpdateCache(m,"sPosition","absolute","position",h.style);this._fnUpdateCache(m,"sTop",(j.iTableTop+n)+"px","top",h.style);this._fnUpdateCache(m,"sLeft",j.iTableLeft+"px","left",h.style)}else{this._fnUpdateCache(m,"sPosition","fixed","position",h.style);this._fnUpdateCache(m,"sTop",p.oOffset.top+"px","top",h.style);this._fnUpdateCache(m,"sLeft",(j.iTableLeft-k.iScrollLeft)+"px","left",h.style)}}},_fnUpdateCache:function(k,i,h,j,g){if(k[i]!=h){g[j]=h;k[i]=h}},_fnClassUpdate:function(i,g){var h=this;if(i.nodeName.toUpperCase()==="TR"||i.nodeName.toUpperCase()==="TH"||i.nodeName.toUpperCase()==="TD"||i.nodeName.toUpperCase()==="SPAN"){g.className=i.className}f(i).children().each(function(j){h._fnClassUpdate(f(i).children()[j],f(g).children()[j])})},_fnCloneThead:function(m){var l=this.fnGetSettings();var i=m.nNode;if(l.bInitComplete&&!l.oCloneOnDraw.top){this._fnClassUpdate(f("thead",l.nTable)[0],f("thead",i)[0]);return}var k=f(l.nTable).outerWidth();m.nWrapper.style.width=k+"px";i.style.width=k+"px";while(i.childNodes.length>0){f("thead th",i).unbind("click");i.removeChild(i.childNodes[0])}var j=f("thead",l.nTable).clone(true)[0];i.appendChild(j);var h=[];var g=[];f("thead>tr th",l.nTable).each(function(n){h.push(f(this).width())});f("thead>tr td",l.nTable).each(function(n){g.push(f(this).width())});f("thead>tr th",l.nTable).each(function(n){f("thead>tr th:eq("+n+")",i).width(h[n]);f(this).width(h[n])});f("thead>tr td",l.nTable).each(function(n){f("thead>tr td:eq("+n+")",i).width(g[n]);f(this).width(g[n])});f("th.sorting, th.sorting_desc, th.sorting_asc",i).bind("click",function(){this.blur()})},_fnCloneTfoot:function(j){var i=this.fnGetSettings();var g=j.nNode;j.nWrapper.style.width=f(i.nTable).outerWidth()+"px";while(g.childNodes.length>0){g.removeChild(g.childNodes[0])}var h=f("tfoot",i.nTable).clone(true)[0];g.appendChild(h);f("tfoot:eq(0)>tr th",i.nTable).each(function(k){f("tfoot:eq(0)>tr th:eq("+k+")",g).width(f(this).width())});f("tfoot:eq(0)>tr td",i.nTable).each(function(k){f("tfoot:eq(0)>tr td:eq("+k+")",g).width(f(this).width())})},_fnCloneTLeft:function(m){var j=this.fnGetSettings();var g=m.nNode;var l=f("tbody",j.nTable)[0];while(g.childNodes.length>0){g.removeChild(g.childNodes[0])}g.appendChild(f("thead",j.nTable).clone(true)[0]);g.appendChild(f("tbody",j.nTable).clone(true)[0]);if(j.bFooter){g.appendChild(f("tfoot",j.nTable).clone(true)[0])}var n="gt("+(m.iCells-1)+")";f("thead tr",g).each(function(i){f("th:"+n,this).remove()});f("tfoot tr",g).each(function(i){f("th:"+n,this).remove()});f("tbody tr",g).each(function(i){f("td:"+n,this).remove()});this.fnEqualiseHeights("thead",l.parentNode,g);this.fnEqualiseHeights("tbody",l.parentNode,g);this.fnEqualiseHeights("tfoot",l.parentNode,g);var k=0;for(var h=0;h<m.iCells;h++){k+=f("thead tr th:eq("+h+")",j.nTable).outerWidth()}g.style.width=k+"px";m.nWrapper.style.width=k+"px"},_fnCloneTRight:function(n){var j=this.fnGetSettings();var m=f("tbody",j.nTable)[0];var g=n.nNode;var l=f("tbody tr:eq(0) td",j.nTable).length;while(g.childNodes.length>0){g.removeChild(g.childNodes[0])}g.appendChild(f("thead",j.nTable).clone(true)[0]);g.appendChild(f("tbody",j.nTable).clone(true)[0]);if(j.bFooter){g.appendChild(f("tfoot",j.nTable).clone(true)[0])}f("thead tr th:lt("+(l-n.iCells)+")",g).remove();f("tfoot tr th:lt("+(l-n.iCells)+")",g).remove();f("tbody tr",g).each(function(i){f("td:lt("+(l-n.iCells)+")",this).remove()});this.fnEqualiseHeights("thead",m.parentNode,g);this.fnEqualiseHeights("tbody",m.parentNode,g);this.fnEqualiseHeights("tfoot",m.parentNode,g);var k=0;for(var h=0;h<n.iCells;h++){k+=f("thead tr th:eq("+(l-1-h)+")",j.nTable).outerWidth()}g.style.width=k+"px";n.nWrapper.style.width=k+"px"},fnEqualiseHeights:function(j,i,l){var k=this;var h=f(j+" tr",i);var g;f(j+" tr",l).each(function(m){g=h.eq(m).css("height");if(navigator.appName=="Microsoft Internet Explorer"){g=parseInt(g,10)+1}f(this).css("height",g);h.eq(m).css("height",g)})}};FixedHeader.oWin={iScrollTop:0,iScrollRight:0,iScrollBottom:0,iScrollLeft:0,iHeight:0,iWidth:0};FixedHeader.oDoc={iHeight:0,iWidth:0};FixedHeader.afnScroll=[];FixedHeader.fnMeasure=function(){var j=f(c),i=f(a),h=FixedHeader.oWin,g=FixedHeader.oDoc;g.iHeight=i.height();g.iWidth=i.width();h.iHeight=j.height();h.iWidth=j.width();h.iScrollTop=j.scrollTop();h.iScrollLeft=j.scrollLeft();h.iScrollRight=g.iWidth-h.iScrollLeft-h.iWidth;h.iScrollBottom=g.iHeight-h.iScrollTop-h.iHeight};FixedHeader.version="2.1.0";f(c).scroll(function(){FixedHeader.fnMeasure();for(var h=0,g=FixedHeader.afnScroll.length;h<g;h++){FixedHeader.afnScroll[h]()}});f.fn.dataTable.FixedHeader=FixedHeader;f.fn.DataTable.FixedHeader=FixedHeader;return FixedHeader};b(jQuery,jQuery.fn.dataTable)})(window,document);