(function($){$.addFlex=function(t,p){if(t.grid)return false;p=$.extend({height:200,width:'auto',striped:true,novstripe:false,minwidth:30,minheight:80,resizable:true,url:false,method:'POST',dataType:'xml',errormsg:'Connection Error',usepager:false,nowrap:true,page:1,total:1,useRp:true,rp:15,rpOptions:[10,15,20,30,50],title:false,pagestat:'Displaying {from} to {to} of {total} items',pagetext:'Page',outof:'of',findtext:'Find',procmsg:'Processing, please wait ...',query:'',qtype:'',nomsg:'No items',minColToggle:1,showToggleBtn:true,hideOnSubmit:true,autoload:true,blockOpacity:0.5,preProcess:false,onDragCol:false,onToggleCol:false,onChangeSort:false,onSuccess:false,onError:false,onSubmit:false},p);$(t).show().attr({cellPadding:0,cellSpacing:0,border:0}).removeAttr('width');var g={hset:{},rePosDrag:function(){var cdleft=0-this.hDiv.scrollLeft;if(this.hDiv.scrollLeft>0)cdleft-=Math.floor(p.cgwidth/2);$(g.cDrag).css({top:g.hDiv.offsetTop+1});var cdpad=this.cdpad;$('div',g.cDrag).hide();$('thead tr:first th:visible',this.hDiv).each(function(){var n=$('thead tr:first th:visible',g.hDiv).index(this);var cdpos=parseInt($('div',this).width());if(cdleft==0)cdleft-=Math.floor(p.cgwidth/2);cdpos=cdpos+cdleft+cdpad;if(isNaN(cdpos)){cdpos=0}$('div:eq('+n+')',g.cDrag).css({'left':cdpos+'px'}).show();cdleft=cdpos})},fixHeight:function(newH){newH=false;if(!newH)newH=$(g.bDiv).height();var hdHeight=$(this.hDiv).height();$('div',this.cDrag).each(function(){$(this).height(newH+hdHeight)});var nd=parseInt($(g.nDiv).height());if(nd>newH)$(g.nDiv).height(newH).width(200);else $(g.nDiv).height('auto').width('auto');$(g.block).css({height:newH,marginBottom:(newH*-1)});var hrH=g.bDiv.offsetTop+newH;if(p.height!='auto'&&p.resizable)hrH=g.vDiv.offsetTop;$(g.rDiv).css({height:hrH})},dragStart:function(dragtype,e,obj){if(dragtype=='colresize'){$(g.nDiv).hide();$(g.nBtn).hide();var n=$('div',this.cDrag).index(obj);var ow=$('th:visible div:eq('+n+')',this.hDiv).width();$(obj).addClass('dragging').siblings().hide();$(obj).prev().addClass('dragging').show();this.colresize={startX:e.pageX,ol:parseInt(obj.style.left),ow:ow,n:n};$('body').css('cursor','col-resize')}else if(dragtype=='vresize'){var hgo=false;$('body').css('cursor','row-resize');if(obj){hgo=true;$('body').css('cursor','col-resize')}this.vresize={h:p.height,sy:e.pageY,w:p.width,sx:e.pageX,hgo:hgo}}else if(dragtype=='colMove'){$(g.nDiv).hide();$(g.nBtn).hide();this.hset=$(this.hDiv).offset();this.hset.right=this.hset.left+$('table',this.hDiv).width();this.hset.bottom=this.hset.top+$('table',this.hDiv).height();this.dcol=obj;this.dcoln=$('th',this.hDiv).index(obj);this.colCopy=document.createElement("div");this.colCopy.className="colCopy";this.colCopy.innerHTML=obj.innerHTML;if($.browser.msie){this.colCopy.className="colCopy ie"}$(this.colCopy).css({position:'absolute',float:'left',display:'none',textAlign:obj.align});$('body').append(this.colCopy);$(this.cDrag).hide()}$('body').noSelect()},dragMove:function(e){if(this.colresize){var n=this.colresize.n;var diff=e.pageX-this.colresize.startX;var nleft=this.colresize.ol+diff;var nw=this.colresize.ow+diff;if(nw>p.minwidth){$('div:eq('+n+')',this.cDrag).css('left',nleft);this.colresize.nw=nw}}else if(this.vresize){var v=this.vresize;var y=e.pageY;var diff=y-v.sy;if(!p.defwidth)p.defwidth=p.width;if(p.width!='auto'&&!p.nohresize&&v.hgo){var x=e.pageX;var xdiff=x-v.sx;var newW=v.w+xdiff;if(newW>p.defwidth){this.gDiv.style.width=newW+'px';p.width=newW}}var newH=v.h+diff;if((newH>p.minheight||p.heightthis.hset.right||e.pageXthis.hset.bottom||e.pageYthis.dcolt)$('th:eq('+this.dcolt+')',this.hDiv).before(this.dcol);else $('th:eq('+this.dcolt+')',this.hDiv).after(this.dcol);this.switchCol(this.dcoln,this.dcolt);$(this.cdropleft).remove();$(this.cdropright).remove();this.rePosDrag();if(p.onDragCol){p.onDragCol(this.dcoln,this.dcolt)}}this.dcol=null;this.hset=null;this.dcoln=null;this.dcolt=null;this.colCopy=null;$('.thMove',this.hDiv).removeClass('thMove');$(this.cDrag).show()}$('body').css('cursor','default');$('body').noSelect(false)},toggleCol:function(cid,visible){var ncol=$("th[axis='col"+cid+"']",this.hDiv)[0];var n=$('thead th',g.hDiv).index(ncol);var cb=$('input[value='+cid+']',g.nDiv)[0];if(visible==null){visible=ncol.hidden}if($('input:checked',g.nDiv).lengthcdrop)$('td:eq('+cdrop+')',this).before($('td:eq('+cdrag+')',this));else $('td:eq('+cdrop+')',this).after($('td:eq('+cdrag+')',this))});if(cdrag>cdrop){$('tr:eq('+cdrop+')',this.nDiv).before($('tr:eq('+cdrag+')',this.nDiv))}else{$('tr:eq('+cdrop+')',this.nDiv).after($('tr:eq('+cdrag+')',this.nDiv))}if($.browser.msie&&$.browser.version<7.0){$('tr:eq('+cdrop+') input',this.nDiv)[0].checked=true}this.hDiv.scrollLeft=this.bDiv.scrollLeft},scroll:function(){this.hDiv.scrollLeft=this.bDiv.scrollLeft;this.rePosDrag()},addData:function(data){if(p.dataType=='json'){data=$.extend({rows:[],page:0,total:0},data)}if(p.preProcess){data=p.preProcess(data)}$('.pReload',this.pDiv).removeClass('loading');this.loading=false;if(!data){$('.pPageStat',this.pDiv).html(p.errormsg);return false}if(p.dataType=='xml'){p.total=+$('rows total',data).text()}else{p.total=data.total}if(p.total==0){$('tr, a, td, div',t).unbind();$(t).empty();p.pages=1;p.page=1;this.buildpager();$('.pPageStat',this.pDiv).html(p.nomsg);return false}p.pages=Math.ceil(p.total/p.rp);if(p.dataType=='xml'){p.page=+$('rows page',data).text()}else{p.page=data.page}this.buildpager();var tbody=document.createElement('tbody');if(p.dataType=='json'){$.each(data.rows,function(i,row){var tr=document.createElement('tr');if(i%2&&p.striped){tr.className='erow'}if(row.id){tr.id='row'+row.id}$('thead tr:first th',g.hDiv).each(function(){var td=document.createElement('td');var idx=$(this).attr('axis').substr(3);td.align=this.align;if(typeof row.cell[idx]!="undefined"){td.innerHTML=(row.cell[idx]!=null)?row.cell[idx]:''}else{td.innerHTML=row.cell[p.colModel[idx].name]}$(td).attr('abbr',$(this).attr('abbr'));$(tr).append(td);td=null});if($('thead',this.gDiv).length<1){for(idx=0;idxp.pages){p.page=p.pages}var param=[{name:'page',value:p.newp},{name:'rp',value:p.rp},{name:'sortname',value:p.sortname},{name:'sortorder',value:p.sortorder},{name:'query',value:p.query},{name:'qtype',value:p.qtype}];if(p.params){for(var pi=0;pi1){p.newp=parseInt(p.page)-1}break;case'next':if(p.pagep.pages){nv=p.pages}$('.pcontrol input',this.pDiv).val(nv);p.newp=nv;break}if(p.newp==p.page){return false}if(p.onChangePage){p.onChangePage(p.newp)}else{this.populate()}},addCellProp:function(){$('tbody tr td',g.bDiv).each(function(){var tdDiv=document.createElement('div');var n=$('td',$(this).parent()).index(this);var pth=$('th:eq('+n+')',g.hDiv).get(0);if(pth!=null){if(p.sortname==$(pth).attr('abbr')&&p.sortname){this.className='sorted'}$(tdDiv).css({textAlign:pth.align,width:$('div:first',pth)[0].style.width});if(pth.hidden){$(this).css('display','none')}}if(p.nowrap==false){$(tdDiv).css('white-space','normal')}if(this.innerHTML==''){this.innerHTML=' '}tdDiv.innerHTML=this.innerHTML;var prnt=$(this).parent()[0];var pid=false;if(prnt.id){pid=prnt.id.substr(3)}if(pth!=null){if(pth.process)pth.process(tdDiv,pid)}$(this).empty().append(tdDiv).removeAttr('width')})},getCellDim:function(obj){var ht=parseInt($(obj).height());var pht=parseInt($(obj).parent().height());var wt=parseInt(obj.style.width);var pwt=parseInt($(obj).parent().width());var top=obj.offsetParent.offsetTop;var left=obj.offsetParent.offsetLeft;var pdl=parseInt($(obj).css('paddingLeft'));var pdt=parseInt($(obj).css('paddingTop'));return{ht:ht,wt:wt,top:top,left:left,pdl:pdl,pdt:pdt,pht:pht,pwt:pwt}},addRowProp:function(){$('tbody tr',g.bDiv).each(function(){$(this).click(function(e){var obj=(e.target||e.srcElement);if(obj.href||obj.type)return true;$(this).toggleClass('trSelected');if(p.singleSelect)$(this).siblings().removeClass('trSelected')}).mousedown(function(e){if(e.shiftKey){$(this).toggleClass('trSelected');g.multisel=true;this.focus();$(g.gDiv).noSelect()}}).mouseup(function(){if(g.multisel){g.multisel=false;$(g.gDiv).noSelect(false)}}).hover(function(e){if(g.multisel){$(this).toggleClass('trSelected')}},function(){});if($.browser.msie&&$.browser.version<7.0){$(this).hover(function(){$(this).addClass('trOver')},function(){$(this).removeClass('trOver')})}})},pager:0};if(p.colModel){thead=document.createElement('thead');var tr=document.createElement('tr');for(var i=0;i"+btn.name+"";if(btn.bclass)$('span',btnDiv).addClass(btn.bclass).css({paddingLeft:20});btnDiv.onpress=btn.onpress;btnDiv.name=btn.name;if(btn.onpress){$(btnDiv).click(function(){this.onpress(this.name,g.gDiv)})}$(tDiv2).append(btnDiv);if($.browser.msie&&$.browser.version<7.0){$(btnDiv).hover(function(){$(this).addClass('fbOver')},function(){$(this).removeClass('fbOver')})}}else{$(tDiv2).append("
")}}$(g.tDiv).append(tDiv2);$(g.tDiv).append("
");$(g.gDiv).prepend(g.tDiv)}g.hDiv.className='hDiv';$(t).before(g.hDiv);g.hTable.cellPadding=0;g.hTable.cellSpacing=0;$(g.hDiv).append('
');$('div',g.hDiv).append(g.hTable);var thead=$("thead:first",t).get(0);if(thead)$(g.hTable).append(thead);thead=null;if(!p.colmodel)var ci=0;$('thead tr:first th',g.hDiv).each(function(){var thdiv=document.createElement('div');if($(this).attr('abbr')){$(this).click(function(e){if(!$(this).hasClass('thOver'))return false;var obj=(e.target||e.srcElement);if(obj.href||obj.type)return true;g.changeSort(this)});if($(this).attr('abbr')==p.sortname){this.className='sorted';thdiv.className='s'+p.sortorder}}if(this.hidden){$(this).hide()}if(!p.colmodel){$(this).attr('axis','col'+ci++)}$(thdiv).css({textAlign:this.align,width:this.width+'px'});thdiv.innerHTML=this.innerHTML;$(this).empty().append(thdiv).removeAttr('width').mousedown(function(e){g.dragStart('colMove',e,this)}).hover(function(){if(!g.colresize&&!$(this).hasClass('thMove')&&!g.colCopy){$(this).addClass('thOver')}if($(this).attr('abbr')!=p.sortname&&!g.colCopy&&!g.colresize&&$(this).attr('abbr')){$('div',this).addClass('s'+p.sortorder)}else if($(this).attr('abbr')==p.sortname&&!g.colCopy&&!g.colresize&&$(this).attr('abbr')){var no=(p.sortorder=='asc')?'desc':'asc';$('div',this).removeClass('s'+p.sortorder).addClass('s'+no)}if(g.colCopy){var n=$('th',g.hDiv).index(this);if(n==g.dcoln){return false}if(n$(g.gDiv).width()){$(g.nDiv).css('left',onl-ndw+1)}else{$(g.nDiv).css('left',nl)}if($(this).hasClass('sorted')){$(g.nBtn).addClass('srtd')}else{$(g.nBtn).removeClass('srtd')}}},function(){$(this).removeClass('thOver');if($(this).attr('abbr')!=p.sortname){$('div',this).removeClass('s'+p.sortorder)}else if($(this).attr('abbr')==p.sortname){var no=(p.sortorder=='asc')?'desc':'asc';$('div',this).addClass('s'+p.sortorder).removeClass('s'+no)}if(g.colCopy){$(g.cdropleft).remove();$(g.cdropright).remove();g.dcolt=null}})});g.bDiv.className='bDiv';$(t).before(g.bDiv);$(g.bDiv).css({height:(p.height=='auto')?'auto':p.height+"px"}).scroll(function(e){g.scroll()}).append(t);if(p.height=='auto'){$('table',g.bDiv).addClass('autoht')}g.addCellProp();g.addRowProp();var cdcol=$('thead tr:first th:first',g.hDiv).get(0);if(cdcol!=null){g.cDrag.className='cDrag';g.cdpad=0;g.cdpad+=(isNaN(parseInt($('div',cdcol).css('borderLeftWidth')))?0:parseInt($('div',cdcol).css('borderLeftWidth')));g.cdpad+=(isNaN(parseInt($('div',cdcol).css('borderRightWidth')))?0:parseInt($('div',cdcol).css('borderRightWidth')));g.cdpad+=(isNaN(parseInt($('div',cdcol).css('paddingLeft')))?0:parseInt($('div',cdcol).css('paddingLeft')));g.cdpad+=(isNaN(parseInt($('div',cdcol).css('paddingRight')))?0:parseInt($('div',cdcol).css('paddingRight')));g.cdpad+=(isNaN(parseInt($(cdcol).css('borderLeftWidth')))?0:parseInt($(cdcol).css('borderLeftWidth')));g.cdpad+=(isNaN(parseInt($(cdcol).css('borderRightWidth')))?0:parseInt($(cdcol).css('borderRightWidth')));g.cdpad+=(isNaN(parseInt($(cdcol).css('paddingLeft')))?0:parseInt($(cdcol).css('paddingLeft')));g.cdpad+=(isNaN(parseInt($(cdcol).css('paddingRight')))?0:parseInt($(cdcol).css('paddingRight')));$(g.bDiv).before(g.cDrag);var cdheight=$(g.bDiv).height();var hdheight=$(g.hDiv).height();$(g.cDrag).css({top:-hdheight+'px'});$('thead tr:first th',g.hDiv).each(function(){var cgDiv=document.createElement('div');$(g.cDrag).append(cgDiv);if(!p.cgwidth){p.cgwidth=$(cgDiv).width()}$(cgDiv).css({height:cdheight+hdheight}).mousedown(function(e){g.dragStart('colresize',e,this)});if($.browser.msie&&$.browser.version<7.0){g.fixHeight($(g.gDiv).height());$(cgDiv).hover(function(){g.fixHeight();$(this).addClass('dragging')},function(){if(!g.colresize)$(this).removeClass('dragging')})}})}if(p.striped){$('tbody tr:odd',g.bDiv).addClass('erow')}if(p.resizable&&p.height!='auto'){g.vDiv.className='vGrip';$(g.vDiv).mousedown(function(e){g.dragStart('vresize',e)}).html('');$(g.bDiv).after(g.vDiv)}if(p.resizable&&p.width!='auto'&&!p.nohresize){g.rDiv.className='hGrip';$(g.rDiv).mousedown(function(e){g.dragStart('vresize',e,true)}).html('').css('height',$(g.gDiv).height());if($.browser.msie&&$.browser.version<7.0){$(g.rDiv).hover(function(){$(this).addClass('hgOver')},function(){$(this).removeClass('hgOver')})}$(g.gDiv).append(g.rDiv)}if(p.usepager){g.pDiv.className='pDiv';g.pDiv.innerHTML='
';$(g.bDiv).after(g.pDiv);var html='
'+p.pagetext+' '+p.outof+' 1
';$('div',g.pDiv).html(html);$('.pReload',g.pDiv).click(function(){g.populate()});$('.pFirst',g.pDiv).click(function(){g.changePage('first')});$('.pPrev',g.pDiv).click(function(){g.changePage('prev')});$('.pNext',g.pDiv).click(function(){g.changePage('next')});$('.pLast',g.pDiv).click(function(){g.changePage('last')});$('.pcontrol input',g.pDiv).keydown(function(e){if(e.keyCode==13)g.changePage('input')});if($.browser.msie&&$.browser.version<7)$('.pButton',g.pDiv).hover(function(){$(this).addClass('pBtnOver')},function(){$(this).removeClass('pBtnOver')});if(p.useRp){var opt='',sel='';for(var nx=0;nx"+p.rpOptions[nx]+"  "}$('.pDiv2',g.pDiv).prepend("
");$('select',g.pDiv).change(function(){if(p.onRpChange){p.onRpChange(+this.value)}else{p.newp=1;p.rp=+this.value;g.populate()}})}if(p.searchitems){$('.pDiv2',g.pDiv).prepend("
");$('.pSearch',g.pDiv).click(function(){$(g.sDiv).slideToggle('fast',function(){$('.sDiv:visible input:first',g.gDiv).trigger('focus')})});g.sDiv.className='sDiv';var sitems=p.searchitems;var sopt='',sel='';for(var s=0;s"+sitems[s].display+"  "}if(p.qtype==''){p.qtype=sitems[0].name}$(g.sDiv).append("
"+p.findtext+" "+"
");$('input[name=q]',g.sDiv).keydown(function(e){if(e.keyCode==13){g.doSearch()}});$('select[name=qtype]',g.sDiv).keydown(function(e){if(e.keyCode==13){g.doSearch()}});$('input[value=Clear]',g.sDiv).click(function(){$('input[name=q]',g.sDiv).val('');p.query='';g.doSearch()});$(g.bDiv).after(g.sDiv)}}$(g.pDiv,g.sDiv).append("
");if(p.title){g.mDiv.className='mDiv';g.mDiv.innerHTML='
'+p.title+'
';$(g.gDiv).prepend(g.mDiv);if(p.showTableToggleBtn){$(g.mDiv).append('
');$('div.ptogtitle',g.mDiv).click(function(){$(g.gDiv).toggleClass('hideBody');$(this).toggleClass('vsble')})}}g.cdropleft=document.createElement('span');g.cdropleft.className='cdropleft';g.cdropright=document.createElement('span');g.cdropright.className='cdropright';g.block.className='gBlock';var gh=$(g.bDiv).height();var gtop=g.bDiv.offsetTop;$(g.block).css({width:g.bDiv.style.width,height:gh,background:'white',position:'relative',marginBottom:(gh*-1),zIndex:1,top:gtop,left:'0px'});$(g.block).fadeTo(0,p.blockOpacity);if($('th',g.hDiv).length){g.nDiv.className='nDiv';g.nDiv.innerHTML="
";$(g.nDiv).css({marginBottom:(gh*-1),display:'none',top:gtop}).noSelect();var cn=0;$('th div',g.hDiv).each(function(){var kcol=$("th[axis='col"+cn+"']",g.hDiv)[0];var chk='checked="checked"';if(kcol.style.display=='none'){chk=''}$('tbody',g.nDiv).append(''+this.innerHTML+'');cn++});if($.browser.msie&&$.browser.version<7.0)$('tr',g.nDiv).hover(function(){$(this).addClass('ndcolover')},function(){$(this).removeClass('ndcolover')});$('td.ndcol2',g.nDiv).click(function(){if($('input:checked',g.nDiv).length<=p.minColToggle&&$(this).prev().find('input')[0].checked)return false;return g.toggleCol($(this).prev().find('input').val())});$('input.togCol',g.nDiv).click(function(){if($('input:checked',g.nDiv).length').attr('title','Hide/Show Columns').click(function(){$(g.nDiv).toggle();return true});if(p.showToggleBtn){$(g.gDiv).prepend(g.nBtn)}}$(g.iDiv).addClass('iDiv').css({display:'none'});$(g.bDiv).append(g.iDiv);$(g.bDiv).hover(function(){$(g.nDiv).hide();$(g.nBtn).hide()},function(){if(g.multisel){g.multisel=false}});$(g.gDiv).hover(function(){},function(){$(g.nDiv).hide();$(g.nBtn).hide()});$(document).mousemove(function(e){g.dragMove(e)}).mouseup(function(e){g.dragEnd()}).hover(function(){},function(){g.dragEnd()});if($.browser.msie&&$.browser.version<7.0){$('.hDiv,.bDiv,.mDiv,.pDiv,.vGrip,.tDiv, .sDiv',g.gDiv).css({width:'100%'});$(g.gDiv).addClass('ie6');if(p.width!='auto'){$(g.gDiv).addClass('ie6fullwidthbug')}}g.rePosDrag();g.fixHeight();t.p=p;t.grid=g;if(p.url&&p.autoload){g.populate()}return t};var docloaded=false;$(document).ready(function(){docloaded=true});$.fn.flexigrid=function(p){return this.each(function(){if(!docloaded){$(this).hide();var t=this;$(document).ready(function(){$.addFlex(t,p)})}else{$.addFlex(this,p)}})};$.fn.flexReload=function(p){return this.each(function(){if(this.grid&&this.p.url)this.grid.populate()})};$.fn.flexOptions=function(p){return this.each(function(){if(this.grid)$.extend(this.p,p)})};$.fn.flexToggleCol=function(cid,visible){return this.each(function(){if(this.grid)this.grid.toggleCol(cid,visible)})};$.fn.flexAddData=function(data){return this.each(function(){if(this.grid)this.grid.addData(data)})};$.fn.noSelect=function(p){var prevent=(p==null)?true:p;if(prevent){return this.each(function(){if($.browser.msie||$.browser.safari)$(this).bind('selectstart',function(){return false});else if($.browser.mozilla){$(this).css('MozUserSelect','none');$('body').trigger('focus')}else if($.browser.opera)$(this).bind('mousedown',function(){return false});else $(this).attr('unselectable','on')})}else{return this.each(function(){if($.browser.msie||$.browser.safari)$(this).unbind('selectstart');else if($.browser.mozilla)$(this).css('MozUserSelect','inherit');else if($.browser.opera)$(this).unbind('mousedown');else $(this).removeAttr('unselectable','on')})}}})(jQuery);