/*ADOBE SYSTEMS INCORPORATED Copyright 2007 Adobe Systems Incorporated All Rights Reserved. NOTICE: Adobe permits you to use, modify, and distribute this file in accordance with the terms of the Adobe license agreement accompanying it. If you have received this file from a source other than Adobe, then your use, modification, or distribution of it requires the prior written permission of Adobe.*/ cfinitgrid=function(){ if(!ColdFusion.Grid){ ColdFusion.Grid={}; } var $G=ColdFusion.Grid; var $L=ColdFusion.Log; $G.init=function(id,name,_505,_506,edit,_508,_509,_50a,_50b,_50c,_50d,_50e,_50f,_510,_511,_512,_513,_514,_515,_516,_517,_518,_519,_51a,_51b,_51c,_51d,_51e,_51f){ var grid; var _521; var _522=false; if(_514&&typeof (_514)!="undefined"){ _521=_514; _522=true; }else{ _521=new Ext.grid.RowSelectionModel({singleSelect:true}); } var _523=new Ext.grid.ColumnModel(_50b); var _524={ds:_50c,cm:_523,sm:_521,autoSizeColumns:_509,autoSizeHeaders:_509,stripeRows:_50f,autoExpandColumnId:_50a}; if(_51e!=null&&typeof _51e!="undefined"){ _524.plugins=_51e; } if(!_50d||typeof (_50d)=="undefined"){ _50d=100*(_50b.length-1); } var _525=ColdFusion.objectCache[id]; var _526=document.getElementById(_525.gridId); if(_526!=null){ var _527=_526.style.cssText; if(typeof _527=="undefined"){ _527=""; } _527="width:"+_50d+"px;"+_527; _526.style.cssText=_527; } _524.width=_50d; if(_509===true){ _524.viewConfig={forceFit:true}; }else{ if(_514&&typeof (_514)!="undefined"){ _524.autoExpandColumn=_50a; }else{ _524.autoExpandColumn=_50a; } } if(_50e){ _524.height=_50e; }else{ _524.autoHeight=true; var _528=".x-grid3-header {position: relative;}"; Ext.util.CSS.createStyleSheet(_528,"_cf_grid"+id); } if(_516&&typeof (_516)!="undefined"){ _524.view=new Ext.grid.GroupingView({forceFit:false,groupTextTpl:"{[values.text.indexOf(\"x-grid3-check-col\") > 0 ? (values.text.indexOf(\"x-grid3-check-col-on\") > 0 ? \"Yes\" : \"No\") : values.text]} ({[values.rs.length]} {[values.rs.length > 1 ? \"Items\" : \"Item\"]})"}); } _524.title=_517; _524.collapsible=_515; if(_515&&_517==null){ _524.title=" "; } var _529=ColdFusion.objectCache[id]; _529.bindOnLoad=_508; _529.dynamic=_506; _529.styles=_510; _529.grouping=_516; _529.onLoadFunction=_51d; _529.multiRowSelection=_522; _524.renderTo=_529.gridId; _524.tbar=new Ext.Toolbar({hidden:true}); if(_506){ _524.bbar=new Ext.PagingToolbar({pageSize:_511,store:_50c,emptyMsg:"No topics to display"}); if(_51b&&(_518||_519)){ var _52a=_524.bbar; if(_518){ _52a.addButton({text:_518,handler:$G.insertRow,scope:_529}); _52a.addButton({text:" save ",handler:$G.saveNewRecord,scope:_529}); _52a.addButton({text:" cancel ",handler:$G.cancelNewRecord,scope:_529}); } if(_519){ _52a.addButton({text:_519,handler:$G.deleteRow,scope:_529}); } } } if(edit&&!_506){ if(_518||_519){ var bbar=new Ext.Toolbar(); if(_518){ bbar.addButton({text:_518,xtype:"button",handler:$G.insertRow,scope:_529}); } if(_519){ bbar.addButton({text:_519,handler:$G.deleteRow,scope:_529}); } }else{ var bbar=new Ext.Toolbar({hidden:true}); } _524.bbar=bbar; } if(edit){ _524.clicksToEdit=1; grid=new Ext.grid.EditorGridPanel(_524); }else{ grid=new Ext.grid.GridPanel(_524); } $G.Ext_caseInsensitive_sorting(); _50c.addListener("load",$G.Actions.onLoad,_529,{delay:50}); grid.view.colMenu.addListener("beforeshow",function(menu){ var _52d=_523.getColumnCount(); for(var i=0;i<_52d;i++){ if("CFGRIDROWINDEX"==_523.getDataIndex(i)){ menu.remove(menu.items["items"][i]); break; } } },this); _529.grid=grid; grid.render(); if(!_506){ _50c.addListener("load",$G.Actions.onLoad,_529,{delay:50}); _50c.load(); } if(_506){ _50c.addListener("load",$G.Actions.onLoad,_529,{delay:50}); _50c._cf_errorHandler=_51c; _50c.proxy._cf_actions=_529; _50c.load({params:{start:0,limit:_511}}); }else{ $G.applyStyles(_529); } if(_51f){ ColdFusion.Bind.register(_51f,{actions:_529},$G.bindHandler,false); } $L.info("grid.init.created","widget",[id]); _529.init(id,name,_505,_51a,_506,edit,_51b,_51c,_513,_511,_512,_516); }; $G.applyStyles=function(_52f){ if(_52f.stylesApplied){ return; } Ext.util.CSS.createStyleSheet(_52f.styles); _52f.stylesApplied=true; }; $G.bindHandler=function(e,_531){ $G.refresh(_531.actions.id); }; $G.bindHandler._cf_bindhandler=true; $G.refresh=function(_532,_533){ var _534=ColdFusion.objectCache[_532]; if(_534&&$G.Actions.prototype.isPrototypeOf(_534)==true){ var _535=_534.grid.getStore(); if(_534.dynamic){ _534.editOldValue=null; _534.selectedRow=-1; if(_533){ _535.reload(); }else{ _535.reload({params:{start:0,limit:_534.pageSize}}); } } }else{ ColdFusion.handleError(null,"grid.refresh.notfound","widget",[_532],null,null,true); return; } if(_534.multiRowSelection){ var _536=_534.grid.getView().getHeaderCell(0); if(_536!=null){ var _537=Ext.Element.get(_536).first(); if(_537){ _537.replaceClass("x-grid3-hd-checker-on"); } } } $L.info("grid.refresh.success","widget",[_532]); }; $G.Ext_caseInsensitive_sorting=function(){ Ext.data.Store.prototype.sortData=function(f,_539){ _539=_539||"ASC"; var st=this.fields.get(f).sortType; var fn=function(r1,r2){ var v1=st(r1.data[f]),v2=st(r2.data[f]); if(v1.toLowerCase){ v1=v1.toLowerCase(); v2=v2.toLowerCase(); } return v1>v2?1:(v1=_5be.limit){ _5be.start=_5be.start-_5be.limit; } _5bf.reload(_5be); }else{ _5bf.reload(); } if(_5c0.multiRowSelection){ var _5c2=_5c0.grid.getView().getHeaderCell(0); if(_5c2!=null){ var _5c3=Ext.Element.get(_5c2).first(); if(_5c3){ _5c3.replaceClass("x-grid3-hd-checker-on"); } } } }; $G.insertRowCallback=function(_5c4,_5c5){ var _5c6=_5c5._cf_grid.getStore(); var _5c7=_5c5._cf_grid.actions; _5c6.reload(); }; $G.Actions.beforeEdit=function(_5c8){ if($G.isNullRow(_5c8.record.data)){ return false; } this.editColumn=_5c8.column; this.editOldValue=_5c8.value; }; $G.Actions.afterEdit=function(_5c9){ var _5ca=_5c9.value; if(this.insertInProgress==false&&this.onChangeFunction){ this.onChangeHandler("U",this.selectedRow,_5c9); }else{ if(!this.dynamic){ var _5cb=$G.computeActualRow_editField(this.editFieldState,this.selectedRow); var _5cc=this.editFieldState[_5cb-1]; if(_5cc){ var _5cd=_5c9.column; if(this.multiRowSelection===true&&this.insertInProgress==true){ _5cd=_5cd-1; } _5cc.values[_5cd][1]=_5ca; }else{ var _5ce=this.grid.getStore().getById(this.selectedRow); _5cc=$G.Actions.initEditState(this,"U",_5ce,_5cb); var _5cf=this.editOldValue+""; if(_5ca.getDayOfYear){ if(_5cf&&typeof _5cf=="string"){ _5cf=new Date(_5cf); } _5cc.values[_5c9.column][1]=_5ca.format("F, j Y H:i:s"); _5cc.values[_5c9.column][0]=_5cf?_5cf.format("F, j Y H:i:s"):_5cf; }else{ _5cc.values[_5c9.column][0]=_5cf; _5cc.values[_5c9.column][1]=_5ca; } } $G.Actions.computeEditField(this); } } this.editOldValue=null; this.fireSelectionChangeEvent(); }; $G.computeActualRow_editField=function(_5d0,_5d1){ if(_5d0.length==_5d1){ return _5d1; } var _5d2=0; var _5d3=0; for(;_5d3<_5d0.length&&_5d2<_5d1;_5d3++){ var _5d4=_5d0[_5d3]; if(!_5d4||_5d4.action!="D"){ _5d2++; } } return _5d3; }; $G.Actions.onChangeHandler=function(_5d5,_5d6,_5d7,_5d8){ var _5d9={}; var _5da={}; var data=_5d7?_5d7.record.data:this.grid.getStore().getAt(_5d6).data; for(col in data){ _5d9[col]=data[col]; } if(_5d5=="U"){ if((_5d7.value==null||_5d7.value=="")&&(_5d7.originalValue==null||_5d7.originalValue=="")){ return; } if(_5d7.value&&_5d7.value.getDayOfYear){ if(typeof _5d7.originalValue=="string"){ var _5dc=new Date(_5d7.originalValue); } if(_5dc!=null&&_5dc.getElapsed(_5d7.value)==0){ return; }else{ _5d9[_5d7.field]=_5d7.originalValue; _5da[_5d7.field]=_5d7.value.format("F, j Y H:i:s"); } }else{ _5d9[_5d7.field]=_5d7.originalValue; _5da[_5d7.field]=_5d7.value; } } this.onChangeFunction(_5d5,_5d9,_5da,_5d8,this.grid,this.onErrorFunction,this); }; $G.Actions.onChangeHandler_MultiRowsDelete=function(_5dd,_5de,_5df,_5e0){ var _5e1=new Array(); var _5e2={}; for(i=0;i<_5de.length;i++){ _5e1[i]=_5de[i].data; } this.onChangeFunction(_5dd,_5e1,_5e2,_5e0,this.grid,this.onErrorFunction,this); }; $G.Actions.initEditState=function(_5e3,_5e4,_5e5,_5e6){ var _5e7={action:_5e4,values:[]}; var _5e8=_5e3.grid.getColumnModel(); var _5e9=_5e8.getColumnCount()-1; _5e7.values.length=_5e9; var i=0; if(_5e3.multiRowSelection===true&&_5e3.dynamic===false){ i=i++; } for(i;i<_5e9;i++){ var _5eb=_5e5.get(_5e8.getDataIndex(i)); _5e7.values[i]=[_5eb,_5eb]; } _5e3.editFieldState[_5e6-1]=_5e7; return _5e7; }; $G.Actions.fieldSep=eval("'\\u0001'"); $G.Actions.valueSep=eval("'\\u0002'"); $G.Actions.nullValue=eval("'\\u0003'"); $G.Actions.computeEditField=function(_5ec){ if(_5ec.dynamic){ return; } var _5ed=_5ec.editFieldPrefix; var _5ee=_5ec.editFieldState; var _5ef=_5ec.grid.getColumnModel().config; var _5f0=0; var _5f1=""; for(var i=0;i<_5ee.length;i++){ var _5f3=_5ee[i]; if(_5f3){ _5f0++; _5f1+=$G.Actions.fieldSep; _5f1+=_5f3.action+$G.Actions.valueSep; var _5f4=_5f3.values; if(_5ec.multiRowSelection===true&&_5ec.dynamic===false&&_5f3.action!="I"){ _5f4=_5f4.slice(1,_5f4.length); } for(var j=0;j<_5f4.length;j++){ if(j>0){ _5f1+=$G.Actions.valueSep; } var _5f6=($G.Actions.isNull(_5f4[j][0]))?$G.Actions.nullValue:_5f4[j][0]; var _5f7=($G.Actions.isNull(_5f4[j][1]))?$G.Actions.nullValue:_5f4[j][1]; var _5f8=j; if(_5ec.multiRowSelection===true){ _5f8++; } if(_5f3.action!="I"||(_5f3.action=="I"&&_5ef[_5f8].editor)){ if(_5ef[_5f8].type=="date"){ if(_5f7!=null&&_5f7!=$G.Actions.nullValue){ if(typeof _5f7=="string"){ _5f7=new Date(_5f7); } _5f7=_5f7.format("F, j Y H:i:s"); } if(_5f6!=null&&_5f6!=$G.Actions.nullValue){ if(typeof _5f6=="string"){ _5f6=new Date(_5f6); } _5f6=_5f6.format("F, j Y H:i:s"); } } _5f1+=_5f7; if(_5f3.action=="U"&&_5ef[_5f8].editor){ _5f1+=$G.Actions.valueSep+_5f6; } } } } } _5ed+=_5f0+_5f1; _5ec.editField.setAttribute("value",_5ed); }; $G.Actions.isNull=function(val){ var ret=(val==null||typeof (val)=="undefined"||val.length==0); return ret; }; $G.loadData=function(data,_5fc){ _5fc._cf_gridDataProxy.loadResponse(data,_5fc); var _5fd=ColdFusion.objectCache[_5fc._cf_gridname]; $G.applyStyles(_5fd); $L.info("grid.loaddata.loaded","widget",[_5fc._cf_gridname]); if($G.Actions.isNull(data.TOTALROWCOUNT)==false&&data.TOTALROWCOUNT==0){ _5fd.fireSelectionChangeEvent(); } }; $G.printObject=function(obj){ var str=""; for(key in obj){ str=str+" "+key+"="; value=obj[key]; str+=value; } return str; }; $G.formatBoolean=function(v,p,_602){ return "
 
"; }; $G.formatDate=function(_603,p,_605){ if(_603&&!_603.dateFormat){ _603=new Date(_603); } var _606=this.dateFormat?this.dateFormat:"m/d/y"; return _603?_603.dateFormat(_606):""; }; $G.convertDate=function(_607,p,_609){ if(_607&&!_607.dateFormat){ _607=new Date(_607); } var _60a=this.dateFormat?this.dateFormat:"m/d/y"; return _607; }; $G.ExtProxy=function(_60b,_60c){ this.api={load:true,create:undefined,save:undefined,destroy:undefined}; $G.ExtProxy.superclass.constructor.call(this); this.bindHandler=_60b; this.errorHandler=_60c; }; Ext.extend($G.ExtProxy,Ext.data.DataProxy,{_cf_firstLoad:true,load:function(_60d,_60e,_60f,_610,arg){ if(!this._cf_actions.bindOnLoad){ var _612={"_cf_reader":_60e,"_cf_grid_errorhandler":this.errorHandler,"_cf_scope":_610,"_cf_gridDataProxy":this,"_cf_gridname":this._cf_gridName,"_cf_arg":arg,"_cf_callback":_60f,"ignoreData":true}; var data=[]; for(i=0;i<_60d.limit;i++){ data.push(new Ext.data.Record({})); } this.loadResponse(data,_612); this._cf_actions.bindOnLoad=true; }else{ var _614=(_60d.start/_60d.limit)+1; if(!_60d.sort){ _60d.sort=""; } if(!_60d.dir){ _60d.dir=""; } this.bindHandler(this,_614,_60d.limit,_60d.sort,_60d.dir,this.errorHandler,_60f,_610,arg,_60e); } },loadResponse:function(data,_616){ var _617=null; if(_616.ignoreData){ _617={success:true,records:data,totalRecords:data.length}; }else{ var _618; if(!data){ _618="grid.extproxy.loadresponse.emptyresponse"; }else{ if(!data.TOTALROWCOUNT&&data.TOTALROWCOUNT!=0){ _618="grid.extproxy.loadresponse.totalrowcountmissing"; }else{ if(!ColdFusion.Util.isInteger(data.TOTALROWCOUNT)){ _618="grid.extproxy.loadresponse.totalrowcountinvalid"; }else{ if(!data.QUERY){ _618="grid.extproxy.loadresponse.querymissing"; }else{ if(!data.QUERY.COLUMNS||!ColdFusion.Util.isArray(data.QUERY.COLUMNS)||!data.QUERY.DATA||!ColdFusion.Util.isArray(data.QUERY.DATA)||(data.QUERY.DATA.length>0&&!ColdFusion.Util.isArray(data.QUERY.DATA[0]))){ _618="grid.extproxy.loadresponse.queryinvalid"; } } } } } if(_618){ ColdFusion.handleError(_616._cf_grid_errorHandler,_618,"widget"); this.fireEvent("loadexception",this,_616,data,e); return; } _617=_616._cf_reader.readRecords(data); } this.fireEvent("load",this,_616,_616._cf_arg); _616._cf_callback.call(_616._cf_scope,_617,_616._cf_arg,true); },update:function(_619){ },updateResponse:function(_61a){ }}); $G.ExtReader=function(_61b){ this.recordType=Ext.data.Record.create(_61b); }; Ext.extend($G.ExtReader,Ext.data.DataReader,{readRecords:function(_61c){ var _61d=[]; var cols=_61c.QUERY.COLUMNS; var data=_61c.QUERY.DATA; for(var i=0;i "; }}; }; cfinitgrid();