forked from fooleap/disqus-php-api
-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathiDisqus.min.js
1 lines (1 loc) · 43.4 KB
/
iDisqus.min.js
1
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.iDisqus=t():e.iDisqus=t()}(window,function(){return function(e){var t={};function o(a){if(t[a])return t[a].exports;var i=t[a]={i:a,l:!1,exports:{}};return e[a].call(i.exports,i,i.exports,o),i.l=!0,i.exports}return o.m=e,o.c=t,o.d=function(e,t,a){o.o(e,t)||Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get:a})},o.r=function(e){Object.defineProperty(e,"__esModule",{value:!0})},o.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return o.d(t,"a",t),t},o.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},o.p="",o(o.s=2)}([function(e,t){e.exports=function(e){return e.webpackPolyfill||(e.deprecate=function(){},e.paths=[],e.children||(e.children=[]),Object.defineProperty(e,"loaded",{enumerable:!0,get:function(){return e.l}}),Object.defineProperty(e,"id",{enumerable:!0,get:function(){return e.i}}),e.webpackPolyfill=1),e}},function(e,t,o){(function(e){var a;!function(i){"use strict";var n,r=document,s=localStorage,l=r.scripts,m=l[l.length-1].src,c=(m.substring(0,m.lastIndexOf("/")),navigator.userAgent.indexOf("Edge")>-1),d=!!window.ActiveXObject||"ActiveXObject"in window;function u(e,t,o){var a=new XMLHttpRequest;return a.open("GET",encodeURI(e)),a.onreadystatechange=function(){4==a.readyState&&200==a.status&&t(a.responseText)},a.onerror=o,a.withCredentials=!0,a.send(),a}function p(e,t,o,a){var i="string"==typeof t?t:Object.keys(t).map(function(e){return encodeURIComponent(e)+"="+encodeURIComponent(t[e])}).join("&"),n=new XMLHttpRequest;return n.open("POST",e),n.onreadystatechange=function(){4==n.readyState&&200==n.status&&o(n.responseText)},n.onerror=a,n.withCredentials=!0,n.setRequestHeader("Content-Type","application/x-www-form-urlencoded"),n.send(i),n}"function"!=typeof(n=window.Element.prototype).matches&&(n.matches=n.msMatchesSelector||n.mozMatchesSelector||n.webkitMatchesSelector||function(e){for(var t=(this.document||this.ownerDocument).querySelectorAll(e),o=0;t[o]&&t[o]!==this;)++o;return Boolean(t[o])}),"function"!=typeof n.closest&&(n.closest=function(e){for(var t=this;t&&1===t.nodeType;){if(t.matches(e))return t;t=t.parentNode}return null});var f=function(){this.dom=arguments[0],this.opts=arguments[1],this.init(),this.autologin()};f.prototype={init:function(){var e=this;e.name=s.getItem("name"),e.email=s.getItem("email"),e.url=s.getItem("url"),e.avatar=s.getItem("avatar"),e.type=s.getItem("type"),e.logged_in=s.getItem("logged_in");var t=e.dom.getElementsByClassName("comment-box");"true"==e.logged_in?[].forEach.call(t,function(t){"1"==e.type&&t.querySelector(".comment-form-wrapper").classList.add("logged-in"),t.querySelector(".comment-form-name").value=e.name,t.querySelector(".comment-form-email").value=e.email,t.querySelector(".comment-form-url").value=e.url,t.querySelector(".comment-avatar-image").src=e.avatar}):([].forEach.call(t,function(t){t.querySelector(".comment-form-wrapper").classList.remove("logged-in"),t.querySelector(".comment-form-name").value="",t.querySelector(".comment-form-email").value="",t.querySelector(".comment-form-url").value="",t.querySelector(".comment-avatar-image").src=e.dom.querySelector(".comment-avatar-image").dataset.avatar}),s.setItem("logged_in","false"))},autologin:function(){var e=this;u(e.opts.api+"/user.php",function(t){var o=JSON.parse(t);0==o.code?e.submit(o.response):"1"==e.type&&(s.setItem("logged_in","false"),e.init())},function(){})},login:function(){var e=this,t=window.open(e.opts.api+"/login.php","Disqus Oauth","width=470,height=508");var o=setInterval(function(){t.postMessage("Already logged in?",e.opts.api)},1e3);window.addEventListener("message",function(t){0==t.data.code&&(e.user.submit(t.data.response),clearInterval(o))},!1)},logout:function(){p(this.opts.api+"/logout.php",{},function(e){s.setItem("logged_in","false"),s.removeItem("type"),s.removeItem("email"),s.removeItem("avatar"),s.removeItem("name"),s.removeItem("url")}),this.user.init()},submit:function(e){s.setItem("email",e.email),s.setItem("type",e.type),s.setItem("name",e.name),s.setItem("url",e.url),s.setItem("avatar",e.avatar),s.setItem("logged_in","true"),this.init()}};var v=function(){var e=this;if(e.opts="object"==typeof arguments[1]?arguments[1]:arguments[0],e.dom=r.getElementById("string"==typeof arguments[0]?arguments[0]:"comment"),e.opts.api="/"==e.opts.api.slice(-1)?e.opts.api.slice(0,-1):e.opts.api,e.opts.site=e.opts.site?e.opts.site:location.origin,e.opts.url){var t=e.opts.url.replace(e.opts.site,"");e.opts.url="/"!=t.slice(0,1)?"/"+t:t}else e.opts.url=c||d?encodeURI(location.pathname)+encodeURI(location.search):location.pathname+location.search;e.opts.identifier=e.opts.identifier?e.opts.identifier:e.opts.url,e.opts.link=e.opts.site+e.opts.url,e.opts.title=e.opts.title?e.opts.title:r.title,e.opts.slug=e.opts.slug?e.opts.slug.replace(/[^A-Za-z0-9_-]+/g,""):"",e.opts.desc=e.opts.desc?e.opts.desc:r.querySelector('[name="description"]')?r.querySelector('[name="description"]').content:"",e.opts.mode=e.opts.mode?e.opts.mode:1,e.opts.timeout=e.opts.timeout?e.opts.timeout:3e3,e.opts.toggle=e.opts.toggle?r.getElementById(e.opts.toggle):null,e.opts.emoji_path=e.opts.emoji_path?e.opts.emoji_path:"https://assets-cdn.github.com/images/icons/emoji/unicode/",e.emoji_list=e.opts.emoji_list?e.opts.emoji_list:[{code:"smile",title:"笑脸",unicode:"1f604"},{code:"mask",title:"生病",unicode:"1f637"},{code:"joy",title:"破涕为笑",unicode:"1f602"},{code:"stuck_out_tongue_closed_eyes",title:"吐舌",unicode:"1f61d"},{code:"flushed",title:"脸红",unicode:"1f633"},{code:"scream",title:"恐惧",unicode:"1f631"},{code:"pensive",title:"失望",unicode:"1f614"},{code:"unamused",title:"无语",unicode:"1f612"},{code:"grin",title:"露齿笑",unicode:"1f601"},{code:"heart_eyes",title:"色",unicode:"1f60d"},{code:"sweat",title:"汗",unicode:"1f613"},{code:"smirk",title:"得意",unicode:"1f60f"},{code:"relieved",title:"满意",unicode:"1f60c"},{code:"rolling_eyes",title:"翻白眼",unicode:"1f644"},{code:"ok_hand",title:"OK",unicode:"1f44c"},{code:"v",title:"胜利",unicode:"270c"}],e.opts.emoji_preview&&u(e.opts.api+"/eac.min.php",function(t){e.eac=JSON.parse(t)},function(){}),e.stat={current:"idisqus",loaded:!1,loading:!1,editing:!1,offsetTop:0,thread:null,next:null,message:null,mediaHtml:null,root:[],count:0,users:[],imageSize:[],disqusLoaded:!1},window.disqus_config=function(){this.page.identifier=e.opts.identifier,this.page.title=e.opts.title,this.page.url=e.opts.link,this.callbacks.onReady.push(function(){e.stat.current="disqus",e.stat.disqusLoaded=!0,e.dom.querySelector("#idisqus").style.display="none",e.dom.querySelector("#disqus_thread").style.display="block",3==e.opts.mode&&e.opts.toggle&&(e.opts.toggle.disabled="",e.opts.toggle.checked=!0,e.opts.toggle.addEventListener("change",e.handle.toggle,!1))})},e.opts.init&&e.init()};v.prototype.timeAgo=function(){var e=this,t={prefix:"",suffix:"前",seconds:"几秒",minute:"1分钟",minutes:"%d分钟",hour:"1小时",hours:"%d小时",day:"1天",days:"%d天",month:"1个月",months:"%d个月",year:"1年",years:"%d年"},o=function(e,o){return t[e]&&t[e].replace(/%d/i,Math.abs(Math.round(o)))},a=function(e){if(e){e=(e=(e=(e=e.replace(/\.\d+/,"")).replace(/-/,"/").replace(/-/,"/")).replace(/T/," ").replace(/Z/," UTC")).replace(/([\+\-]\d\d)\:?(\d\d)/," $1$2"),e=new Date(1e3*e||e);var a=.001*((new Date).getTime()-e)>>0,i=a/60,n=i/60,r=n/24,s=r/365;return t.prefix+(a<45&&o("seconds",a)||a<90&&o("minute",1)||i<45&&o("minutes",i)||i<90&&o("hour",1)||n<24&&o("hours",n)||n<42&&o("day",1)||r<30&&o("days",r)||r<45&&o("month",1)||r<365&&o("months",r/30)||s<1.5&&o("year",1)||o("years",s))+t.suffix}},i=e.dom.querySelectorAll(".comment-item-time");for(var n in i){var r=i[n];"object"==typeof r&&(r.title=new Date(r.getAttribute("datetime")),r.innerHTML=a(r.getAttribute("datetime")))}setTimeout(e.timeAgo.bind(e),6e4)},v.prototype.init=function(){var e=this;if(e.dom){var t="";switch(e.emoji_list.forEach(function(o){t+='<li class="emojione-item" title="'+o.title+'" data-code=":'+o.code+':"><img class="emojione-item-image" src="'+e.opts.emoji_path+o.unicode+'.png" /></li>'}),e.dom.innerHTML='<div class="comment loading" id="idisqus">\n <div class="loading-container" data-tip="正在加载评论……"><svg class="loading-bg" width="72" height="72" viewBox="0 0 720 720" version="1.1" xmlns="http://www.w3.org/2000/svg"><path class="ring" fill="none" stroke="#9d9ea1" d="M 0 -260 A 260 260 0 1 1 -80 -260" transform="translate(400,400)" stroke-width="50" /><polygon transform="translate(305,20)" points="50,0 0,100 18,145 50,82 92,145 100,100" style="fill:#9d9ea1"/></svg></div>\n <div class="comment-header"><span class="comment-header-item" id="comment-count">评论</span><a target="_blank" class="comment-header-item" id="comment-link">Disqus 讨论区</a></div>\n <div class="comment-box">\n <div class="comment-avatar avatar"><img class="comment-avatar-image" src="//a.disquscdn.com/images/noavatar92.png" data-avatar="//a.disquscdn.com/images/noavatar92.png"></div>\n <div class="comment-form">\n <div class="comment-form-wrapper">\n <textarea class="comment-form-textarea" placeholder="加入讨论……"></textarea>\n <div class="comment-form-alert"></div>\n <div class="comment-image">\n <ul class="comment-image-list"></ul>\n <div class="comment-image-progress">\n <div class="comment-image-loaded"></div>\n </div>\n </div>\n <div class="comment-actions">\n <div class="comment-actions-group">\n <input id="emoji-input" class="comment-actions-input" type="checkbox"> \n <label class="comment-actions-label emojione" for="emoji-input">\n <svg class="icon" fill="#c2c6cc" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200">\n <g>\n <title>选择表情</title>\n <path d="M512 1024c-282.713043 0-512-229.286957-512-512s229.286957-512 512-512c282.713043 0 512 229.286957 512 512S792.486957 1024 512 1024zM512 44.521739c-258.226087 0-467.478261 209.252174-467.478261 467.478261 0 258.226087 209.252174 467.478261 467.478261 467.478261s467.478261-209.252174 467.478261-467.478261C979.478261 253.773913 768 44.521739 512 44.521739z"></path>\n <path d="M801.391304 554.295652c0 160.278261-129.113043 289.391304-289.391304 289.391304s-289.391304-129.113043-289.391304-289.391304L801.391304 554.295652z"></path>\n <path d="M674.504348 349.495652m-57.878261 0a2.6 2.6 0 1 0 115.756522 0 2.6 2.6 0 1 0-115.756522 0Z"></path>\n <path d="M347.269565 349.495652m-57.878261 0a2.6 2.6 0 1 0 115.756522 0 2.6 2.6 0 1 0-115.756522 0Z"></path>\n </g>\n </svg>\n <ul class="emojione-list">'+t+'</ul>\n </label>\n <input id="upload-input" class="comment-actions-input comment-image-input" type="file" accept="image/*" name="file"> \n <label class="comment-actions-label" for="upload-input">\n <svg class="icon" fill="#c2c6cc" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200">\n <g>\n <title>上传图片</title>\n <path d="M15.515152 15.515152 15.515152 15.515152 15.515152 15.515152Z"></path>\n <path d="M15.515152 139.636364l0 806.787879 992.969697 0 0-806.787879-992.969697 0zM946.424242 884.363636l-868.848485 0 0-682.666667 868.848485 0 0 682.666667zM698.181818 356.848485c0-51.417212 41.673697-93.090909 93.090909-93.090909s93.090909 41.673697 93.090909 93.090909c0 51.417212-41.673697 93.090909-93.090909 93.090909s-93.090909-41.673697-93.090909-93.090909zM884.363636 822.30303l-744.727273 0 186.181818-496.484848 248.242424 310.30303 124.121212-93.090909z"></path>\n </g>\n </svg>\n </label>\n </div>\n <div class="comment-actions-form">\n <label class="comment-actions-label exit" title="退出登录">\n <svg class="icon" fill="#c2c6cc" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="48" height="48">\n <path d="M348.870666 210.685443l378.570081 0c32.8205 0 58.683541 26.561959 58.683541 58.683541 0 162.043606 0 324.804551 0 486.848157 0 32.81129-26.561959 58.674331-58.683541 58.674331L348.870666 814.891472c-10.477632 0-18.850323-8.363482-18.850323-18.841114l0-37.728276c0-10.477632 8.372691-18.841114 18.850323-18.841114l343.645664 0c10.477632 0 18.850323-8.372691 18.850323-18.850323L711.366653 304.983109c0-10.477632-8.372691-18.841114-18.850323-18.841114L348.870666 286.141996c-10.477632 0-18.850323-8.363482-18.850323-18.841114l0-37.728276C329.98248 219.095997 338.393034 210.685443 348.870666 210.685443z"></path>\n <path d="M128.152728 526.436804l112.450095 112.450095c6.985088 6.985088 19.567661 6.985088 26.552749 0l26.561959-26.561959c6.985088-6.985088 6.985088-19.567661 0-26.552749l-34.925441-34.925441L494.168889 550.84675c10.477632 0 18.850323-8.372691 18.850323-18.850323l0-37.719066c0-10.477632-8.372691-18.850323-18.850323-18.850323L258.754229 475.427036l34.925441-34.925441c6.985088-6.985088 6.985088-19.567661 0-26.552749l-26.561959-26.524097c-6.985088-6.985088-19.567661-6.985088-26.552749 0L128.152728 499.875868C120.431883 506.859933 120.431883 519.451716 128.152728 526.436804z"></path>\n </svg>\n </label>\n <button class="comment-form-submit">\n <svg class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200">\n <path d="M565.747623 792.837176l260.819261 112.921839 126.910435-845.424882L66.087673 581.973678l232.843092 109.933785 562.612725-511.653099-451.697589 563.616588-5.996574 239.832274L565.747623 792.837176z" fill="#ffffff"></path>\n </svg>\n </button>\n </div>\n </div>\n </div>\n <div class="comment-form-user">'+(1!=e.opts.mode?'<div class="comment-form-auth"><button class="comment-form-login" title="使用 Disqus 帐号登录"><svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 200 200"><path fill="#2E9FFF" d="M102.535 167.5c-16.518 0-31.621-6.036-43.298-16.021L30.5 155.405l11.102-27.401A67.658 67.658 0 0 1 35.564 100c0-37.277 29.984-67.5 66.971-67.5 36.984 0 66.965 30.223 66.965 67.5 0 37.284-29.98 67.5-66.965 67.5zm36.567-67.693v-.188c0-19.478-13.736-33.367-37.42-33.367h-25.58v67.5h25.201c23.868.001 37.799-14.468 37.799-33.945zm-37.138 17.361h-7.482V82.841h7.482c10.989 0 18.283 6.265 18.283 17.07v.188c0 10.896-7.294 17.069-18.283 17.069z"/></svg></button></div><span> 或 </span>':"")+'<div class="comment-form-guest"><input class="comment-form-input comment-form-name" type="text" placeholder="名字(必填)" autocomplete="name"><input class="comment-form-input comment-form-email" type="email" placeholder="邮箱(必填)" autocomplete="email"><input class="comment-form-input comment-form-url" type="url" placeholder="网址(可选)" autocomplete="url"></div></div>\n </div>\n </div>\n <ul id="comments" class="comment-list"></ul>\n <a href="javascript:;" class="comment-loadmore">加载更多</a>\n</div>\n<div class="comment" id="disqus_thread"></div>',e.user=new f(e.dom,e.opts),e.box=e.dom.querySelector(".comment-box").outerHTML.replace(/<label class="comment-actions-label exit"(.|\n)*<\/label>\n/,"").replace("comment-form-wrapper","comment-form-wrapper editing").replace(/加入讨论……/,""),e.handle={logout:e.user.logout.bind(e),login:e.user.login.bind(e),loadMore:e.loadMore.bind(e),post:e.post.bind(e),postThread:e.postThread.bind(e),remove:e.remove.bind(e),show:e.show.bind(e),toggle:e.toggle.bind(e),upload:e.upload.bind(e),verify:e.verify.bind(e),jump:e.jump.bind(e),mention:e.mention.bind(e),keySelect:e.keySelect.bind(e),field:e.field,focus:e.focus,input:e.input},e.opts.mode){case 1:e.disqus();break;case 2:e.getlist();break;case 3:e.getlist(),e.disqus();break;default:e.disqus()}}},v.prototype.toggle=function(){var e=this;"disqus"==e.stat.current?(e.stat.current="idisqus",e.dom.querySelector("#idisqus").style.display="block",e.dom.querySelector("#disqus_thread").style.display="none"):e.disqus()},v.prototype.disqus=function(){var e=this;e.dom.querySelector(".loading-container").dataset.tip;if(e.opts.site==location.origin)if(e.stat.disqusLoaded)e.stat.current="disqus",e.dom.querySelector("#idisqus").style.display="none",e.dom.querySelector("#disqus_thread").style.display="block";else{"尝试连接 Disqus……";var t=r.createElement("script");t.src="//"+e.opts.forum+".disqus.com/embed.js",t.dataset.timestamp=Date.now(),t.onload=function(){e.stat.disqusLoaded=!0,"连接成功,加载 Disqus 评论框……"},t.onerror=function(){1==e.opts.mode&&("连接失败,加载简易评论框……",e.getlist())};var o=new XMLHttpRequest;o.open("GET","//disqus.com/next/config.json?"+Date.now(),!0),o.timeout=e.opts.timeout,o.onreadystatechange=function(){4==o.readyState&&200==o.status&&(r.head||r.body).appendChild(t)},o.ontimeout=function(){o.abort(),1==e.opts.mode&&("连接超时,加载简易评论框……",e.getlist())},o.onerror=function(){1==e.opts.mode&&("连接失败,加载简易评论框……",e.getlist())},o.send()}else 1==e.opts.mode&&e.getlist()},v.prototype.addListener=function(e,t,o){var a=this.dom.getElementsByClassName(e);[].forEach.call(a,function(e){e.addEventListener(t,o,!1)})},v.prototype.removeListener=function(e,t,o){var a=this.dom.getElementsByClassName(e);[].forEach.call(a,function(e){e.removeEventListener(t,o,!1)})},v.prototype.addAllListeners=function(){var e=this;e.addListener("exit","click",e.handle.logout),e.addListener("comment-form-textarea","blur",e.handle.focus),e.addListener("comment-form-textarea","focus",e.handle.focus),e.addListener("comment-form-textarea","input",e.handle.input),e.addListener("comment-form-textarea","keyup",e.handle.mention),e.addListener("comment-form-email","blur",e.handle.verify),e.addListener("comment-form-submit","click",e.handle.post),e.addListener("comment-form-login","click",e.handle.login),e.addListener("comment-image-input","change",e.handle.upload),e.addListener("emojione-item","click",e.handle.field)},v.prototype.count=function(){var e=r.querySelectorAll("[data-disqus-url]"),t=e.length;if(t>0){for(var o=[],a=0;a<t;a++)o[a]=e[a].dataset.disqusUrl.replace(this.opts.site,"");u(this.opts.api+"/count.php?links="+o.join(","),function(e){JSON.parse(e).response.forEach(function(e){var t=document.createElement("a");t.href=e.link;var o=t.href.replace(t.origin,""),a=r.querySelector('[data-disqus-url$="'+o+'"]');a&&(a.innerHTML=e.posts,a.dataset.disqusCount=e.posts)})},function(){console.log("获取数据失败!")})}},v.prototype.popular=function(){var e=this;e.opts.popular&&u(e.opts.api+"/popular.php",function(t){var o=JSON.parse(t);if(0==o.code){var a="";o.response.forEach(function(t){a+='<li><a href="'+t.link.replace(e.opts.site,"")+'" title="'+t.title+'">'+t.title+"</a></li>"}),e.opts.popular.innerHTML=a}},function(){console.log("获取数据失败!")})},v.prototype.getlist=function(){var e=this;e.stat.loading=!0,e.dom.querySelector("#idisqus").style.display="block",e.dom.querySelector("#disqus_thread").style.display="none",u(e.opts.api+"/getcomments.php?link="+e.opts.url+(e.stat.next?"&cursor="+e.stat.next:""),function(t){var o=JSON.parse(t);if(0===o.code){e.stat.offsetTop=r.documentElement.scrollTop||r.body.scrollTop,e.stat.thread=o.thread,e.stat.count=o.posts,e.opts.avatar=o.forum.avatar,e.dom.querySelector(".comment-avatar-image").dataset.avatar=o.forum.avatar,"false"==e.user.logged_in&&(e.dom.querySelector(".comment-avatar-image").src=o.forum.avatar),e.opts.badge=o.forum.moderatorBadgeText,e.dom.querySelector("#idisqus").classList.remove("loading"),e.dom.querySelector("#comment-link").href=o.link,e.dom.querySelector("#comment-count").innerHTML=e.stat.count+" 条评论";var a=e.dom.querySelector(".comment-loadmore"),i=o.response?o.response:[];if(e.stat.root=[],i.forEach(function(t){e.load(t),t.parent||e.stat.root.unshift(t.id)}),o.cursor.hasPrev?e.stat.root.forEach(function(t){e.dom.querySelector(".comment-list").appendChild(e.dom.querySelector("#comment-"+t))}):(a.addEventListener("click",e.handle.loadMore,!1),e.addAllListeners()),o.cursor.hasNext?(e.stat.next=o.cursor.next,a.classList.remove("loading")):(e.stat.next=null,a.classList.add("hide")),0==i.length)return;if(window.scrollTo(0,e.stat.offsetTop),e.timeAgo(),/^#disqus|^#comment/.test(location.hash)&&!o.cursor.hasPrev&&!e.stat.disqusLoaded){var n=e.dom.querySelector("#idisqus "+location.hash);window.scrollBy(0,n.getBoundingClientRect().top)}e.stat.loading=!1,e.stat.loaded=!0}else 2===o.code&&e.create()},function(){alert("获取数据失败,请检查服务器设置。")})},v.prototype.load=function(e){var t=this,o=t.dom.querySelector('.comment-item[data-id="'+e.parent+'"]'),a={username:e.username,name:e.name,avatar:e.avatar};e.username&&-1==t.stat.users.map(function(e){return e.username}).indexOf(e.username)&&t.stat.users.push(a);var i=e.parent?{name:'<a class="comment-item-pname" href="#'+o.id+'"><svg class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><path d="M1.664 902.144s97.92-557.888 596.352-557.888V129.728L1024 515.84l-425.984 360.448V628.8c-270.464 0-455.232 23.872-596.352 273.28"></path></svg>'+o.dataset.name+"</a>",dom:o.querySelector(".comment-item-children"),insert:"afterbegin"}:{name:"",dom:t.dom.querySelector(".comment-list"),insert:"preview"==e.id||e.isPost?"afterbegin":"beforeend"},n="";1==e.media.length?n='<div class="comment-item-images"><a class="comment-item-image" target="_blank" href="'+e.media[0]+'" style="background-image: url('+e.media[0]+');width: 167px;height: 167px"></a></div>':e.media.length>1&&(e.media.forEach(function(e){n+='<a class="comment-item-image" target="_blank" href="'+e+'" style="background-image: url('+e+')"></a>'}),n='<div class="comment-item-images">'+n+"</div>");var r='<li class="comment-item" data-id="'+e.id+'" data-name="'+e.name+'" id="comment-'+e.id+'"><div class="comment-item-body"><a class="comment-item-avatar" href="#comment-'+e.id+'"><img src="'+e.avatar+'"></a><div class="comment-item-main"><div class="comment-item-header"><a class="comment-item-name" title="'+e.name+'" rel="nofollow" target="_blank" href="'+(e.url?e.url:"javascript:;")+'">'+e.name+"</a>"+(e.isMod?'<span class="comment-item-badge">'+t.opts.badge+"</span>":"")+i.name+'<span class="comment-item-bullet"> • </span><time class="comment-item-time" datetime="'+e.createdAt+'"></time></div><div class="comment-item-content">'+e.message+n+'</div><div class="comment-item-footer">'+(e.isPost?'<span class="comment-item-manage"><a class="comment-item-edit" href="javascript:;">编辑</a><span class="comment-item-bullet"> • </span><a class="comment-item-delete" href="javascript:;">删除</a><span class="comment-item-bullet"> • </span></span>':"")+'<a class="comment-item-reply" href="javascript:;">回复</a> </div></div></div><ul class="comment-item-children"></ul></li>';if(e.isDeleted&&(r='<li class="comment-item" data-id="'+e.id+'" id="comment-'+e.id+'" data-name="已删除"><div class="comment-item-body"><a class="comment-item-avatar" href="#comment-'+e.id+'"><img src="'+e.avatar+'"></a><div class="comment-item-main" data-message="此评论已被删除。"></div></div><ul class="comment-item-children"></ul></li>'),t.dom.querySelector('.comment-item[data-id="'+e.id+'"]')?t.dom.querySelector('.comment-item[data-id="'+e.id+'"]').outerHTML=r:i.dom.insertAdjacentHTML(i.insert,r),e.isDeleted||(t.dom.querySelector('.comment-item[data-id="'+e.id+'"] .comment-item-reply').addEventListener("click",t.handle.show,!1),t.dom.querySelector('.comment-item[data-id="'+e.id+'"] .comment-item-avatar').addEventListener("click",t.handle.jump,!1),e.parent&&t.dom.querySelector('.comment-item[data-id="'+e.id+'"] .comment-item-pname').addEventListener("click",t.handle.jump,!1)),e.isPost&&!t.stat.editing){var s=t.dom.querySelector('.comment-item[data-id="'+e.id+'"]'),l=setTimeout(function(){s.querySelector(".comment-item-manage")&&(s.querySelector(".comment-item-manage").outerHTML="")},6e5);s.querySelector(".comment-item-delete").addEventListener("click",function(o){var a={id:e.id};o.currentTarget.innerHTML="删除中",p(t.opts.api+"/removecomment.php",a,function(e){var t=JSON.parse(e);0===t.code?1==t.response.isDeleted?s.outerHTML="":(alert(t.response.message),s.querySelector(".comment-item-manage").outerHTML=""):2===t.code&&(alert(t.response),s.querySelector(".comment-item-manage").outerHTML="")},function(){alert("删除出错,请稍后重试")}),clearTimeout(l)},!1),s.querySelector(".comment-item-edit").addEventListener("click",function(){t.stat.editing=e,t.edit(e)},!1)}},v.prototype.loadMore=function(e){this.stat.loading||(e.currentTarget.classList.add("loading"),this.getlist())},v.prototype.focus=function(e){var t=e.currentTarget.closest(".comment-form-wrapper");t.classList.add("editing"),t.classList.contains("focus")?t.classList.remove("focus"):t.classList.add("focus")},v.prototype.input=function(e){e.currentTarget.closest(".comment-form").querySelector(".comment-form-alert").innerHTML=""},v.prototype.mention=function(e){var t=this,o=e.currentTarget,a=o.selectionStart,i=o.value.slice(0,a).lastIndexOf("@"),n=o.value.slice(i,a),r=t.dom.querySelector(".mention-user");if(0==n.search(/^@\w+$|^@$/)){if(38==e.keyCode||40==e.keyCode)return;var s=t.stat.users.filter(function(e){var t=new RegExp(n.slice(1),"i");return e.username.search(t)>-1}),l=t.getCaretCoord(o),m="",c="";s.length>0?(s.forEach(function(e,t){m+='<li class="mention-user-item'+(0==t?" active":"")+'" data-username="'+e.username+'"><img class="mention-user-avatar" src="'+e.avatar+'"><div class="mention-user-username">'+e.username+'</div><div class="mention-user-name">'+e.name+"</div></li>"}),r?(r.innerHTML='<ul class="mention-user-list">'+m+"</ul>",r.style.left=l.left+"px",r.style.top=l.top+"px"):(c='<div class="mention-user" style="left:'+l.left+"px;top:"+l.top+'px"><ul class="mention-user-list">'+m+"</ul></div>",t.dom.querySelector("#idisqus").insertAdjacentHTML("beforeend",c)),t.addListener("mention-user-item","mouseover",function(){t.dom.querySelector(".mention-user-item.active").classList.remove("active"),this.classList.add("active")}),t.addListener("mention-user-item","click",function(){var e="@"+this.dataset.username+" ";o.value=o.value.slice(0,i)+e+o.value.slice(a),t.dom.querySelector(".mention-user").outerHTML="",o.focus(),o.setSelectionRange(i+e.length,i+e.length),o.removeEventListener("keydown",t.handle.keySelect,!1)}),o.addEventListener("keydown",t.handle.keySelect,!1)):r&&(r.outerHTML="",o.removeEventListener("keydown",t.handle.keySelect,!1))}else r&&(r.outerHTML="",o.removeEventListener("keydown",t.handle.keySelect,!1))},v.prototype.getCaretCoord=function(e){var t=e.selectionEnd,o=r.createElement("div"),a=r.createElement("span"),i=getComputedStyle(e);[].forEach.call(i,function(e){o.style[e]=i[e]}),o.style.position="absolute",this.dom.appendChild(o),o.textContent=e.value.substr(0,t),a.textContent=e.value.substr(t)||".",o.appendChild(a);var n={top:e.offsetTop-e.scrollTop+a.offsetTop+parseFloat(i.lineHeight),left:e.offsetLeft-e.scrollLeft+a.offsetLeft};return this.dom.removeChild(o),n},v.prototype.keySelect=function(e){var t=this,o=e.currentTarget,a=o.selectionStart,i=o.value.slice(0,a).lastIndexOf("@"),n=(o.value.slice(i,a),t.dom.querySelector(".mention-user"),t.dom.querySelector(".mention-user-item.active"));switch(e.keyCode){case 13:var r="@"+n.dataset.username+" ";o.value=o.value.slice(0,i)+r+o.value.slice(a),o.setSelectionRange(i+r.length,i+r.length),t.dom.querySelector(".mention-user").outerHTML="",o.removeEventListener("keydown",t.handle.keySelect,!1),e.preventDefault();break;case 38:n.previousSibling&&(n.previousSibling.classList.add("active"),n.classList.remove("active")),e.preventDefault();break;case 40:n.nextSibling&&(n.nextSibling.classList.add("active"),n.classList.remove("active")),e.preventDefault()}},v.prototype.jump=function(e){var t,o,a=e.currentTarget,i=(t=a.href,o=r.createElement("a"),o.href=t,o).hash,n=this.dom.querySelector("#idisqus "+i);history.replaceState(void 0,void 0,i),window.scrollBy(0,n.getBoundingClientRect().top),e.preventDefault()},v.prototype.field=function(e){var t=e.currentTarget,o=t.closest(".comment-form").querySelector(".comment-form-textarea"),a=o.selectionStart,i=0==a?t.dataset.code+" ":" "+t.dataset.code+" ";o.value=o.value.slice(0,a)+i+o.value.slice(a),o.focus(),o.setSelectionRange(a+i.length,a+i.length)},v.prototype.show=function(e){var t=this,o=e.currentTarget,a=o.closest(".comment-item"),i=t.dom.querySelector(".comment-item .comment-box:not([data-current-id])");if(i){var n=i.closest(".comment-item").querySelector(".comment-item-cancel");n.outerHTML=n.outerHTML.replace("cancel","reply"),i.outerHTML=""}if("comment-item-reply"==o.className){o.outerHTML=o.outerHTML.replace("reply","cancel");var r=t.box.replace(/emoji-input/g,"emoji-input-"+a.dataset.id).replace(/upload-input/g,"upload-input-"+a.dataset.id);a.querySelector(".comment-item-children").insertAdjacentHTML("beforebegin",r),t.user.init(),t.addAllListeners(),a.querySelector(".comment-form-textarea").focus()}t.addListener("comment-item-reply","click",t.handle.show),t.addListener("comment-item-cancel","click",t.handle.show)},v.prototype.verify=function(e){var t=this,o=e.currentTarget.closest(".comment-box"),a=o.querySelector(".comment-avatar-image"),i=o.querySelector(".comment-form-email");o.querySelector(".comment-form-alert");/^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,}$/i.test(i.value)&&u(t.opts.api+"/getgravatar.php?email="+i.value,function(e){"false"==e?t.errorTips("您所填写的邮箱地址有误。",i):a.src=e},function(){})},v.prototype.upload=function(e){var t=this,o=e.currentTarget,a=o.closest(".comment-form"),i=a.querySelector(".comment-image-progress"),n=a.querySelector(".comment-image-loaded"),r=a.querySelector(".comment-form-wrapper"),s=a.querySelector(".comment-form-alert");if(s.innerHTML="",0!==o.files.length){var l=o.files[0].size;if(l>5e6)return s.innerHTML="请选择 5M 以下图片。",void setTimeout(function(){s.innerHTML=""},3e3);if(-1!=t.stat.imageSize.indexOf(l))return s.innerHTML="请勿选择已存在的图片。",void setTimeout(function(){s.innerHTML=""},3e3);i.style.width="80px",r.classList.add("expanded");var m=new FormData;m.append("file",o.files[0]);var c,d=o.files[0].name,u=new XMLHttpRequest;u.onreadystatechange=function(){if(4==u.readyState&&200==u.status){var e=JSON.parse(u.responseText);if(0==e.code){t.stat.imageSize.push(l);var o=e.response[d].url,i=new Image;i.src=o,i.onload=function(){c.innerHTML='<img class="comment-image-object" src="'+o+'">',c.dataset.imageUrl=o,c.classList.remove("loading"),c.addEventListener("click",t.handle.remove,!1)}}else s.innerHTML="图片上传出错。",c.innerHTML="",a.getElementsByClassName("comment-image-item").length&&r.classList.remove("expanded"),setTimeout(function(){s.innerHTML=""},3e3)}},u.upload.addEventListener("progress",function(e){n.style.width=Math.ceil(e.loaded/e.total*100)+"%"},!1),u.upload.addEventListener("load",function(e){n.style.width=0,i.style.width=0;var t='<li class="comment-image-item loading" data-image-size="'+l+'">\n <svg version="1.1" class="comment-image-object" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"\n width="24px" height="30px" viewBox="0 0 24 30" style="enable-background: new 0 0 50 50;" xml:space="preserve">\n <rect x="0" y="10" width="4" height="10" fill="rgba(127,145,158,1)" opacity="0.2">\n <animate attributeName="opacity" attributeType="XML" values="0.2; 1; .2" begin="0s" dur="0.6s" repeatCount="indefinite" />\n <animate attributeName="height" attributeType="XML" values="10; 20; 10" begin="0s" dur="0.6s" repeatCount="indefinite" />\n <animate attributeName="y" attributeType="XML" values="10; 5; 10" begin="0s" dur="0.6s" repeatCount="indefinite" />\n </rect>\n <rect x="8" y="10" width="4" height="10" fill="rgba(127,145,158,1)" opacity="0.2">\n <animate attributeName="opacity" attributeType="XML" values="0.2; 1; .2" begin="0.15s" dur="0.6s" repeatCount="indefinite" />\n <animate attributeName="height" attributeType="XML" values="10; 20; 10" begin="0.15s" dur="0.6s" repeatCount="indefinite" />\n <animate attributeName="y" attributeType="XML" values="10; 5; 10" begin="0.15s" dur="0.6s" repeatCount="indefinite" />\n </rect>\n <rect x="16" y="10" width="4" height="10" fill="rgba(127,145,158,1)" opacity="0.2">\n <animate attributeName="opacity" attributeType="XML" values="0.2; 1; .2" begin="0.3s" dur="0.6s" repeatCount="indefinite" />\n <animate attributeName="height" attributeType="XML" values="10; 20; 10" begin="0.3s" dur="0.6s" repeatCount="indefinite" />\n <animate attributeName="y" attributeType="XML" values="10; 5; 10" begin="0.3s" dur="0.6s" repeatCount="indefinite" />\n </rect>\n </svg>\n</li>\n';a.querySelector(".comment-image-list").insertAdjacentHTML("beforeend",t),c=a.querySelector('[data-image-size="'+l+'"]')},!1),u.open("POST",t.opts.api+"/upload.php",!0),u.send(m)}},v.prototype.remove=function(e){var t=this,o=e.currentTarget.closest(".comment-image-item"),a=e.currentTarget.closest(".comment-form-wrapper");o.outerHTML="",t.stat.imageSize=[];var i=a.getElementsByClassName("comment-image-item");[].forEach.call(i,function(e,o){t.stat.imageSize[o]=e.dataset.imageSize}),0==t.stat.imageSize.length&&a.classList.remove("expanded"),a.querySelector(".comment-image-input").value=""},v.prototype.errorTips=function(e,t){var o=this;"true"==o.user.logged_in&&o.handle.logout();var a=o.dom.querySelector("#idisqus"),i=o.dom.querySelector(".comment-form-error");i&&(i.outerHTML="");var n='<div class="comment-form-error" style="top:'+t.offsetTop+"px;left:"+t.offsetLeft+'px;">'+e+"</div>";a.insertAdjacentHTML("beforeend",n),setTimeout(function(){var e=o.dom.querySelector(".comment-form-error");e&&(e.outerHTML="")},3e3)},v.prototype.post=function(e){var t=this,o=e.currentTarget.closest(".comment-box[data-current-id]")||e.currentTarget.closest(".comment-item")||e.currentTarget.closest(".comment-box"),a=o.querySelector(".comment-form-textarea").value,i=o.dataset.id?o.dataset.id:"",n=o.getElementsByClassName("comment-image-item"),r=[],s="";if([].forEach.call(n,function(e,t){r[t]=e.dataset.imageUrl,s+=" "+e.dataset.imageUrl}),!o.dataset.currentId){var l=o.querySelector(".comment-form-name"),m=o.querySelector(".comment-form-email"),c=o.querySelector(".comment-form-url"),d={name:l.value,email:m.value,url:c.value.replace(/\s/g,""),avatar:o.querySelector(".comment-avatar-image").src,type:0},u=o.querySelector(".comment-form-alert"),f=function(){setTimeout(function(){u.innerHTML=""},3e3)};if("1"!=t.user.type){if(/^\s*$/i.test(d.name))return void t.errorTips("名字不能为空。",l);if(/^\s*$/i.test(d.email))return void t.errorTips("邮箱不能为空。",m);if(!/^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,}$/i.test(d.email))return void t.errorTips("请正确填写邮箱。",m);if(!/^([hH][tT]{2}[pP]:\/\/|[hH][tT]{2}[pP][sS]:\/\/)(([A-Za-z0-9-~]+)\.)+([A-Za-z0-9-~\/])+$|^\s*$/i.test(d.url))return void t.errorTips("请正确填写网址。",c);if(t.user.submit(d),!t.user.name&&!t.user.email)return}if(t.stat.message||t.stat.mediaHtml||(t.box=t.dom.querySelector(".comment-box").outerHTML.replace(/<label class="comment-actions-label exit"(.|\n)*<\/label>\n/,"").replace("comment-form-wrapper","comment-form-wrapper editing").replace(/加入讨论……/,"")),0==r.length&&/^\s*$/i.test(a))return u.innerHTML="评论不能为空或空格。",void o.querySelector(".comment-form-textarea").focus();var v=a;t.opts.emoji_preview?v=v.replace(/:([-+\w]+):/g,function(e){var o=e.replace(/:/g,"");return t.eac[o]?'<img class="emojione" width="24" height="24" alt="'+o+'" title=":'+o+':" src="'+t.opts.emoji_path+t.eac[o]+'.png">':e}):t.emoji_list.forEach(function(e){v=v.replace(":"+e.code+":",'<img class="emojione" width="24" height="24" src="'+t.opts.emoji_path+e.unicode+'.png" />')});var g={url:t.user.url?t.user.url:"",isMod:!1,username:null,name:t.user.name,avatar:t.user.avatar,id:"preview",parent:i,createdAt:(new Date).toJSON(),message:"<p>"+v+"</p>",media:r};t.load(g),t.timeAgo(),t.stat.message=a,t.stat.mediaHtml=o.querySelector(".comment-image-list").innerHTML,i?o.querySelector(".comment-item-cancel").click():(o.querySelector(".comment-form-textarea").value="",o.querySelector(".comment-image-list").innerHTML="",o.querySelector(".comment-form-wrapper").classList.remove("expanded","editing"))}var h=a.match(/@\w+/g);if(h&&(h=h.filter(function(e){return t.stat.users.map(function(e){return e.username}).indexOf(e.slice(1))>-1})).length>0){var y=new RegExp("("+h.join("|")+")","g");a=a.replace(y,"$1:disqus")}if(a+=s,o.dataset.currentId){var b={id:o.dataset.currentId,message:a};p(t.opts.api+"/updatecomment.php",b,function(e){var o=JSON.parse(e);if(0===o.code){t.stat.message=null,t.stat.mediaHtml=null;var a=o.response;t.load(a),t.timeAgo(),t.stat.editing=!1}else t.load(t.stat.editing),t.timeAgo(),t.stat.editing=!1},function(){t.load(t.stat.editing),t.timeAgo(),t.stat.editing=!1})}else{b={thread:t.stat.thread,parent:i,message:a,name:t.user.name,email:t.user.email,url:t.user.url,link:t.opts.url,title:t.opts.title};p(t.opts.api+"/postcomment.php",b,function(e){var a=JSON.parse(e);if(0===a.code){t.dom.querySelector('.comment-item[data-id="preview"]').outerHTML="",t.stat.count+=1,t.dom.querySelector("#comment-count").innerHTML=t.stat.count+" 条评论";var i=a.response;i.isPost=!0,t.load(i),t.timeAgo()}else 2===a.code&&(u.innerHTML=a.response,t.dom.querySelector('.comment-item[data-id="preview"]').outerHTML="",t.reEdit(o),a.response.indexOf("author")>-1&&t.handle.logout())},function(){u.innerHTML="提交出错,请稍后重试。",f(),t.dom.querySelector('.comment-item[data-id="preview"]').outerHTML="",t.reEdit(o)})}},v.prototype.reEdit=function(e){var t=this;e.dataset.id?e.querySelector(".comment-item-reply").click():e.querySelector(".comment-form-wrapper").classList.add("editing"),t.stat.message&&(e.querySelector(".comment-form-textarea").value=t.stat.message),t.stat.mediaHtml&&(e.querySelector(".comment-form-wrapper").classList.add("expanded"),e.querySelector(".comment-image-list").innerHTML=t.stat.mediaHtml,t.addListener("comment-image-item","click",t.handle.remove))},v.prototype.edit=function(e){var t=this,o=t.box.replace("comment-box","comment-box comment-box-"+e.id).replace(/emoji-input/g,"emoji-input-"+e.id).replace(/upload-input/g,"upload-input-"+e.id);t.dom.querySelector('.comment-item[data-id="'+e.id+'"] .comment-item-body').outerHTML=o,t.user.init();var a=t.dom.querySelector(".comment-box-"+e.id);a.dataset.currentId=e.id,t.addAllListeners(),a.querySelector(".comment-form-textarea").focus(),a.querySelector(".comment-actions-form").insertAdjacentHTML("afterbegin",'<a class="comment-form-cancel" href="javascript:;">取消</a>'),a.querySelector(".comment-form-cancel").addEventListener("click",function(){t.stat.editing=!1,t.load(e),t.timeAgo()},!1),t.stat.message&&(a.querySelector(".comment-form-textarea").value=t.stat.message),t.stat.mediaHtml&&(a.querySelector(".comment-form-wrapper").classList.add("expanded"),a.querySelector(".comment-image-list").innerHTML=t.stat.mediaHtml,t.addListener("comment-image-item","click",t.handle.remove))},v.prototype.create=function(){var e=this;if(e.opts.auto){e.dom.querySelector(".loading-container").dataset.tip="正在创建 Thread……";var t={url:e.opts.link,identifier:e.opts.identifier,title:e.opts.title,slug:e.opts.slug,message:e.opts.desc};e.postThread(t)}else e.dom.querySelector("#idisqus").classList.remove("loading"),e.dom.querySelector("#idisqus").innerHTML='<div class="comment-header"><span class="comment-header-item">创建 Thread</span></div><div class="comment-thread-form"><p>由于 Disqus 没有本页面的相关 Thread,故需先创建 Thread</p><div class="comment-form-item"><label class="comment-form-label">url:</label><input class="comment-form-input" id="thread-url" name="url" value="'+e.opts.link+'" disabled /></div><div class="comment-form-item"><label class="comment-form-label">identifier:</label><input class="comment-form-input" id="thread-identifier" name="identifier" value="'+e.opts.identifier+'" disabled /></div><div class="comment-form-item"><label class="comment-form-label">title:</label><input class="comment-form-input" id="thread-title" name="title" value="'+e.opts.title+'" disabled /></div><div class="comment-form-item"><label class="comment-form-label">slug:</label><input class="comment-form-input" id="thread-slug" name="slug" value="'+e.opts.slug+'" /></div><div class="comment-form-item"><label class="comment-form-label">message:</label><textarea class="comment-form-textarea" id="thread-message" name="message">'+e.opts.desc+'</textarea></div><button id="thread-submit" class="comment-form-submit">提交</button></div>',e.dom.querySelector("#thread-submit").addEventListener("click",e.handle.postThread,!1)},v.prototype.postThread=function(){var e=this;if(arguments[0].target)var t={url:e.dom.querySelector("#thread-url").value,identifier:e.dom.querySelector("#thread-identifier").value,title:e.dom.querySelector("#thread-title").value,slug:e.dom.querySelector("#thread-slug").value.replace(/[^A-Za-z0-9_-]+/g,""),message:e.dom.querySelector("#thread-message").value};else t=arguments[0];p(e.opts.api+"/createthread.php",t,function(e){var t=JSON.parse(e);if(0!==t.code)return 2===t.code?t.response.indexOf("A thread already exists with link")>-1?void alert(t.response.replace("A thread already exists with link,","已存在此链接的相关 Thread,")):t.response.indexOf("Invalid URL")>-1?void alert("参数错误,无效的'URL'"):t.response.indexOf("Invalid slug")>-1?void alert("参数错误,无效的'slug'"):void alert(t.response):void alert(t.response);alert("创建 Thread 成功,刷新后便可愉快地评论了!"),setTimeout(function(){location.reload()},2e3)},function(){alert("创建 Thread 出错,请稍后重试!")})},v.prototype.destroy=function(){var e=this;e.removeListener("exit","click",e.handle.logout),e.removeListener("comment-form-textarea","blur",e.handle.focus),e.removeListener("comment-form-textarea","focus",e.handle.focus),e.removeListener("comment-form-textarea","keyup",e.handle.mention),e.removeListener("comment-form-email","blur",e.handle.verify),e.removeListener("comment-form-submit","click",e.handle.post),e.removeListener("comment-image-input","change",e.handle.upload),e.removeListener("comment-item-reply","click",e.handle.show),e.removeListener("comment-loadmore","click",e.handle.loadMore),e.removeListener("emojione-item","click",e.handle.field),e.dom.innerHTML="",delete e.box,delete e.dom,delete e.emoji_list,delete e.user,delete e.handle,delete e.opts,delete e.stat},"object"==typeof e&&e&&"object"==typeof t&&t?e.exports=v:void 0===(a=function(){return v}.call(t,o,t,e))||(e.exports=a)}(window)}).call(this,o(0)(e))},function(e,t,o){o(7),e.exports=o(1)},,,,,function(e,t){}])});