|
|
*/"use strict";function _typeof(s){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(s){return typeof s}:function(s){return s&&"function"==typeof Symbol&&s.constructor===Symbol&&s!==Symbol.prototype?"symbol":typeof s})(s)}!function(s,e){"function"==typeof define&&define.amd?define("DisqusJS",[],e):"object"===("undefined"==typeof module?"undefined":_typeof(module))&&module.exports?module.exports=e():s.DisqusJS=e()}("undefined"!=typeof self?self:void 0,function(){return function(s){var e=document,d=function(s){return e.getElementById(s)},c=function(s,e,n){var t=new XMLHttpRequest;t.open("GET",encodeURI(s),!0),t.onload=function(){if(200<=t.status&&t.status<300||304===t.status){var s=JSON.parse(t.responseText);e(s)}else u()},t.timeout=4500,t.ontimeout=function(s){n(s)},t.onerror=function(s){n(s)},t.send()},n=function(s,e){try{localStorage.setItem(s,e)}catch(s){}},r=function(s){s=Date.parse(new Date(s));var e=(s=new Date(s+288e5)).getFullYear(),n=s.getMonth()+1;n=n<10?"0".concat(n):n;var t=s.getDate();t=t<10?"0".concat(t):t;var o=s.getHours();o=o<10?"0".concat(o):o;var a=s.getMinutes();return a=a<10?"0".concat(a):a,"".concat(e,"-").concat(n,"-").concat(t," ").concat(o,":").concat(a)};function t(){var s=e.createElement("script");d("disqus_thread").innerHTML='<div id="dsqjs"><section><div id="dsqjs-msg">评论完整模式加载中...如果长时间无法加载,请针对 disq.us | disquscdn.com | disqus.com 启用代理,或使用 <a id="dsqjs-force-dsqjs" class="dsqjs-msg-btn">评论基础模式</a></div></section><footer><p class="dsqjs-footer">Powered by <a class="dsqjs-disqus-logo" href="https://disqus.com" rel="nofollow noopener noreferrer" target="_blank"></a> & <a href="https://github.com/SukkaW/DisqusJS" target="_blank">DisqusJS</a></p></footer>',d("dsqjs-force-dsqjs").addEventListener("click",i),s.src="https://".concat(q.config.shortname,".disqus.com/embed.js"),s.setAttribute("data-timestamp",+new Date),(e.head||e.body).appendChild(s)}function l(){d("disqus_thread").innerHTML='<div id="dsqjs"><section><div id="dsqjs-msg">正在检查 Disqus 能否访问...</div></section><footer><p class="dsqjs-footer">Powered by <a class="dsqjs-disqus-logo" href="https://disqus.com" rel="nofollow noopener noreferrer" target="_blank"></a> & <a href="https://github.com/SukkaW/DisqusJS" target="_blank">DisqusJS</a></p></footer></div>';for(var s=["disqus.com","".concat(q.config.shortname,".disqus.com")],t=0,o=0,a=function(){s.length===t&&t===o?m():s.length===t&&i()},e=function(s){var e=new Image,n=setTimeout(function(){e.onerror=e.onload=null,t++,a()},3e3);e.onerror=function(){clearTimeout(n),t++,a()},e.onload=function(){clearTimeout(n),t++,o++,a()},e.src="https://".concat(s,"/favicon.ico?").concat(+new Date)},n=0;n<s.length;n++)e(s[n])}function o(){!function(){d("disqus_thread").innerHTML='<div id="dsqjs"><section><div id="dsqjs-msg"></div></section><header class="dsqjs-header dsqjs-hide" id="dsqjs-header"><nav class="dsqjs-nav dsqjs-clearfix"><ul><li class="dsqjs-nav-tab dsqjs-tab-active"><span><span id="dsqjs-comment-num"></span> Comments</span></li><li class="dsqjs-nav-tab"><span id="dsqjs-site-name"></span></li></ul></nav></header><section class="dsqjs-post-container"><ul class="dsqjs-post-list" id="dsqjs-post-container"></ul><a id="dsqjs-load-more" class="dsqjs-load-more dsqjs-hide">加载更多评论</a></section><footer><p class="dsqjs-footer">Powered by <a class="dsqjs-disqus-logo" href="https://disqus.com" rel="nofollow noopener noreferrer" target="_blank"></a> & <a href="https://github.com/SukkaW/DisqusJS" target="_blank">DisqusJS</a></p></footer></div>',d("dsqjs-msg").innerHTML='评论基础模式加载中。如需完整体验请针对 disq.us | disquscdn.com | disqus.com 启用代理并 <a id="dsqjs-reload-disqus" class="dsqjs-msg-btn">尝试完整 Disqus 模式</a> | <a id="dsqjs-force-disqus" class="dsqjs-msg-btn">强制完整 Disqus 模式</a>。',d("dsqjs-reload-disqus").addEventListener("click",l),d("dsqjs-force-disqus").addEventListener("click",m);var s="".concat(q.config.api,"3.0/threads/list.json?forum=").concat(q.config.shortname,"&thread=ident:").concat(q.config.identifier,"&api_key=").concat(q.config.apikey);c(s,function(s){if(0===s.code&&1===s.response.length){var e=s.response[0];q.page={id:e.id,title:e.title,isClosed:e.isClosed,length:e.posts,comment:[]},d("dsqjs-comment-num").innerHTML=q.page.length,q.config.siteName&&(d("dsqjs-site-name").innerHTML=q.config.siteName),n()}else 0===s.code&&1!==s.response.length?(d("dsqjs-msg").innerHTML='该 Thread 并没有初始化,是否 <a id="dsqjs-force-disqus" class="dsqjs-msg-btn">切换到完整 Disqus 模式</a> 进行初始化?',d("dsqjs-force-disqus").addEventListener("click",m)):u()},function(s){u()})}();var n=function e(s){var n=d("dsqjs-load-more"),t=function s(){n.removeEventListener("click",s),e(q.page.next)},o=function(){s?(n.classList.remove("dsqjs-disabled"),n.innerHTML="加载更多评论失败,点击重试",n.addEventListener("click",t)):u()};s=s?"&cursor=".concat(s):"",n.classList.add("dsqjs-disabled");var a="".concat(q.config.api,"3.0/posts/list.json?forum=").concat(q.config.shortname,"&thread=").concat(q.page.id).concat(s,"&include=approved&include=deleted&api_key=").concat(q.config.apikey);c(a,function(s){0===s.code&&0<s.response.length?(n.classList.remove("dsqjs-disabled"),q.page.comment=q.page.comment.concat(s.response),i(q.page.comment),s.cursor.hasNext?(q.page.next=s.cursor.next,n.innerHTML="加载更多评论",n.classList.remove("dsqjs-hide"),n.addEventListener("click",t)):n.classList.add("dsqjs-hide")):0===s.code&&0===s.response.length?(d("dsqjs-msg").innerHTML='你可能无法访问 Disqus,已启用评论基础模式。如需完整体验请针对 disq.us | disquscdn.com | disqus.com 启用代理并 <a id="dsqjs-reload-disqus" class="dsqjs-msg-btn">尝试完整 Disqus 模式</a> | <a id="dsqjs-force-disqus" class="dsqjs-msg-btn">强制完整 Disqus 模式</a>。',d("dsqjs-header").classList.remove("dsqjs-hide"),d("dsqjs-post-container").innerHTML='<div class="dsqjs-no-comment">这里冷冷清清的,一条评论都没有</div>',d("dsqjs-reload-disqus").addEventListener("click",l),d("dsqjs-force-disqus").addEventListener("click",m)):o()},function(s){o()})},i=function(s){var e,o,a,n,i=function(s){return s.comment.author.profileUrl?(s.comment.avatarEl='<a href="'.concat(s.comment.author.profileUrl,'"><img src="').concat(s.comment.author.avatar.cache,'"></a>'),s.comment.authorEl='<span class="dsqjs-post-author"><a href="'.concat(s.comment.author.profileUrl,'" target="_blank" rel="nofollow noopener noreferrer">').concat(s.comment.author.name,"</a></span>")):(s.comment.avatarEl='<img src="'.concat(s.comment.author.avatar.cache,'">'),s.comment.authorEl='<span class="dsqjs-post-author">'.concat(s.comment.author.name,"</span>")),q.config.adminLabel&&s.isPrimary&&(s.comment.authorEl+='<span class="dsqjs-admin-badge">'.concat(q.config.adminLabel,"</span>")),s},c=function(s){var n,e,t,o="",a="";return a=s.isDeleted?"<small>此评论已被删除</small>":(o="".concat(s.authorEl,'<span class="dsqjs-bullet"></span>'),s.message),'<div class="dsqjs-post-item dsqjs-clearfix"><div class="dsqjs-post-avatar">'.concat(s.avatarEl,'</div><div class="dsqjs-post-body"><div class="dsqjs-post-header">').concat(o,'<span class="dsqjs-meta"><time>').concat(r(s.createdAt),'</time></span></div><div class="dsqjs-post-content">').concat((n=a,e=new RegExp(/<a(.*?)href="https:\/\/disq\.us(.+?)"(.+?)>(.+?)<\/a>/gi),t=new RegExp(/href=\"(.+?)\"/gi),(n.match(e)||[]).map(function(s){var e=s.match(t)[0].replace(/href=\"https:\/\/disq.us\/url\?url=/g,"").replace(/(.*)"/,"$1");e=(e=decodeURIComponent(e)).replace(/(.*):(.*)cuid=(.*)/,"$1"),n=n.replace(s,'<a href="'.concat(e,'" rel="nofollow noopener noreferrer">').concat(e,"</a>"))}),n=n.replace(/href=/g,'target="_blank" href=')),"</div></div></div>")},t="";e=[],o=[],a=function(s){return{comment:s,author:s.author.name,isPrimary:!!q.config.admin&&s.author.username===q.config.admin,children:n(+s.id)}},n=function(s){if(0===o.length)return null;for(var e=[],n=0;n<o.length;n++){var t=o[n];t.parent===s&&e.unshift(a(t))}return e.length?e:null},s.forEach(function(s){(s.parent?o:e).push(s)}),(s=e.map(function(s){return a(s)})).map(function(s){s.children&&(s.nesting=1),s=i(s),t+='<li data-id="comment-'.concat(s.comment.id,'" id="comment-').concat(s.comment.id,'">').concat(c(s.comment)).concat(function e(s){var n=s.nesting,t=s.children||[];if(t){var o=n<4?'<ul class="dsqjs-post-list dsqjs-children">':'<ul class="dsqjs-post-list">';return t.map(function(s){(s=i(s)).nesting=n+1,o+='<li data-id="comment-'.concat(s.comment.id,'" id="comment-').concat(s.comment.id,'">').concat(c(s.comment)).concat(e(s),"</li>")}),0!==(o+="</ul>").length?o:void 0}}(s),"</li>")}),d("dsqjs-header").classList.remove("dsqjs-hide"),d("dsqjs-msg").innerHTML='你可能无法访问 Disqus,已启用评论基础模式。如需完整体验请针对 disq.us | disquscdn.com | disqus.com 启用代理并 <a id="dsqjs-reload-disqus" class="dsqjs-msg-btn">尝试完整 Disqus 模式</a> | <a id="dsqjs-force-disqus" class="dsqjs-msg-btn">强制完整 Disqus 模式</a>。',d("dsqjs-post-container").innerHTML=t,d("dsqjs-reload-disqus").addEventListener("click",l),d("dsqjs-force-disqus").addEventListener("click",m)}}function u(){d("dsqjs-msg").innerHTML='评论基础模式加载失败,是否 <a id="dsqjs-reload-dsqjs" class="dsqjs-msg-btn">重载</a> 或 <a id="dsqjs-reload-disqus" class="dsqjs-msg-btn">尝试完整 Disqus 模式</a> ?',d("dsqjs-reload-dsqjs").addEventListener("click",o),d("dsqjs-reload-disqus").addEventListener("click",l)}function i(){n("dsqjs_mode","dsqjs"),o()}function m(){n("dsqjs_mode","disqus"),t()}var q=[];q.config=s,q.config.api=q.config.api||"https://disqus.skk.moe/disqus/",q.config.identifier=q.config.identifier||e.location.origin+e.location.pathname+e.location.search,q.config.url=q.config.url||e.location.origin+e.location.pathname+e.location.search,q.page=[],window.disqus_config=function(){this.page.url=q.config.url,this.page.identifier=q.config.identifier},q.mode=localStorage.getItem("dsqjs_mode"),"disqus"===q.mode?t():"dsqjs"===q.mode?o():l()}}); |