1
0
Fork 0
mirror of https://github.com/koalyptus/TableFilter.git synced 2024-06-20 22:55:27 +02:00
TableFilter/dist/TF_Modules/tf_ezEditTable.js

1 line
6.4 KiB
JavaScript
Raw Normal View History

2015-03-06 09:49:30 +01:00
TF.prototype.SetEditable=function(){if(!this.selectable&&!this.editable)return;var e=this.fObj;this.ezEditTableConfig=e.ezEditTable_config!=undefined?e.ezEditTable_config:{},this.ezEditTableConfig.name=this.ezEditTableConfig["name"]!=undefined?e.ezEditTable_config.name:"ezedittable",this.ezEditTableConfig.src=this.ezEditTableConfig["src"]!=undefined?e.ezEditTable_config.src:this.basePath+"ezEditTable/ezEditTable.js",this.ezEditTableConfig.loadStylesheet=this.ezEditTableConfig["loadStylesheet"]!=undefined?e.ezEditTable_config.loadStylesheet:!1,this.ezEditTableConfig.stylesheet=this.ezEditTableConfig["stylesheet"]!=undefined?e.ezEditTable_config.stylesheet:this.basePath+"ezEditTable/ezEditTable.css",this.ezEditTableConfig.stylesheetName=this.ezEditTableConfig["stylesheetName"]!=undefined?e.ezEditTable_config.stylesheetName:"ezEditTableCss",this.ezEditTableConfig.err='Failed to instantiate EditTable object.\n"ezEditTable" module may not be available.',tf_IsImported(this.ezEditTableConfig.src)?this._EnableEditable():this.IncludeFile(this.ezEditTableConfig.name,this.ezEditTableConfig.src,this._EnableEditable),this.ezEditTableConfig.loadStylesheet&&!tf_IsImported(this.ezEditTableConfig.stylesheet,"link")&&this.IncludeFile(this.ezEditTableConfig.stylesheetName,this.ezEditTableConfig.stylesheet,null,"link")},TF.prototype.RemoveEditable=function(){this.ezEditTable&&(this.selectable&&(this.ezEditTable.Selection.ClearSelections(),this.ezEditTable.Selection.Remove()),this.editable&&this.ezEditTable.Editable.Remove())},TF.prototype.ResetEditable=function(){this.ezEditTable&&(this.selectable&&this.ezEditTable.Selection.Set(),this.editable&&this.ezEditTable.Editable.Set())},TF.prototype._EnableEditable=function(e){e||(e=this);var t,n=tf_Tag(e.tbl,"thead");n.length>0&&!e.ezEditTableConfig.startRow?t=undefined:t=e.ezEditTableConfig.startRow||e.refRow,e.ezEditTableConfig.scroll_into_view=e.ezEditTableConfig.scroll_into_view!=undefined?e.ezEditTableConfig.scroll_into_view:!0,e.ezEditTableConfig.base_path=e.ezEditTableConfig.base_path!=undefined?e.ezEditTableConfig.base_path:e.basePath+"ezEditTable/",e.ezEditTableConfig.editable=e.editable,e.ezEditTableConfig.selection=e.selectable,e.selectable&&(e.ezEditTableConfig.default_selection=e.ezEditTableConfig.default_selection!=undefined?e.ezEditTableConfig.default_selection:"row"),e.ezEditTableConfig.active_cell_css=e.ezEditTableConfig.active_cell_css!=undefined?e.ezEditTableConfig.active_cell_css:"ezETSelectedCell",e._lastValidRowIndex=0,e._lastRowIndex=0;if(e.selectable){function r(t,n,r){function h(r){if(t.defaultSelection=="row")t.Selection.SelectRowByIndex(r);else{t.ClearSelections();var i=n.cellIndex,o=e.tbl.rows[r];t.defaultSelection=="both"&&t.Selection.SelectRowByIndex(r),o&&t.Selection.SelectCell(o.cells[i])}if(e.validRowsIndex.length!=e.GetRowsNb()){var o=e.tbl.rows[r];o&&o.scrollIntoView(!1),s&&(s.cellIndex==e.GetCellsNb()-1&&e.gridLayout?e.tblCont.scrollLeft=1e8:s.cellIndex==0&&e.gridLayout?e.tblCont.scrollLeft=0:s.scrollIntoView(!1))}}if(!e.validRowsIndex)return;var i=t.defaultSelection!="row"?n.parentNode:n,s=n.nodeName=="TD"?n:null,o=r!=undefined?t.Event.GetKey(r):0,u=e.validRowsIndex.tf_Has(i.rowIndex),a,f=o==34||o==33?e.pagingLength||t.nbRowsPerPage:1;if(!u){if(i.rowIndex>e._lastRowIndex)if(i.rowIndex>=e.validRowsIndex[e.validRowsIndex.length-1])a=e.validRowsIndex[e.validRowsIndex.length-1];else{var l=e._lastValidRowIndex+f;l>e.validRowsIndex.length-1?a=e.validRowsIndex[e.validRowsIndex.length-1]:a=e.validRowsIndex[l]}else if(i.rowIndex<e.validRowsIndex[0])a=e.validRowsIndex[0];else{var c=e.validRowsIndex[e._lastValidRowIndex-f];a=c?c:e.validRowsIndex[0]}e._lastRowIndex=i.rowIndex,h(a)}else o!=34&&o!=33?(e._lastValidRowIndex=e.validRowsIndex.tf_IndexByValue(i.rowIndex),e._lastRowIndex=i.rowIndex):(o==34?e._lastValidRowIndex+f<=e.validRowsIndex.length-1?a=e.validRowsIndex[e._lastValidRowIndex+f]:a=e.validRowsIndex[e.validRowsIndex.length-1]:e._lastValidRowIndex-f<e.validRowsIndex[0]?a=e.validRowsIndex[0]:a=e.validRowsIndex[e._lastValidRowIndex-f],e._lastRowIndex=a,e._lastValidR