View file upload/js/xenforo/tag.js

File size: 8.94Kb
/*
 * XenForo tag.min.js
 * Copyright 2010-2019 XenForo Ltd.
 * Released under the XenForo License Agreement: http://xenforo.com/license-agreement
 */
var $jscomp=$jscomp||{};$jscomp.scope={};$jscomp.findInternal=function(a,g,e){a instanceof String&&(a=String(a));for(var b=a.length,d=0;d<b;d++){var c=a[d];if(g.call(e,c,d,a))return{i:d,v:c}}return{i:-1,v:void 0}};$jscomp.ASSUME_ES5=!1;$jscomp.ASSUME_NO_NATIVE_MAP=!1;$jscomp.ASSUME_NO_NATIVE_SET=!1;$jscomp.defineProperty=$jscomp.ASSUME_ES5||"function"==typeof Object.defineProperties?Object.defineProperty:function(a,g,e){a!=Array.prototype&&a!=Object.prototype&&(a[g]=e.value)};
$jscomp.getGlobal=function(a){return"undefined"!=typeof window&&window===a?a:"undefined"!=typeof global&&null!=global?global:a};$jscomp.global=$jscomp.getGlobal(this);$jscomp.polyfill=function(a,g,e,b){if(g){e=$jscomp.global;a=a.split(".");for(b=0;b<a.length-1;b++){var d=a[b];d in e||(e[d]={});e=e[d]}a=a[a.length-1];b=e[a];g=g(b);g!=b&&null!=g&&$jscomp.defineProperty(e,a,{configurable:!0,writable:!0,value:g})}};
$jscomp.polyfill("Array.prototype.find",function(a){return a?a:function(a,e){return $jscomp.findInternal(this,a,e).v}},"es6","es3");
!function(a,g,e,b){XenForo.TagInput=function(a){this.__construct(a)};XenForo.TagInput.prototype={__construct:function(d){var c=d.uniqueId().attr("id"),f=d.data("extra-class");d.tagsInput({width:"",minInputWidth:"100%",maxInputWidth:"100%",height:"",defaultText:"",wrapperExtraClass:"textCtrl"+(f?" "+f:""),removeWithBackspace:!0,autosize:!1,unique:!0});var b=a("#"+c+"_tag");b.addClass("AcSingle").data("acurl","index.php?misc/tag-auto-complete");XenForo.create("XenForo.AutoComplete",b);b.on("AutoComplete",
function(a,c){b.val("");d.addTag(c.inserted,{unique:!0})});b.on("paste",function(){setTimeout(function(){var c=b.val().split(",");if(1<c.length){for(var f=0;f<c.length;f++)c[f]=a.trim(c[f]),c[f].length&&d.addTag(c[f],{unique:!0});b.val("")}},0)});b.closest("form").on("submit AutoValidationBeforeSubmit",function(){var a=b.val();a.length&&(d.addTag(a,{unique:!0}),b.val(""))});b.on("focus",function(){b.closest(".textCtrl").addClass("Focus")});b.on("blur",function(){b.closest(".textCtrl").removeClass("Focus")});
d.prop("autofocus")&&(d.prop("autofocus",!1),b.prop("autofocus",!0),b.focus())}};XenForo.TagEditorForm=function(a){this.__construct(a)};XenForo.TagEditorForm.prototype={__construct:function(d){var b=function(a){a.ajaxData.redirect&&XenForo.redirect(a.ajaxData.redirect)};d.on("AutoValidationComplete",function(c){c.preventDefault();if(c.ajaxData.templateHtml&&c.ajaxData.isTagList){var f=d.closest(".xenOverlay");if(f.length&&f.data("overlay")){f=f.data("overlay");var h=f.getTrigger().closest(".TagContainer");
h.length?(c.preventDefault(),c=a(a.parseHTML(c.ajaxData.templateHtml)),h.replaceWith(c),c.parent().xfActivate(),f.close()):b(c)}else b(c)}else b(c)})}};XenForo.register("input.TagInput","XenForo.TagInput");XenForo.register("form.TagEditorForm","XenForo.TagEditorForm")}(jQuery,this,document);
(function(a){var g=[],e=[];a.fn.doAutosize=function(b){var d=a(this).data("minwidth"),c=a(this).data("maxwidth"),f="",e=a(this),h=a("#"+a(this).data("tester_id"));f!==(f=e.val())&&(f=f.replace(/&/g,"&amp;").replace(/\s/g," ").replace(/</g,"&lt;").replace(/>/g,"&gt;"),h.html(f),h=h.width(),b=h+b.comfortZone>=d?h+b.comfortZone:d,h=e.width(),(b<h&&b>=d||b>d&&b<c)&&e.width(b))};a.fn.resetAutosize=function(b){var d=a(this).data("minwidth")||b.minInputWidth||a(this).width();b=a(this).data("maxwidth")||
b.maxInputWidth||a(this).closest(".taggingInput").width()-b.inputPadding;var c=a(this),f=a("<tester/>").css({position:"absolute",top:-9999,left:-9999,width:"auto",fontSize:c.css("fontSize"),fontFamily:c.css("fontFamily"),fontWeight:c.css("fontWeight"),letterSpacing:c.css("letterSpacing"),whiteSpace:"nowrap"}),e=a(this).attr("id")+"_autosize_tester";0< !a("#"+e).length&&(f.attr("id",e),f.appendTo("body"));c.data("minwidth",d);c.data("maxwidth",b);c.data("tester_id",e);c.css("width",d)};a.fn.addTag=
function(b,d){d=jQuery.extend({focus:!1,callback:!0},d);this.each(function(){var c=a(this).attr("id"),f=a(this).val().split(g[c]);""==f[0]&&(f=[]);b=jQuery.trim(b);if(d.unique){var k=a(this).tagExist(b);1==k&&a("#"+c+"_tag").addClass("not_valid")}else k=!1;if(""!=b&&1!=k&&(a("<span>").addClass("tag").append(a("<span>").text(b).append("&nbsp;&nbsp;"),a("<a>",{href:"#",title:"",text:"x"}).click(function(){return a("#"+c).removeTag(escape(b))})).insertBefore("#"+c+"_addTag"),f.push(b),a("#"+c+"_tag").val(""),
d.focus?a("#"+c+"_tag").focus():a("#"+c+"_tag").blur(),a.fn.tagsInput.updateTagsField(this,f),d.callback&&e[c]&&e[c].onAddTag&&(k=e[c].onAddTag,k.call(this,b)),e[c]&&e[c].onChange)){var h=f.length;k=e[c].onChange;k.call(this,a(this),f[h-1])}});return!1};a.fn.removeTag=function(b){b=unescape(b);this.each(function(){var d=a(this).attr("id"),c=a(this).val().split(g[d]);a("#"+d+"_tagsinput .tag").remove();str="";for(i=0;i<c.length;i++)c[i]!=b&&(str=str+g[d]+c[i]);a.fn.tagsInput.importTags(this,str);e[d]&&
e[d].onRemoveTag&&e[d].onRemoveTag.call(this,b)});return!1};a.fn.tagExist=function(b){var d=a(this).attr("id");d=a(this).val().split(g[d]);return 0<=jQuery.inArray(b,d)};a.fn.importTags=function(b){id=a(this).attr("id");a("#"+id+"_tagsinput .tag").remove();a.fn.tagsInput.importTags(this,b)};a.fn.tagsInput=function(b){var d=jQuery.extend({interactive:!0,defaultText:"add a tag",minChars:0,width:"300px",height:"100px",autocomplete:{selectFirst:!1},wrapperExtraClass:"",hide:!0,delimiter:",",unique:!0,
removeWithBackspace:!0,autosize:!0,comfortZone:20,inputPadding:12},b);this.each(function(){d.hide&&a(this).hide();var c=a(this).attr("id");if(!c||g[a(this).attr("id")])c=a(this).attr("id","tags"+(new Date).getTime()).attr("id");var b=jQuery.extend({pid:c,real_input:"#"+c,holder:"#"+c+"_tagsinput",input_wrapper:"#"+c+"_addTag",fake_input:"#"+c+"_tag"},d);g[c]=b.delimiter;if(d.onAddTag||d.onRemoveTag||d.onChange)e[c]=[],e[c].onAddTag=d.onAddTag,e[c].onRemoveTag=d.onRemoveTag,e[c].onChange=d.onChange;
var k='<div id="'+c+'_tagsinput" class="taggingInput '+d.wrapperExtraClass+'"><div id="'+c+'_addTag" class="addTag">';d.interactive&&(k=k+'<input id="'+c+'_tag" value="" data-default="'+d.defaultText+'" />');a(k+'</div><div class="tagsClear"></div></div>').insertAfter(this);a(b.holder).css("width",d.width);a(b.holder).css("min-height",d.height);a(b.holder).css("height","100%");""!=a(b.real_input).val()&&a.fn.tagsInput.importTags(a(b.real_input),a(b.real_input).val());if(d.interactive){a(b.fake_input).val(a(b.fake_input).attr("data-default"));
a(b.fake_input).resetAutosize(d);a(b.holder).bind("click",b,function(b){a(b.data.fake_input).focus()});a(b.fake_input).bind("focus",b,function(b){a(b.data.fake_input).val()==a(b.data.fake_input).attr("data-default")&&a(b.data.fake_input).val("")});if(void 0!=d.autocomplete_url){autocomplete_options={source:d.autocomplete_url};for(attrname in d.autocomplete)autocomplete_options[attrname]=d.autocomplete[attrname];void 0!==jQuery.Autocompleter?(a(b.fake_input).autocomplete(d.autocomplete_url,d.autocomplete),
a(b.fake_input).bind("result",b,function(b,e,f){e&&a("#"+c).addTag(e[0]+"",{focus:!0,unique:d.unique})})):void 0!==jQuery.ui.autocomplete&&(a(b.fake_input).autocomplete(autocomplete_options),a(b.fake_input).bind("autocompleteselect",b,function(b,c){a(b.data.real_input).addTag(c.item.value,{focus:!0,unique:d.unique});return!1}))}a(b.fake_input).bind("keypress",b,function(b){var c=b.which==b.data.delimiter.charCodeAt(0);if(c||13==b.which){if(13==b.which&&0==a(b.data.fake_input).val().length)return!0;
b.preventDefault();var e=a(b.data.fake_input),f=e[0],h=e.val(),g=h.length,k=!1,l=null;try{if("selectionStart"in f)k=f.selectionStart<g,l=f.selectionStart;else if(document.selection){f.focus();var m=document.selection.createRange(),n=m.text.length;m.moveStart("character",-g);l=m.text.length-n;k=l<g}}catch(p){}k&&c?(c=h.substr(0,l),h=h.substr(l),a(b.data.real_input).addTag(c,{focus:!0,unique:d.unique}),e.val(a.trim(h)),f.setSelectionRange&&f.setSelectionRange(0,0)):b.data.minChars<=g&&(!b.data.maxChars||
b.data.maxChars>=g)&&a(b.data.real_input).addTag(h,{focus:!0,unique:d.unique});e.resetAutosize(d);return!1}b.data.autosize&&a(b.data.fake_input).doAutosize(d)});b.removeWithBackspace&&a(b.fake_input).bind("keydown",function(b){if(8==b.keyCode&&""==a(this).val()){b.preventDefault();b=a(this).closest(".taggingInput").find(".tag:last").text();var c=a(this).attr("id").replace(/_tag$/,"");b=b.replace(/[\s]+x$/,"");a("#"+c).removeTag(escape(b));a(this).trigger("focus")}});a(b.fake_input).blur();b.unique&&
a(b.fake_input).keydown(function(b){(8==b.keyCode||String.fromCharCode(b.which).match(/\w+|[\u00e1\u00e9\u00ed\u00f3\u00fa\u00c1\u00c9\u00cd\u00d3\u00da\u00f1\u00d1,/]+/))&&a(this).removeClass("notValid")})}});return this};a.fn.tagsInput.updateTagsField=function(b,d){var c=a(b).attr("id");a(b).val(d.join(g[c]))};a.fn.tagsInput.importTags=function(b,d){a(b).val("");var c=a(b).attr("id");d=d.split(g[c]);for(i=0;i<d.length;i++)a(b).addTag(d[i],{focus:!1,callback:!1});e[c]&&e[c].onChange&&e[c].onChange.call(b,
b,d[i])}})(jQuery);