PageSourceSearch

https://www.scribendi.com/javascript/scribendi/scribendi.filemanager.min.2026083102.js

js scribendi.com collected 2026-09-24 08:36:53 UTC 31,735 bytes, 1 lines download raw bytes

1!function(e){"function"!=typeof Object.assign&&(console.log("Initializing polyfill for Object.assign..."),Object.assign=function(e){"use strict";if(null==e)throw TypeError("Cannot convert undefined or null to object");e=Object(e);for(var i=1;i<arguments.length;i++){var t=arguments[i];if(null!=t)for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o])}return e}),e.Scribendi||(e.Scribendi={}),e.Scribendi.filemanager=function(i,t){var o=this;o.max_file_length=35,o.edit_file_types=[".csv",".doc",".docx",".fdx",".htm",".html",".odt",".pdf",".ppt",".pptx",".rtf",".tex",".txt",".wpd",".wps",".xls",".xlsx",".zip"],o.classifier_limit=1,o.file_usage_options={edit:"edit",support:"support"},o.files=[],o.files_temp={},o.files_uploading={},o.uploads_started=!1,o.file_id_attr="data-sq-file-id",o.mq_api_socket="",o.filesEvil=[],o.filesLarge=[],o.filesZero=[],o.filesPages=[],o.classifier_running=!1,o.classifier_count=0,o.classifier_waiting=[],o.unit_name=e.Scribendi.i18n.__("word"),o.unit_name_plural=e.Scribendi.i18n.__("words"),o.metaId_authors=1,o.metaId_esl=2,o.metaId_academic=4,o.metaId_business=5,o.metaId_personal=6,o.metaId_student=7,o.file_messages={evil:{text:"",icon:"warning",class:"danger"},zero:{text:"",icon:"warning",class:"danger"},large:{text:"",icon:"warning",class:"danger"},pages:{text:"",icon:"warning",class:"danger"},pdf:{text:"",icon:"info-circle",class:"info"},"google-docx":{text:e.Scribendi.i18n.__("Your Google Docs file <strong>?filename?</strong> has been automatically converted into a .docx file."),icon:"info-circle",class:"info"},"google-xlsx":{text:e.Scribendi.i18n.__("Your Google Sheets file <strong>?filename?</strong> has been automatically converted into a .xlsx file."),icon:"info-circle",class:"info"},"google-pdf":{text:e.Scribendi.i18n.__("Your Google Slides file <strong>?filename?</strong> has been automatically converted into a .pdf file."),icon:"info-circle",class:"info"},"second-look":{text:e.Scribendi.i18n.__('Making any modifications to this quote will cancel the current Second-Look order in your session. <a href="/order" title="Place Second-Look Order" style="text-decoration: underline;">Order Second-Look Now!</a>'),icon:"info-circle",class:"warning"},"drop-inaccessible":{text:e.Scribendi.i18n.__("There was an error uploading your files. Please ensure the files you are attempting to upload are closed and are in a location accessible by your browser.")},"drop-folder":{text:e.Scribendi.i18n.__("We currently do not support the dragging and dropping of folders. However, you can select multiple files to drag and drop for uploading.")}},o.el=i,o.$el=e(i),o.$file_table=o.$el,o.all_file_tables={},o.$all_file_tables=o.$el,o.$spinner=e("<img>").addClass("sq-spinner").attr("src","/images/waiting.gif"),o.$queued="",o.wc_link="",o.wc_reset="",o.$dropzone=!1,o.$dropzoneEdit=!1,o.$dropzoneSupport=!1,o.$el.data("Scribendi.filemanager",o),o.init=function(){console.log("FM: Initializing..."),o.options=e.extend({},e.Scribendi.filemanager.defaultOptions,t),o.files=o.options.files,o.all_file_tables=o.options.all_file_tables||{edit:o.$file_table,support:o.$file_table},o.$all_file_tables=e().add(o.all_file_tables.edit).add(o.all_file_tables.support),o.file_messages.evil.text=o.options.file_messages.evil,o.file_messages.large.text=o.options.file_messages.large,o.file_messages.zero.text=o.options.file_messages.zero,o.file_messages.pdf.text=o.options.file_messages.pdf,o.file_messages.pages.text=o.options.file_messages.pages,o.$queued=e("<span>").addClass("sq-wait label label-default").attr({title:e.Scribendi.i18n.__("This file is waiting to get a %1 count.",e.Scribendi.i18n.__(o.options.unit_name)),"data-toggle":"tooltip"}).text(e.Scribendi.i18n.__("Queued")),o.wc_link='<a href="" class="sq-file-wc-edit" data-toggle="tooltip" title="'+e.Scribendi.i18n.__(o.options.element_titles.sq_file_word_count,e.Scribendi.i18n.__(o.options.unit_name),e.Scribendi.i18n.__(o.options.unit_name))+'">%wc%</a>',o.wc_reset='<a href="" class="sq-file-wc-reset" data-toggle="tooltip" title="'+e.Scribendi.i18n.__("Reset this %1 count to the one automatically generated.",e.Scribendi.i18n.__(o.options.unit_name))+'"><span class="fa fa-undo"></span></a>',o.initFilesTable(),o.initDropzone(),o.options.classifier&&o.options.mq_api_token.length>0&&o.wsInitConnection(),"function"==typeof o.options.init&&o.options.init()},o.getTargetFileTable=function(e){let i=e.include?o.all_file_tables.edit:o.all_file_tables.support;return i&&i.length?i:o.$file_table},o.isSingleTableMode=function(){return o.all_file_tables.edit[0]===o.all_file_tables.support[0]},o.initFilesTable=function(){console.log("FM: Initializing files table..."),o.options.display_wordcount||o.$all_file_tables.find(".wc-header").hide(),o.files.length>0&&(o.$all_file_tables.is(":visible")||o.$all_file_tables.fadeIn(350),e.each(o.files,function(e,i){i.progress=100,o.updateFileRow(i);o.getTargetFileTable(i).addClass("sq-table-has-files")})),e(o.options.file_input).on("click",function(){}),e(document).on("change",o.options.file_input,function(){let i=e(this).data("file-usage");for(let t of(i=Object.values(o.file_usage_options).includes(i)?i:o.file_usage_options.edit,this.files))t.include=i===o.file_usage_options.edit;o.legacyFileUpload(this.files),o.resetFileInput(this)}),o.$el.on("switchChange.bootstrapSwitch",".sq-wc-file-switch",function(i,t){var n=e(this).closest("tr"),s=n.attr(o.file_id_attr),l=n.find(".sq-file-wc"),a=o.getIndexForFileId(s),r=Object.assign({},o.files[a]);r.include=t,o.addFileToSession(r,s,!1,function(){o.files[a]=r,o.options.display_wordcount&&l.html(o.getFileWcLink(r)),o.togglePdfMessage(),"function"==typeof o.options.updatedFile&&o.options.updatedFile(o.files)})}),o.$all_file_tables.on("click",".sq-remove-file",function(i){i.preventDefault();var t=e(this).attr("data-file-id");o.removeFileFromSession(t,function(){o.removeFileFromArray(t),o.removeFileRow(t),"function"==typeof o.options.updatedFile&&o.options.updatedFile(o.files)})}),o.all_file_tables.edit.on("click",".sq-file-wc-edit",function(i){i.preventDefault();var t=e(this).closest("tr").data("sq-file-id");o.buildWordCountInput(t,!0)}),o.all_file_tables.edit.on("click",".sq-file-wc-reset",function(i){i.preventDefault();var t=e(this),n=e(this).closest("td"),s=t.closest("tr").attr(o.file_id_attr),l=Object.assign({},o.files[o.getIndexForFileId(s)]);l.word_count=l.auto_word_count,o.addFileToSession(l,s,!1,function(){o.files[o.getIndexForFileId(s)]=l,n.html(o.getFileWcLink(l)),"function"==typeof o.options.updatedFile&&o.options.updatedFile(o.files)})}),o.all_file_tables.edit.on("blur",".sq-file-wc-input",function(i){var t=e(this),n=e(this).closest("td"),s=t.val().replace(/,/g,""),l=t.closest("tr").attr(o.file_id_attr),a=o.getIndexForFileId(l),r=Object.assign({},o.files[a]);if(s.length>9&&(s=s.substring(0,9)),""!==s&&parseInt(s)>0&&s!==r.word_count.toString()){if(e.isNumeric(s))n.removeClass("has-error");else{n.addClass("has-error"),i.preventDefault();return}r.word_count=parseInt(s),o.isSingleTableMode()&&(r.include=!0),o.addFileToSession(r,l,!1,function(){o.files[a]=r,o.updateFileRow(r),"function"==typeof o.options.updatedFile&&o.options.updatedFile(o.files)})}else o.updateFileRow(r),"function"==typeof o.options.updatedFile&&o.options.updatedFile(o.files)}),o.all_file_tables.edit.on("keypress",".sq-file-wc-input",function(i){if(13===i.keyCode)return e(this).blur(),!1})},o.removeFileFromArray=function(e){console.log("FM: Removing file from files array...");var i=o.getIndexForFileId(e);return void 0!==o.files[i]&&o.files.splice(i,1).length>0},o.togglePdfMessage=function(){o.hasPdfFile()?o.showFileMessage("pdf",!1,".sq-file-errors-filetable"):e(".sq-file-error-pdf").slideUp(450,function(){e(this).remove()})},o.removeFileFromSession=function(i,t){console.log("FM: Removing file from session..."),t=t||!1;
1var n={sq_ajax:!0,action:"remove_file",key:i,session_key:o.options.session_key};"undefined"!=typeof session_restore&&session_restore&&"undefined"!=typeof session_id&&(n.session_id=session_id),e.ajax({url:"/quote",type:"POST",data:n,success:function(e){(e=JSON.parse(e)).success?console.log("FM: Successfully removed file from session!"):console.log("FM: Failed to find a file in the session to remove. Continue..."),"function"==typeof t&&t()},error:function(i){o.ajaxErrorCallback(this,"Remove File from Session AJAX Failed","{status: "+i.status+", statusText: "+i.statusText+"}",e.Scribendi.i18n.__("There was an error removing the file. Please try again."),n)}})},o.ajaxErrorCallback=function(i,t,o,n,s,l){console.log("FM: "+o),s=s||{},l=l||{},e.Scribendi.log("error",t,o+" Request: "+JSON.stringify(s),!0),confirm(n)?e.ajax(i):"function"==typeof l&&l()},o.canClassify=function(e){return o.isEditFile(e)},o.resetFileInput=function(i){var t=e("<input>").addClass(o.options.file_input.replace(".","")).attr("name","sq-file[]").attr("multiple","multiple").attr("type","file").attr("data-file-usage",e(i).data("file-usage"));e(i).replaceWith(t)},o.removeFileRow=function(i){console.log("FM: Removing file row...");var t=e("["+o.file_id_attr+"="+i+"]"),n=t.closest("table"),s=0,l=e(".alert-info.sq-file-error-"+i);t.children("td").wrapInner("<div />").slideUp(300,function(){if(!s){t.remove();0!==n.find("tbody tr["+o.file_id_attr+"]").length||o.isTableUploading(n)||n.removeClass("sq-table-has-files"),0!==o.files.length||o.isUploading()||("function"==typeof o.options.noFiles?o.options.noFiles():o.$all_file_tables.fadeOut(350)),s++}}),l.length&&l.slideUp(450,function(){e(this.remove())}),o.togglePdfMessage()},o.hasPdfFile=function(){var i=!1;return e.each(o.files,function(e,t){t.include&&"application/pdf"===t.type&&(i=!0)}),i},o.isUploading=function(i){if(void 0===i)return!e.isEmptyObject(o.files_uploading);let t=!1;return e.each(o.files_uploading,function(e,o){if(o.include===i)return t=!0,!1}),t},o.isTableUploading=function(e){return o.isSingleTableMode()?o.isUploading():e[0]===o.all_file_tables.edit[0]?o.isUploading(!0):e[0]===o.all_file_tables.support[0]&&o.isUploading(!1)},o.isClassifying=function(){return o.classifier_count>0},o.canUpload=function(){return!o.isUploading()&&!o.isClassifying()},o.getFileWcLink=function(e){let i=parseInt(e.word_count)>1?o.unit_name_plural:o.unit_name;if(!o.isSingleTableMode()&&!e.include)return`${e.word_count} ${i}`;var t=o.wc_link.replace("%wc%",`${numberFormat(e.word_count)} ${i}`),n=e.include?t:"<del>"+t+"</del>";return e.auto_word_count>0&&e.auto_word_count!==e.word_count&&(n+=o.wc_reset),n},o.normalizeFileObject=function(e){return{id:e.id,name:e.name,type:e.type,auto_word_count:e.auto_word_count,esl:e.esl,include:e.include,meta_id:e.meta_id,progress:e.progress,size:e.size,word_count:e.word_count,location:e.location,nfs:e.nfs,distribution:void 0!==e.distribution?e.distribution:{}}},o.updateFileArray=function(e){console.log("FM: Updating files array...");var i=o.getIndexForFileId(e.id),t=o.normalizeFileObject(e);return i>-1?o.files[i]=t:o.files.push(t),t},o.addFileToSession=function(i,t,n,s){console.log("FM: Adding file to session..."),s=s||!1;var l="Failed to Add File to Session",a=(n=n||!1)?e.Scribendi.i18n.__("There was an error adding the file. Please try again."):e.Scribendi.i18n.__("There was an error updating the file. Please try again.");vars={sq_ajax:!0,action:"add_file",file:o.normalizeFileObject(i),file_id:t,session_key:o.options.session_key},"undefined"!=typeof session_restore&&session_restore&&"undefined"!=typeof session_id&&(vars.session_id=session_id),e.ajax({url:"/quote",type:"POST",data:vars,success:function(e){(e=JSON.parse(e)).success?(console.log("FM: Successfully added file to session!"),"function"==typeof s&&s()):o.ajaxErrorCallback(this,l,e.error,a,vars,function(){n?o.removeFileRow(n):o.updateFileRow(o.files[o.getIndexForFileId(t)])})},error:function(e){o.ajaxErrorCallback(this,l,"{status: "+e.status+", statusText: "+e.statusText+"}",a,vars,function(){n?o.removeFileRow(n):o.updateFileRow(o.files[o.getIndexForFileId(t)])})}})},o.getIndexForFileId=function(e){return o.files.map(function(e){return e.id}).indexOf(e)},o.initDropzone=function(){"draggable"in document.createElement("span")&&(o.$dropzone=e(o.options.drag_n_drop),o.$dropzoneEdit=e(o.options.drag_n_drop_edit),o.$dropzoneSupport=e(o.options.drag_n_drop_support),o.$dropzone.removeClass("disabled"),o.$dropzone.on("dragenter",o.handleDragEnter).on("dragover",o.handleDragOver).on("drop",o.handleDrop).on("dragleave dragend drop",o.handleDragLeave))},o.handleDragEnter=function(e){e.preventDefault(),e.stopPropagation(),o.$dropzone.addClass("sq-is-dragover")},o.handleDragOver=function(e){e.preventDefault(),e.stopPropagation();let i=o.getFileUsageByDropzone(e.originalEvent.clientX,e.originalEvent.clientY);i===o.file_usage_options.edit?(o.$dropzoneEdit.removeClass("dropzone-inactive"),o.$dropzoneSupport.addClass("dropzone-inactive")):i===o.file_usage_options.support?(o.$dropzoneEdit.addClass("dropzone-inactive"),o.$dropzoneSupport.removeClass("dropzone-inactive")):(o.$dropzoneEdit.removeClass("dropzone-inactive"),o.$dropzoneSupport.removeClass("dropzone-inactive"))},o.handleDragLeave=function(e){e.preventDefault(),e.stopPropagation(),o.$dropzone.removeClass("sq-is-dragover")},o.handleDrop=function(e){if(e.preventDefault(),e.stopPropagation(),void 0===e.originalEvent.dataTransfer.files)alert(o.file_messages["drop-inaccessible"].text);else if(0===e.originalEvent.dataTransfer.files.length)alert(o.file_messages["drop-folder"].text);else{let i=e.originalEvent.dataTransfer.files,t=o.getFileUsageByDropzone(e.originalEvent.clientX,e.originalEvent.clientY);for(let n of i)n.include=t===o.file_usage_options.edit;o.legacyFileUpload(i)}},o.getFileUsageByDropzone=function(e,i){if(!o.$dropzone.is(":visible"))return null;let t=o.$dropzoneEdit[0].getBoundingClientRect(),n=o.$dropzoneSupport[0].getBoundingClientRect(),s=Math.min(t.left,n.left),l=Math.max(t.right,n.right),a=Math.min(t.top,n.top),r=Math.max(t.bottom,n.bottom);return e>=s&&e<=l&&i>=a&&i<=r?e<t.right+(n.left-t.right)/2?o.file_usage_options.edit:o.file_usage_options.support:null},o.legacyFileUpload=function(i){i=i||{},o.clearFileMessages();for(var t=0,n=i.length;t<n;t++){var s=i[t];s.type||s.size%4096!=0?o.validateFile(s)&&(s.id=o.generateFileId(),s.progress=0,o.updateFileRow(s),o.files_temp[s.id]=s):alert(o.file_messages["drop-folder"].text)}o.showFileErrors(),e.isEmptyObject(o.files_temp)||o.uploadFiles()},o.showFileErrors=function(){"function"==typeof o.options.showFileErrors?o.options.showFileErrors():(e.each(o.filesEvil,function(e,i){o.show
1FileMessage("evil",i)}),e.each(o.filesLarge,function(e,i){o.showFileMessage("large",i)}),e.each(o.filesZero,function(e,i){o.showFileMessage("zero",i)}),e.each(o.filesPages,function(e,i){o.showFileMessage("pages",i)}),o.filesEvil=[],o.filesLarge=[],o.filesZero=[],o.filesPages=[])},o.generateFileId=function(){for(var e="",i="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",t=0;t<32;t++)e+=i.charAt(Math.floor(Math.random()*i.length));return e},o.uploadFiles=function(){console.log("FM: Uploading files..."),o.processUpload()},o.processUpload=function(e=0,i=o.classifier_limit){if(0===Object.entries(o.files_temp).length)return;e++;let[t,n]=Object.entries(o.files_temp)[0];o.uploadFile(t,n,e%i==0&&0!==i).finally(function(){o.processUpload(e,i)})},o.uploadFile=function(i,t,n=!1){return console.log("FM: Uploading file "+i+"..."),new Promise(function(s,l){var a=new FormData,r=e("["+o.file_id_attr+"="+i+"]"),d=r.find("progress"),c=r.find(".cancel_upload_link");a.append("direct",o.options.auto_upload_files),a.append("order_id",o.options.order_id),a.append("feedback",o.options.feedback),a.append("file[]",t),a.append("required_fb_upload",o.options.required_fb_upload),a.append("download_key",o.options.download_key),delete o.files_temp[i],o.files_uploading[i]=t,"function"!=typeof o.options.uploadsStarted||o.uploads_started||(o.uploads_started=!0,o.options.uploadsStarted());var f=e.ajax({url:"/upload",type:"POST",data:a,contentType:!1,processData:!1,xhr:function(){var i=e.ajaxSettings.xhr();return i.upload&&i.upload.addEventListener("progress",function(e){var i=parseInt(e.loaded/e.total*100);d.attr("value",i)},!1),i},error:function(t){d.attr("value",0),o.removeFileFromSession(i),o.removeFileRow(i),delete o.files_uploading[i],413===t.status?alert(e.Scribendi.i18n.__("This file is too large to upload. Please try compressing it, or contact our customer service team for assistance.")):e.Scribendi.log("error","Failed to Upload File","{status: "+t.status+", statusText: "+t.statusText+"}",!0),l()}}).done(function(e){if((e=JSON.parse(e)).success)t.progress=100,t.newId=e.file.id,t.location=e.file.location,t.nfs=e.file.nfs,o.updateFile(t,!0);else{var l=e.errors;void 0!==l.evil&&o.filesEvil.push(t),void 0!==l.pages&&o.filesPages.push(t),void 0!==l.large&&o.filesLarge.push(t),void 0!==l.small&&o.filesZero.push(t),o.showFileErrors(),o.removeFileRow(i)}delete o.files_uploading[i],n?setTimeout(s,2e3):s()});c.on("click",function(e){e.preventDefault(),f.abort(),l()})})},o.updateFile=function(e,i){console.log("FM: Updating file..."),i=i||!1,e.word_count=e.word_count||0,e.auto_word_count=e.auto_word_count||0,e.meta_id=e.meta_id||0,e.esl=e.esl||!1,100===parseInt(e.progress)?i&&o.options.classifier&&o.canClassify(e)?o.classifyFile(e):o.saveFile(e):o.updateFileRow(e)},o.classifyFile=function(e){console.log("FM: Classify file triggered!"),o.updateFileRow(e,"wait"),o.sendClassifierRequest(e,function(e){o.saveFile(e,!0),o.classifier_count--,o.runNextClassifierRequest()})},o.moveFileFromIncomingFolder=function(i,t,o,n){console.log("FM: Moving the file from the incoming folder..."),e.ajax({url:"/quote",type:"POST",data:{sq_ajax:!0,action:"move_file",key:i,location:t},success:function(e){(e=JSON.parse(e)).success?console.log("FM: Successfully moved the file from the incoming folder!"):console.log("FM: Failed to move the file from the incoming folder. Continue...")},error:function(e){console.log("FM: AJAX Error while moving the file from the incoming folder. Continue...")}})},o.copyFileFromIncomingFolder=function(i,t,o,n){console.log("FM: Copying the file from the incoming folder..."),e.ajax({url:"/quote",type:"POST",data:{sq_ajax:!0,action:"copy_file",key:i,location:t},success:function(e){(e=JSON.parse(e)).success?console.log("FM: Successfully copied the file from the incoming folder!"):console.log("FM: Failed to copy the file from the incoming folder. Continue...")},error:function(e){console.log("FM: AJAX Error while copying the file from the incoming folder. Continue...")}})},o.saveFile=function(i,t){t=t||!1;var n=i.id;void 0!==i.newId&&32===i.newId.length&&(i.id=i.newId),o.options.auto_upload_files?o.copyFileFromIncomingFolder(i.id,i.location,i.name,i.type):o.addFileToSession(i,i.id,n,function(){o.copyFileFromIncomingFolder(i.id,i.location,i.name,i.type);var s=!!t&&0===i.auto_word_count&&!e(".sq-file-wc-input").length&&"get";i=o.updateFileArray(i),o.updateFileRow(i,s,n),"function"==typeof o.options.updatedFile&&o.options.updatedFile(o.files),o.isClassifying()||o.isUploading()||"function"!=typeof o.options.uploadsComplete||(o.uploads_started=!1,o.options.uploadsComplete())})},o.clearFileMessages=function(i){(i=i||!1)?e(".sq-file-error").remove():e(".sq-file-error-zero, .sq-file-error-large, .
1sq-file-error-pages, .sq-file-error-evil").remove()},o.sendClassifierRequest=function(e,i){if(console.log("FM: Attempting to get the classification and "+o.options.unit_name+" count..."),!o.options.classifier)return"function"==typeof i&&i(e);var t=e.newId;o.mq_api_socket.connected?(o.classifier_waiting.push({file_id:t,file:e,callback:i}),(!o.classifier_running||o.classifier_count<=o.classifier_limit)&&(o.classifier_running=!0,o.runNextClassifierRequest())):"function"==typeof i&&i(e)},o.runNextClassifierRequest=function(){if(0===o.classifier_waiting.length){o.classifier_running=!1,console.log("FM: Classifier Queue Empty. Stopping...");return}if(o.classifier_count>=o.classifier_limit){console.log("FM: Classifier Limit Reached. Waiting...");return}if(o.classifier_waiting.length>0){let e=o.classifier_waiting.shift();o.classifier_count++,o.wsEmitClassifier(e.file_id,e.file,e.callback)}},o.wsEmitClassifier=function(i,t,n){console.log("FM: Emitting websocket request to API...");var s=o.options.mq_api_timers.accept+2,l=o.options.mq_api_timers.download+o.options.mq_api_timers.buffer,a=o.options.mq_api_timers.parser+o.options.mq_api_timers.buffer,r=o.options.mq_api_timers.classifier+o.options.mq_api_timers.buffer,d=!1,c=o.getFileExtension(t.filename||t.name),f={file_id:i,file:i+t.name.replace(/[^A-Z0-9._]/gi,""),s3:!1,genre:o.options.get_genre,token:o.options.mq_api_token};if(t.word_count=0,t.auto_word_count=0,t.meta_id=0,t.esl=!1,"csv"===c||"wps"===c){"function"==typeof n&&n(t);return}o.mq_api_socket.emit("classifier",f);var p=setTimeout(function(){"function"!=typeof n||d||(n(t),d=!0,e.Scribendi.log("error","Accept Timeout Expired",JSON.stringify(f),!0))},1e3*s);o.mq_api_socket.on("classifier-response-"+i,function(s){console.log("FM: Got websocket response for classifier-response-"+i+"...");var c=void 0!==s.response?JSON.parse(s.response):{},u={esl:0,classified:!1,model_id:0};if(u[o.metaId_authors]=0,u[o.metaId_academic]=0,u[o.metaId_business]=0,u[o.metaId_personal]=0,u[o.metaId_student]=0,void 0!==c.status)switch(c.status){case"received":clearTimeout(p),p=setTimeout(function(){"function"!=typeof n||d||(n(t),d=!0,e.Scribendi.log("error","Download Timeout Expired",JSON.stringify(f),!0))},1e3*l);return;case"downloaded":clearTimeout(p),p=setTimeout(function(){"function"!=typeof n||d||(n(t),d=!0,e.Scribendi.log("error","Parsed Timeout Expired",JSON.stringify(f),!0))},1e3*a);return;case"parsed":clearTimeout(p),p=setTimeout(function(){"function"!=typeof n||d||(n(t),d=!0,e.Scribendi.log("error","Completed Timeout Expired",JSON.stringify(f),!0))},1e3*r);return;case"complete":if(clearTimeout(p),d)return;if(s.success){var g=0,m=0;void 0!==c.class.model_id&&(u.model_id=c.class.model_id),void 0!==c.wordcount&&(g=parseInt(c.wordcount)),void 0!==c.class&&(void 0!==c.class.genre&&(m=c.class.genre),void 0!==c.class["genre-distribution"]&&(u.classified=!0,void 0!==c.class["genre-distribution"][o.metaId_authors]&&(u[o.metaId_authors]=c.class["genre-distribution"][o.metaId_authors]),void 0!==c.class["genre-distribution"][o.metaId_academic]&&(u[o.metaId_academic]=c.class["genre-distribution"][o.metaId_academic]),void 0!==c.class["genre-distribution"][o.metaId_business]&&(u[o.metaId_business]=c.class["genre-distribution"][o.metaId_business]),void 0!==c.class["genre-distribution"][o.metaId_personal]&&(u[o.metaId_personal]=c.class["genre-distribution"][o.metaId_personal]),void 0!==c.class["genre-distribution"][o.metaId_student]&&(u[o.metaId_student]=c.class["genre-distribution"][o.metaId_student])),void 0!==c.class.errors&&o.processClassifierErrors(f,c.class.errors)),t.word_count=g,t.auto_word_count=g,t.meta_id=m,t.esl=!1,t.distribution=u,"function"==typeof n&&n(t);return}}void 0!==c.errors&&o.processClassifierErrors(f,c.errors),"function"!=typeof n||d||n(t)})},o.wsInitConnection=function(){if(navigator.userAgent.match(/googleweblight/ig)){console.log("FM: User agent does not support websockets!"),console.log("FM: User Agent: "+navigator.userAgent);return}console.log("FM: Establishing websocket connection..."),o.mq_api_socket=io(o.options.mq_api_host,{query:{token:o.options.mq_api_token},transports:["websocket","polling"]}),o.mq_api_socket.on("connect",function(){console.log("FM: Websocket connected!")}),o.mq_api_socket.on("disconnect",function(){console.log("FM: Websocket disconnected!")}),o.mq_api_socket.on("connect_error",function(e){console.log("FM Websocket connection error!")}),o.mq_api_socket.on("connect_timeout",function(){console.log("FM: Websocket connection timeout!")}),o.mq_api_socket.on("reconnect",function(){console.log("FM: Websocket successful reconnection!")}),o.mq_api_socket.on("reconnect_attempt",function(){console.log("FM: Websocket reconnection attempt...")}),o.mq_api_socket.on("reconnect_error",function(e){console.log("FM: Websocket reconnection error!")}),o.mq_api_socket.on("reconnect_failed",function(){console.log("FM: Websocket reconnection failed!"),e.Scribendi.log("error","WS Reconnection Failed","The websocket connection failed to reconnect.",!0)}),o.mq_api_socket.on("error",function(i){console.log("FM: Websocket connection encountered an error!"),e.Scribendi.log("error","WS Error",o.
1convertSocketErrorToString(i),!0)}),o.mq_api_socket.on("ping",function(){console.log("FM: Websocket pinging remote server...")}),o.mq_api_socket.on("pong",function(e){console.log("FM: Websocket pong from remote server in "+e+"ms!")})},o.convertSocketErrorToString=function(e){if("string"==typeof e)return e;var i="";return void 0!==e.type&&(i+="Type: "+e.type+"\n\n"),void 0!==e.description&&(i+="Description: "+("object"==typeof e.description?JSON.stringify(e.description):e.description)+"\n\n"),void 0!==e.message&&(i+="Message: "+e.message+"\n\n"),void 0!==e.stack&&(i+="Stack: "+e.stack),i},o.processClassifierErrors=function(i,t){i=i||{};var o="Classifier Worker Errors",n=o+": "+(t=t||[]).toString()+" Request: "+JSON.stringify(i);e.Scribendi.log("error",o,n,!0)},o.buildWordCountInput=function(i,t){if(t=t||!1,void 0!==i){var n=o.files[o.getIndexForFileId(i)],s=o.all_file_tables.edit.find("["+o.file_id_attr+"="+i+"]"),l=e('<input type="text">').addClass("sq-file-wc-input form-control").attr("maxLength","9").val(n.word_count);if(!t)return l;s.find(".sq-file-wc").html(l),l.focus()}},o.updateFileRow=function(i,t,n){console.log("FM: Updating file row..."),i=i||!1,t=t||!1,n=n||i.id;var s="";if("object"==typeof i){var l=o.truncateFilename(i.name);try{l=decodeURIComponent(l)}catch(a){}var r=i.name.substring(i.name.lastIndexOf(".")+1,i.name.length).toLowerCase(),d=o.getExtensionIcon(r),c=e("<tr>").attr(o.file_id_attr,i.id),f=e("<td>").addClass("sq-file-name text-left"),p=e("["+o.file_id_attr+"="+n+"]"),u=o.getTargetFileTable(i);if(f.html('<div class="sq-file-name-content"><i class="fa '+d+'"></i><div class="text-filename">'+l+"</div></div>"),100===parseInt(i.progress)){var g=e("<td>").addClass("sq-file-wc text-center"),m=e("<td>").addClass("sq-file-edit text-center"),h=e("<td>");o.options.display_wordcount&&(o.isEditFile(i)?"get"===t?(s=o.buildWordCountInput(i.id),g.html(s),o.activeWcInput=!0):"wait"===t?g.html(o.$spinner.clone()):"queued"===t?g.html(o.$queued.clone()):g.html(o.getFileWcLink(i)):g.text("-"));var v=i.include?' checked="checked"':"",F=e('<input class="bootstrap-switch sq-wc-file-switch" type="checkbox" name="sq-exclude-file-'+i.id+'"'+v+' data-on-text="'+e.Scribendi.i18n.__("Yes")+'" data-off-text="'+e.Scribendi.i18n.__("No")+'" data-label-width="10">');if(0===i.word_count&&o.options.display_wordcount){var b=o.isEditFile(i)?e.Scribendi.i18n.__(o.options.element_titles.sq_file_edit_toggle,e.Scribendi.i18n.__(o.options.unit_name)):e.Scribendi.i18n.__("This file type cannot be included in your edit."),w=e('<span data-toggle="tooltip" title="'+b+'">').append(F);m.html(w)}else o.options.auto_upload_files||m.html(F);"wait"!==t&&h.addClass("text-right td-action").html('<a href="" class="text-danger sq-remove-file" data-toggle="tooltip" data-file-id="'+i.id+'" title=" '+e.Scribendi.i18n.__(o.options.element_titles.sq_file_remove_file)+'"> <span class="fa-regular fa-trash-can"></span> </a>'),o.options.display_wordcount?(c.append(f).append(g),o.isSingleTableMode()&&c.append(m),c.append(h)):o.options.auto_upload_files?c.append(f):(c.append(f),o.isSingleTableMode()&&c.append(m),c.append(h))}else{var $=o.options.display_wordcount?3:2,y=e("<td>").attr("colspan",$).addClass("text-center sq-upload-progress").css("min-width","150px"),x=e("<td>").addClass("text-right sq-upload-cancel"),_=e("<progress>").val(i.progress).attr({max:"100"}).css("width","100%");y.append(_),x.append(e("<a>").attr({id:"sq-cancel-upload-"+i.id,tabindex:10+i.id,title:"Cancel Upload",href:"","data-toggle":"tooltip","data-original-title":"Cancel Upload"}).addClass("cancel_upload_link text-danger").append(e("<span>").addClass("fa-regular fa-trash-can"))),c.append(f),c.append(y)}if(o.$all_file_tables.is(":visible")||o.$all_file_tables.fadeIn(350),u.addClass("sq-table-has-files"),p.length&&p.parent().length)try{p.replaceWith(c)}catch(q){console.log("FM: Row replacement failed, appending instead",q),u.append(c)}else u.append(c);"application/pdf"===i.type&&!0===i.include&&o.showFileMessage("pdf",!1,".sq-file-errors-filetable"),s.length&&s.focus(),e("input[name=sq-exclude-file-"+i.id+"]").bootstrapSwitch({disabled:o.options.display_wordcount&&0===parseInt(i.word_count)})}},o.getExtensionIcon=function(e){var i;switch(e){case"pdf":i="fa-file-pdf-o";break;case"doc":case"docx":i="fa-file-word-o";break;case"jpg":case"png":case"jpeg":i="fa-file-image-o";break;default:i="fa-file-text-o"}return i},o.truncateFilename=function(e){e=o.sanitizeFileName(e);let i=o.getFilenameWithoutExtension(e),t=o.getFileExtension(e);return i.length>o.max_file_length&&(i=i.substr(0,o.max_file_length)+"[...]"),encodeURIComponent(e=i+(t?"."+t:"")).replace(/%20/g," ")},o.sanitizeFileName=function(e){return e.replace(/!|@/gi,"")},o.showFileMessage=function(i,t,n){if(i=i.toLowerCase()||!1,t=t||!1,void 0!==o.file_messages[i]){var s=o.file_messages[i],l=s.text,a="alert-"+s.class+" sq-file-error sq-file-error-"+i,r=s.icon,d=!1,c=void 0!==n&&e(n).length?e(n):e(o.options.message_container+":visible");!1!==t?(void 0!==t.name&&(l=l.replace("?filename?",o.truncateFilename(t.name))),a+=" sq-file-error-"+t.id,l.length>0&&(d=!0)):e(".sq-file-error-"+i).length||(d=!0),d&&c.prepend('<div class="alert '+a+' alert-sm"><span class="fa fa-'+r+'"></span> &nbsp;'+l+"</div>")}},o.validateFile=function(i){if(void 0===i)return!1;var t=o.getFileExtension(i.name);return -1!==e.inArray("."+t,o.options.evil_file_extensions)?(o.filesEvil.push(i),!1):0===i.size?(o.filesZero.push(i),!1):i.size>o.options.max_file_size?(o.filesLarge.push(i),!1):"pages"!==t||(o.filesPages.push(i),!1)},o.isEditFile=function(e){var i=void 0!==e.name?e.name:e.filename,t=o.getFileExtension(i);return o.edit_file_types.indexOf("."+t)>-1},o.getFileExtension=function(e){let i=e.lastIndexOf(".");return -1===i?"":e.substring(i+1,e.length).toLowerCase()},o.getFilenameWithoutExtension=function(e){let i=e.lastIndexOf(".");return -1===i?e:e.substring(0,i)},o.init()},e.Scribendi.filemanager.defaultOptions={classifier:!0,auto_upload_files:!1,order_id:0,feedback:!1,download_key:"",get_genre:!0,display_wordcount:!0,message_container:".sq-file-errors",files:[],max_file_size:157286400,evil_file_extensions:[".exe",".sh",".pif",".scr",".bat",".js",".vbs",".pl",".php",".cgi",".php3",".phtml",".class",".msi",".pages",".sql",".mp4",".mov",".avi",".wmv",".flv",".avchd",".webm",".mkv",".m4v",".m4p"],mq_api_host:!1,mq_api_token:!1,mq_api_timers:{accept:0,download:0,parser:0,classifier:0,buffer:0}
1,file_input:".sq-file-upload",drag_n_drop:".sq-dropzone",drag_n_drop_edit:".sq-dropzone-edit",drag_n_drop_support:".sq-dropzone-support",file_messages:{evil:"",zero:"",large:"",pages:"",pdf:""},init:!1,updatedFile:!1,noFiles:!1,zeroByteFile:!1,showFileErrors:!1,uploadsStarted:!1,uploadsComplete:!1,unit_name:"word",unit_name_plural:"words",required_fb_upload:!1,session_key:"orderfiles",element_titles:{sq_file_word_count:"Your order price is determined by the %1 count. If you only want part of your document to be edited, please click to enter the correct %2 count.",sq_file_remove_file:"Remove this file from the quote.",sq_file_edit_toggle:"You must modify the %1 count to include this file in your edit."}},e.fn.ScribendiFilemanager=function(i){return new e.Scribendi.filemanager(this,i)}}(jQuery);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.