/*
-
Aloha Editor
-
Author & Copyright © 2010 Gentics Software GmbH
-
aloha-sales@gentics.com
-
Licensed unter the terms of www.aloha-editor.com/license.html
*/ GENTICS.Aloha.TablePlugin=new GENTICS.Aloha.Plugin(“com.gentics.aloha.plugins.Table”);GENTICS.Aloha.TablePlugin.createLayer=undefined;GENTICS.Aloha.TablePlugin.languages=;GENTICS.Aloha.TablePlugin.config=;GENTICS.Aloha.TablePlugin.TableRegistry=new Array();GENTICS.Aloha.TablePlugin.activeTable=undefined;GENTICS.Aloha.TablePlugin.parameters={className:“GENTICS_Aloha_Table”,classSelectionRow:“GENTICS_Aloha_Table_selectColumn”,classSelectionColumn:“GENTICS_Aloha_Table_selectRow”,classLeftUpperCorner:“GENTICS_Aloha_Table_leftUpperCorner”,classTableWrapper:“GENTICS_Aloha_Table_wrapper”,classCellSelected:“GENTICS_Aloha_Cell_selected”,waiRed:“GENTICS_WAI_RED”,waiGreen:“GENTICS_WAI_GREEN”,selectionArea:10};GENTICS.Aloha.TablePlugin.init=function(){this.createLayer=new GENTICS.Aloha.Table.CreateLayer();var that=this;GENTICS.Aloha.EventRegistry.subscribe(GENTICS.Aloha,“editableCreated”,function(event,editable){editable.obj.bind(“mousedown”,function(jqEvent){GENTICS.Aloha.TablePlugin.setFocusedTable(undefined)});editable.obj.find(“table”).each(function(){if(that.isEditableTable(this)){var table=new GENTICS.Aloha.Table(this);table.parentEditable=editable;GENTICS.Aloha.TablePlugin.TableRegistry.push(table)}})});this.initTableButtons();GENTICS.Aloha.EventRegistry.subscribe(GENTICS.Aloha,“selectionChanged”,function(event,rangeObject){if(GENTICS.Aloha.activeEditable){var config=that.getEditableConfig(GENTICS.Aloha.activeEditable.obj);if(jQuery.inArray(“table”,config)!=-1&&GENTICS.Aloha.Selection.mayInsertTag(“table”)){that.createTableButton.show()}else{that.createTableButton.hide()}GENTICS.Aloha.TableHelper.unselectCells();var table=rangeObject.findMarkup(function(){return this.nodeName.toLowerCase()==“table”},GENTICS.Aloha.activeEditable.obj);if(table){GENTICS.Aloha.FloatingMenu.setScope(that.getUID(GENTICS.Aloha.TableHelper.selectionType))}else{if(that.activeTable){that.activeTable.focusOut()}}GENTICS.Aloha.FloatingMenu.doLayout()}});GENTICS.Aloha.EventRegistry.subscribe(GENTICS.Aloha,“editableActivated”,function(event,props){props.editable.obj.find(“table”).each(function(){var tr=GENTICS.Aloha.TablePlugin.TableRegistry;for(var i=0;i<tr.length;i++){if(tr.obj.attr(“id”)==jQuery(this).attr(“id”)){tr.activate();return true}}if(that.isEditableTable(this)){var table=new GENTICS.Aloha.Table(this);table.parentEditable=props.editable;table.activate();GENTICS.Aloha.TablePlugin.TableRegistry.push(table)}})});GENTICS.Aloha.EventRegistry.subscribe(GENTICS.Aloha,“editableDeactivated”,function(event,properties){GENTICS.Aloha.TablePlugin.setFocusedTable(undefined);GENTICS.Aloha.TableHelper.unselectCells();var tr=GENTICS.Aloha.TablePlugin.TableRegistry;for(var i=0;i<tr.length;i++){tr.deactivate()}})};GENTICS.Aloha.TablePlugin.isEditableTable=function(table){var parent=jQuery(table.parentNode);if(parent.contentEditable()==“true”){return true}else{return false}};GENTICS.Aloha.TablePlugin.initTableButtons=function(){var that=this;GENTICS.Aloha.FloatingMenu.createScope(this.getUID(“row”),“GENTICS.Aloha.global”);GENTICS.Aloha.FloatingMenu.createScope(this.getUID(“column”),“GENTICS.Aloha.global”);GENTICS.Aloha.FloatingMenu.createScope(this.getUID(“cell”),“GENTICS.Aloha.continuoustext”);this.createTableButton=new GENTICS.Aloha.ui.Button({iconClass:“GENTICS_button GENTICS_button_table”,size:“small”,tooltip:this.i18n(“button.createtable.tooltip”),onclick:function(element,event){GENTICS.Aloha.TablePlugin.createDialog(element.btnEl.dom)}});GENTICS.Aloha.FloatingMenu.addButton(“GENTICS.Aloha.continuoustext”,this.createTableButton,GENTICS.Aloha.i18n(GENTICS.Aloha,“floatingmenu.tab.insert”),1);GENTICS.Aloha.FloatingMenu.addButton(this.getUID(“column”),new GENTICS.Aloha.ui.Button({iconClass:“GENTICS_button GENTICS_button_addColumnLeft”,size:“small”,tooltip:this.i18n(“button.addcolleft.tooltip”),onclick:function(){if(that.activeTable){that.activeTable.addColumnsLeft()}}}),GENTICS.Aloha.i18n(this,“floatingmenu.tab.table”),1);GENTICS.Aloha.FloatingMenu.addButton(this.getUID(“column”),new GENTICS.Aloha.ui.Button({iconClass:“GENTICS_button GENTICS_button_addColumnRight”,size:“small”,tooltip:this.i18n(“button.addcolright.tooltip”),onclick:function(){if(that.activeTable){that.activeTable.addColumnsRight()}}}),GENTICS.Aloha.i18n(this,“floatingmenu.tab.table”),1);GENTICS.Aloha.FloatingMenu.addButton(this.getUID(“column”),new GENTICS.Aloha.ui.Button({iconClass:“GENTICS_button GENTICS_button_deleteColumns”,size:“small”,tooltip:this.i18n(“button.delcols.tooltip”),onclick:function(){if(that.activeTable){var aTable=that.activeTable;GENTICS.Aloha.showMessage(new GENTICS.Aloha.Message({title:GENTICS.Aloha.i18n(that,“Table”),text:GENTICS.Aloha.i18n(that,“deletecolumns.confirm”),type:GENTICS.Aloha.Message.Type.CONFIRM,callback:function(sel){if(sel==“yes”){aTable.deleteColumns()}}}))}}}),GENTICS.Aloha.i18n(this,“floatingmenu.tab.table”),1);GENTICS.Aloha.FloatingMenu.addButton(this.getUID(“row”),new GENTICS.Aloha.ui.Button({iconClass:“GENTICS_button GENTICS_button_addRowBefore”,size:“small”,tooltip:this.i18n(“button.addrowbefore.tooltip”),onclick:function(){if(that.activeTable){that.activeTable.addRowsBefore(true)}}}),GENTICS.Aloha.i18n(this,“floatingmenu.tab.table”),1);GENTICS.Aloha.FloatingMenu.addButton(this.getUID(“row”),new GENTICS.Aloha.ui.Button({iconClass:“GENTICS_button GENTICS_button_addRowAfter”,size:“small”,tooltip:this.i18n(“button.addrowafter.tooltip”),onclick:function(){if(that.activeTable){that.activeTable.addRowsAfter(true)}}}),GENTICS.Aloha.i18n(this,“floatingmenu.tab.table”),1);GENTICS.Aloha.FloatingMenu.addButton(this.getUID(“row”),new GENTICS.Aloha.ui.Button({iconClass:“GENTICS_button GENTICS_button_deleteRows”,size:“small”,tooltip:this.i18n(“button.delrows.tooltip”),onclick:function(){if(that.activeTable){var aTable=that.activeTable;GENTICS.Aloha.showMessage(new GENTICS.Aloha.Message({title:GENTICS.Aloha.i18n(that,“Table”),text:GENTICS.Aloha.i18n(that,“deleterows.confirm”),type:GENTICS.Aloha.Message.Type.CONFIRM,callback:function(sel){if(sel==“yes”){aTable.deleteRows()}}}))}}}),GENTICS.Aloha.i18n(this,“floatingmenu.tab.table”),1);this.captionButton=new GENTICS.Aloha.ui.Button({iconClass:“GENTICS_button GENTICS_button_table_caption”,size:“small”,tooltip:this.i18n(“button.caption.tooltip”),toggle:true,onclick:function(){if(that.activeTable){if(that.activeTable.obj.children(“caption”).is(“caption”)){that.activeTable.obj.children(“caption”).remove()}else{var captionText=that.i18n(“empty.caption”);var c=jQuery(“<caption></caption>”);that.activeTable.obj.append©;that.makeCaptionEditable(c,captionText);var cDiv=c.find(“div”).eq(0);var captionContent=cDiv.contents().eq(0);if(captionContent.length>0){var newRange=new GENTICS.Utils.RangeObject();newRange.startContainer=newRange.endContainer=captionContent.get(0);newRange.startOffset=0;newRange.endOffset=captionContent.text().length;that.activeTable.obj.find(“div.GENTICS_Table_Cell_editable”).blur();cDiv.focus();newRange.select();GENTICS.Aloha.Selection.updateSelection()}}}}});GENTICS.Aloha.FloatingMenu.addButton(this.getUID(“cell”),this.captionButton,GENTICS.Aloha.i18n(this,“floatingmenu.tab.table”),1);this.summary=new GENTICS.Aloha.ui.AttributeField({width:350});this.summary.addListener(“keyup”,function(obj,event){that.activeTable.checkWai()});GENTICS.Aloha.FloatingMenu.addButton(this.getUID(“cell”),this.summary,GENTICS.Aloha.i18n(this,“floatingmenu.tab.table”),1)};GENTICS.Aloha.TablePlugin.makeCaptionEditable=function(caption,captionText){var that=this;var cSpan=caption.children(“div”).eq(0);if(cSpan.length==0){cSpan=jQuery(“<div></div>”);if(caption.contents().length>0){caption.contents().wrap(cSpan)}else{if(captionText){cSpan.text(captionText)}caption.append(cSpan)}}cSpan.contentEditable(true);cSpan.unbind(“mousedown”);cSpan.bind(“mousedown”,function(jqEvent){cSpan.focus();jqEvent.preventDefault();jqEvent.stopPropagation();return false})};GENTICS.Aloha.TablePlugin.createDialog=function(callingElement){this.createLayer.set(“target”,callingElement);this.createLayer.show()};GENTICS.Aloha.TablePlugin.createTable=function(cols,rows){if(GENTICS.Aloha.activeEditable!=null&&typeof GENTICS.Aloha.activeEditable.obj!=“undefined”){var table=document.createElement(“table”);var tableId=table.id=GENTICS.Aloha.TableHelper.getNewTableID();var tbody=document.createElement(“tbody”);for(var i=0;i<rows;i++){var tr=document.createElement(“tr”);for(var j=0;j<cols;j++){var text=document.createTextNode(“u00a0”);var td=document.createElement(“td”);td.appendChild(text);tr.appendChild(td)}tbody.appendChild(tr)}table.appendChild(tbody);GENTICS.Utils.Dom.insertIntoDOM(jQuery(table),GENTICS.Aloha.Selection.getRangeObject(),jQuery(GENTICS.Aloha.activeEditable.obj));var tableReloadedFromDOM=document.getElementById(tableId);var tableObj=new GENTICS.Aloha.Table(tableReloadedFromDOM);tableObj.parentEditable=GENTICS.Aloha.activeEditable;tableObj.activate();if(jQuery.browser.msie){window.setTimeout(function(){tableObj.cells.wrapper.get(0).focus()},20)}else{tableObj.cells.wrapper.get(0).focus()}GENTICS.Aloha.TablePlugin.TableRegistry.push(tableObj)}else{this.error(“There is no active Editable where the table can be inserted!”)}};GENTICS.Aloha.TablePlugin.setFocusedTable=function(focusTable){var that=this;for(var i=0;i<GENTICS.Aloha.TablePlugin.TableRegistry.length;i++){GENTICS.Aloha.TablePlugin.TableRegistry.hasFocus=false}if(typeof focusTable!=“undefined”){this.summary.setTargetObject(focusTable.obj,“summary”);if(focusTable.obj.children(“caption”).is(“caption”)){that.captionButton.setPressed(true);var c=focusTable.obj.children(“caption”);that.makeCaptionEditable©}focusTable.hasFocus=true}GENTICS.Aloha.TablePlugin.activeTable=focusTable};GENTICS.Aloha.TablePlugin.error=function(msg){GENTICS.Aloha.Log.error(this,msg)};GENTICS.Aloha.TablePlugin.debug=function(msg){GENTICS.Aloha.Log.debug(this,msg)};GENTICS.Aloha.TablePlugin.info=function(msg){GENTICS.Aloha.Log.info(this,msg)};GENTICS.Aloha.TablePlugin.log=function(msg){GENTICS.Aloha.log(“log”,this,msg)};GENTICS.Aloha.TablePlugin.get=function(property){if(this.config){return this.config}if(this.parameters){return this.parameters}return undefined};GENTICS.Aloha.TablePlugin.set=function(key,value){if(this.config){this.config=value}else{this.parameters=value}};GENTICS.Aloha.TablePlugin.makeClean=function(obj){obj.find(“table”).each(function(){var table=new GENTICS.Aloha.Table(this);table.deactivate()})};GENTICS.Aloha.TablePlugin.toString=function(){return this.prefix};GENTICS.Aloha.Table=function(table){this.obj=jQuery(table);if(!this.obj.attr(“id”)){this.obj.attr(“id”,GENTICS.Utils.guid())}var rows=this.obj.find(“tr”);var firstRow=jQuery(rows.get(0));this.numCols=firstRow.children(“td, th”).length;this.numRows=rows.length;this.cells=new Array();var rows=this.obj.find(“tr”);for(var i=0;i<rows.length;i++){var row=jQuery(rows);var cols=row.children();for(var j=0;j<cols.length;j++){var col=cols;var Cell=new GENTICS.Aloha.Table.Cell(col,this);this.cells.push(Cell)}}};GENTICS.Aloha.Table.prototype.obj=undefined;GENTICS.Aloha.Table.prototype.tableWrapper=undefined;GENTICS.Aloha.Table.prototype.cells=undefined;GENTICS.Aloha.Table.prototype.numRows=undefined;GENTICS.Aloha.Table.prototype.numCols=undefined;GENTICS.Aloha.Table.prototype.isActive=false;GENTICS.Aloha.Table.prototype.hasFocus=false;GENTICS.Aloha.Table.prototype.parentEditable=undefined;GENTICS.Aloha.Table.prototype.mousedown=false;GENTICS.Aloha.Table.prototype.clickedColumnId=-1;GENTICS.Aloha.Table.prototype.clickedRowId=-1;GENTICS.Aloha.Table.prototype.columnsToSelect=new Array();GENTICS.Aloha.Table.prototype.rowsToSelect=new Array();GENTICS.Aloha.Table.prototype.fmPluginId=undefined;GENTICS.Aloha.Table.prototype.get=function(property){return GENTICS.Aloha.TablePlugin.get(property)};GENTICS.Aloha.Table.prototype.set=function(key,value){GENTICS.Aloha.TablePlugin.set(key,value)};GENTICS.Aloha.Table.prototype.activate=function(){if(this.isActive){return}var that=this;this.obj.addClass(this.get(“className”));this.obj.contentEditable(false);if(this.obj.attr(“id”)==“”){this.obj.attr(“id”,GENTICS.Aloha.TableHelper.getNewTableID())}GENTICS.Aloha.TableHelper.selectionType=undefined;this.obj.bind(“keydown”,function(jqEvent){if(!jqEvent.ctrlKey&&!jqEvent.shiftKey){if(GENTICS.Aloha.TableHelper.selectedCells.length>0&&GENTICS.Aloha.TableHelper.selectedCells.length>0){GENTICS.Aloha.TableHelper.selectedCells[0].firstChild.focus()}}});this.obj.bind(“mousedown”,function(jqEvent){if(!that.hasFocus){that.focus()}jqEvent.stopPropagation();jqEvent.preventDefault();return false});var tableWrapper=jQuery(‘<div class=“’+this.get(”classTableWrapper“)+‘”></div>’);tableWrapper.contentEditable(false);this.obj.wrap(tableWrapper);var htmlTableWrapper=this.obj.parents(“.”+this.get(“classTableWrapper”));htmlTableWrapper.get(0).onresizestart=function(e){return false};htmlTableWrapper.get(0).oncontrolselect=function(e){return false};this.tableWrapper=this.obj.parents(“.”+this.get(“classTableWrapper”)).get(0);jQuery(this.cells).each(function(){this.activate()});this.attachSelectionColumn();this.attachSelectionRow();this.attachLastCellEvents();this.makeCaptionEditable();this.checkWai();this.isActive=true;GENTICS.Aloha.EventRegistry.trigger(new GENTICS.Aloha.Event(“tableActivated”,GENTICS.Aloha,))};GENTICS.Aloha.Table.prototype.makeCaptionEditable=function(){var caption=this.obj.find(“caption”).eq(0);if(caption){GENTICS.Aloha.TablePlugin.makeCaptionEditable(caption)}};GENTICS.Aloha.Table.prototype.checkWai=function(){var w=this.wai;w.removeClass(this.get(“waiGreen”));w.removeClass(this.get(“waiRed”));if(this.obj.summary.length>5){w.addClass(this.get(“waiGreen”))}else{w.addClass(this.get(“waiRed”))}};GENTICS.Aloha.Table.prototype.attachSelectionColumn=function(){var emptyCell=jQuery(“<td>”);emptyCell.html(“u00a0”);var that=this;var rows=this.obj.context.rows;for(var i=0;i<rows.length;i++){var rowObj=jQuery(rows);var columnToInsert=emptyCell.clone();columnToInsert.addClass(this.get(“classSelectionColumn”));columnToInsert.css(“width”,this.get(“selectionArea”)+“px”);rowObj.find(“td:first”).before(columnToInsert);var rowIndex=i+1;this.attachRowSelectionEventsToCell(columnToInsert)}};GENTICS.Aloha.Table.prototype.attachRowSelectionEventsToCell=function(cell){var that=this;cell.unbind(“mousedown”);cell.unbind(“mouseover”);cell.get(0).onselectstart=function(){return false};cell.bind(“mousedown”,function(e){that.mousedown=true;return that.rowSelectionMouseDown(e)});cell.bind(“mouseover”,function(e){if(that.mousedown){return that.rowSelectionMouseOver(e)}})};GENTICS.Aloha.Table.prototype.rowSelectionMouseDown=function(jqEvent){this.focus();if(GENTICS.Aloha.TableHelper.selectedCells.length==0){this.rowsToSelect=new Array()}this.clickedRowId=jqEvent.currentTarget.parentNode.rowIndex;if(jqEvent.metaKey){var arrayIndex=jQuery.inArray(this.clickedRowId,this.rowsToSelect);if(arrayIndex>=0){this.rowsToSelect.splice(arrayIndex,1)}else{this.rowsToSelect.push(this.clickedRowId)}}else{if(jqEvent.shiftKey){this.rowsToSelect.sort(function(a,b){return a-b});var start=this.rowsToSelect;var end=this.clickedRowId;if(start>end){start=end;end=this.rowsToSelect}this.rowsToSelect=new Array();for(var i=start;i<=end;i++){this.rowsToSelect.push(i)}}else{this.rowsToSelect=}}this.selectRows();jqEvent.preventDefault();jqEvent.stopPropagation();return false};GENTICS.Aloha.Table.prototype.rowSelectionMouseOver=function(jqEvent){var rowIndex=jqEvent.currentTarget.parentNode.rowIndex;if(this.mousedown&&this.clickedRowId>=0){var indexInArray=jQuery.inArray(rowIndex,this.rowsToSelect);var start=(rowIndex<this.clickedRowId)?rowIndex:this.clickedRowId;var end=(rowIndex<this.clickedRowId)?this.clickedRowId:rowIndex;this.rowsToSelect=new Array();for(var i=start;i<=end;i++){this.rowsToSelect.push(i)}this.selectRows();jqEvent.preventDefault();jqEvent.stopPropagation();return false}};GENTICS.Aloha.Table.prototype.attachSelectionRow=function(){var that=this;var emptyCell=jQuery(“<td>”);emptyCell.html(“u00a0”);var numColumns=this.obj.context.rows.cells.length;var selectionRow=jQuery(“<tr>”);selectionRow.addClass(this.get(“classSelectionRow”));selectionRow.css(“height”,this.get(“selectionArea”)+“px”);for(var i=0;i<numColumns;i++){var columnToInsert=emptyCell.clone();if(i>0){this.attachColumnSelectEventsToCell(columnToInsert)}else{var columnToInsert=jQuery(“<td>”).clone();columnToInsert.addClass(this.get(“classLeftUpperCorner”));this.wai=jQuery(“<div/>”);this.wai.width(25);this.wai.height(12);this.wai.click(function(e){that.focus();GENTICS.Aloha.FloatingMenu.userActivatedTab=GENTICS.Aloha.TablePlugin.i18n(“floatingmenu.tab.table”);GENTICS.Aloha.FloatingMenu.doLayout();GENTICS.Aloha.TablePlugin.summary.focus();e.stopPropagation();e.preventDefault();return false});columnToInsert.append(this.wai)}selectionRow.append(columnToInsert)}jQuery(document).bind(“mouseup”,function(e){that.mousedown=false;that.clickedColumnId=-1;that.clickedRowId=-1});this.obj.find(“tr:first”).before(selectionRow)};GENTICS.Aloha.Table.prototype.attachColumnSelectEventsToCell=function(cell){var that=this;cell.unbind(“mousedown”);cell.unbind(“mouseover”);cell.get(0).onselectstart=function(){return false};cell.bind(“mousedown”,function(e){that.mousedown=true;that.columnSelectionMouseDown(e)});cell.bind(“mouseover”,function(e){if(that.mousedown){that.columnSelectionMouseOver(e)}})};GENTICS.Aloha.Table.prototype.columnSelectionMouseDown=function(jqEvent){this.focus();if(GENTICS.Aloha.TableHelper.selectedCells.length==0){this.columnsToSelect=new Array()}this.clickedColumnId=jqEvent.currentTarget.cellIndex;if(jqEvent.metaKey){var arrayIndex=jQuery.inArray(this.clickedColumnId,this.columnsToSelect);if(arrayIndex>=0){this.columnsToSelect.splice(arrayIndex,1)}else{this.columnsToSelect.push(this.clickedColumnId)}}else{if(jqEvent.shiftKey){this.columnsToSelect.sort(function(a,b){return a-b});var start=this.columnsToSelect;var end=this.clickedColumnId;if(start>end){start=end;end=this.columnsToSelect}this.columnsToSelect=new Array();for(var i=start;i<=end;i++){this.columnsToSelect.push(i)}}else{this.columnsToSelect=}}this.selectColumns();jqEvent.preventDefault();jqEvent.stopPropagation();return false};GENTICS.Aloha.Table.prototype.columnSelectionMouseOver=function(jqEvent){var colIndex=jqEvent.currentTarget.cellIndex;if(this.mousedown&&this.clickedColumnId>0){var indexInArray=jQuery.inArray(colIndex,this.columnsToSelect);var start=(colIndex<this.clickedColumnId)?colIndex:this.clickedColumnId;var end=(colIndex<this.clickedColumnId)?this.clickedColumnId:colIndex;this.columnsToSelect=new Array();for(var i=start;i<=end;i++){this.columnsToSelect.push(i)}this.selectColumns()}};GENTICS.Aloha.Table.prototype.releaseLastCellEvents=function(){this.obj.find(“tr:last td:last”).unbind()};GENTICS.Aloha.Table.prototype.attachLastCellEvents=function(){var that=this;this.obj.find(“tr:last td:last”).bind(“keydown”,function(jqEvent){that.lastCellKeyDown(jqEvent)})};GENTICS.Aloha.Table.prototype.lastCellKeyDown=function(jqEvent){var KEYCODE_TAB=9;if(KEYCODE_TAB==jqEvent.keyCode&&!jqEvent.altKey&&!jqEvent.shiftKey&&!jqEvent.ctrlKey){this.addRowsAfter(false);jqEvent.stopPropagation();if(jQuery.browser.msie){this.obj.find(“tr:last td:nth-child(1) div.GENTICS_Table_Cell_editable”).get(0).focus();return false}}};GENTICS.Aloha.Table.prototype.deleteRows=function(){var rowIDs=new Array();var deleteTable=false;if(GENTICS.Aloha.TableHelper.selectedCells.length>0){for(var i=0;i<GENTICS.Aloha.TableHelper.selectedCells.length;i++){rowIDs.push(GENTICS.Aloha.TableHelper.selectedCells[0].parentNode.rowIndex)}}else{if(typeof GENTICS.Aloha.Table.Cell.lastActiveCell!=“undefined”){rowIDs.push(GENTICS.Aloha.Table.Cell.lastActiveCell.obj.context.parentNode.rowIndex)}}if(rowIDs.length==this.numRows){deleteTable=true}if(deleteTable){var that=this;GENTICS.Aloha.showMessage(new GENTICS.Aloha.Message({title:GENTICS.Aloha.i18n(GENTICS.Aloha.TablePlugin,“Table”),text:GENTICS.Aloha.i18n(GENTICS.Aloha.TablePlugin,“deletetable.confirm”),type:GENTICS.Aloha.Message.Type.CONFIRM,callback:function(sel){if(sel==“yes”){that.deleteTable()}}}))}else{rowIDs.sort(function(a,b){return a-b});var focusRowId=rowIDs;if(focusRowId>(this.numRows-rowIDs.length)){focusRowId–}this.releaseLastCellEvents();var rows=this.obj.find(“tr”);var rows2delete=new Array();for(var i=0;i<rowIDs.length;i++){rows2delete.push(jQuery(rows[rowIDs]))}for(var i=0;i<rows2delete.length;i++){var cols=rows2delete.children(“td”).toArray();for(var j=0;j<cols.length;j++){for(var m=0;m<this.cells.length;m++){if(cols==this.cells.obj.get(0)){this.cells.splice(m,1);m=this.cells.length}}}}for(var i=0;i<rows2delete.length;i++){rows2delete.remove()}this.numRows-=rows2delete.length;if(jQuery.browser.msie){setTimeout(this.obj.find(“tr:nth-child(”+(focusRowId+1)+“) td:nth-child(2) div.GENTICS_Table_Cell_editable”).get(0).focus,5)}else{this.obj.find(“tr:nth-child(”+(focusRowId+1)+“) td:nth-child(2) div.GENTICS_Table_Cell_editable”).get(0).focus()}this.attachLastCellEvents();GENTICS.Aloha.TableHelper.unselectCells()}};GENTICS.Aloha.Table.prototype.deleteColumns=function(){var colIDs=new Array();var deleteTable=false;if(GENTICS.Aloha.TableHelper.selectedCells.length>0){for(var i=0;i