wdt.excel.min.js 22.4 KB
function wdtStripTags(t,e){return e=(((e||"")+"").toLowerCase().match(/<[a-z][a-z0-9]*>/g)||[]).join(""),t.replace(/<!--[\s\S]*?-->|<\?(?:php)?[\s\S]*?\?>/gi,"").replace(/<\/?([a-z][a-z0-9]*)\b[^>]*>/gi,function(t,i){return e.indexOf("<"+i.toLowerCase()+">")>-1?t:""})}!function(t,e){var i=t.editors.BaseEditor.prototype.beginEditing;t.editors.BaseEditor.prototype.beginEditing=function(t,e){var o=this.instance.getSettings();if(o.wpDataTablesExcelPlugin&&void 0===t&&!o.readOnly){var r=o.idColumnKey,n=this.instance.getDataAtRowProp(this.row,r),s=this.cellProperties.defaultValue;!n&&s&&(t=s)}i.apply(this,arguments)};var o,r,n,s,a,d,l,p=t.editors.BaseEditor.prototype.cancelChanges;function h(i,o,r,n,s,a,d){if(t.TextRenderer.apply(this,arguments),!a)return o;var l=a.split("||"),p=l[0];if(0==p.length)return o;var h=l.length>1?l[1]:p,c="wdt_link",m="";i.getSettings().readOnly||(c+="_editable",m='title="ctrl+click to open hyperlink:'+p+'"'),e(o).html('<a class="'+c+'" href="'+p+'" target="_blank" '+m+">"+h+"</a>")}function c(i,o,r,n,s,a,d){if(t.TextRenderer.apply(this,arguments),!a)return o;var l=a.split("||"),p=l[0];if(0==p.length)return o;var h=l.length>1?l[1]:p,c="wdt_email",m="";i.getSettings().readOnly||(c+="_editable",m='title="ctrl+click to send email to:'+p+'"'),e(o).html('<a class="'+c+'" href="mailto:'+p+'" '+m+">"+h+"</a>")}function m(e,i,o,r,n,s,a){if(t.TextRenderer.apply(this,arguments),!s)return i;var d=s.split("||"),l=d[0];if(0==l.length)return i;var p=new URI(l),h=p.query(!0),c=p.hasQuery("img_width")?h.img_width:0,m=p.hasQuery("img_height")?h.img_height:0,u="";c>0&&(u+="width:"+c+"px; "),m>0&&(u+="height:"+m+"px;"),u.length>0&&(u='style="'+u+'"');var y="";if(d.length>1&&""!=d[1]){var E=e.getSettings(),f="wdt_link",w="",g=new URI(d[1]);g.removeQuery(["img_width","img_height"]);var T=g.toString();E.readOnly||(f+="_editable",w='title="ctrl+click to open hyperlink:'+T+'"'),y='<a class="'+f+'" href="'+T+'" target="_blank" '+w+">"+('<img class="wpdt-thumb" src="'+l+'" '+u+" />")+"</a>"}else y='<img class="wpdt-thumb" src="'+l+'" '+u+" />";i.innerHTML=y}function u(e,i,o,r,n,s,a){var d=t.helper.stringify(s);return d=wdtStripTags(d,"<br/><br><b><strong><h1><h2><h3><a><i><em><ol><ul><li><img><blockquote><div><hr><p><span><select><option><sup><sub>"),i.innerHTML=d,t.SearchCellDecorator.apply(this,arguments),i}function y(i,o,r,n,s,a,d){if(!a||"0000-00-00"==a)return a="",e(o).html(a),t.AutocompleteRenderer(i,o,r,n,s,a,d),o;var l=i.getSettings();l.dataSourceDateFormat!=l.displayDateFormat&&(a=moment(a,l.dataSourceDateFormat).format(l.displayDateFormat)),t.AutocompleteRenderer(i,o,r,n,s,a,d)}function E(i,o,r,n,s,a,d){if(!a||"0000-00-00 00:00:00"==a)return a="",e(o).html(a),t.AutocompleteRenderer(i,o,r,n,s,a,d),o;var l=i.getSettings();a=l.dataSourceDateFormat!=l.displayDateFormat?moment(a,l.dataSourceDateFormat+" HH:mm:ss").format(l.displayDateFormat+" "+l.momentTimeFormat):moment(a,l.dataSourceDateFormat+" HH:mm:ss").format(l.dataSourceDateFormat+" "+l.momentTimeFormat),t.AutocompleteRenderer(i,o,r,n,s,a,d)}function f(i,o,r,n,s,a,d){if(!a)return a="",e(o).html(a),t.AutocompleteRenderer(i,o,r,n,s,a,d),o;var l=i.getSettings();a=moment(a,"HH:mm:ss").format(l.momentTimeFormat),t.AutocompleteRenderer(i,o,r,n,s,a,d)}t.editors.BaseEditor.prototype.cancelChanges=function(){var t=this.instance.getCellMeta(this.row,this.col);if(t.wpDataTablesExcelPlugin){var i=e(document.activeElement).closest("#"+this.instance.rootElement.id+" > div.invalid_editor_value").removeClass("invalid_editor_value");i.length>0&&i.next("div.tooltip:visible").length&&i.tooltip("destroy");var o=this.instance.getCellValidator(this.row,this.col),r=this.instance.getDataAtCell(this.row,this.col);if(o){var n=!1;if("function"==typeof o?o.call(t,r,function(t){return n=t}):o instanceof RegExp&&(n=o.test(r)),n){var s=this.instance.getCell(this.row,this.col),a=e(s),d=t.invalidCellClassName;a.hasClass(d)&&a.removeClass(d)}}}p.apply(this,arguments)},t.wdtLinkValidator=function(t,e){null===t&&(t="");var i=!1;if(""==t)i=!0;else{i=/^([a-z]([a-z]|\d|\+|-|\.)*):(\/\/(((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:)*@)?((\[(|(v[\da-f]{1,}\.(([a-z]|\d|-|\.|_|~)|[!\$&'\(\)\*\+,;=]|:)+))\])|((\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5]))|(([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=])*)(:\d*)?)(\/(([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)*)*|(\/((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)+(\/(([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)*)*)?)|((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)+(\/(([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)*)*)|((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)){0})(\?((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|[\uE000-\uF8FF]|\/|\?)*)?(\#((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|\/|\?)*)?(||.*)?$/i.test(t)}e(i)},t.wdtEmailValidator=function(t,e){null===t&&(t="");var i=!1;if(""==t)i=!0;else{i=/^([a-zA-Z0-9_.+-])+\@(([a-zA-Z0-9-])+\.)+([a-zA-Z0-9]{2,4})+(||.*)?$/.test(t)}e(i)},t.wdtDateValidator=function(e,i){null===e&&(e=""),""==e?i(!0):t.DateValidator.call(this,e,i)},t.wdtDateTimeValidator=function(t,e){null===t&&(t="");var i=this.instance.getSettings(),o=moment(new Date(t)).isValid(),r=moment(t,i.dataSourceDateFormat+" H:mm:ss",!0).isValid();e(""==t||o&&r)},t.wdtTimeValidator=function(t,e){null===t&&(t="");this.instance.getSettings();var i=moment(t,"H:mm:ss",!0).isValid();e(""==t||i)},t.wdtMultiSelectValidator=function(t,e){var i=!0;if(null===t&&(t=""),this.source){for(var o=t.toLowerCase().split(","),r=this.source.join(",").toLowerCase().split(","),n=0;n<o.length;n++)if(-1==r.indexOf(o[n])){i=!1;break}}else t&&(i=!1);e(i)},(o=t.editors.TextEditor.prototype.extend()).prototype.bindEvents=function(){this.eventManager.addEventListener(this.TEXTAREA,"keydown",function(e){e.which==t.helper.KEY_CODES.ENTER&&t.Dom.stopImmediatePropagation(e)})},t.editors.ExcelMultilineEditor=o,t.editors.registerEditor("wdt.text_multiline",o),(r=t.editors.TextEditor.prototype.extend()).prototype.init=function(){t.editors.TextEditor.prototype.init.apply(this,arguments);var e=this.instance.getSettings();this.time_format=e.timeFormat;var i=this;this.instance.addHook("afterDestroy",function(){i.parentDestroyed=!0,i.destroyElements()})},r.prototype.createElements=function(){t.editors.TextEditor.prototype.createElements.apply(this,arguments),this.TEXTAREA=document.createElement("input"),this.TEXTAREA.className="wdt-datepicker",this.textareaStyle=this.TEXTAREA.style,this.textareaStyle.width=0,this.textareaStyle.height=0,t.Dom.empty(this.TEXTAREA_PARENT),this.TEXTAREA_PARENT.appendChild(this.TEXTAREA)},r.prototype.onBeforeKeyDown=function(e){switch(e.keyCode){case t.helper.KEY_CODES.ESCAPE:this.getActiveEditor().finishEditing(!0);break;case t.helper.KEY_CODES.ARROW_DOWN:case t.helper.KEY_CODES.ARROW_UP:}},r.prototype.beginEditing=function(e){t.editors.TextEditor.prototype.beginEditing.apply(this,arguments)},r.prototype.discardEditor=function(e){t.editors.TextEditor.prototype.discardEditor.apply(this,arguments),this.instance.getCellMeta(this.row,this.col).allowInvalid||e||this.$timePicker.$node.is(":visible")||this.$timePicker.open()},r.prototype.open=function(){this.instance.addHook("beforeKeyDown",this.onBeforeKeyDown),t.editors.TextEditor.prototype.open.apply(this,arguments)},r.prototype.beginEditing=function(){t.editors.TextEditor.prototype.beginEditing.apply(this,arguments)},r.prototype.focus=function(e){t.editors.DateEditor.prototype.focus.apply(this,arguments)},r.prototype.close=function(){this.instance.removeHook("beforeKeyDown",this.onBeforeKeyDown),t.editors.TextEditor.prototype.close.apply(this,arguments)},r.prototype.finishEditing=function(){var e=void 0!==arguments[0]&&arguments[0];if(void 0!==arguments[1]&&arguments[1],e){var i=this.originalValue;void 0!==i&&this.setValue(i)}t.editors.TextEditor.prototype.finishEditing.apply(this,arguments)},r.prototype.prepare=function(e,i,o,r,n,s){if(n&&"0000-00-00"!=n||(n=""),n&&!this.same_display_and_edit_format){var a=this.instance.getSettings();n=moment(n,a.dataSourceDateFormat).format(a.displayDateFormat)}t.editors.DateEditor.prototype.prepare.apply(this,arguments)},r.prototype.saveValue=function(e,i){if(e[0][0]&&!this.same_display_and_edit_format){var o=this.instance.getSettings();e[0][0]=moment(e[0][0],o.displayDateFormat).format(o.dataSourceDateFormat)}t.editors.DateEditor.prototype.saveValue.apply(this,arguments)},t.editors.ExcelTimeEditor=r,t.editors.registerEditor("wdt.date",r),(n=t.editors.TextEditor.prototype.extend()).prototype.init=function(){t.editors.TextEditor.prototype.init.apply(this,arguments);var e=this.instance.getSettings();this.time_format=e.timeFormat;var i=this;this.instance.addHook("afterDestroy",function(){i.parentDestroyed=!0,i.destroyElements()})},n.prototype.createElements=function(){t.editors.TextEditor.prototype.createElements.apply(this,arguments),this.TEXTAREA=document.createElement("input"),this.TEXTAREA.className="wdt-datetimepicker",this.textareaStyle=this.TEXTAREA.style,this.textareaStyle.width=0,this.textareaStyle.height=0,t.Dom.empty(this.TEXTAREA_PARENT),this.TEXTAREA_PARENT.appendChild(this.TEXTAREA)},n.prototype.onBeforeKeyDown=function(e){switch(e.keyCode){case t.helper.KEY_CODES.ESCAPE:this.getActiveEditor().finishEditing(!0);break;case t.helper.KEY_CODES.ARROW_DOWN:case t.helper.KEY_CODES.ARROW_UP:}},n.prototype.beginEditing=function(e){t.editors.TextEditor.prototype.beginEditing.apply(this,arguments)},n.prototype.discardEditor=function(e){t.editors.TextEditor.prototype.discardEditor.apply(this,arguments),this.instance.getCellMeta(this.row,this.col).allowInvalid||e||this.$timePicker.$node.is(":visible")||this.$timePicker.open()},n.prototype.open=function(){this.instance.addHook("beforeKeyDown",this.onBeforeKeyDown),t.editors.TextEditor.prototype.open.apply(this,arguments)},n.prototype.beginEditing=function(){t.editors.TextEditor.prototype.beginEditing.apply(this,arguments)},n.prototype.focus=function(e){t.editors.DateEditor.prototype.focus.apply(this,arguments)},n.prototype.close=function(){this.instance.removeHook("beforeKeyDown",this.onBeforeKeyDown),t.editors.TextEditor.prototype.close.apply(this,arguments)},n.prototype.finishEditing=function(){var e=void 0!==arguments[0]&&arguments[0];if(void 0!==arguments[1]&&arguments[1],e){var i=this.originalValue;void 0!==i&&this.setValue(i)}t.editors.TextEditor.prototype.finishEditing.apply(this,arguments)},n.prototype.prepare=function(e,i,o,r,n,s){if(n&&"0000-00-00 00:00:00"!=n||(n=""),n&&!this.same_display_and_edit_format){var a=this.instance.getSettings();n=moment(n,a.dataSourceDateFormat+" hh:mm:ss").format(a.displayDateFormat+" "+a.momentTimeFormat)}t.editors.DateEditor.prototype.prepare.apply(this,arguments)},n.prototype.saveValue=function(e,i){if(e[0][0]&&!this.same_display_and_edit_format){var o=this.instance.getSettings();e[0][0]=moment(e[0][0],o.displayDateFormat+" "+o.momentTimeFormat).format(o.dataSourceDateFormat+" H:mm:ss")}t.editors.DateEditor.prototype.saveValue.apply(this,arguments)},t.editors.ExcelTimeEditor=n,t.editors.registerEditor("wdt.datetime",n),(s=t.editors.TextEditor.prototype.extend()).prototype.init=function(){t.editors.TextEditor.prototype.init.apply(this,arguments);var e=this.instance.getSettings();this.time_format=e.timeFormat;var i=this;this.instance.addHook("afterDestroy",function(){i.parentDestroyed=!0,i.destroyElements()})},s.prototype.createElements=function(){t.editors.TextEditor.prototype.createElements.apply(this,arguments),this.TEXTAREA=document.createElement("input"),this.TEXTAREA.className="wdt-timepicker",this.textareaStyle=this.TEXTAREA.style,this.textareaStyle.width=0,this.textareaStyle.height=0,t.Dom.empty(this.TEXTAREA_PARENT),this.TEXTAREA_PARENT.appendChild(this.TEXTAREA)},s.prototype.onBeforeKeyDown=function(e){switch(e.keyCode){case t.helper.KEY_CODES.ESCAPE:this.getActiveEditor().finishEditing(!0);break;case t.helper.KEY_CODES.ARROW_DOWN:case t.helper.KEY_CODES.ARROW_UP:}},s.prototype.beginEditing=function(e){t.editors.TextEditor.prototype.beginEditing.apply(this,arguments)},s.prototype.discardEditor=function(e){t.editors.TextEditor.prototype.discardEditor.apply(this,arguments),this.instance.getCellMeta(this.row,this.col).allowInvalid||e||this.$timePicker.$node.is(":visible")||this.$timePicker.open()},s.prototype.open=function(){this.instance.addHook("beforeKeyDown",this.onBeforeKeyDown),t.editors.TextEditor.prototype.open.apply(this,arguments)},s.prototype.beginEditing=function(){t.editors.TextEditor.prototype.beginEditing.apply(this,arguments)},s.prototype.focus=function(e){t.editors.DateEditor.prototype.focus.apply(this,arguments)},s.prototype.close=function(){this.instance.removeHook("beforeKeyDown",this.onBeforeKeyDown),t.editors.TextEditor.prototype.close.apply(this,arguments)},s.prototype.finishEditing=function(){var e=void 0!==arguments[0]&&arguments[0];if(void 0!==arguments[1]&&arguments[1],e){var i=this.originalValue;void 0!==i&&this.setValue(i)}t.editors.TextEditor.prototype.finishEditing.apply(this,arguments)},s.prototype.prepare=function(e,i,o,r,n,s){if(n){var a=this.instance.getSettings();n=moment(n,"H:mm:ss").format(a.momentTimeFormat)}else n="";t.editors.TextEditor.prototype.prepare.apply(this,arguments)},s.prototype.saveValue=function(e,i){if(e[0][0]){var o=this.instance.getSettings();e[0][0]=moment(e[0][0],o.momentTimeFormat).format("H:mm:ss")}t.editors.TextEditor.prototype.saveValue.apply(this,arguments)},t.editors.ExcelTimeEditor=s,t.editors.registerEditor("wdt.time",s),(a=t.editors.BaseEditor.prototype.extend()).prototype.init=function(){this.wdtCustomUploader=wp.media({title:wpdatatables_frontend_strings.select_upload_file,button:{text:wpdatatables_frontend_strings.choose_file},multiple:!1});var t=this,i=this.instance;this.wdtCustomUploader.on("select",function(){var e=t.wdtCustomUploader.state().get("selection").first().toJSON(),o=i.getCellRenderer(t.row,t.col).name,r=e.url;if("wdtImageRenderer"==o)if("image"!=e.type)r="";else{var n=new URI(r);if(n.setQuery({img_width:e.width,img_height:e.height}),r=n.toString(),e.sizes.thumbnail){var s=new URI(e.sizes.thumbnail.url);s.setQuery({img_width:e.sizes.thumbnail.width,img_height:e.sizes.thumbnail.height}),r=s.toString()+"||"+r}}i.setDataAtCell(t.row,t.col,r)}),$browseButton=e('<button class="button-primary">'+wpdatatables_frontend_strings.browse_file+"</button>"),e($browseButton).click(function(t){t.preventDefault(),i.getActiveEditor().wdtCustomUploader.open()}),this.BROWSE_BUTTON=$browseButton[0],this.INPUT_FILE_URL=e('<input type="hidden" />')[0],this.UPLOADED_FILES_ELEMENTS=document.createElement("p"),$editorCnt=e('<div class="wdtAttachmentEditorHolder" ></div>').append(this.UPLOADED_FILES_ELEMENTS,this.BROWSE_BUTTON,this.INPUT_FILE_URL).hide(),this.EDITOR_CONTENT=$editorCnt[0],this.editorContainerStyle=this.EDITOR_CONTENT.style,this.instance.rootElement.appendChild(this.EDITOR_CONTENT)},a.prototype.getValue=function(){return this.INPUT_FILE_URL.value},a.prototype.setValue=function(t){this.INPUT_FILE_URL.value=t;var i="",o=this.instance;if(""!=t){var r=t.split("||")[0];i="wdtImageRenderer"==o.getCellRenderer(this.row,this.col).name?e('<img src="'+r+'" />').css({"max-width":"100px","max-height":"50px"})[0].outerHTML:t.split("/").pop(),i+='<span class="delete_file">[<a href="#">'+wpdatatables_frontend_strings.detach_file+"</a>]</span>"}e(this.UPLOADED_FILES_ELEMENTS).html(i),e(this.UPLOADED_FILES_ELEMENTS).on("click","a",function(t){t.preventDefault(),t.stopImmediatePropagation();var e=o.getActiveEditor();e.setValue("",!1),e.finishEditing(!1,!1)})},a.prototype.open=function(){this.refreshDimensions()},a.prototype.close=function(){this.editorContainerStyle.display="none"},a.prototype.focus=function(){this.BROWSE_BUTTON.focus()},a.prototype.getEditedCell=function(){var t;switch(this.checkEditorSection()){case"top":t=this.instance.view.wt.wtOverlays.topOverlay.clone.wtTable.getCell({row:this.row,col:this.col}),this.editorContainerStyle.zIndex=101;break;case"top-left-corner":t=this.instance.view.wt.wtOverlays.topLeftCornerOverlay.clone.wtTable.getCell({row:this.row,col:this.col}),this.editorContainerStyle.zIndex=103;break;case"bottom-left-corner":t=this.instance.view.wt.wtOverlays.bottomLeftCornerOverlay.clone.wtTable.getCell({row:this.row,col:this.col}),this.editorContainerStyle.zIndex=103;break;case"left":t=this.instance.view.wt.wtOverlays.leftOverlay.clone.wtTable.getCell({row:this.row,col:this.col}),this.editorContainerStyle.zIndex=102;break;case"bottom":t=this.instance.view.wt.wtOverlays.bottomOverlay.clone.wtTable.getCell({row:this.row,col:this.col}),this.editorContainerStyle.zIndex=102;break;default:t=this.instance.getCell(this.row,this.col),this.editorContainerStyle.zIndex=""}return-1!=t&&-2!=t?t:void 0},a.prototype.refreshDimensions=function(){if(this.state===t.EditorState.EDITING)if(this.TD=this.getEditedCell(),this.TD){var e,i=t.Dom.offset(this.TD),o=t.Dom.offset(this.instance.rootElement),r=t.Dom.getScrollableElement(this.TD),n=this.instance.countRows(),s=i.top-o.top-1-(r.scrollTop||0),a=i.left-o.left-1-(r.scrollLeft||0),d=this.instance.getSettings(),l=d.colHeaders?1:0;switch(this.checkEditorSection()){case"top":e=t.Dom.getCssTransform(this.instance.view.wt.wtOverlays.topOverlay.clone.wtTable.holder.parentNode);break;case"left":e=t.Dom.getCssTransform(this.instance.view.wt.wtOverlays.leftOverlay.clone.wtTable.holder.parentNode);break;case"top-left-corner":e=t.Dom.getCssTransform(this.instance.view.wt.wtOverlays.topLeftCornerOverlay.clone.wtTable.holder.parentNode);break;case"bottom-left-corner":e=t.Dom.getCssTransform(this.instance.view.wt.wtOverlays.bottomLeftCornerOverlay.clone.wtTable.holder.parentNode);break;case"bottom":e=t.Dom.getCssTransform(this.instance.view.wt.wtOverlays.bottomOverlay.clone.wtTable.holder.parentNode)}(l&&0===this.instance.getSelected()[0]||d.fixedRowsBottom&&this.instance.getSelected()[0]===n-d.fixedRowsBottom)&&(s+=1),0===this.instance.getSelected()[1]&&(a+=1),e&&-1!=e?this.editorContainerStyle[e[0]]=e[1]:t.Dom.resetCssTransform(this.EDITOR_CONTENT),this.editorContainerStyle.top=s+"px",this.editorContainerStyle.left=a+"px",this.TD.offsetTop,this.instance.view.wt.wtOverlays.topOverlay.getScrollPosition();var p=this.TD.offsetLeft-this.instance.view.wt.wtOverlays.leftOverlay.getScrollPosition(),h=t.Dom.innerWidth(this.TD)-8,c=this.instance.view.maximumVisibleElementWidth(p)-9;this.TD.scrollHeight,this.editorContainerStyle.width=h+"px",this.editorContainerStyle.maxWidth=c+"px",this.editorContainerStyle.display="block"}else this.close(!0)},t.editors.ExcelAttachmentEditor=a,t.editors.registerEditor("wdt.attachment",a),(d=t.editors.DropdownEditor.prototype.extend()).confirmWdtDropdownCellValidate=function(t,e,i,o,r){var n=this.propToCol(o),s=this.getCellMeta(i,n);if(t&&"function"==typeof s.cell_validator){var a=!1;return s.cell_validator(e,function(t){return a=t}),a}return t},d.prototype.open=function(){t.editors.DropdownEditor.prototype.open.apply(this,arguments),this.instance.addHook("afterValidate",d.confirmWdtDropdownCellValidate)},d.prototype.close=function(){t.editors.DropdownEditor.prototype.close.apply(this,arguments),this.instance.removeHook("afterValidate",d.confirmWdtDropdownCellValidate)},t.editors.ExcelDropdownEditor=d,t.editors.registerEditor("wdt.dropdown",d),(l=t.editors.ExcelDropdownEditor.prototype.extend()).onBeforeKeyDown=function(e){switch(e.keyCode){case t.helper.KEY_CODES.ENTER:var i=this.getActiveEditor(),o=i.htEditor.getInstance(),r=o.getSelected();if(r){var n=o.getCell(r[0],r[1]);l.selectDropdownItem(n,o,i)}e.stopImmediatePropagation(),e.preventDefault()}},l.selectDropdownItem=function(t,i,o){var r=e(t),n=r.text();r.children("strong:first-child").length?r.html(n):r.html("<strong>"+n+"</strong>");var s=[];e(i.rootElement).find("td strong:first-child").each(function(){s.push(e(this).text())}),o.setValue(s.join())},l.prototype.open=function(){this.instance.addHook("beforeKeyDown",l.onBeforeKeyDown),t.editors.ExcelDropdownEditor.prototype.open.apply(this,arguments);var i=this.htEditor.getInstance(),o=this,r=i.getSettings();i.removeHook("afterRenderer",i.pluginHookBucket.afterRenderer.slice(-1)[0]),i.removeHook("afterOnCellMouseDown",r.afterOnCellMouseDown),i.updateSettings({afterRenderer:function(i,r,n,s,a){var d=!0===this.getCellMeta(r,n).filteringCaseSensitive;(a=t.helper.stringify(a))&&-1!=(d?e.inArray(a,o.query.split(",")):e.inArray(a.toLowerCase(),o.query.toLowerCase().split(",")))&&(i.innerHTML=a.replace(a,"<strong>"+a+"</strong>"))},afterOnCellMouseDown:function(t,e,r){void 0!==this.getValue()&&l.selectDropdownItem(r,i,o),o.focus()}})},l.prototype.finishEditing=function(i,o){if(this.htEditor&&this.htEditor.isListening()&&this.instance.listen(),this.htEditor){var r=[];e(this.htEditor.getInstance().rootElement).find("td strong:first-child").each(function(){r.push(e(this).text())}),this.setValue(this.TEXTAREA.value)}return t.editors.TextEditor.prototype.finishEditing.apply(this,arguments)},l.prototype.close=function(){t.editors.ExcelDropdownEditor.prototype.close.apply(this,arguments),this.instance.removeHook("beforeKeyDown",l.onBeforeKeyDown)},t.editors.ExcelMultiSelectEditor=l,t.editors.registerEditor("wdt.multi-select",l),t.renderers.registerRenderer("text",u),t.renderers.registerRenderer("wdt.date",y),t.renderers.registerRenderer("wdt.datetime",E),t.renderers.registerRenderer("wdt.time",f),t.renderers.registerRenderer("wdt.link",h),t.renderers.registerRenderer("wdt.email",c),t.renderers.registerRenderer("wdt.image",m),t.wdtDateCell={editor:"wdt.date",validator:t.wdtDateValidator,renderer:"wdt.date"},t.wdtTextCell={editor:"text",renderer:"text"},t.wdtDateTimeCell={editor:"wdt.datetime",validator:t.wdtDateTimeValidator,renderer:"wdt.datetime"},t.wdtTimeCell={editor:"wdt.time",validator:t.wdtTimeValidator,renderer:"wdt.time"},t.wdtMultiSelectCell={editor:"wdt.multi-select",validator:t.wdtMultiSelectValidator,renderer:"text"},t.cellTypes.text=t.wdtTextCell,t.cellTypes["wdt.date"]=t.wdtDateCell,t.cellTypes["wdt.datetime"]=t.wdtDateTimeCell,t.cellTypes["wdt.time"]=t.wdtTimeCell,t.cellTypes["wdt.multi-select"]=t.wdtMultiSelectCell}(Handsontable,jQuery),"undefined"==typeof wpDataTablesExcelOptions&&(window.wpDtExcelTables={}),function(t){t(function(){t("div.wpExcelTable").handsontable({wpDataTablesExcelPlugin:!0})})}(jQuery);