|
|
*/"use strict";function DisqusJS(s){var n=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 i()},t.timeout=4500,t.ontimeout=function(s){n(s)},t.onerror=function(s){n(s)},t.send()},e=function(s,e){try{localStorage.setItem(s,e)}catch(s){}},c=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 a=s.getHours();a=a<10?"0".concat(a):a;var o=s.getMinutes();return o=o<10?"0".concat(o):o,"".concat(e,"-").concat(n,"-").concat(t," ").concat(a,":").concat(o)};function t(){var s=document,e=s.createElement("script");s.getElementById("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>',s.getElementById("dsqjs-force-dsqjs").addEventListener("click",r),e.src="https://"+m.config.shortname+".disqus.com/embed.js",e.setAttribute("data-timestamp",+new Date),(s.head||s.body).appendChild(e)}function d(){for(var s=["disqus.com","".concat(m.config.shortname,".disqus.com")],t=0,a=0,o=function(){s.length===t&&t===a?l():s.length===t&&r()},e=0;e<s.length;e++){!function(s){var e=new Image,n=setTimeout(function(){e.onerror=e.onload=null,t++,o()},3e3);e.onerror=function(){clearTimeout(n),t++,o()},e.onload=function(){clearTimeout(n),t++,a++,o()},e.src="https://".concat(s,"/favicon.ico?").concat(+new Date)}(s[e])}}function a(){!function(){var s=document;s.getElementById("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>',s.getElementById("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>。',s.getElementById("dsqjs-reload-disqus").addEventListener("click",d),s.getElementById("dsqjs-force-disqus").addEventListener("click",l);var e="".concat(m.config.api,"3.0/threads/list.json?forum=").concat(m.config.shortname,"&thread=ident:").concat(m.config.identifier,"&api_key=").concat(m.config.apikey);n(e,function(s){var e=document;if(0===s.code&&1===s.response.length){var n=s.response[0];m.page={id:n.id,title:n.title,isClosed:n.isClosed,length:n.posts},e.getElementById("dsqjs-comment-num").innerHTML=m.page.length,m.config.siteName&&(e.getElementById("dsqjs-site-name").innerHTML=m.config.siteName),t()}else 0===s.code&&1!==s.response.length?(e.getElementById("dsqjs-msg").innerHTML='该 Thread 并没有初始化,是否 <a id="dsqjs-force-disqus" class="dsqjs-msg-btn">切换到完整 Disqus 模式</a> 进行初始化?',e.getElementById("dsqjs-force-disqus").addEventListener("click",l)):i()},function(s){i()})}();var t=function t(s){s=s?"&cursor=".concat(s):"";var e="".concat(m.config.api,"3.0/posts/list.json?forum=").concat(m.config.shortname,"&thread=").concat(m.page.id).concat(s,"&api_key=").concat(m.config.apikey);n(e,function(s){if(0===s.code&&0<s.response.length){o(s.response);var e=document.getElementById("dsqjs-load-more");s.cursor.hasNext?(e.classList.remove("dsqjs-hide"),e.addEventListener("click",function(){t(s.cursor.next)})):e.classList.add("dsqjs-hide")}else if(0===s.code&&0===s.response.length){var n=document;n.getElementById("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>。',n.getElementById("dsqjs-header").classList.remove("dsqjs-hide"),n.getElementById("dsqjs-post-container").innerHTML='<div class="dsqjs-no-comment">这里冷冷清清的,一条评论都没有</div>'}else i()},function(s){i()})},a=function(s){var e=[],o=[];return s.forEach(function(s){(s.parent?o:e).push(s)}),e.map(function(s){return{comment:s,author:s.author.name,isPrimary:!!m.config.admin&&s.author.username===m.config.admin,children:function s(e){if(0===o.length)return null;for(var n=[],t=0;t<o.length;t++){var a=o[t];a.parent===e&&n.unshift({comment:a,author:a.author.name,isPrimary:!!m.config.admin&&a.author.username===m.config.admin,children:s(+a.id)})}return n.length?n:null}(+s.id)}})},o=function(s){var o=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>")),m.config.adminLabel&&s.isPrimary&&(s.comment.authorEl+='<span class="dsqjs-admin-badge">'.concat(m.config.adminLabel,"</span>")),s},i=function(s){var e,n,t;return'<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(s.authorEl,'<span class="dsqjs-bullet"></span><span class="dsqjs-meta"><time>').concat(c(s.createdAt),'</time></span></div><div class="dsqjs-post-content">').concat((e=s.message,n=new RegExp(/<a.+?href=\"https:\/\/disq.us(.+?)\".*>/gi),t=new RegExp(/href=\"(.+?)\"/gi),(e.match(n)||[]).map(function(s){s=s.match(t)[0].replace(/href=\"https:\/\/disq.us\/url\?url=/g,"").replace(/(.*)"/,"$1"),s=decodeURIComponent(s).replace(/(.*):(.*)/,"$1"),e=e.replace(n,'<a href="'.concat(s,'" rel="nofollow noopener noreferrer">').concat(s,"</a>"))}),e.replace(/href=/g,'target="_blank" href=')),"</div></div></div>")},e="";(s=a(s)).map(function(s){s.children&&(s.nesting=1),s=o(s),e+='<li data-id="comment-'.concat(s.comment.id,'">').concat(i(s.comment)).concat(function e(s){var n=s.nesting,t=s.children||[];if(t){var a=n<4?'<ul class="dsqjs-post-list dsqjs-children">':'<ul class="dsqjs-post-list">';return a+=t.map(function(s){return(s=o(s)).nesting=n+1,'<li data-id="comment-'.concat(s.comment.id,'">').concat(i(s.comment)).concat(e(s),"</li>")}),0!==(a+="</ul>").length?a:void 0}}(s),"</li>")});var n=document;n.getElementById("dsqjs-header").classList.remove("dsqjs-hide"),n.getElementById("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>。',n.getElementById("dsqjs-post-container").insertAdjacentHTML("beforeend",e),n.getElementById("dsqjs-reload-disqus").addEventListener("click",d),n.getElementById("dsqjs-force-disqus").addEventListener("click",l)}}function i(){var s=document;s.getElementById("dsqjs-msg").innerHTML='评论基础模式加载失败,是否 <a id="dsqjs-reload-dsqjs" class="dsqjs-msg-btn">重载</a> 或 <a id="dsqjs-reload-disqus" class="dsqjs-msg-btn">尝试完整 Disqus 模式</a> ?',s.getElementById("dsqjs-reload-dsqjs").addEventListener("click",a),s.getElementById("dsqjs-reload-disqus").addEventListener("click",d)}function r(){e("dsqjs_mode","dsqjs"),a()}function l(){e("dsqjs_mode","disqus"),t()}var o,m=[];m.config=s,m.config.api=m.config.api||"https://disqus.skk.moe/disqus/",m.config.identifier=m.config.identifier||document.location.origin+document.location.pathname+document.location.search,m.config.url=m.config.url||document.location.origin+document.location.pathname+document.location.search,m.page=[],window.disqus_config=function(){this.page.url=m.config.url,this.page.identifier=m.config.identifier},m.mode=(o="dsqjs_mode",localStorage.getItem(o)),"disqus"===m.mode?t():"dsqjs"===m.mode?a():d()} |