﻿ Type.registerNamespace("Infragistics.Web.UI");$IG.WebDataGrid=function(element){$IG.WebDataGrid.initializeBase(this,[element]);};$IG.WebDataGrid.prototype={_thisType:"webDataGrid",initialize:function(){this._auxRowsBottom=[];this._auxRowsTop=[];this._initializeBehaviors=$IG.IGridBehaviorContainer.prototype._initializeBehaviors;$IG.WebDataGrid.callBaseMethod(this,"initialize");this._eventHandlerHash=new Object();this._eventHandlerHash.length=0;this._eventHandlerHash.handlers={};this._isWidthEmpty=this._get_clientOnlyValue("we")=="true";this._enableAjax=this._get_clientOnlyValue("ea")=="true";this._enabled=this._get_clientOnlyValue("en")=="true";this._editorProvidersPool=document.getElementById(this._element.id+"_eppool");this._container=this._elements["container"];this._ensureEditorProvidersPool(this._container);this._actionList=new $IG.GridActionTransactionList();this._gridUtil=new $IG.GridUtility(this);this._initializeObjects();if(this._get_clientOnlyValue('sv')=='1'){this._element.style.visibility='visible';if(this._elements.hdn){if(this._elements.hdn.length){for(var i=0;i<this._elements.hdn.length;i++){this._elements.hdn[i].style.visibility="visible";}}else this._elements.hdn.style.visibility="visible";}}this._initializeMargins();this._adjustGridLayout();if(this._thisType=="webDataGrid")this._raiseClientEvent('Initialize');if(this._get_clientOnlyValue("ti")>=0)this._element.tabIndex=0;this.__handleOnSelectstart();},_adjustGridLayout:function(){if(this._element.offsetHeight>0){var startHeight=null;if(!this._oncePainted){startHeight=this._element.clientHeight;if(this._elements.outerTbl)this._elements.outerTbl.style.display='';this._oncePainted=true;}if(this._adjustTimerId){clearInterval(this._adjustTimerId);this._adjustTimerId=null;}this._gridUtil._fireEvent(this,"InitializingLayout");var tblWidth=(this._elements.dataTbl)?this._elements.dataTbl.offsetWidth:-1;this._initializeScrollbar();this._onResize({"clientHeight":startHeight?startHeight:this._element.clientHeight},true);if(this._isWidthEmpty&&tblWidth>1)this._element.style.width=(tblWidth+(this._vScrBar?this._vScrBar.offsetWidth:0))+"px";if(this._elements.dataTbl)this._notifyBehaviorTData=new $IG.NotifySizeChangedBehavior(this._elements.dataTbl,Function.createDelegate(this,this._onDataTblResize));this._notifyBehavior=new $IG.NotifySizeChangedBehavior(this._element,Function.createDelegate(this,this._onResize));this._gridUtil._fireEvent(this,"InitializedLayout");}else{if(this._adjustTimerId==null)this._adjustTimerId=setInterval(Function.createDelegate(this,this._adjustGridLayout),100);}},_onResize:function(e,init){var height=e.clientHeight;this._adjustTable();this.alignCaptions();var elementStyle=$util.getRuntimeStyle(this._element);if(elementStyle.height==""||elementStyle.height=="auto"){height=this._element.clientHeight;}if(this._vScrBar){if(this._header&&this._header.childNodes.length==2)this._alignVScrIntersection(this._header,"headerContent");if(this._footer&&this._footer.childNodes.length==2)this._alignVScrIntersection(this._footer,"footerContent");}if(this._headingArea)height-=this._headingArea.offsetHeight;if(this._footingArea)height-=this._footingArea.offsetHeight;if(height>0){this._container.style.height=height+"px";if(this._vScrBar)this._vScrBar.style.height=height+"px";}this._initVScrBar();this._initHScrBar();if(!init)this._gridUtil._fireEvent(this,"Resize");},_onDataTblResize:function(e,timer){if(this._isWidthEmpty)this._element.style.width="100%";var height=e.clientHeight;this._adjustTable();this.alignCaptions();if(this._vScrBar){if(this._header&&this._header.childNodes.length==2)this._alignVScrIntersection(this._header,"headerContent");if(this._footer&&this._footer.childNodes.length==2)this._alignVScrIntersection(this._footer,"footerContent");}var elementStyle=$util.getRuntimeStyle(this._element);if(this._elements.dataTbl.offsetHeight>0&&(elementStyle.height==""||elementStyle.height=="auto")){this._container.style.height=this._elements.dataTbl.offsetHeight+"px";if(this._vScrBar)this._vScrBar.style.height=this._elements.dataTbl.offsetHeight+"px";}this._initVScrBar();this._initHScrBar();var tblWidth=this._elements.dataTbl.offsetWidth;if(this._isWidthEmpty&&tblWidth>1){this._element.style.width=(tblWidth+(this._vScrBar?this._vScrBar.offsetWidth:0))+"px";}},_alignVScrIntersection:function(captionArea,contentName){var content=this._elements[contentName];var contentRows=content?$util.getRows(content):null;var intersectionRows=(captionArea.childNodes[1].childNodes.length>0)?$util.getRows(captionArea.childNodes[1].childNodes[0]):null;if(contentRows&&intersectionRows&&contentRows.length&&intersectionRows.length){for(var i=0;i<contentRows.length&&i<intersectionRows.length;i++){var cell=intersectionRows[i].cells[0];if(cell){cell.style.height=contentRows[i].offsetHeight+"px";var adjustment=(contentRows[i].offsetHeight+(contentRows[i].offsetHeight-cell.offsetHeight));if(adjustment>0)cell.style.height=adjustment+"px";if($util.IsFireFox2){var cellHeight=cell.style.height;cell.style.height="0px";setTimeout($util.createDelegate(this,this._refreshCellHeight,[cell,cellHeight]),0);}}}}},_refreshCellHeight:function(cell,height){cell.style.height=height;},_setupCollections:function(){this._columns=this._collectionsManager.register_collection(0,$IG.ColumnCollection);this._editorProviders=this._collectionsManager.register_collection(1,$IG.ObjectCollection);var collectionItems=this._collectionsManager._collections[1];for(var i in collectionItems){var editorProvider=collectionItems[i];this._editorProviders._addObject(eval(editorProvider[1]["c"]["coc"]),document.getElementById(this._id+"_"+editorProvider[0][0]),i);}},_initializeMargins:function(){this._headingArea=this._elements["headingArea"];this._header=this._elements["header"];if(this._header)this._headerContainer=this._header.firstChild.firstChild;this._footingArea=this._elements["footingArea"];this._footer=this._elements["footer"];if(this._footer)this._footerContainer=this._footer.firstChild.firstChild;this._columnHeaderRow=this._elements["columnHeaderRow"];},_initializeScrollbar:function(){var vsbElem=this._elements["vsb"];if(vsbElem){for(var i=0;i<vsbElem.length;i++){if(vsbElem[i].getAttribute("sub"))this["_"+vsbElem[i].getAttribute("sub")]=vsbElem[i];}}this._vScrBar=this._elements["vScrBar"];this._hScrBar=this._elements["hScrBar"];if((this._vScrBar||this._hScrBar)){this._scrollBarWidth=this._determineScrollbarWidth();if(this._vScrBar){this._vScrBar.style.width=this._scrollBarWidth+1+"px";if(this._vScrWidth)this._vScrWidth.style.width=this._vScrBar.style.width;}if(this._hScrBar){this._hScrBar.style.height=this._scrollBarWidth+1+"px";if(this._hScrHeight)this._hScrHeight.style.height=this._hScrBar.style.height;}}if(this._vScrBar){this._initVScrBar();$addHandler(this._vScrBar,"scroll",Function.createDelegate(this,this._onVScrollHandler));if(Sys.Browser.agent==Sys.Browser.Firefox)$addHandler(this._container,"DOMMouseScroll",Function.createDelegate(this,this._onMouseWheel));else $addHandler(this._container,"mousewheel",Function.createDelegate(this,this._onMouseWheel));}if(this._hScrBar){this._initHScrBar();$addHandler(this._hScrBar,"scroll",Function.createDelegate(this,this._onHScrollHandler));}if(this._vScrBar||this._hScrBar)$addHandler(this._container,"scroll",Function.createDelegate(this,this._onCScrollHandler));},_initVScrBar:function(){if(this._vScrBar){if(!this._gridUtil._fireEvent(this,"VerticalScrollBarHeightInit",this._vScrBar)){if($util.IsIE)this._container.scrollTop=this._vScrBar.scrollTop=this.get_scrollTop();var show=this._container.scrollHeight>this._container.offsetHeight;var shown=this._elements.vsb[0].style.display=="";if(show?!shown:shown){for(var i=0;i<this._elements.vsb.length;i++)this._elements.vsb[i].style.display=(show?"":"none");this._onResize({"clientHeight":this._element.clientHeight},false);}if(this._header&&this._header.childNodes.length==2)this._alignVScrIntersection(this._header,"headerContent");if(this._footer&&this._footer.childNodes.length==2)this._alignVScrIntersection(this._footer,"footerContent");var td=this._vScrBar.parentNode,width=this._vScrBar.offsetWidth;if(width>5&&td.offsetWidth<5)this._vScrBar.style.marginLeft=-width+'px';this._vScrBar.firstChild.style.height=this._container.scrollHeight+"px";this._container.scrollTop=this._vScrBar.scrollTop=this.get_scrollTop();}}},_initHScrBar:function(){if(this._hScrBar){if(!this._gridUtil._fireEvent(this,"HorizontalScrollBarWidthInit",this._hScrBar)){var scrollContainer;if(this._rows.get_length()<1&&(this._elements["headerContent"]||this._elements["footerContent"]))scrollContainer=this._elements["headerContent"]?this._elements["headerContent"]:this._elements["footerContent"];else scrollContainer=this._container;if($util.IsIE)scrollContainer.scrollLeft=this._hScrBar.scrollLeft=this.get_scrollLeft();this._hScrBar.firstChild.style.width=scrollContainer.scrollWidth+"px";scrollContainer.scrollLeft=this._hScrBar.scrollLeft=this.get_scrollLeft();this._onHScrollHandler();}}},_determineScrollbarWidth:function(){var testDiv=document.createElement("DIV");document.body.insertBefore(testDiv,document.body.firstChild);testDiv.style.visibility="hidden";testDiv.style.position="absolute";testDiv.style.overflow="auto";testDiv.style.width="100px";testDiv.style.height="100px";var testChildDiv=document.createElement("DIV");testDiv.appendChild(testChildDiv);testChildDiv.style.width="200px";testChildDiv.style.height="200px";var wdth=testDiv.offsetWidth-testDiv.clientWidth;testDiv.removeChild(testChildDiv);if($util.IsIE)testChildDiv.removeNode();testChildDiv=null;document.body.removeChild(testDiv);if($util.IsIE)testDiv.removeNode();testDiv=null;return wdth;},_onHScrollHandler:function(evnt){if(this._gridUtil._fireEvent(this,"ScrollLeftChange"))return;this._ignoreCScroll=true;var scrLeft=this._hScrBar.scrollLeft;this._container.scrollLeft=scrLeft;if(this._header)this._headerContainer.scrollLeft=scrLeft;if(this._footer)this._footerContainer.scrollLeft=scrLeft;this.set_scrollLeft(scrLeft);delete this._ignoreCScroll;},_onVScrollHandler:function(evnt){if(this._gridUtil._fireEvent(this,"ScrollTopChange"))return;this.set_scrollTop(this._vScrBar.scrollTop);this._adjustScrollTop();},_adjustScrollTop:function(){this._ignoreCScroll=true;this._container.scrollTop=this._vScrBar.scrollTop;delete this._ignoreCScroll;},_onMouseWheel:function(evnt){var evt=evnt?evnt.rawEvent:null;if(!evt)return;var delta=evt.wheelDelta;if(delta)delta/=-3;else if(delta=evt.detail)delta*=13;if(!delta)return;this._container.scrollTop+=delta;$util.cancelEvent(evnt);this._gridUtil._fireEvent(this,"MouseWheel");},_onCScrollHandler:function(evnt){if(this._ignoreCScroll)return false;if(this._vScrBar)this._vScrBar.scrollTop=this._container.scrollTop;if(this._hScrBar)this._hScrBar.scrollLeft=this._container.scrollLeft;},__handleOnSelectstart:function(){var selectStart=($util.IsIE?"selectstart":"mousedown");$addHandler(this._element,selectStart,Function.createDelegate(this,this._onSelectstartContainer));if(this._columnHeaderRow){if(this._columnHeaderRow.length){for(var i=0;i<this._columnHeaderRow.length;i++)$addHandler(this._columnHeaderRow[i],selectStart,Function.createDelegate(this,this._onSelectstartHeader));}else $addHandler(this._columnHeaderRow,selectStart,Function.createDelegate(this,this._onSelectstartHeader));}},__removeOnSelectstart:function(){if(this._element)$clearHandlers(this._element);if(this._columnHeaderRow){if(this._columnHeaderRow.length){for(var i=0;i<this._columnHeaderRow.length;i++)$clearHandlers(this._columnHeaderRow[i]);}else $clearHandlers(this._columnHeaderRow);}},_onSelectstartContainer:function(evnt){this._gridUtil._fireEvent(this,"SelectStartContainer",evnt);},_onSelectstartHeader:function(evnt){$util.cancelEvent(evnt);},_createItem:function(element,adr,itemCount){},_rows:null,get_rows:function(){return this._rows;},_get_auxRows:function(alignment){if(alignment==$IG.GridAuxRows.Top)return this._auxRowsTop;if(alignment==$IG.GridAuxRows.Bottom)return this._auxRowsBottom;return this._auxRowsTop.concat(this._auxRowsBottom);},_isAuxRow:function(row,alignment){if(typeof(alignment)=="undefined")return this._isAuxRow(row,$IG.GridAuxRows.Top)||this._isAuxRow(row,$IG.GridAuxRows.Bottom);var auxRows=this._get_auxRows(alignment);for(var i=0;i<auxRows.length;i++)if(auxRows[i]==row)return true;return false;},_get_auxRowIndex:function(row,alignment){if(typeof(alignment)=="undefined")throw "Must indicate alignment of the aux rows";var auxRows=this._get_auxRows(alignment);for(var i=0;i<auxRows.length;i++)if(auxRows[i]==row)return i;return-1;},_registerAuxRow:function(row,alignment){if(typeof(alignment)=="undefined")throw "Must indicate alignment of the aux rows";var auxRows=this._get_auxRows(alignment);auxRows[auxRows.length]=row;row._element.setAttribute("auxRow",alignment);row._element.setAttribute("adr",auxRows.length-1);},_columns:null,get_columns:function(){return this._columns;},_initializeObjects:function(){var rawColumns=this._columns._manager._collections[0];for(var index in rawColumns){if(!isNaN(parseInt(index))){var column=this._columns._addObject($IG.GridColumn,null,index);column._parentCollection=this._columns;}}this._rows=new $IG.GridRowCollection(this._elements["rows"],[this._get_value($IG.WebDataGridProps.RowCount)],this);if(this._enabled){this._initializeBehaviors(this._objectsManager._objects,this,this.get_behaviors());this.get_behaviors()._initializeBehaviors();this._initializeBehaviorComplete(this.get_behaviors());}},_initializeBehaviorComplete:function(behaviors){for(var i=0;i<behaviors._behaviors.length;i++){var behavior=behaviors._behaviors[i];if(behavior){behavior._initializeComplete();if($IG.IGridBehaviorContainer.isInstanceOfType(behavior)){var subBehCollection=behavior.get_behaviors();if(subBehCollection)this._initializeBehaviorComplete(subBehCollection);}}}},_behaviors:null,get_behaviors:function(){if(this._behaviors==null)this._behaviors=new $IG.GridBehaviorCollection(this);return this._behaviors;},_saveAdditionalClientState:function(){return this._actionList.get_list();},dispose:function(){if(this._adjustTimerId){clearInterval(this._adjustTimerId);this._adjustTimerId=null;}if(this._notifyBehavior)this._notifyBehavior.dispose();if(this._notifyBehaviorTData)this._notifyBehaviorTData.dispose();this.__removeOnSelectstart();if(this.get_element())$clearHandlers(this.get_element());if(this._container)$clearHandlers(this._container);var rows=this.get_rows();if(rows)rows.dispose();if(this._headingArea)$clearHandlers(this._headingArea);if(this._footingArea)$clearHandlers(this._footingArea);if(this._vScrBar)$clearHandlers(this._vScrBar);if(this._hScrBar)$clearHandlers(this._hScrBar);this._auxRowsTop=null;this._auxRowsBottom=null;if(this._actionList)this._actionList.dispose();if(this._gridUtil)this._gridUtil.dispose();this._editorProvidersPool=null;this._container=null;this._headingArea=null;this._header=null;this._headerContainer=null;this._footingArea=null;this._footer=null;this._footerContainer=null;this._columnHeaderRow=null;this._vScrBar=null;this._hScrBar=null;this._vScrWidth=null;this._hScrHeight=null;if(this._behaviors){this._behaviors.dispose();this._behaviors=null;}var ele=this._element;$IG.WebDataGrid.callBaseMethod(this,"dispose");},alignCaptions:function(){this._adjustTable();if(this._header)this._alignStatCaption("headerContent");if(this._footer)this._alignStatCaption("footerContent");if(this._rows.get_length()<1)this._alignFooter();},_adjustTable:function(){if(this._elements.hScrHeight){var scrollContainer;if(this._rows.get_length()<1&&(this._elements["headerContent"]||this._elements["footerContent"]))scrollContainer=this._elements["headerContent"]?this._elements["headerContent"]:this._elements["footerContent"];else scrollContainer=this._elements.dataTbl;if(!this._gridUtil._fireEvent(this,"ShowHorizontalScrollBar",{"scrollBar":this._elements.hScrHeight,"scrollContainer":scrollContainer,"container":this._container}))this._elements.hScrHeight.style.display=(scrollContainer.offsetWidth>this._container.offsetWidth?"":"none");}if(this._elements.vsb){var show=this._container.scrollHeight>this._container.offsetHeight;for(var i=0;i<this._elements.vsb.length;i++)this._elements.vsb[i].style.display=(show?"":"none");}},_alignStatCaption:function(captionProperty){if(this._gridUtil._fireEvent(this,"AlignStatCaption",captionProperty))return;var capElem=this._elements[captionProperty];if(capElem.style.tableLayout!="fixed")capElem.style.tableLayout="fixed";if(this._elements.dataTbl){var dataTblStyle=this._elements.dataTbl.style;var existingTableWidth=dataTblStyle.width;if(existingTableWidth&&(existingTableWidth+"").indexOf("px")!=-1){capElem.style.width=dataTblStyle.width;}}var row=this._rows.get_row(0);if(row){var rowElem=row.get_element();for(var i=0;i<rowElem.childNodes.length;i++){var cell=rowElem.childNodes[i];if(cell.style.width!=""&&cell.style.width.indexOf("%")<0&&cell.offsetWidth>0){var pxIndex=cell.style.width.indexOf("px");if(pxIndex>-1&&existingTableWidth){var neededWidth=parseInt(cell.style.width.substring(0,pxIndex));if(!isNaN(neededWidth)){cell.style.width=neededWidth+1+"px";cell.style.width=neededWidth+"px";}}var rows=$util.getRows(capElem);var caption=rows&&rows.length?rows[0].childNodes[i]:null;if(caption){$util.setAbsoluteWidth(caption,cell.offsetWidth);}}else{var rows=$util.getRows(capElem);var caption=rows&&rows.length?rows[0].childNodes[i]:null;if(caption)caption.style.width="";}}for(var i=0;i<rowElem.childNodes.length;i++){var cell=rowElem.childNodes[i];if(cell.style.width==""||cell.style.width.indexOf("%")>-1&&cell.offsetWidth>0){var rows=$util.getRows(capElem);var caption=rows&&rows.length?rows[0].childNodes[i]:null;if(caption){$util.setAbsoluteWidth(caption,cell.offsetWidth);}}}}},_alignFooter:function(){var headerRows=$util.getRows(this._elements["headerContent"]);var headerRow=(headerRows&&headerRows.length)?headerRows[0]:null;var footerRows=$util.getRows(this._elements["footerContent"]);if(headerRow&&footerRows&&footerRows.length){for(var i=0;i<headerRow.childNodes.length;i++){var headerCell=headerRow.childNodes[i];if(headerCell.offsetWidth>0){var footerCell=footerRows[0].childNodes[i];if(footerCell)$util.setAbsoluteWidth(footerCell,headerCell.offsetWidth);}}}},_responseComplete:function(callbackObject,responseObject,browserResponseObject){$IG.WebDataGrid.callBaseMethod(this,'_responseComplete',[callbackObject,responseObject,browserResponseObject]);var grid=this;var responseOptions=Sys.Serialization.JavaScriptSerializer.deserialize(responseObject.context[0]);if(responseOptions.fullRender){this._parkEditorProvidersPool();grid._gridUtil._fireEvent(grid,"BeforeAsyncRender");grid=this._renderOnAsyncResponse(responseObject.context[1],responseObject.context[2]);}else{var behaviorName=callbackObject.serverContext["behavior"];if(behaviorName){var behavior=this.get_behaviors().getBehaviorByName(behaviorName);behavior._responseComplete(callbackObject,responseOptions);}this._isAjaxCallInProgress=false;}grid._raiseClientEvent("AJAXResponse","AJAXResponse",browserResponseObject,responseOptions.gridResponse);},_responseCompleteError:function(callbackObject,browserResponseObject,timedOut){this._actionList.clear();this._gridUtil._fireEvent(this,"PostBackFailed");var args=this._raiseClientEvent("AJAXResponse","CancelAJAXResponse",browserResponseObject,timedOut);if(!args||!args.get_cancel()){if(timedOut)alert("Server does not respond.");else{var errorMessage=browserResponseObject.responseText;if(errorMessage.substr(0,6)=="<html>"){var indexStart=errorMessage.indexOf("<!--");var indexEnd;if(indexStart>0){indexStart+=4;indexEnd=errorMessage.indexOf("-->",indexStart);if(indexEnd<0)indexEnd=errorMessage.length;errorMessage=errorMessage.substr(indexStart,indexEnd-indexStart);}}alert(errorMessage);}}this._isAjaxCallInProgress=false;},_renderOnAsyncResponse:function(props,html){var props=eval(props);var div=document.createElement("DIV");div.innerHTML=html;var id=this.get_id();var name=this.get_name();var element=this._element;var newElement=div.firstChild;while(newElement){if(newElement.id==id)break;newElement=newElement.nextSibling;}this._gridUtil._fireEvent(this,"AsyncRendering",{newElement:newElement,gridElement:element,tableElement:this._elements.outerTbl});newElement=newElement.firstChild;while(newElement){if(newElement.tagName=="TABLE"&&newElement.id.indexOf("outerTbl"))break;newElement=newElement.nextSibling;}var parent=newElement.parentNode;parent.removeChild(newElement);var tableElement=this._elements.outerTbl;this.dispose();var tableNextSibling=tableElement.nextSibling;element.removeChild(tableElement);if($util.IsIE)tableElement.removeNode();if(tableNextSibling)element.insertBefore(newElement,tableNextSibling);else element.appendChild(newElement);if($util.IsIE)div.removeNode();return $create($IG.WebDataGrid,{"id":id,"name":name,"props":props},null,null,$get(id));},_cell_index_offset:0,_get_cellIndexOffset:function(){return this._cell_index_offset;},_incrementCellIndexOffset:function(){this._cell_index_offset++;},_decrementCellIndexOffset:function(){if(this._cell_index_offset==0)return;this._cell_index_offset--;},_notifyPost:function(eventArgs,postBack){var cancel=false;if(postBack==2)cancel=this._gridUtil._fireEvent(this,"AjaxPostBackStart");if(!cancel&&(postBack==1||postBack==2))cancel=this._gridUtil._fireEvent(this,"PostBackStart");if(cancel){if(typeof(eventArgs.set_cancel)!="undefined")eventArgs.set_cancel(true);}return cancel;},_raiseSenderClientEventStart:function(sender,clientEvent,eventArgs){if(!this._notifyPost(eventArgs,clientEvent.postBack))eventArgs=$IG.WebDataGrid.callBaseMethod(this,'_raiseSenderClientEventStart',[sender,clientEvent,eventArgs]);return eventArgs;},_raiseClientEventStart:function(eventArgs){if(!this._notifyPost(eventArgs,eventArgs._props?eventArgs._props[1]:0))eventArgs=$IG.WebDataGrid.callBaseMethod(this,'_raiseClientEventStart',[eventArgs]);return eventArgs;},_raiseClientEventEnd:function(eventArgs){if(!this._isAjaxCallInProgress){if(eventArgs._props&&eventArgs._props[1]==2){this._isAjaxCallInProgress=true;this._asyncPostStart();}eventArgs=$IG.WebDataGrid.callBaseMethod(this,'_raiseClientEventEnd',[eventArgs]);}return eventArgs;},_asyncPostStart:function(){},_ensureEditorProvidersPool:function(container){var epp=this._editorProvidersPool;if(!epp||container.firstChild==epp)return;if(epp.parentNode)epp.parentNode.removeChild(epp);container.insertBefore(epp,container.firstChild);epp.style.display="";},_parkEditorProvidersPool:function(){if(!this._editorProvidersPool)return;this._editorProvidersPool.parentNode.removeChild(this._editorProvidersPool);this._element.parentNode.insertBefore(this._editorProvidersPool,this._element);for(var ep in this._editorProviders._items){if(!isNaN(parseInt(ep)))this._editorProviders._items[ep]._editor=null;}},_addElementEventHandler:function(element,eventType,handler){var key=this.__resolveKey(element,eventType);var resolvedHashItem=this._eventHandlerHash[key];if(!resolvedHashItem){resolvedHashItem=this._eventHandlerHash[key]=[];this._eventHandlerHash.length++;}for(var i=0;i<resolvedHashItem.length;i++){if(resolvedHashItem[i]==handler)return false;}if(resolvedHashItem.length==0){var internalHandler=this._eventHandlerHash.handlers[key]=Function.createDelegate(resolvedHashItem,this._elementEventHandler);$addHandler(element,eventType,internalHandler);}resolvedHashItem[resolvedHashItem.length]=handler;return true;},_removeElementEventHandler:function(element,eventType,handler){var key=this.__resolveKey(element,eventType);var resolvedHashItem=this._eventHandlerHash[key];if(!resolvedHashItem)return false;for(var i=0;i<resolvedHashItem.length;i++){if(resolvedHashItem[i]==handler){resolvedHashItem.splice(i,1);if(resolvedHashItem.length==0){try{$removeHandler(element,eventType,this._eventHandlerHash.handlers[key]);}catch(e){};delete this._eventHandlerHash[key];delete this._eventHandlerHash.handlers[key];}return true;}}return false;},__resolveKey:function(element,eventType){if(!element)return null;var ehh_id=element.id;if(element.getAttribute){if(!ehh_id)ehh_id=element.getAttribute("_ehh_id_"+eventType);if(!ehh_id){ehh_id="_ehh_id_"+this._eventHandlerHash.length;element.setAttribute("_ehh_id_"+eventType,ehh_id);}}else{ehh_id=element._ehh_id;if(!ehh_id)ehh_id=element._ehh_id="_ehh_id_"+this._eventHandlerHash.length;}return ehh_id+"_"+eventType;},_elementEventHandler:function(evnt){var resolvedHashItem=this;for(var i=0;i<resolvedHashItem.length;i++)resolvedHashItem[i](evnt);},get_scrollTop:function(){return this._get_value($IG.WebDataGridProps.ScrollTop);},set_scrollTop:function(value){this._set_value($IG.WebDataGridProps.ScrollTop,value);},get_scrollLeft:function(){return this._get_value($IG.WebDataGridProps.ScrollLeft);},set_scrollLeft:function(value){this._set_value($IG.WebDataGridProps.ScrollLeft,value);}};$IG.WebDataGrid.registerClass('Infragistics.Web.UI.WebDataGrid',$IG.NavControl,$IG.IGridBehaviorContainer);$IG.GridAuxRows=new function(){this.Top=0;this.Bottom=1;};$IG.WebDataGridProps=new function(){var propCount=$IG.ControlMainProps.Count;this.RowCount=[propCount++,0];this.ScrollTop=[propCount++,0];this.ScrollLeft=[propCount++,0];this.Count=propCount;};$IG.GridBehaviorCollection=function(control){$IG.GridBehaviorCollection.initializeBase(this,[control]);};$IG.GridBehaviorCollection.prototype={_paging:null,get_paging:function(){return this._paging;},_selection:null,get_selection:function(){return this._selection;},_activation:null,get_activation:function(){return this._activation;},_rowSelectors:null,get_rowSelectors:function(){return this._rowSelectors;},_columnResizing:null,get_columnResizing:function(){return this._columnResizing;},_columnMoving:null,get_columnMoving:function(){return this._columnMoving;},_editingCore:null,get_editingCore:function(){return this._editingCore;},_sorting:null,get_sorting:function(){return this._sorting;},_filtering:null,get_filtering:function(){return this._filtering;},_virtualScrolling:null,get_virtualScrolling:function(){return this._virtualScrolling;},dispose:function(){this._paging=null;this._selection=null;this._activation=null;this._rowSelectors=null;this._columnResizing=null;this._editingCore=null;this._sorting=null;this._filtering=null;this._virtualScrolling=null;$IG.GridBehaviorCollection.callBaseMethod(this,"dispose");}};$IG.GridBehaviorCollection.registerClass('Infragistics.Web.UI.GridBehaviorCollection',$IG.BehaviorCollectionBase);$IG.ColumnCollection=function(control,clientStateManager,index,manager){$IG.ColumnCollection.initializeBase(this,[control,clientStateManager,index,manager]);};$IG.ColumnCollection.prototype={get_column:function(index){return this._items[index];},get_columnFromKey:function(key){for(var i=0;i<this._items.length;i++){var column=this.get_column(i);if(column.get_key()==key)return column;}return null;},get_columnFromIDPair:function(idPair){var column=null;if(idPair.key&&idPair.key.length)column=this.get_columnFromKey(idPair.key[0]);if(!column)column=this.get_column(idPair.index);return column;}};$IG.ColumnCollection.registerClass('Infragistics.Web.UI.ColumnCollection',$IG.ObjectCollection);$IG.GridColumn=function(adr,element,props,owner,csm){$IG.GridColumn.initializeBase(this,[adr,element,props,owner,csm]);this._key=this._get_clientOnlyValue("key");this._visibleIndex=this._get_clientOnlyValue("vIndex");this._headerElement=this._findHeaderElement(owner._elements["header"],this._key,this._visibleIndex);this._footerElement=this._findHeaderElement(owner._elements["footer"],this._key,this._visibleIndex);this._type=this._get_clientOnlyValue("type");this._nullable=this._get_clientOnlyValue("nullable");};$IG.GridColumn.prototype={get_key:function(){return this._key;},get_isTemplated:function(){var tmpl=this._get_clientOnlyValue("tmpl");return tmpl=="1"?true:false;},get_type:function(){return this._type;},get_nullable:function(){return this._nullable;},get_nullText:function(){return "";},_parentCollection:null,get_index:function(){if(this._parentCollection==null)return-1;return this._parentCollection.get_indexOf(this);},get_headerElement:function(){return this._headerElement;},get_footerElement:function(){return this._footerElement;},_findHeaderElement:function(element,key,index){if(!element||typeof(element.getAttribute)=="undefined")return null;var idx=element.getAttribute("idx");var hKey=element.getAttribute("key");if(hKey){if(hKey==key)return element;return null;}else if(idx){if(idx==index)return element;return null;}for(var i=0;i<element.childNodes.length;i++){var hdr=this._findHeaderElement(element.childNodes[i],key,index);if(hdr)return hdr;}return null;},get_idPair:function(){if(!this._idPair)this._idPair=new $IG.IDPair(this.get_index(),this.get_key());return this._idPair;},get_width:function(){return this._get_value($IG.ColumnProps.Width,"");},set_width:function(value){var oldValue=this.get_width();this._set_value($IG.ColumnProps.Width,value);var args={column:this,width:value,cancel:false};this._owner._gridUtil._fireEvent(this._owner,"SetColumnWidth",args);if(!args.cancel){if(this._headerElement)this._headerElement.style.width=value;if(this._footerElement)this._footerElement.style.width=value;if(this._owner.get_rows().get_length()>0){var rowZero=this._owner.get_rows().get_row(0);rowZero.get_cellByColumn(this).get_element().style.width=value;}if(value&&(value+"").indexOf("px")!=-1){var dataTblStyle=this._owner._elements.dataTbl.style;var existingTableWidth=dataTblStyle.width;if(existingTableWidth&&(existingTableWidth+"").indexOf("px")!=-1){if(oldValue&&(oldValue+"").indexOf("px")!=-1){dataTblStyle.width=(parseInt(existingTableWidth)+parseInt(value)-parseInt(oldValue))+"px";this._owner._onResize({"clientHeight":this._owner._element.clientHeight},false);}}else{this._owner._onResize({"clientHeight":this._owner._element.clientHeight},false);}}}},_get_dataFormatString:function(){var format=this._get_clientOnlyValue("cf");if(!format&&this.get_type()=="date")format=this._defaultDateFormat;return format;},_formatMethod:null,get_formatMethod:function(){return this._formatMethod;},set_formatMethod:function(value){this._formatMethod=value;},_defaultDateFormat:"{0:d}",_formatValue:function(value){if(value==null&&this.get_nullable())return this.get_nullText();if(this._formatMethod!=null)return this._formatMethod(value);var format=this._get_dataFormatString();if(format){if(this.get_type()==="date"&&value){if(value==null)return "";if(typeof(value)=="string")return String.localeFormat(format,Date.parseLocale(value));else if(typeof(value)=="object"&&typeof(value.getMonth)!="undefined")return String.localeFormat(format,value);else return String.localeFormat(format,new Date(value));}else return String.localeFormat(format,value);}else if(typeof value=='number')return String.localeFormat('{0:n}',value);if(value==null)value="";return value.toString();},get_visibleIndex:function(){return this._visibleIndex;},dispose:function(){this._headerElement=null;this._footerElement=null;this._parentCollection=null;$IG.GridColumn.callBaseMethod(this,"dispose");}};$IG.GridColumn.registerClass('Infragistics.Web.UI.GridColumn',$IG.UIObject);$IG.ColumnProps=new function(){var count=$IG.ObjectBaseProps.Count;this.Width=[count++,""];this.Count=count;};$IG.GridRowCollection=function(element,props,owner){this._rows=[];this._keyIndexTree=new $IG.HashTree();$IG.GridRowCollection.initializeBase(this,[null,element,props,owner,null]);$addHandler(this._owner._element,"mouseover",Function.createDelegate(this,this._onMouseOver));};$IG.GridRowCollection.prototype={initialize:function(){$IG.GridRowCollection.callBaseMethod(this,'initialize');},dispose:function(){for(var rowIndex in this._rows){if(!isNaN(parseInt(rowIndex))){var row=this._rows[rowIndex];if(row)row.dispose();}}if(this.get_element())$clearHandlers(this.get_element());if(this._keyIndexTree)this._keyIndexTree.dispose();$IG.GridRowCollection.callBaseMethod(this,'dispose');},get_grid:function(){return this._owner;},get_length:function(){return this._props[$IG.RowCollectionProps.RowCount];},_set_length:function(newRowCount){this._props[$IG.RowCollectionProps.RowCount]=newRowCount;},get_row:function(index,skipKeyIndexing){if(index<0||index>=this.get_length())return null;var returnRow=this._rows[index];if(!returnRow){returnRow=this._rows[index]=this._create_item(index);}if(!skipKeyIndexing){if(returnRow){if(!returnRow._get_isKeyIndexed()){this._keyIndexTree.add(returnRow);returnRow._set_isKeyIndexed(true);}}}return returnRow;},get_rowFromKey:function(dataKey){if(!dataKey||!dataKey.length)return null;var row=this._keyIndexTree.findByKey(dataKey);if(row)return row;for(var i=0;i<this.get_length();i++){row=this.get_row(i);if(row&&row.isDataKeyEqual(dataKey))return row;}return null;},get_rowFromIDPair:function(idPair){if(idPair.index<0)return null;var row=this.get_rowFromKey(idPair.key);if(!row)row=this.get_row(idPair.index);return row;},get_cellFromIDPair:function(idPair){var cell=null;var row=this.get_rowFromIDPair(idPair.rowIDPair);if(row){var column=this.get_grid().get_columns().get_columnFromIDPair(idPair.columnIDPair);if(column)cell=row.get_cellByColumn(column);}return cell;},_compareDataKeys:function(key1,key2){if(!key1||!key2||key1.length==undefined||key2.length==undefined||key1.length!=key2.length)throw "Incorrect keys: "+key1.toString()+" "+key2.toString();for(var i=0;i<key1.length;i++){if(key1[i]<key2[i])return-i-1;if(key1[i]>key2[i])return i+1;}return 0;},_resolveIndexedKey:function(dataKey,indexTree){if(indexTree.dataKey==undefined)return null;if(this._compareDataKeys(indexTree.dataKey,dataKey)==0)return indexTree.row;var row=this._resolveIndexedKey(dataKey,indexTree.left);if(!row)row=this._resolveIndexedKey(dataKey,indexTree.right);return row;},_create_item:function(index){var rows=$util.getRows(this.get_element());var rowElem=rows?rows[index]:null;if(!rowElem)return null;var row=new $IG.GridRow(index,rowElem,[],this.get_grid(),null);this._owner._gridUtil._fireEvent(this,"RowCreated",row);return row;},_onMouseOver:function(e){var target=e.target;target=this._owner._gridUtil._getGridCellFromElement(target);if(target&&(target.tagName=="TD"||target.tagName=="TH")){var row=target.parentNode;var adr=row.getAttribute("adr");if(adr===null&&row.id.indexOf("adr")>=0){$util._initAttr(row);adr=row.getAttribute("adr");}if(adr!==null&&row.getAttribute("type")==null){var index=parseInt(adr,10);if(!this._rows[index])this._rows[index]=this._create_item(index);}if(!target.getAttribute("adr")&&target.tagName=="TD"){var idx=this._owner._gridUtil.getCellIndexFromElem(target);target.setAttribute("idx",idx);target.setAttribute("adr",this._owner._gridUtil._getColumnAdrFromVisibleIndex(idx));target.setAttribute("type","cell");}}},addRowCreatedEventHandler:function(handler){this._owner._gridUtil._registerEventListener(this,"RowCreated",handler);},add:function(cellValues){var editing=this.get_grid().get_behaviors().getBehaviorFromInterface($IG.IEditingBehavior);if(!editing)alert("The Editing behavior must be present for the 'add' method to function.");this.get_grid()._gridUtil._fireEvent(this.get_grid(),"RowAdded",{"cellValues":cellValues});},remove:function(row,noncommitting){var editing=this.get_grid().get_behaviors().getBehaviorFromInterface($IG.IEditingBehavior);if(!editing)alert("The Editing behavior must be present for the 'remove' method to function.");this.get_grid()._gridUtil._fireEvent(this.get_grid(),"RowsDeleted",{"row":row,"commit":(noncommitting?false:true)});}};$IG.GridRowCollection.registerClass('Infragistics.Web.UI.GridRowCollection',$IG.UIObject);$IG.RowCollectionProps=new function(){this.RowCount=0;this.Count=1;};$IG.GridRow=function(adr,element,props,owner,csm){this._index=parseInt(adr);this._cells=[];$util._initAttr(element);element.setAttribute("type","row");$IG.GridRow.initializeBase(this,[adr,element,props,owner,csm]);this._isKeyIndexed=false;};$IG.GridRow.prototype={initialize:function(){$IG.GridRow.callBaseMethod(this,'initialize');},dispose:function(){var ele=this.get_element();if(ele)$clearHandlers(ele);for(var cell in this._cells){if(!isNaN(parseInt(cell))){if(this._cells[cell])this._cells[cell].dispose();this._cells[cell]=null;}}$IG.GridRow.callBaseMethod(this,'dispose');},get_grid:function(){return this._owner;},get_cell:function(index){if(index<0||index>=this.get_cellCount())throw "CellCollection: Out of bounds exception.";if(!this._cells[index]){var adr=index;index=this.get_grid().get_columns().get_column(adr).get_visibleIndex();this._cells[adr]=this._create_item(adr,index);index=adr;}return this._cells[index];},get_cellByColumnKey:function(columnKey){var column=this.get_grid().get_columns().get_columnFromKey(columnKey);if(column)return this.get_cell(column.get_index());return null;},get_cellByColumn:function(column){return this.get_cell(column.get_index());},_get_cellElementByIndex:function(rowElement,index){var args={rowElement:rowElement,index:index,cellElement:null,cancel:false};this._owner._gridUtil._fireEvent(this._owner,"GetCellElementByIndex",args);if(!args.cancel)return rowElement.childNodes[index];else return args.cellElement;},_create_item:function(adr,index){var cellIndex=parseInt(index)+this._owner._get_cellIndexOffset();var cell=new $IG.GridCell(this,adr,this._get_cellElementByIndex(this.get_element(),cellIndex),[],this.get_grid(),null);cell._column=this._owner._columns._getObjectByIndex(adr);return cell;},get_cellCount:function(){return this.get_grid().get_columns().get_length();},get_index:function(){return this._index;},__colon:":",__colonSubs:"~$~",get_dataKey:function(){var dataKey=this._element.getAttribute("key");if(dataKey){dataKey=Sys.Serialization.JavaScriptSerializer.deserialize(dataKey.replace(this.__colonSubs,this.__colon));return dataKey;}return[];},isDataKeyEqual:function(dataKey){var rowDataKey=this.get_dataKey();if(rowDataKey&&dataKey&&rowDataKey.length==dataKey.length){for(var i=0;i<dataKey.length;i++)if(rowDataKey[i]!=dataKey[i])return false;return true;}return false;},get_idPair:function(){if(!this._idPair)this._idPair=new $IG.IDPair(this.get_index(),this.get_dataKey());return this._idPair;},get_tag:function(){if(this._element.getAttribute("tag"))return Sys.Serialization.JavaScriptSerializer.deserialize(this._element.getAttribute("tag").replace(this.__colonSubs,this.__colon));return null;},_get_isKeyIndexed:function(){return this._isKeyIndexed;},_set_isKeyIndexed:function(value){this._isKeyIndexed=value;}};$IG.GridRow.registerClass('Infragistics.Web.UI.GridRow',$IG.UIObject);$IG.GridCell=function(row,adr,element,props,owner,csm){this._row=row;$IG.GridCell.initializeBase(this,[adr,element,props,owner,csm]);if(!element.getAttribute("wlkd")){$util._initAttr(element);element.setAttribute("adr",adr);element.setAttribute("idx",owner._gridUtil.getCellIndexFromElem(element));element.setAttribute("type","cell");element.setAttribute("wlkd","1");}};$IG.GridCell.prototype={initialize:function(){$IG.GridCell.callBaseMethod(this,'initialize');},dispose:function(){var ele=this.get_element();if(ele)$clearHandlers(ele);$IG.GridCell.callBaseMethod(this,'dispose');},get_grid:function(){return this._owner;},get_row:function(){return this._row;},get_column:function(){return this._column;},get_index:function(){if(!this.get_column())return-1;return this.get_column().get_idPair().index;},get_idPair:function(){if(!this._idPair)this._idPair=new $IG.CellIDPair(this.get_row().get_idPair(),this.get_column().get_idPair());return this._idPair;},get_value:function(){var value=this._element.getAttribute("val");if(value)return Sys.Serialization.JavaScriptSerializer.deserialize(value);var origValue=this.get_text();var column=this.get_column();if(column.get_nullable()&&origValue==column.get_nullText())return null;if(column.get_type()=="number"){value=Number.parseLocale(origValue);if(isNaN(value))value=parseFloat(origValue);if(isNaN(value))value=origValue;}else if(column.get_type()=="boolean"){if(origValue.length>0)value=(origValue.toString().toLowerCase()=="true");else value=origValue;}else value=origValue;return value;},set_value:function(value,text){var oldValue=this.get_value();this._set_value_internal(value,text);if(!this.__overrideCellUpdate)this.get_grid()._gridUtil._fireEvent(this.get_grid(),"CellValueChanged",{"cell":this,"oldValue":oldValue});},_set_value_internal:function(value,text){value=this.__parseValue(value);var val=this._element.getAttribute("val");if(val!==null||this.get_column()._formatMethod!=null||this.get_column()._get_dataFormatString()){val=Sys.Serialization.JavaScriptSerializer.serialize(value);this._element.setAttribute("val",val);}if(typeof(text)=="undefined")text=this.get_column()._formatValue(value);this.set_text(text);},__parseValue:function(value){var column=this.get_column();if(column.get_nullable()&&column.get_nullText()==value)return null;switch(column.get_type()){case "number":if(typeof(value)!="number"){var val=Number.parseLocale(value);if(isNaN(val))val=parseFloat(value);if(isNaN(value=val))value=0;}break;case "boolean":if(typeof(value)!="boolean"){if(value&&value.toString().toLowerCase()=="true")value=true;else value=false;}break;case "date":if(typeof(value)!="object"||(value!=null&&typeof(value.getMonth)=="undefined"))value=Date.parseLocale(value);break;}return value;},__set_overrideCellUpdate:function(val){this.__overrideCellUpdate=val;},get_text:function(){return $util.htmlUnescapeCharacters(this._element.innerHTML);},set_text:function(value){this._element.innerHTML=$util.htmlEscapeCharacters(value);this.get_grid()._gridUtil._fireEvent(this.get_grid(),"CellContentChanged",{"cell":this});},scrollToView:function(){var grid=this.get_grid();var elem=this.get_element();var cellPos=$util.getPosition(elem);var cellRect={x:(cellPos.x-cellPos.scrollX),y:(cellPos.y-cellPos.scrollY),width:elem.offsetWidth,height:elem.offsetHeight};var cntrPos=$util.getPosition(grid._container);var cntrRect={x:(cntrPos.x-cntrPos.scrollX),y:(cntrPos.y-cntrPos.scrollY),width:grid._container.offsetWidth,height:grid._container.offsetHeight};var xAdjusted=false;var yAdjusted=false;if(cellRect.x<cntrRect.x){grid._container.scrollLeft-=(cntrRect.x-cellRect.x);xAdjusted=true;}if(cellRect.y<cntrRect.y){grid._container.scrollTop-=(cntrRect.y-cellRect.y);yAdjusted=true;}if(!xAdjusted&&cellRect.x+cellRect.width>cntrRect.x+cntrRect.width+1){if(cellRect.width<grid._container.offsetWidth)grid._container.scrollLeft+=(cellRect.x+cellRect.width-(cntrRect.x+cntrRect.width));else grid._container.scrollLeft+=(cellRect.x+cntrRect.x);}if(!yAdjusted&&cellRect.y+cellRect.height>cntrRect.y+cntrRect.height){if(cellRect.height<grid._container.offsetHeight)grid._container.scrollTop+=(cellRect.y+cellRect.height-(cntrRect.y+cntrRect.height));else grid._container.scrollTop+=(cellRect.y+cntrRect.y);}}};$IG.GridCell.registerClass('Infragistics.Web.UI.GridCell',$IG.UIObject);$IG.CellIDPair=function(rowIDPair,columnIDPair){this.rowIDPair=rowIDPair;this.columnIDPair=columnIDPair;};$IG.CellIDPair.prototype={rowIDPair:null,columnIDPair:null};$IG.CancelAJAXResponseEventArgs=function(){$IG.CancelAJAXResponseEventArgs.initializeBase(this);};$IG.CancelAJAXResponseEventArgs.prototype={get_browserResponseObject:function(){return this._props[0];},get_requestTimedOut:function(){return this._props[1];}};$IG.CancelAJAXResponseEventArgs.registerClass('Infragistics.Web.UI.CancelAJAXResponseEventArgs',$IG.CancelEventArgs);$IG.AJAXResponseEventArgs=function(){$IG.AJAXResponseEventArgs.initializeBase(this);};$IG.AJAXResponseEventArgs.prototype={get_browserResponseObject:function(){return this._props[0];},get_gridResponseObject:function(){return this._props[1];}};$IG.AJAXResponseEventArgs.registerClass('Infragistics.Web.UI.AJAXResponseEventArgs',$IG.EventArgs);$IG.HashTree=function(){$IG.HashTree.initializeBase(this);this._tree={};};$IG.HashTree.prototype={add:function(row){if(!row)return;var dataKey=row.get_dataKey();var currentHash=this._tree;for(var i=0;i<dataKey.length;i++){var stepDataKey=dataKey[i];if(i<dataKey.length-1){if(currentHash[stepDataKey]==null){currentHash=currentHash[stepDataKey]={};}else{currentHash=currentHash[stepDataKey];}}else{if(currentHash[stepDataKey]==null){currentHash[stepDataKey]=row;}else{throw "Rows must have unique DataKeys. This key appears more than once: "+dataKey;}}}},remove:function(row){if(!row)return;var dataKey=row.get_dataKey();var currentHash=this._tree;for(var i=0;i<dataKey.length;i++){var stepDataKey=dataKey[i];if(i<dataKey.length-1){if(this._tree[stepDataKey]==null){return 1;}else{currentHash=this._tree[stepDataKey];}}else{if(currentHash[stepDataKey]!=null){var row=currentHash[stepDataKey];if(row&&row.get_element&&row.get_element().type=="row"){currentHash[stepDataKey]=null;}return 0;}else{return-1;}}}return-1;},contains:function(row){return this.findByKey(row.get_dataKey())!=null;},findByKey:function(dataKey){if(!dataKey)return;var currentHash=this._tree;for(var i=0;i<dataKey.length;i++){var stepDataKey=dataKey[i];if(i<dataKey.length-1){if(this._tree[stepDataKey]==null){return null;}else{currentHash=this._tree[stepDataKey];}}else{var row=currentHash[stepDataKey];if(!row||!row.get_element||!row.get_element().type=="row"){row=null;}return row;}}return null;}};$IG.HashTree.registerClass('Infragistics.Web.UI.HashTree',$IG.ObjectBase); 
if(typeof(Sys)!=='undefined')Sys.Application.notifyScriptLoaded();