-
Notifications
You must be signed in to change notification settings - Fork 2
/
lounge.484ab7f44deedd48f477d5ee5fbbb888.js
8 lines (8 loc) · 235 KB
/
lounge.484ab7f44deedd48f477d5ee5fbbb888.js
1
2
3
4
5
6
7
8
define("core/analytics/jester",["jquery","underscore","backbone","core/analytics/experiment","core/analytics/identity","core/config/urls"],function(a,b,c,d,e,f){"use strict";var g=c.Model.extend({url:f.jester+"/event.js",initialize:function(){this.set(d.getCurrent())},setHostReferrer:function(a){a&&-1!==a.indexOf("http")&&this.set("page_referrer",a)},decoratePayload:function(c){c=b.extend(this.toJSON(),c),b.extend(c,{event:"activity",imp:e.impression.impId,prev_imp:e.impression.prevImp}),c.section||(c.section="default"),c.area||(c.area="n/a");var d=a.param(c).length;if(d>2048&&this.has("page_referrer")){var f=document.createElement("a");f.href=this.get("page_referrer");var g=f.hostname;g&&(c.page_referrer_domain=g),delete c.page_referrer}return c},emit:function(c){return a.ajax({url:b.result(this,"url"),data:this.decoratePayload(c),dataType:"script",cache:!0})}}),h=new g;return{ActivityClient:g,client:h}}),define("lounge/common",[],function(){"use strict";var a,b=function(b){a=b},c=function(){return a};return{setLounge:b,getLounge:c}}),define("lounge/menu-handler",["jquery","common/bus"],function(a,b){"use strict";return{init:function(){function c(){a(".dropdown").removeClass("open")}a("html").on("click",c),a("body").delegate("[data-toggle]","click",function(b){b.stopPropagation(),b.preventDefault();var d=a(b.currentTarget),e=d.closest("."+d.attr("data-toggle")),f="disabled"!==e.attr("data-dropdown")&&!e.hasClass("open");e.attr("data-dropdown","enabled"),c(),f&&e.addClass("open")}),b.on("window.click",c)}}}),define("lounge/mixins",["backbone","underscore","jquery","lounge/common","core/api","common/urls","common/Session","common/templates","shared/common/corefuncs"],function(a,b,c,d,e,f,g,h,i){"use strict";var j={_getShortUrl:function(a){var c=this,d=this._shareUrl(),f=d,g=b.extend({url:d,source:"disqus_embed_next"},this.model.relatedIds());e.call("shortener/create.json",{method:"POST",data:g,timeout:5e3,success:function(a){var b=a.code,c=a.response;0===b&&(f=c.url)},complete:function(){a.call(c,f)}})},_shareWaitPopup:function(a){return window.open(f.loading,"_blank",a||"width=550,height=520")},share:function(a){this.sharers[a].call(this)},sharers:{twitter:function(){var a="https://twitter.com/intent/tweet",b=this._shareWaitPopup();this._getShortUrl(function(c){b.location=i.serialize(a,{url:c,text:this.model.twitterText(c)})})},facebook:function(){var a="https://www.facebook.com/sharer.php",b=this._shareWaitPopup("width=655,height=352");this._getShortUrl(function(c){b.location=i.serialize(a,{u:c})})}}},k=a.View.extend({className:"alert",events:{"click [data-action=dismiss]":"dismiss"},initialize:function(a){b.extend(this,a)},render:function(){var a=this,b=a.$el;return b.html(h.render("alert",{message:a.message,safe:a.safe,icon:"error"===a.type})),b.attr("class",a.className),a.type&&b.addClass(a.type),a},dismiss:function(a){a&&a.preventDefault&&a.preventDefault(),this.remove(),this.trigger("dismiss")}}),l={alert:function(a,c){c?b.isString(c)&&(c={type:c}):c={};var d=c.target||this._alertSelector;this.dismissAlert();var e=this._alert=new k(b.extend({message:a},c));return e.render(),d?this.$el.find(d).prepend(e.el):this.el.parentNode&&this.el.parentNode.insertBefore(e.el,this.el),e},dismissAlert:function(){this._alert&&this._alert.dismiss()},setAlertSelector:function(a){this._alertSelector=a}},m=function(){function a(){return this.collapseTarget&&this.collapseTarget.length||(this.collapseTarget=this.collapseTargetSelector?this[this.collapseScope].find(this.collapseTargetSelector):this[this.collapseScope]),this.collapseTarget}function b(){var b=this;if(b.isCollapseAllowed){var c=a.call(b);c&&c.length&&(c.height(b.collapsedHeight),e.call(b))}}function c(a){var b=this;if(b.collapseTarget&&b.collapseTarget.length){var c=b.collapseTarget;c.css("height","auto"),c.css("maxHeight","none"),f.call(b),a||(b.isCollapseAllowed=!1)}}function d(){return this.seeMoreButton&&this.seeMoreButton.length||(this.seeMoreButton=a.call(this).siblings("[data-action=see-more]")),this.seeMoreButton}function e(){var a=this;d.call(this).removeClass("hidden").on("click",function(){a.expand()})}function f(){d.call(this).addClass("hidden").off("click")}return function(a){var d=this;d.isCollapseAllowed=!0,d.collapsedHeight=a.collapsedHeight,d.collapseTargetSelector=a.collapseTargetSelector,d.collapseScope=a.collapseScope||"$el",d.collapse=b,d.expand=c}}();return{ShareMixin:j,AlertView:k,AlertMixin:l,asCollapsible:m}}),define("lounge/realtime",["jquery","underscore","backbone","common/utils","common/urls","shared/common/corefuncs","shared/common/logger"],function(a,b,c,d,e,f,g){"use strict";function h(){n.apply(this,arguments),this.reqCounter=0,this.marker=0,this.interval=1,this._boundOnError=b.bind(this.onError,this),this._boundOnLoad=b.bind(this.onLoad,this),this._boundOnProgress=b.bind(this.onProgress,this)}function i(){n.apply(this,arguments),this.handshakeSuccess=null,this.interval=1,this._boundOnOpen=b.bind(this.onOpen,this),this._boundError=b.bind(this.onError,this),this._boundClose=b.bind(this.onClose,this),this._boundMessage=b.compose(b.bind(this.onMessage,this),function(a){return JSON.parse(a.data)})}var j=2,k=120,l=function(){},m=function(){throw new Error("Pipe class cannot be used directly.")},n=function(a,c){this.channel=a,this.since=c,this.connection=null,this.paused=!1,this._msgBuffer=[],this._boundOpen=b.bind(this.open,this)};b.extend(n.prototype,c.Events,{getUrl:function(a){var c={};return this.since&&(c.since=this.since),b.extend(c,a),f.serialize(this.baseUrl+this.channel,c)},onMessage:function(a){var b=a.message_type,c=a.firehose_id;this.lastEventId=c,g.log("RT: new message:",b,c);var d={type:b,data:a.message_body,lastEventId:c};this.trigger(b,d)},_msgToBuffer:function(){this._msgBuffer.push(b.toArray(arguments))},pause:function(a){this.paused||(this.paused=!0,this._trigger=this.trigger,this.trigger=a===!1?l:this._msgToBuffer,g.log("RT: paused, buffered: %s",a!==!1))},resume:function(){if(this.paused){this.paused=!1,this.trigger=this._trigger,g.log("RT: resumed, buffered messages: %s",this._msgBuffer.length);for(var a;a=this._msgBuffer.shift();)this.trigger.apply(this,a)}},open:m,close:function(){var a=this.connection;return a?(this.connection=null,a):!1}}),b.extend(h.prototype,n.prototype,{baseUrl:e.realertime+"/api/2/",onError:function(){this.connection&&(this.connection=null,this.trigger("error",this),this.interval<=k&&(this.interval*=j),g.logError("RT: Connection error, backing off %s secs",this.interval),b.delay(this._boundOpen,1e3*this.interval))},onLoad:function(){this.connection&&(this.connection=null,this.since=null,this.trigger("success",this),b.defer(this._boundOpen))},onProgress:function(){if(this.connection){var a,b=this.connection.responseText,c=0;if(b&&!(this.marker>=b.length)){a=b.slice(this.marker).split("\n");for(var d,e,f,h=a.length,i=0;h>i;i++)if(d=a[i],c+=d.length+1,e=d.replace(/^\s+|\s+$/g,"")){try{f=JSON.parse(e)}catch(j){if(i===h-1){c-=d.length+1;break}g.log("RT: unable to parse: ",e,d);continue}this.onMessage(f)}else g.log("RT: ignoring empty row...");c>0&&(this.marker+=c-1)}}},open:function(){this.close();var a=this.connection=d.CORS.request("GET",this.getUrl({bust:++this.reqCounter}),this._boundOnLoad,this._boundOnError);if(!a)return void g.log("RT: Cannot use any cross-domain request tool with StreamPipe. Bailing out.");a.onprogress=this._boundOnProgress,this.connection=a,this.marker=0;try{a.send()}catch(b){this.connection=null,g.log("RT: Attempt to send a CORS request failed.")}},close:function(){var a=n.prototype.close.apply(this);return a&&a.abort()}}),b.extend(i.prototype,n.prototype,{baseUrl:("https:"===window.location.protocol?"wss:":"ws:")+e.realertime+"/ws/2/",onOpen:function(){g.log("RT: [Socket] Connection established."),this.handshakeSuccess=!0,this.since=null},onError:function(){if(this.connection){if(this.connection=null,!this.handshakeSuccess)return g.log("RT: [Socket] Error before open, bailing out."),void this.trigger("fail");this.trigger("error"),this.interval<=k&&(this.interval*=j),g.logError("RT: Connection error, backing off %s secs",this.interval),b.delay(this._boundOpen,1e3*this.interval)}},onClose:function(a){if(this.connection){if(!a.wasClean)return void this.onError();this.connection=null,g.log("RT: [Socket] Connection closed. Restarting..."),this.trigger("close"),this.open()}},open:function(){this.close();var a=this.connection=new window.WebSocket(this.getUrl());a.onopen=this._boundOnOpen,a.onerror=this._boundError,a.onmessage=this._boundMessage,a.onclose=this._boundClose},close:function(){var a=n.prototype.close.apply(this);return a&&a.close()}});var o={_wsSupported:window.WebSocket&&2===WebSocket.CLOSING,initialize:function(a,c,d,e){this.close(),this._initArgs=[a,c,d,e];var f=this._wsSupported,g=f?i:h,j=this.pipe=new g(a,c);b.chain(d).pairs().each(function(a){j.on(a[0],a[1],e)}),f&&j.on("fail",function(){this._wsSupported=!1,j.off(),this.initialize.apply(this,this._initArgs)},this),j.open()},pause:function(a){this.pipe&&this.pipe.pause(a)},resume:function(){this.pipe&&this.pipe.resume()},close:function(){this.pipe&&(this.pipe.close(),this.pipe=null)}};return a(window).on("unload",b.bind(o.close,o)),{Pipe:n,StreamPipe:h,SocketPipe:i,Manager:o}}),function(a){"use strict";var b=function(a,b,c){this.store=a,this.max=b||10,this.queueKey=c||"__queue",this.getQueue()||this.setQueue([])};b.prototype.setItem=function(a,b){var c=this.getQueue()||this.setQueue([]);c.length===this.max&&this.store.removeItem(c.shift()),this.store.setItem(a,b),c.push(a),this.setQueue(c)},b.prototype.getItem=function(a){return this.store.getItem(a)},b.prototype.removeItem=function(a){this.store.removeItem(a);for(var b=this.getQueue()||[],c=0;c<b.length;c++)if(b[c]===a){b.splice(c,1);break}this.setQueue(b)},b.prototype.clear=function(){this.store.clear(),this.setQueue([])},b.prototype.getQueue=function(){var a=this.store.getItem(this.queueKey);return a?JSON.parse(a):null},b.prototype.setQueue=function(a){return this.store.setItem(this.queueKey,JSON.stringify(a)),a},a.QueuedStorage=b}(this),define("queuedstorage",function(a){return function(){var b;return b||a.QueuedStorage}}(this)),function(a){"use strict";function b(a){return a.replace(g," ")}function c(a,d,e){var f,g,h,j,k="",l=[];for("string"!=typeof e&&(e="\n\n"),j=0;j<a.length;++j)g=a[j],f=g.nodeName.toLowerCase(),1===g.nodeType?(h=d&&d(g),h?k+=h:i.hasOwnProperty(f)?(k&&l.push(k),k=c(g.childNodes,d,e)):k+="br"===f?"\n":c(g.childNodes,d,e)):3===g.nodeType&&(k+=b(g.nodeValue));return l.push(k),l.join(e)}function d(a,b,c){if(a.addEventListener)a.addEventListener(b,c,!1);else{if(!a.attachEvent)throw new Error("No event support.");a.attachEvent("on"+b,c)}}var e=a.document,f="character",g=new RegExp(String.fromCharCode(160),"gi"),h="h1 h2 h3 h4 h5 h6 p pre blockquote address ul ol dir menu li dl div form".split(" "),i={},j=0;for(j=0;j<h.length;j++)i[h[j]]=!0;var k=function(a,b,c){var e=this;if(!a||!a.contentEditable)throw"First argument must be contentEditable";this.elem=a,this.emulateTextarea=a.getAttribute("plaintext-only")||b,this.emulateTextarea&&(this.pasteHandler=function(){var a=e.plainTextReformat,b=function(){a.timeout=null,a.call(e)};a.timeout&&clearTimeout(a.timeout),a.timeout=setTimeout(b,0)},d(a,"paste",this.pasteHandler));for(var f in c)c.hasOwnProperty(f)&&(this[f]=c[f])};k.prototype={insertHTML:function(a){if(e.all){var b=e.selection.createRange();return b.pasteHTML(a),b.collapse(!1),b.select()}return e.execCommand("insertHTML",!1,a)},insertNode:function(b){var c,d,f;a.getSelection?(c=a.getSelection(),c.getRangeAt&&c.rangeCount&&(d=c.getRangeAt(0),d.deleteContents(),d.insertNode(b),d.collapse(!1),c.removeAllRanges(),c.addRange(d))):e.selection&&e.selection.createRange&&(d=e.selection.createRange(),f=3===b.nodeType?b.data:b.outerHTML,d.pasteHTML(f),d.collapse(!1))},getTextNodes:function(a){var b=this.elem;a&&a.nodeType?a=[a]:a||(a=b.childNodes);for(var c,d=[],e=0;e<a.length;++e)if(c=a[e])switch(c.nodeType){case 1:d=d.concat(this.getTextNodes(c.childNodes));break;case 3:/^\n\s+/.test(c.nodeValue)||d.push(c)}return d},text:function(a){var b,d,e,f=this.elem;try{d=Array.prototype.slice.call(f.childNodes)}catch(g){for(d=[],e=0;e<f.childNodes.length;++e)d.push(f.childNodes[e])}return b=c(d,a,this.emulateTextarea&&"\n"),b.replace(/^\s+|\s+$/g,"")},setText:function(b){b=b||"";var c,d,f,g=e.createDocumentFragment(),h=this.emulateTextarea?[b.replace(/(?:\r\n|\r|\n){2,}/g,"\n\n")]:b.split(/(?:\r\n|\r|\n){2,}/),i=h&&h.length;for(c=0;i>c;c++)d=h[c],f=this.createParagraph(d),g.appendChild(f);g.lastChild.appendChild(e.createElement("br")),this.elem.innerHTML="",this.elem.appendChild(g);var j=a.getSelection&&a.getSelection();j&&j.anchorNode===this.elem&&j.modify&&j.modify("move","forward","line")},createParagraph:function(a){var b,c,d,f,g,h,i,j=e.createElement("p");for(d=a.split(/\r\n|\r|\n/),c=0,g=d.length;g>c;c++){for(f=d[c],i=this.getHtmlElements(f),b=0,h=i.length;h>b;b++)j.appendChild(i[b]);j.appendChild(e.createElement("br"))}return j.lastChild&&j.removeChild(j.lastChild),j},getHtmlElements:function(a){return[e.createTextNode(a)]},plainTextReformat:function(){if(!(this.elem.getElementsByTagName("p").length<=1)){this.emulateTextarea=!1;var a=this.text();this.emulateTextarea=!0,this.setText(a)}},removeNode:function(b){var c,d,f;a.getSelection?(c=b.previousSibling,b.parentNode.removeChild(b),d=a.getSelection(),f=e.createRange(),c&&(f.setStart(c,c.length),f.setEnd(c,c.length)),d.addRange(f)):b.parentNode.removeChild(b)},selectedTextNode:function(){var c,d,g=this.elem;if(a.getSelection)return c=a.getSelection(),c.anchorNode;if(e.selection.createRange){for(d=e.selection.createRange().duplicate();-1e3===d.moveStart(f,-1e3);)continue;var h,i,j,k,l,m,n,o=d.text;for(m=0;m<g.childNodes.length;++m)for(h=g.childNodes[m],j=this.getTextNodes(h),n=0;n<j.length;++n)if(i=j[n],l=b(i.nodeValue),o.indexOf(l)>-1)k=i,o=o.replace(l,"");else if(l.indexOf(o)>-1)return i;return k}},selectedTextNodeOffset:function(c){var d,g;if(a.getSelection){var h=a.getSelection();h&&h.anchorOffset&&(g=h.anchorOffset)}else if(c&&e.selection.createRange){d=e.selection.createRange();for(var i=b(c.nodeValue),j=d.duplicate(),k=j.parentElement(),l=0;0!==d.moveStart(f,-1)&&++l&&0!==i.indexOf(b(d.text))&&k===d.parentElement();)j=d.duplicate(),k=j.parentElement();g=l}return isNaN(g)?0:g},selectNodeText:function(c,d,g){var h,i,j=this.elem;if(a.getSelection)return h=a.getSelection(),h.removeAllRanges(),i=e.createRange(),i.setStart(c,d),i.setEnd(c,g),h.addRange(i),h;if(e.selection.createRange){i=e.selection.createRange();var k=b(c.nodeValue);if("body"===i.parentElement().nodeName.toLowerCase()){for(j.focus(),i=e.selection.createRange();-1e3===i.moveStart(f,-1e3);)continue;for(;1e3===i.moveEnd(f,1e3);)continue;var l=b(i.text),m=l.indexOf(k);m>0&&i.moveStart(f,m+2),i.collapse()}for(;-1===i.moveStart(f,-1)&&0!==k.indexOf(b(i.text));)continue;for(;1===i.moveEnd(f,1)&&k!==b(i.text);)continue;return i.moveStart(f,d),i.moveEnd(f,-1*(g-d-i.text.length)),i.select(),i}}},k.normalizeSpace=b,a.Editable=k}(this),define("editable",function(a){return function(){var b;return b||a.Editable}}(this)),define("lounge/views/media",["backbone","jquery","modernizr","underscore","common/utils","common/models","core/strings","common/urls","common/templates","common/views/mixins","shared/common/corefuncs","lounge/common"],function(a,b,c,d,e,f,g,h,i,j,k,l){"use strict";var m=g.get,n=e.preventDefaultHandler,o=300,p=function(a){var b=a.getItem("disqus.collapse-media");return b="true"===b?!0:"false"===b?!1:null,null===b&&(b=e.isMobile(window)?!0:!1),b},q=c.localstorage?window.localStorage:e.hashStorage,r=new a.Model({collapsed:p(q)}).on("change:collapsed",function(a,b){q.setItem("disqus.collapse-media",b)}),s={settings:r},t=function(a){if(!a)return"";a="http://"+a.replace(/^([a-z+.-]+:)?\/+/i,"");var b=document.createElement("a");b.href=a;var c=b.hostname.replace(/^www\d*\./i,"");return c=c.toLowerCase()},u=function(a,b,c,d){a[b.get(c)?"addClass":"removeClass"](d)},v=a.View.extend({tagName:"span",events:{"click [data-action=expand-collapse-media]":"handleToggle"},initialize:function(a){this.media=a.media;var b=a.$link;this.linkText=b.text(),this.linkHref=b.attr("href"),this.linkDomain=t(this.linkHref);var c=this.isUserText(b);this.hasGenericMessage=!1,c?this.mediaLinkText=this.linkText:this.media.get("title")?this.mediaLinkText=e.niceTruncate(this.media.get("title"),60):(this.hasGenericMessage=!0,this.mediaLinkText=this.model.get("providerExpandMessage")),this.listenTo(this.model,"change:deferred",this.render),this.listenTo(this.model,"change:activated",this.onChangeActivated)},isUserText:function(a){if("A"!==a[0].nodeName)return!1;var b=(a.text()||"").toLowerCase();if(!b)return!1;if(0===b.indexOf("http")||0===b.indexOf("www"))return!1;b=b.replace(/\.\.\.$/,"");var c=(a.attr("href")||"").toLowerCase();return-1===c.indexOf(b)},render:function(){var a=this.mediaLinkText;this.hasGenericMessage&&this.model.get("activated")&&(a=this.model.get("providerCollapseMessage")),this.$el.html(i.render("postMediaInlineLink",{model:this.model.toJSON(),text:this.linkText,href:this.linkHref,mediaLinkText:a,domain:this.linkDomain}))},onChangeActivated:function(){this.hasGenericMessage&&this.render()},handleToggle:function(a){this.model.get("deferred")||(this.model.set("activated",!this.model.get("activated")),a&&a.preventDefault&&a.preventDefault())}}),w=a.Model.extend({defaults:{deferred:!0,showButtons:!0,activated:!1,kind:"image",postId:"",deferredHeight:0,providerExpandMessage:"",providerCollapseMessage:"",providerIcon:"icon-proceed",respectSettings:!0}}),x=a.View.extend(d.defaults({events:{"click [data-action=expand]":"handleExpand","click [data-action=contract]":"handleContract","click [data-action=force-load]":"handleForceLoad"},template:"postMedia",initialize:function(a){this.options=a,this.media=a.media,this.template=a.template||this.template,this.$linkEl=null,this.setupMode(),this.listenTo(this.model,"change:activated",this.applyState),this.listenTo(this.model,"change:deferredHeight",this.onChangeDeferredHeight),this.listenTo(this.model,"change:showButtons",this.updateElementClass),this.listenTo(this.model,"change:deferred",this.render),this.listenTo(s.settings,"change:collapsed",this.setupMode)},topEdgeOffset:function(){return-l.getLounge().getPosition().height},getMediaDimensions:function(){return{width:null,height:null}},getAvailableWidth:function(){return this.$el.parent().width()||l.getLounge().loadedThumbnailWidth},updateDeferredHeight:function(){this.model.set("deferredHeight",this.calculateDeferredHeight())},calculateDeferredHeight:function(){var a=this.getMediaDimensions(),b=a.width,c=a.height;if(!b||!c)return c;var d=this.getAvailableWidth(),e=d*c/b;return e},convertToButton:function(a){this.model.set("showButtons",!1),this.linkSubview&&this.linkSubview.remove(),this.linkSubview=new v({model:this.model,media:this.media,$link:a}),a.replaceWith(this.linkSubview.$el),this.linkSubview.render()},applyContentNodeHeight:function(a){this.contentNode.height(a||"auto")},shouldAutoplay:function(){return!this.model.get("deferred")},generateContentHtml:function(){return this.media.get("html")},createContentNode:function(a){return b(a)},insertContentNode:function(a){this.contentNode.html(a)},prepareElementEvents:function(){},displayContent:function(){this.updateDeferredHeight();var a=this.generateContentHtml(),b=this.createContentNode(a);this.prepareElementEvents(b),this.insertContentNode(b),this.applyContentNodeHeight(null)},configureDeferred:function(){this.model.get("deferred")&&!this.model.get("activated")&&(this.once("viewport:enter",this.enterViewport),l.getLounge().trackDeferredView(this)),this.listenToOnce(l.getLounge().postsView,"render:end",this.updateDeferredHeight)},configureContentFromActivated:function(){this.model.get("activated")?this.displayContent():this.displayPlaceholder()},displayPlaceholder:function(){this.contentNode.html(i.render("postMediaPlaceholder",{model:this.model.toJSON()}))},updateElementClass:function(){var a=this.$el,b=this.model;u(a,b,"deferred","media-mode-deferred"),u(a,b,"activated","media-activated"),u(a,b,"showButtons","media-show-buttons")},applyState:function(){this.configureDeferred(),this.configureContentFromActivated(),this.updateElementClass()},render:function(){this.$el.html(i.render(this.template,{model:this.model.toJSON(),media:this.media.toJSON()})),this.contentNode=this.$el.find("[data-role=content-placeholder]"),this.applyState()},remove:function(){this.linkSubview&&this.linkSubview.remove(),a.View.prototype.remove.apply(this,arguments)},enterViewport:function(){this.model.get("deferred")&&this.activate()},activate:function(){this.model.set("activated",!0)},setupMode:function(){if(this.model.get("respectSettings")){this.model.set("activated",!1);var a=s.settings.get("collapsed");a?this.model.set("deferred",!1):this.model.set("deferred",!0)}},onChangeDeferredHeight:function(){this.model.get("deferred")&&!this.model.get("activated")&&this.applyContentNodeHeight(this.model.get("deferredHeight"))},handleExpand:n(function(){this.model.set("activated",!0)}),handleContract:n(function(){this.model.set("activated",!1)}),handleForceLoad:n(function(){this.model.get("deferred")&&this.model.set("activated",!0)})},j.IsVisibleViewMixin)),y=x.extend({getMediaDimensions:function(){return{width:this.media.get("htmlWidth"),height:this.media.get("htmlHeight")}},_findIframe:function(a){return a.is("iframe")?a:a.find("iframe")},configureContentFromActivated:function(){x.prototype.configureContentFromActivated.apply(this,arguments),this.model.get("activated")||this.$el.removeClass("media-loading")},createContentNode:function(){var a=x.prototype.createContentNode.apply(this,arguments);return a.attr({width:"100%",height:this.model.get("deferredHeight"),"data-post":this.model.get("postId")}),a},insertContentNode:function(a){this.loaderNode=this.$el.find("[data-role=content-loader]"),this.loaderHeight=this.model.get("deferredHeight")||o,this.loaderNode.height(this.loaderHeight),this.$el.addClass("media-loading"),x.prototype.insertContentNode.call(this,a)},prepareElementEvents:function(a){var b=this._findIframe(a);b.one("load",d.bind(this.finishLoad,this,b))},finishLoad:function(a){this.$el.removeClass("media-loading"),a.height(this.loaderHeight),this.trigger("load")}}),z=y.extend({generateContentHtml:function(){return i.render("unknownMediaIframe",{url:this.media.get("url")})}}),A=y.extend({createContentNode:function(){var a=y.prototype.createContentNode.apply(this,arguments),b=a.attr("src");return this.shouldAutoplay()&&b&&!this.model.get("playerjs")&&(b=k.serialize(b,{auto_play:!0,autoplay:1}),a.attr("src",b)),a},insertContentNode:function(a){if(this.model.get("playerjs")){var c=this._findIframe(a),e=c.attr("src");"//"===e.substr(0,2)&&(e=window.location.protocol+e);var f=e.split("/");f=f[0]+"//"+f[2],this.playerjs={ready:!1,queue:[],origin:f,$iframe:c},this.model.get("mute")&&this.send("mute"),this.shouldAutoplay()&&this.send("play");var g=d.once(d.bind(function(){this.playerjs.ready=!0;var a=this.playerjs.queue;this.playerjs.queue=[],d.each(a,this.send,this)},this));b(window).on("message",function(a){if(a=a.originalEvent,a.origin===f){var b;try{b=JSON.parse(a.data)}catch(c){return}"ready"===b.event&&b.value&&b.value.src===e&&g()}})}return y.prototype.insertContentNode.apply(this,arguments)},send:function(a){if(this.playerjs){if(!this.playerjs.ready)return void this.playerjs.queue.push(a);var b={context:"player.js",version:"0.0.10",method:a};this.playerjs.$iframe[0].contentWindow.postMessage(JSON.stringify(b),this.playerjs.origin)}}}),B=A.extend({getMediaDimensions:function(){return{width:null,height:this.media.get("htmlHeight")}}}),C=x.extend({createContentNode:function(a){return b("<iframe>").attr({frameBorder:0,scrolling:"no",width:"100%",height:this.model.get("deferredHeight"),"data-post":this.model.get("postId"),"data-src":a,src:'javascript:window.frameElement.getAttribute("data-src");'})},insertContentNode:function(a){x.prototype.insertContentNode.apply(this,arguments);var b=this.model.get("deferredHeight")||o;a.height(b)}}),D=x.extend({insertContentNode:function(){x.prototype.insertContentNode.apply(this,arguments),this.finishLoad()},finishLoad:function(){var a=this,b=0,c=150,e=20,f=function(){++b,e>b?d.delay(f,c):a.trigger("load")};f()}}),E=D.extend({generateContentHtml:function(){var a=l.getLounge(),b=document.documentElement.lang;b=b&&b.substring(0,2);var c=this.media.get("url");return-1!==this.media.get("resolvedUrl").indexOf("/status")&&(c=this.media.get("resolvedUrl")),i.render("postMediaTwitterContent",{url:c,theme:a.config.colorScheme,linkColor:e.escapeColor(a.config.anchorColor),language:b})}}),F=x.extend({getMediaDimensions:function(){return{width:this.media.get("thumbnailWidth"),height:this.media.get("thumbnailHeight")}},getImageUrl:function(){return this.media.get("resolvedUrl")||this.media.get("url")||this.media.get("thumbnailUrl")},getImageThumbnailUrl:function(){var a=this.media.get("thumbnailUrl");return t(a)===t(h.media)&&(a=k.serialize(a,{w:l.getLounge().loadedThumbnailWidth,h:this.model.get("deferredHeight")})),a},generateContentHtml:function(){return i.render("postMediaImage",{model:this.model.toJSON(),media:this.media.toJSON(),thumbnailUrl:this.getImageThumbnailUrl(),imageUrl:this.getImageUrl(),postId:this.model.get("postId")})},prepareElementEvents:function(a){var b=this,c=a.find("img"),d=function(a){return function(){b.trigger(a),c.off(".richMediaView")}};c.on("load.richMediaView",d("load")),c.on("error.richMediaView",d("error"))},calculateDeferredHeight:function(){var a=x.prototype.calculateDeferredHeight.apply(this,arguments),b=this.getMediaDimensions().height;return Math.min(b,a)||null}}),G=F.extend({getImageThumbnailUrl:function(){return this.media.get("metadata").imageUrl||F.prototype.getImageThumbnailUrl.call(this)}}),H=A.extend({createContentNode:function(){var a=A.prototype.createContentNode.apply(this,arguments),b=a.attr("src");return this.shouldAutoplay()&&b&&(b=k.serialize(b,{audio:1}),a.attr("src",b)),a}}),I=function(a,b){var c={PLAY_HIDE:{kind:"html",providerExpandMessage:m("Play"),providerCollapseMessage:m("Hide")},VIEW_HIDE:{kind:"html",providerExpandMessage:m("View"),providerCollapseMessage:m("Hide")},VIEW_IMAGE:{kind:"image",providerIcon:"icon-images",providerExpandMessage:m("View"),providerCollapseMessage:m("Hide")}},e=function(a,b){return d.extend(c[a],{providerIcon:b})},g=null,h=null,i=f.Media.MEDIA_TYPES;switch(a.get("mediaType")){case i.IMAGE:case i.IMAGE_UPLOAD:g=c.VIEW_IMAGE;break;case i.FACEBOOK_PHOTO:h=G,g=c.VIEW_IMAGE;break;case i.VIMEO_VIDEO:case i.YOUTUBE_VIDEO:h=A,g=e("PLAY_HIDE","icon-video");break;case i.TWITTER_STATUS:h=E,g=e("VIEW_HIDE","icon-twitter");break;case i.VINE_VIDEO:h=H,g=e("PLAY_HIDE","icon-video");break;case i.FACEBOOK_VIDEO:g=e("VIEW_HIDE","icon-video");break;case i.SOUNDCLOUD_SOUND:h=B,g=e("PLAY_HIDE","icon-music");break;case i.GOOGLE_MAP:g=e("VIEW_HIDE","icon-map");break;case i.UNKNOWN:h=z,g=e("VIEW_HIDE");break;default:return null}if(null===h)switch(g.kind){case"webpage":return null;case"html":h=y;break;case"image":h=F}var j=new w(d.extend(g,{postId:b}));return{Cls:h,mediaViewModel:j}},J=function(a,b){var c=I(a,b);if(!c)return null;var d=new c.Cls({model:c.mediaViewModel,media:a});return d.relatedPost=b,d};return d.extend(s,{getCollapseDefault:p,getDomain:t,RichMediaLinkView:v,RichMediaViewModel:w,RichMediaView:x,IframeRichMediaView:y,UnknownRichMediaView:z,SoundCloudRichMediaView:B,AutoplayRichMediaView:A,SourcelessIframeRichMediaView:C,DynamicHeightRichMediaView:D,TwitterRichMediaView:E,ImageRichMediaView:F,FacebookPhotoRichMediaView:G,VineRichMediaView:H,instantiateRichMediaView:J,getRichMediaViewConfig:I})}),define("lounge/mixins/post-reply",["underscore","common/models","lounge/common"],function(a,b,c){"use strict";var d={initialize:function(){this.canBindTypingHandlers()&&this.bindTypingHandlers()},canBindTypingHandlers:function(){return this.parent&&c.getLounge().isRealtimeEnabled()&&this.session&&this.thread&&this.thread.forum},bindTypingHandlers:function(){return a.map([[this,"show",this.typingStart],[this,"hide",this.typingStop]],function(a){return this.listenTo.apply(this,a),a},this)},syncTyping:function(a){this.typingUser&&(void 0!==a&&this.typingUser.set("typing",a),this.typingUser.sync())},typingStart:function(){var a=this.parent;this.typingUser||(this.typingUser=b.TypingUser.make({user:this.session.user.id,post:a.id,thread:this.thread.id,forum:this.thread.forum.id}),a.usersTyping.add(this.typingUser)),this.syncTyping(!0)},typingStop:function(){this.syncTyping(!1)}},e=function(b){var c=b.initialize;a.extend(b,d),b.initialize=function(){c.apply(this,arguments),d.initialize.call(this)}};return{asRealtimeTyping:e}}),define("lounge/views/uploads",["jquery","underscore","backbone","modernizr","core/api","common/utils","common/models","core/strings","common/templates","shared/common/corefuncs"],function(a,b,c,d,e,f,g,h,i,j){"use strict";var k=h.get,l=function(a){if(!a)throw new Error("Cannot instantinate MediaStore without a valid storageKey!");this._storageKey=a,this._store=d.localstorage?window.localStorage:f.hashStorage};b.extend(l.prototype,{getItems:function(){var a=this._store.getItem(this._storageKey);return a&&JSON.parse(a)||{}},clear:function(){this._store.removeItem(this._storageKey)},getItem:function(a){return this.getItems()[a]},setItem:function(a,b){var c=this.getItems();return c[a]=b,this._store.setItem(this._storageKey,JSON.stringify(c)),b},removeItem:function(a){var b=this.getItems();return a in b?(delete b[a],this._store.setItem(this._storageKey,JSON.stringify(b)),!0):!1}});var m=c.View.extend({events:function(){var a={"click [data-action=attach]":"_attachMedia"};return window.FormData&&b.extend(a,{dragover:"_dragOn",dragenter:"_dragOn",dragleave:"_dragOff",dragexit:"_dragOff",drop:"_drop"}),a},initialize:function(a){this.parent=a.parent,this.urls=a.urls},setElement:function(){var a=c.View.prototype.setElement.apply(this,arguments);return this.$dragPlaceholder=this.$el.find("[data-role=drag-drop-placeholder]"),this.$mediaSelector&&this.$mediaSelector.off(),this.$mediaSelector=this.$el.find("input[type=file][data-role=media-upload]"),this.$mediaSelector.on("change",b.bind(this._selectorChange,this)),a},_toggleDragPlaceholder:b.throttle(function(a){a?this.$dragPlaceholder.show():this.$dragPlaceholder.hide()},50),_selectorChange:function(a){this.uploadMedia(a.target.files),a.target.files&&d.localstorage&&!window.localStorage.getItem("usedDragDrop")&&this.trigger("uploader:alert",k("Did you know you can drag and drop images too? Try it now: drag images below."),{},function(){window.localStorage.setItem("usedDragDrop","1")})},_dragOn:function(a){a.stop(),this._toggleDragPlaceholder(!0),this.trigger("uploader:dragEnter")},_dragOff:function(a){a.stop(),this._toggleDragPlaceholder(!1)},_drop:function(a){a.stop(),window.localStorage.setItem("usedDragDrop","1"),this._toggleDragPlaceholder(!1),this.uploadMedia(a.originalEvent.dataTransfer.files)},_attachMedia:function(a){a.stop(),this.$mediaSelector.click()},_uploadMediaModern:function(a){for(var b=this,c=new FormData,d=0,e=a[d];e;e=a[++d])e.type.match(/^image\//)&&c.append("attachment",e);c.append("json","true"),this.parent&&c.append("id",this.parent.id);var g=f.CORS.request("POST",this.urls.add,function(){if(void 0===g.readyState||4===g.readyState&&200===g.status){var a=JSON.parse(g.responseText);a.success?b.trigger("uploader:addMedia",a.media):b.trigger("uploader:alert",a.message,"error")}},function(){var a=k("Unfortunately your image upload failed. Please verify that your image is under 2MB. If you continue seeing this error, please try again later.");413===g.status&&(a=k("Sorry, but the file you submitted is larger than 2 MB. Please make it smaller and try again.")),b.trigger("uploader:alert",a,"error")});g.withCredentials=!0,g.send(c)},_uploadMediaLegacy:function(){var c=this,d=document.createElement("iframe"),e=document.createElement("form"),f=this.$mediaSelector[0];
a(f).off();var g=a(f.cloneNode(!0));if(f.parentNode.replaceChild(g[0],f),g.on("change",b.bind(this._selectorChange,this)),this.$mediaSelector=g,d.style.display="none",d.name="uploadFrame"+ +new Date,e.style.display="none",e.target=d.name,e.action=this.urls.add,e.method="post",e.appendChild(d),e.appendChild(f),this.parent){var h=document.createElement("input");h.type="hidden",h.name="id",h.value=this.parent.id,e.appendChild(h)}e.enctype="multipart/form-data",e.encoding="multipart/form-data";var i=function(b){var d=b.originalEvent,f=JSON.parse(d.data);"upload"===f.name&&(a(e).remove(),a(window).off("message",i),f.data.success?c.trigger("uploader:addMedia",f.data.media):c.trigger("uploader:alert",f.data.message,"error"))};a(window).on("message",i),this.$el.append(e),e.submit()},uploadMedia:function(a){var b=window.FormData?"Modern":"Legacy";return this.uploadMedia=this["_uploadMedia"+b],this.uploadMedia(a)}}),n=c.View.extend({events:{"click [data-action=detach]":"onDetach"},initialize:function(a){this.urls=a.urls;var d=a.mediaStorageKey;this.mediaStore=d&&new l(d),this.collection=new c.Collection,this.mediaStore&&this.collection.reset(b.values(this.mediaStore.getItems())),this.listenTo(this.collection,{add:this.onAdd,remove:this.onRemove,reset:this.onReset})},setElement:function(){var a=c.View.prototype.setElement.apply(this,arguments);return this.collection&&this.collection.each(this._addElement,this),a},hasVisible:function(){return!!this.collection.length},onDetach:function(b){b.stop();var c=a(b.target).closest("li"),d=c.attr("data-media-id"),e=this.collection.where({location:d});this.collection.remove(e,{$el:c})},_addElement:function(b){var c=a(i.render("legacyMediaUpload",b.toJSON()));c.attr("data-media-id",b.get("location")),this.$el.append(c)},onAdd:function(a){this.mediaStore&&this.mediaStore.setItem(a.get("location"),a),this._addElement(a)},onRemove:function(a,b,c){c.$el&&c.$el.remove();var d=this.mediaStore&&this.mediaStore.getItem(a.get("location"));if(d){var e={media:JSON.stringify(d)};this.parent&&(e.id=this.parent.id);var f=new Image;f.src=j.serialize(this.urls.remove,e,!0),this.mediaStore.removeItem(d.location)}},onReset:function(){this.$el.empty(),this.mediaStore&&this.mediaStore.clear()}}),o=c.View.extend({initialize:function(){this._urlsCache={},this.collection=new c.Collection([],{model:g.RichMedia,comparator:function(a){return a.get("index")}}),this.listenTo(this.collection,{add:this.onAdd,"change:id change:beingEdited":this.onAdd,remove:this.onRemove,reset:this.onReset,sort:this.onSort})},hasVisible:function(){return this.collection.any(function(a){return a.$el})},onAdd:function(c,d,e){if(!c.get("thumbnailUrl"))return!1;if(b.contains(g.Media.WEBPAGE_TYPES,c.get("mediaType")))return!1;if(!e.force){if(c.$el)return;if(c.get("beingEdited")&&!e.isPasteEvent)return}var f=a(i.render("mediaUpload",{media:c.toJSON(),backupUrl:e.backupUrl}));c.$el=f,this.$el.append(f)},onRemove:function(a){a.$el&&(a.$el.remove(),a.$el=null)},onReset:function(a,c){b.each(c.previousModels,this.onRemove,this),a.each(function(d){this.onAdd(d,a,b.extend(c,{force:!0}))},this)},onSort:function(a){var b=a.chain().filter(function(a){return!!a.$el}).pluck("$el").value();this.$el.empty(),this.$el.append(b)},addMedia:function(a,c){var d=this,f=a.url,h=d._urlsCache[f];return h?(h.set(a,c),c=b.extend({merge:!0,sort:!1,backupUrl:f},c),d.collection.add(h,c),void d.collection.sort()):void((!a.beingEdited||c.isPasteEvent)&&(h=new g.RichMedia(a),d.collection.add(h,b.extend({merge:!0,backupUrl:f},c)),d._urlsCache[f]=h,(!h.get("beingEdited")||c.isPasteEvent)&&e.call("media/details.json",{method:"POST",data:{url:f},success:function(a){d._urlsCache[f].set(a.response,b.extend({backupUrl:f,sort:!1},c)),d.collection.sort()}})))},updateFromText:function(a,c,d){if(!a)return void this.collection.reset();var e=f.bleachFindUrls(a);e=b.uniq(e,!1,function(a){return a.url});var g={};b.each(e,function(e){g[e.url]=!0,e.beingEdited=e.index<c&&c<=e.endIndex||"."===a[e.endIndex],this.addMedia(e,b.extend({backupUrl:e.url},d))},this);var h=this.collection.pluck("url");g=b.keys(g);var i=b.difference(h,g);this.collection.remove(this.collection.filter(function(a){return b.contains(i,a.get("url"))}))}}),p=c.View.extend({initialize:function(a){this.parent=a.parent,this.legacyView=new n({mediaStorageKey:a.mediaStorageKey,urls:a.urls,parent:this.parent}),this.legacy=this.legacyView.collection,this.richView=new o({}),this.rich=this.richView.collection,this.listenTo(this.legacy,"all",this._updateEmpty),this.listenTo(this.rich,"all",this._updateEmpty)},setElement:function(){var a=c.View.prototype.setElement.apply(this,arguments);return this.legacyView&&(this.legacyView.setElement(this.$el.find("[data-role=media-legacy-list]")[0]),this.richView.setElement(this.$el.find("[data-role=media-rich-list]")[0]),this.rich.reset()),a},clear:function(){this.legacy.reset(),this.rich.reset()},_updateEmpty:function(){this.legacyView.hasVisible()||this.richView.hasVisible()?this.$el.removeClass("empty"):this.$el.addClass("empty")}});return{MediaStore:l,MediaUploaderView:m,MediaUploadsLegacySubView:n,MediaUploadsRichSubView:o,MediaUploadsView:p}}),define("core/mixins/asScrollableContainer",["underscore"],function(a){"use strict";var b=function(b){this.scrollMeasureSelector=b.scrollMeasureSelector,this.events=a.extend(c.getScrollEvents(b.childSelector),this.events),a.extend(this,a.pick(c,"getScrollMeasure","handleScrollEvent"))},c={getScrollEvents:function(b){var c=[["mousewheel","handleScrollEvent"],["wheel","handleScrollEvent"]];return b&&(c=a.map(c,function(a){return a[0]=a[0]+" "+b,a})),a.object(c)},getScrollMeasure:function(){return this.scrollMeasure&&this.scrollMeasure.parent().length||(this.scrollMeasure=this.$el,this.scrollMeasureSelector&&(this.scrollMeasure=this.$el.find(this.scrollMeasureSelector))),this.scrollMeasure},handleScrollEvent:function(a){var b=a.originalEvent,c=b.wheelDeltaY||-b.deltaY,d=this.$el,e=d.height(),f=this.getScrollMeasure(),g=f.height(),h=f.parent()[0].scrollTop,i=h>=g-e,j=0===h;(i&&0>c||j&&c>0)&&a.preventDefault()}};return b}),define("lounge/views/cards",["jquery","underscore","backbone","lounge/common","common/utils","common/collections","common/models","common/templates","common/bus","common/urls","common/views/mixins","core/mixins/asScrollableContainer"],function(a,b,c,d,e,f,g,h,i,j,k,l){"use strict";var m=e.preventDefaultHandler,n=c.View.extend({events:{mouseenter:"enter",mouseleave:"leave"},initialize:function(){this._id=b.uniqueId(),this._rendered=!1,this._hoverState="out",this._visible=!1,this._enterTimeout=null,this._leaveTimeout=null,n.open={},this.events=this.events||{},this.events["click [data-action=profile]"]="handleShowProfile",this.listenTo(this,"authenticating",this.keepOpen)},render:function(){this.hide(),a("body").append(this.el)},target:function(a){a.on("mouseenter",b.bind(this.enter,this,a)),a.on("mouseleave",b.bind(this.leave,this))},enter:function(a,c){var d=this;a.originalEvent&&(c=a,a=null),a&&(d.$target=a),d._leaveTimeout&&clearTimeout(d._leaveTimeout),"in"!==d._hoverState&&(d._hoverState="in",d._enterTimeout=b.delay(function(){"in"===d._hoverState&&d.show(),d._enterTimeout=null},n.DELAY_ENTER),n.open[this.uid]=this)},leave:function(){var a=this;a._enterTimeout&&clearTimeout(a._enterTimeout),"out"!==a._hoverState&&(a._hoverState="out",a._leaveTimeout=b.delay(function(){"out"===a._hoverState&&a.hide(),a._leaveTimeout=null},n.DELAY_LEAVE),n.open[this.uid]&&delete n.open[this.uid])},show:function(){var a=this;a._visible||(a._rendered||(a._rendered=!0,a.render()),a.moveTo(a.$target),a.$el.show(),a._visible=!0)},moveTo:function(a){if(a){var b=n.POSITION_OFFSET,c=a.offset(),e=this.$el,f=e.dim(),g=d.getLounge().getPosition();c.top-=b,c.top+f.height+g.frameOffset.top<=g.pageOffset+g.height?e.css("top",c.top):e.css("top",c.top-f.height+2*b),e.css("left",c.left+b)}},hide:function(){this._keepOpen||(this.$el.hide(),this._visible=!1)},keepOpen:function(){this._keepOpen=!0,this.setupKeepOpenCanceler()},setupKeepOpenCanceler:function(){var c=this,d=function(){"out"===c._hoverState&&(c.stopListening(i,"window.click",d),a("body").off("click",d),c._keepOpen=!1,c.hide())};b.delay(function(){c.listenTo(i,"window.click",d),a("body").on("click",d)},100)},isVisible:function(){return this._visible},handleShowProfile:m(function(){this.hide()})},{open:{},instances:{},DELAY_ENTER:350,DELAY_LEAVE:175,POSITION_OFFSET:20,exitAll:function(){b.invoke(n.open,"leave")},create:function(a,b,c,d){var e=n.instances[c];e||(n.instances[c]=e={});var f=e[a];return f||(f=new d(b),e[a]=f),b.targetElement&&f.target(b.targetElement),f}});!function(){a(document).on("mouseout",b.debounce(function(a){var b=a.relatedTarget||a.toElement;b&&"HTML"!==b.nodeName||n.exitAll()},10))}();var o=n.extend({className:"tooltip-outer",events:b.defaults({"click [data-action=toggleFollow]":"toggleFollow"},n.prototype.events),initialize:function(a){var b=this;n.prototype.initialize.call(b,a),b.session=a.session,b.user=a.user,b._fetched=!1,b.listenTo(b.session,"change:id",function(){this._rendered&&this.render()})},onFetch:function(a){var c=this;this.user=new g.SyncedUser(a),this.updateCounters(),this.updateActions(),this.listenTo(this.user,{"change:numPosts change:numLikesReceived":b.debounce(function(){c.updateCounters()}),"change:isFollowing":c.updateActions})},serialize:function(){var a=this.user.toJSON({session:this.session});return a.numLikesReceived=a.numLikesReceived||this.user.get("numVotes")||0,{user:a,showFollowButton:this.user.has("isFollowing")||this.session.isLoggedOut()}},render:function(){this.$el.html(h.render("hovercard",this.serialize())),n.prototype.render.call(this)},updateCounters:function(){this.$el.find("[data-role=counters]").html(h.render("hovercardCounters",this.serialize()))},updateActions:function(){this.$el.find("[data-role=actions]").html(h.render("hovercardActions",this.serialize()))},show:function(){this._fetched||(this._fetched=!0,this.user.fetch({success:b.bind(this.onFetch,this)})),n.prototype.show.call(this)}},{create:function(a){var b=a.user;return n.create(b.id,a,"ProfileCard",o)}});b.extend(o.prototype,k.FollowButtonMixin);var p=n.extend({className:"context-card tooltip-outer",initialize:function(a){var b=this;n.prototype.initialize.call(b,a),b.post=a.post},render:function(){var a=this.post.toJSON();a.excerpt=e.truncate(b.escape(e.strip(a.message),40,"...")),this.$el.html(h.render("contextCard",{post:a})),n.prototype.render.call(this)}},{create:function(a){var b=a.post;return n.create(b.id,a,"ContextCard",p)}}),q=n.extend({className:"tooltip-outer upvoters-outer",initialize:function(a){var b=this;n.prototype.initialize.call(b,a),b._fetched=!1,b._loading=!1,b._rendered=!1;var c=a.model;b.model=c,b.session=a.session,b.likes=c.get("likes"),b.hadLikes=!!b.likes,b.users=c.getUpvotersUserCollection(),b.listenTo(b.model,"change:userScore",b.updateUserSet),b.listenTo(b.model,"change:likes",b.updateGuestVotes),b.listenTo(b.users,"add",b.addUser),b.listenTo(b.users,"remove",b.removeUser)},updateUserSet:function(){var a=this.session.user,b=this.likes,c=!1;if(this.likes=this.model.get("likes"),this.model.get("userScore")>0)if(this.session.isLoggedIn()&&this.users.add(a),this.likes&&!b)this._rendered=!1,this.show();else{var d=this.likes-1-this.users.length;c=this.session.isLoggedOut()?!!d:!0}else this.users.remove(a),this.likes||this.hide();this.updateGuestVotes(),this.moveTo(this.$target,c)},addUser:function(a){var c=this;a.get("isAnonymous")?c.updateGuestVotes():c.$listEl&&c.$listEl.length&&(c.$listEl.prepend(h.render("upvoter",b.extend({highlight:!0},a.toJSON()))),c.stopHighlightUsername())},removeUser:function(a){var b=this;if(a.get("isAnonymous"))b.updateGuestVotes();else{var c=b.$el.find("[data-user="+a.get("id")+"]");c.length&&c.remove()}},stopHighlightUsername:b.debounce(function(){var a=this.$el.find(".highlight");a.removeClass("highlight")},1100),getGuestVoteCount:function(){return Math.max(this.model.get("likes")-this.users.length,0)},updateGuestVotes:function(){var a=this,b=a.$el.find("[data-role=guest]"),c={guestCount:this.getGuestVoteCount(),guestAvatarUrl:j.avatar.generic,highlight:b.length},d=h.render("guestUpvoter",c);b.length?(b.replaceWith(d),a.stopHighlightUsername()):a.$listEl&&a.$listEl.length&&a.$listEl.append(d)},render:function(){delete this.pointEl,this.$el.html(h.render("upvoters",{users:this.users.toJSON(),guestCount:this.getGuestVoteCount(),guestAvatarUrl:j.avatar.generic,isLoading:this._loading,highlight:!1})),n.prototype.render.call(this),this.$listEl=this.$el.find(".upvoters ul")},show:function(){var a=d.getLounge(),c=this;if(c.likes&&!c.isVisible()&&(c.hadLikes||(c._fetched=!0,c._loading=!1),c._fetched?c._loading&&(c._rendered=!1,c._loading=!1,c.hide()):(c.users.fetch().done(b.bind(this.show,this)),c._fetched=!0,c._loading=!0),c._fetched&&!c._loading)){var e=this.session.user;this.model.get("userScore")>0&&this.session.isLoggedIn()&&!this.users.contains(e)&&this.users.add(e),n.prototype.show.call(this),this.scrollMeasure&&this.scrollMeasure.dim().height>this.$el.dim().height&&this.$el.addClass("has-scroll"),a.trigger("uiAction:upvotersCardShow")}},showPoint:function(a){var c=["tl","bl"];this.pointEl||(this.pointEl=this.$el.find(".tooltip-point"),this.pointEl.removeClass("hidden")),b.each(c,function(a){this.pointEl.removeClass("point-position-"+a)},this),this.pointEl.addClass("point-position-"+a)},moveTo:function(a,b){if(a){var c=n.POSITION_OFFSET,e=a.offset(),f=this.$el,g=f.dim(),h=d.getLounge().getPosition(),i=h.frameOffset.height;b&&(g.height+=f.find("li.user").dim().height+10),e.top-g.height-c>=0&&e.top-g.height+h.frameOffset.top>=h.pageOffset?(f.css({bottom:i-e.top+c,top:"inherit"}),this.showPoint("bl")):(f.css({bottom:"inherit",top:e.top+2*c}),this.showPoint("tl")),f.css("left",e.left-c)}},handleShowProfile:m(function(a){n.prototype.handleShowProfile.call(this,a),d.getLounge().trigger("uiAction:showProfileFromUpvotes")})},{create:function(a){return n.create(a.postId,a,"UpvotersCard",q)}});return l.call(q.prototype,{scrollMeasureSelector:"[data-role=content]"}),{HoverCard:n,ProfileCard:o,ContextCard:p,UpvotersCard:q}}),define("core/extensions/jquery.autoresize",["jquery","underscore"],function(a,b){"use strict";return a.fn.autoresize=function(c){var d=b.extend({extraSpace:0,maxHeight:1e3},c);return this.each(function(){var c=a(this).css({resize:"none",overflow:"hidden"}),e="true"===String(c[0].contentEditable)?"html":"val",f="html"===e?"<br>":"\n",g=c.height(),h=function(){var d={};b.each(d,function(a,b){d[b]=c.css(b)});var e=a(c[0].cloneNode(!0));return e.removeAttr("id").removeAttr("name").css({visibility:"hidden",position:"absolute",top:"-9999px",left:"-9999px",contentEditable:!1}).css(d).attr("tabIndex","-1"),e.insertAfter(c[0]),e}(),i=null,j=function(){h[0].style.height=0,h[e](c[e]()+f),h.scrollTop(h[0].scrollHeight);var a=Math.max(h[0].scrollHeight,g)+parseInt(d.extraSpace,10);d.maxHeight&&(a>=d.maxHeight?(c.css("overflow",""),a=d.maxHeight):c.css("overflow","hidden")),i!==a&&(i=a,c.height(a),c.trigger&&c.trigger("resize"))},k=b.throttle(j,500),l=function(a){13===a.keyCode?j():k()};c.bind("keyup",l).bind("paste",j).css("overflow","hidden"),j()})},a}),define("lounge/views/posts",["require","jquery","underscore","backbone","queuedstorage","editable","modernizr","core/api","common/defines","common/models","common/collections","common/utils","core/strings","common/bus","common/urls","common/Session","common/templates","common/views/mixins","common/keys","common/collections/profile","lounge/views/media","lounge/mixins","lounge/mixins/post-reply","lounge/views/uploads","lounge/views/cards","lounge/common","core/extensions/jquery.autoresize"],function(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z){"use strict";var A=m.get,B=l.preventDefaultHandler,C=350,D=function(){var a=5,b=g.localstorage?window.localStorage:l.hashStorage;return new e(b,a,"drafts.queue")}(),E=d.View.extend({tagName:"form",className:"reply",events:{"click [data-action=cancel]":"hide",submit:"submitForm"},postboxAlertSelector:"[role=postbox-alert]",initialize:function(a){if(this.session=a.session,this.parent=a.parent,this.thread=a.thread,this.loginFormView=new F({thread:this.thread,session:this.session,alert:c.bind(this.alert,this)}),this.setAlertSelector("[role=alert]"),this.userSuggestions=a.userSuggestions,this.parentView=a.parentView,this.listenTo(this.session,{"change:id change:audienceSyncVerified":this.redraw}),this._isHidden=!1,this.parent&&(E.open[this.parent.cid]=this),this.thread.forum.get("settings").allowMedia){var b=this.storageKey("media"),d={add:this.thread.get("uploadAdd"),remove:this.thread.get("uploadRemove")};this.mediaUploads=new x.MediaUploadsView({mediaStorageKey:b,parent:this.parent,urls:d}),this.mediaUploader=new x.MediaUploaderView({parent:this.parent,urls:d}),this.listenTo(this.mediaUploader,{"uploader:alert":function(a,b,d){var e=this.alert(a,b);c.isFunction(d)&&this.listenToOnce(e,"dismiss",d)},"uploader:dragEnter":function(){this.$el.addClass("expanded")},"uploader:addMedia":this.handleAttachMedia})}var e=c.throttle(this.updateLiveMedia,500),f=c.debounce(this.updateLiveMedia,1e3);this.updateLiveMediaRateLimited=this.canUseContentEditable?function(){e.apply(this,arguments),f.call(this,!0)}:function(){f.call(this,!0)}},handleAttachMedia:function(a){if(this.mediaUploads){var b=z.getLounge();b.switches.enabled("rich_media_only")?(this.textarea.handleFocusIn(),this.textarea.set(this.textarea.get()+" "+a.location)):this.mediaUploads.legacy.add(a)}},storageKey:function(a){return this.thread.id?[a||"drafts","thread",this.thread.id,"parent",this.parent?this.parent.id:0].join(":"):null},updateLiveMedia:function(a){function b(){var b=d.textarea.get(),c=d.textarea.content&&d.textarea.content.selectedTextNodeOffset()||b.length;d.mediaUploads.richView.updateFromText(b,c,{isPasteEvent:a})}var d=this;d.mediaUploads&&(a?c.defer(b):b())},saveDraft:function(){var a=this.storageKey(),c=this.textarea.get();a&&c&&D.setItem(a,JSON.stringify([c,b.now(),this.textarea.mentionsCache&&this.textarea.mentionsCache.models]))},getDraft:function(){if(null===this.storageKey())return null;var a=D.getItem(this.storageKey());if(!a)return null;var d=JSON.parse(a);if(d[1]+86400>b.now()){var e=d[2];return e&&!c.isEmpty(e)&&this.userSuggestions.addRemote(new k.UserCollection(e)),d[0]}return D.removeItem(this.storageKey()),null},restoreDraft:function(){var a=this.getDraft();a&&this.textarea.set(a)},updateAvatar:function(){this.$el.find("[data-role=user-avatar]").attr("src",this.session.user.get("avatar").cache)},redraw:function(){var a=this.$el.hasClass("expanded"),c=this.el,d=this.$el.find("textarea").val();this.render(),this.$el.find("textarea").val(d),a&&this.$el.addClass("expanded"),0!==b(c).parent().length&&c.parentNode.replaceChild(this.el,c)},getPlaceholderText:function(){return A(this.thread.get("posts")?"Join the discussion…":"Start the discussion…")},render:function(){var a=this,b=a.$el;return this.loginFormView.$el.detach(),a.$el.html(q.render("form",{user:a.session.toJSON(),audienceSyncRequired:this.session.needsAudienceSyncAuth(this.thread.forum),allowMedia:a.thread.forum.get("settings").allowMedia})),this.loginFormView.render(),this.loginFormView.$el.appendTo(a.$("[data-role=login-form]")),a.parent?b.addClass("expanded"):b.removeClass("expanded"),a.session.user.id?b.addClass("authenticated"):b.removeClass("authenticated"),a.initTextarea(),a.mediaUploads&&(a.mediaUploads.setElement(b.find("[data-role=media-preview]")[0]),a.mediaUploader.setElement(b.find("[data-role=textarea]")[0])),a.session.get("mustVerifyEmail")&&a._alertMustVerify(),a._isHidden&&b.addClass("hidden"),this},canUseContentEditable:function(){return g.contenteditable&&!i.browser.mobile&&!(window.opera&&window.opera.version)}(),initTextarea:function(){var a=this.getDraft()||"",b=this.canUseContentEditable?K:J,d=this.textarea=new b({value:a,placeholder:this.getPlaceholderText(),userSuggestions:this.userSuggestions});this.$("[data-role=textarea]").prepend(d.render().el),this.listenTo(d,{keychange:c.debounce(this.saveDraft,500),focus:function(){this.$el.hasClass("expanded")||this.$el.addClass("expanded")}}),this.listenTo(d,{keychange:this.updateLiveMediaRateLimited,paste:function(a,b){b&&b.fake||this.updateLiveMedia(!0)}})},resize:function(){this.textarea.resize()},focus:function(){this.textarea.focus()},clear:function(){var a=this;a.textarea.clear(),a.$el.removeClass("expanded"),a.mediaUploads&&a.mediaUploads.clear(),c.delay(function(){a.resize()},200),a.parent?a.hide():a.setInactive()},setInactive:function(){this.$el.removeClass("expanded")},restore:function(a){var b=this;b.textarea.set(a.get("raw_message")),b.textarea.handleFocusIn(),c.delay(function(){b.resize()},200),b.parent&&b.show()},_alertMustVerify:function(a){var b=m.interpolate(A("%(forumName)s requires you to %(verifyEmail)s before posting"),{forumName:this.thread.forum.get("name"),verifyEmail:'<a href="#" data-action="verify-email">'+A("verify your email address")+"</a>"});this.alert(b,{safe:!0,type:a?"error":"warn",target:a?this.postboxAlertSelector:null})},submitForm:B(function(){return this.dismissAlert(),this.loginFormView.shouldRegisterUser()?void this.loginFormView.registerUser():this.initiatePost()}),initiatePost:function(){var a=this,b={thread:a.thread.id,depth:a.parent?a.parent.get("depth")+1:0,parent:a.parent?a.parent.id:null,raw_message:a.textarea.get()};a.session.isLoggedIn()?b.author_id=a.session.user.id:c.extend(b,{author_name:a.$el.find("input[name=display_name]").val(),author_email:a.$el.find("input[name=email]").val()});var d=z.getLounge();d&&d.switches.enabled("before_comment_callback")?(n.sendHostMessage("posts.beforeCreate",{raw_message:b.raw_message}),this.listenToOnce(n,"posts.beforeCreate.response",function(a){a&&(b.raw_message=a),this.createPost(b)})):this.createPost(b)},createPost:function(a){var d=this,e=z.getLounge();d.dismissAlert();var f=b.now(),g=new j.UniqueModel(j.Post),h=g.set(a,{validate:!0});if(d.session.get("mustVerifyEmail"))return void d._alertMustVerify(!0);if(!h)return void d.alert(g.validationError,{type:"error",target:d.postboxAlertSelector});var i=function(a,b){if(12===b.code&&/not have permission to post on this thread/.test(b.response)){var e=q.render("blacklistErrorMessage",{forumName:d.thread.forum.get("name")});d.alert(e,{type:"error",target:d.postboxAlertSelector,safe:!0})}else 12===b.code&&/verify/.test(b.response)?d._alertMustVerify(!0):c.isString(b.response)?d.alert(b.response,{type:"error",target:d.postboxAlertSelector}):d.alert(A("Oops! We're having trouble posting your comment. Check your internet connection and try again."),{type:"error",target:d.postboxAlertSelector});d.thread.posts.remove(g),d.restore(g),d.thread.incrementPostCount(-1)},k=function l(){d.storageKey()&&D.removeItem(d.storageKey()),d.thread.trigger("create",g),e.trigger("uiCallback:postCreated",g,{duration:b.now()-f}),d.thread.posts.saveToCache(g),d.parentView&&d.parentView.toggleReplyLink(!1),d.stopListening(g,"error",i),d.stopListening(g,"sync",l),e.trigger("domReflow")};return d.listenTo(g,{error:i,sync:k}),g.save(a),g.author=d.session.isLoggedIn()?d.session.user:new j.UniqueModel(j.User,{name:a.author_name,email:a.author_email}),d.thread.incrementPostCount(1),g.created=!0,d.thread.posts.add(g),d.clear(),e.trigger("uiAction:createPost",g),g},prependTo:function(a){a=a[0],a.insertBefore(this.el,a.firstChild)},remove:function(){this.parent&&(delete E.open[this.parent.cid],this.typingStop()),this.loginForm&&(this.loginForm.remove(),this.loginForm=null),d.View.prototype.remove.call(this)},toggle:function(){this.isOpen()?this.hide():this.show()},show:function(){var a=this;a._isHidden=!1,a.$el.removeClass("hidden"),a.trigger("show")},hide:function(){var a=this;a._isHidden=!0,a.dismissAlert(),a.$el.addClass("hidden"),a.trigger("hide")},isOpen:function(){return!this._isHidden}});c.extend(E.prototype,v.AlertMixin),w.asRealtimeTyping(E.prototype),E.open=E.open||{};var F=d.View.extend({events:{"click input[name=author-guest]":"managePassword","focusin input[name=display_name]":"expandGuestForm"},initialize:function(a){this.thread=a.thread,this.session=a.session,this.alert=a.alert},expandGuestForm:function(){this.$("[data-role=guest-details]").addClass("expanded")},shouldRegisterUser:function(){return this.session.isLoggedOut()&&!this.$("input[name=author-guest]").is(":checked")},render:function(){var a=z.getLounge();return this.$el.html(q.render("loginForm",{user:this.session.toJSON(),forumName:this.thread.forum.get("name"),audienceSyncRequired:this.session.needsAudienceSyncAuth(this.thread.forum),allowAnonPost:this.thread.forum.get("settings").allowAnonPost,apiKey:a.config&&a.config.apiKey||"",sso:this.session.get("sso"),cid:this.cid})),this},parseRegistrationErrorResponse:function(a){if(a.responseJSON){var b=a.responseJSON.response;return/Unable to create user/i.test(b)?{email:[A("That email address is already registered with a Disqus account. Log in or enter another email.")]}:/The e-mail address you specified is already in use./i.test(b)?{email:[A("The e-mail address you specified is already in use.")+'<br><a class="link" href="#" data-action="auth:disqus">'+A("Try logging in.")+"</a>"]}:{all:[b]}}},handleRegistrationError:function(a){var b=this;b.clearRegistrationErrors(),c.isString(a)&&(a={all:[a]}),c.has(a,"all")&&(b.alert&&b.alert(a.all[0],"error"),a=c.omit(a,"all")),c.each(a,function(a,c){var d=b.$("input[name="+c+"]");d.attr("aria-invalid","true").after('<label for="'+d.attr("id")+'" class="input-label">'+a[0]+"</label>").parent(".input-wrapper").addClass("has-error")}),b.$("[aria-invalid]").first().focus()},managePassword:function(){var a=this.$el,b=a.find("input[name=author-guest]"),c=a.find("input[name=password]");c&&(c[b.is(":checked")?"hide":"show"](),c.val("")),this.clearRegistrationErrors()},clearRegistrationErrors:function(){this.$(".input-wrapper.has-error").removeClass("has-error").find(".input-label").remove(),this.$("[aria-invalid]").removeAttr("aria-invalid")},getPassword:function(){var a=this.$el.find("input[name=password]");return a.length?a.val():null},registerUser:function(){var a=this,b=new j.User({display_name:a.$el.find("input[name=display_name]").val(),email:a.$el.find("input[name=email]").val(),password:a.getPassword()});return b.isValid()?void b.register({error:function(b){a.handleRegistrationError(a.parseRegistrationErrorResponse(b))},success:function(){a.session.setUser(b),n.trigger("onboardAlert.show"),z.getLounge().trigger("uiAction:finishRegistrationEmbed")}}):void a.handleRegistrationError(b.validationError)}}),G=d.View.extend({tagName:"form",className:"edit",events:{submit:"submitForm","click [data-action=cancel]":"cancel"},initialize:function(a){this.post=a.post,this.session=a.session},show:function(){},hide:function(){},cancel:function(){this.trigger("cancel")},render:function(){var a=this.post.toJSON();this.$el.html(q.render("edit",{post:a,user:this.session.toJSON()}));var b=this.textarea=new J({value:a.raw_message});this.$("[data-role=textarea]").prepend(b.render().el)},prependTo:function(a){a=a[0],a.insertBefore(this.el,a.firstChild)},resize:function(){this.textarea.resize()},submitForm:function(a){a&&a.preventDefault()&&a.preventDefault();var b=this,c={raw_message:this.textarea.get()},d=b.post.validate(c);return void 0!==d?alert(d):(b.trigger("submitted"),void b.post.save(c,{success:function(){}}))},remove:function(){this.$el.remove()}}),H=d.View.extend({initialize:function(a){this.options=a},render:function(){var a,b=this.options.parentView.reply,c=b&&b.typingUser,d=this.model.usersTyping.count(c&&c.id);return 0>=d?void this.$el.hide():(1===d?a=A("One other person is typing…"):(a=A("%(num)s other people are typing…"),a=m.interpolate(a,{num:d})),this.$el.text(a),void this.$el.show())}}),I=d.View.extend({tagName:"form",className:"moderate",events:{submit:"submit","click [data-action=cancel]":"cancel"},initialize:function(){this.loading=this.model.get("ipAddress")&&this.model.get("email")?(new b.Deferred).resolve().promise():this.model.fetch()},render:function(){var a=this,b=a.$el;return b.addClass("loading"),a.loading.done(function(){b.removeClass("loading"),b.html(q.render("blacklist",{post:a.model.toJSON()}))}),a},cancel:B(function(){this.trigger("cancel")}),submit:B(function(){var a={},b=this;b.$el.find("input").each(function(){this.checked&&(a[this.name]=this.value)}),c.isEmpty(a)||(a.forum=b.model.get("forum"),h.call("blacklists/add.json",{method:"POST",data:a,success:function(){b.trigger("success")}}))})}),J=d.View.extend({events:{"keyup [data-role=editable]":"handleKeyUp","paste [data-role=editable]":"handlePaste","focusin [data-role=editable]":"handleFocusIn"},initialize:function(a){a=a||{},this.value=a.value,this.placeholder=a.placeholder},render:function(){var a=this.$input=b("<textarea>").attr({"class":"textarea",placeholder:this.placeholder,"data-role":"editable"}).val(this.value).appendTo(this.el);return a.autoresize({maxHeight:C}),this},resize:function(){this.$input.trigger("paste",{fake:!0})},get:function(){return this.$input.val()},set:function(a){this.$input.val(a)},clear:function(){this.set("")},focus:function(){this.$input[0].focus()},handleKeyUp:function(){this.trigger("keychange")},handlePaste:function(){this.trigger("paste keychange"),this.$input.trigger("resize")},handleFocusIn:function(){this.trigger("focus")}}),K=J.extend({events:function(){return c.extend({},J.prototype.events,{"keydown [data-role=editable]":"handleKeyDown","focusout [data-role=editable]":"handleFocusOut","click .placeholder":"handlePlaceholderClick"})},initialize:function(a){J.prototype.initialize.call(this,a),a=a||{},this.userSuggestions=a.userSuggestions,this.mentionsCache=new k.UserCollection,this.suggestions=new L({userSuggestions:this.userSuggestions,mentions:this.mentionsCache}),this.listenTo(this.suggestions,"select",this.insertMention),this.reset(),this.$input=null},reset:function(){this.anchorNode=null,this.anchorOffset=null,this.anchorLength=0,this.suggestions.clear()},render:function(){var a=this.$input=b("<div>").attr({"class":"textarea",tabIndex:0,role:"textbox","aria-multiline":"true",contenteditable:"true","data-role":"editable"}).css({overflow:"auto","max-height":C+"px"}).appendTo(this.$el);this.$el.append(this.suggestions.el),this.content=new f(a[0],!0,{getHtmlElements:c.bind(this.getHtmlElements,this)}),this.set(this.value),this.suggestions.render();var d=this.placeholder;return d&&(a.attr("aria-label",d),this.$placeholder=b('<span class="placeholder">'+d+"</span>"),this.content.text()||this.setPlaceholder()),this},getHtmlElements:function(a){if(!a)return a;var b=[a],d=this.getMentionNodes(a);return c.each(d,function(a,d){for(var e=0;e<b.length;e++){var f,g=b[e],h=e;if(c.isString(g)){for(;(f=g.indexOf(d))>-1;)f>0&&b.splice(e++,0,g.substring(0,f)),b.splice(e++,0,a.cloneNode(!0)),g=g.substring(f+d.length);g&&g!==b[h]&&b.splice(e++,0,g),h!==e&&b.splice(e,1)}}}),b=c.map(b,function(a){return c.isString(a)?document.createTextNode(a):a})},getMentionNodes:function(a){var b=K.MENTIONS_RE_GROUPED,c={};b.lastIndex=0;for(var d=b.exec(a);d;){var e=d[1],f=this.userSuggestions.all().find(function(a){return a.get("username")===e});if(f){var g=K.getMentionDom(f),h=d[0];c[h]=g,this.updateCache(f,f.cid)}d=b.exec(a)}return c},setPlaceholder:function(){this.$el.prepend(this.$placeholder)},handleKeyDown:function(a){switch(a.keyCode){case 9:this.suggestions.active&&(this.suggestions.select(),a.preventDefault(),a.stopPropagation());break;case 10:case 13:case 38:case 40:this.suggestions.active&&(a.preventDefault(),a.stopPropagation())}},handleKeyUp:function(a){switch(J.prototype.handleKeyUp.call(this),a.preventDefault(),a.stopPropagation(),this.checkExistingMentions(),p.get().isLoggedIn()&&this.userSuggestions.fetch(),a.keyCode){case 50:if(!a.shiftKey)return;this.start(a);break;case 10:case 13:this.suggestions.select();break;case 27:this.reset(a);break;
case 38:this.suggestions.move("up");break;case 40:this.suggestions.move("down");break;default:this.throttledSuggest(a)}},handlePlaceholderClick:function(){this.$input.focus()},handleFocusIn:function(){J.prototype.handleFocusIn.call(this),this.$placeholder.remove()},handleFocusOut:function(){""===this.content.text()&&this.setPlaceholder()},start:function(){this.reset(),this.suggest()},suggest:function(){var a=this.parseSearchTerms();this.suggestions.suggest(a)},throttledSuggest:c.throttle(function(){this.suggest()},250),insertMention:function(a){var b=this.userSuggestions.get(a);this.selectSearchString(b),this.updateCache(b,a);var d=K.getMentionDom(b);this.content.insertNode(d);var e=this.$el.find("span[data-cid]");c.each(e,function(a){a.contentEditable!==!1&&(a.contentEditable=!1)})},updateCache:function(a,b){this.mentionsCache.get(b)||this.mentionsCache.add(a)},selectSearchString:function(){this.content.selectNodeText(this.anchorNode,this.anchorOffset-1,this.anchorOffset+this.anchorLength)},get:function(){function a(a){return c(a,!0)?b.mentionToText(a):null}var b=this,c=K.isMention;return this.content.text(a)},set:function(a){this.content.setText(a),this.resize()},clear:function(){J.prototype.clear.call(this),this.setPlaceholder(),c.defer(function(a){a.$input.blur()},this)},parseSearchTerms:function(){var a=this.content.selectedTextNode(),b=a?a.nodeValue:"",c=f.normalizeSpace;if(b){var d=this.content.selectedTextNodeOffset(a),e=f.normalizeSpace(b.slice(0,d).split("").reverse().join("")),g=e.indexOf("@");if(-1===g)return null;this.anchorNode=a,this.anchorOffset=d-g,this.anchorLength=g;var h=c(b.slice(this.anchorOffset-1,d)).match(K.MENTIONS_RE);return h?h[0].slice(1).split(" "):0===g?[""]:void 0}},checkExistingMentions:function(){var a=f.normalizeSpace,d=this.$el.find("span"),e=c.filter(d,K.isMention),g=this.mentionsCache,h={};c.each(e,function(d){var e=b(d).attr("data-cid"),f=c.reduce(this.content.getTextNodes(d),function(b,c){return b+a(c.nodeValue)},""),i=g.get(e);i&&i.get("name")!==f?(this.mentionsCache.remove(i),this.content.removeNode(d),this.content.insertHTML(" "),this.reset()):h[e]=d},this),g.each(function(a){h[a.cid]||g.remove(a)})},mentionToText:function(a){var c=b(a).attr("data-cid"),d=this.mentionsCache.get(c),e=a.innerText||a.textContent;return d&&d.get("username")&&(e=d.get("username")),["@",e,":","disqus"].join("")}},{MENTIONS_RE:new RegExp("@\\w+\\s?(?:\\w+\\s?){0,5}(?:\\w+)?$"),MENTIONS_RE_GROUPED:/@([\d\w]+)\s?(\:\s?(\w+))?/gi,isMention:function(a,c){var d;do{if(d=b(a),d.hasClass("mention")&&d.attr("data-cid"))return!0;a=a.parentElement}while(c&&a);return!1},getMentionDom:function(a){var b=document.createDocumentFragment(),c=document.createElement("span"),d=document.createElement("span"),e=document.createTextNode(a.get("name")||a.get("username"));return c.setAttribute("contenteditable",!0),d.setAttribute("contenteditable",!1),d.setAttribute("data-cid",a.cid),d.className="mention",d.appendChild(e),c.appendChild(d),b.appendChild(c),b.appendChild(document.createTextNode(" ")),b}}),L=d.View.extend({events:{"click li":"handleClick"},initialize:function(a){this.active=!1,this.mentionsCache=a.mentions,this.userSuggestions=a.userSuggestions,this.userHtmlCache={}},suggest:function(a){var b=this.userSuggestions.find(a,this.mentionsCache);return b&&b.length?(this.renderUsers(b),this.active=!0,void this.$el.show()):void this.clear()},render:function(){this.$el.html(q.render("suggestions")),this.active||this.$el.hide()},renderUsers:function(a){var d=c.reduce(a,function(a,c){var d=this.userHtmlCache[c.cid];return void 0===d&&(this.userHtmlCache[c.cid]=d=b(this.renderSingleUser(c))),a.appendChild(d[0]),a},document.createDocumentFragment(),this);this.$(".header").siblings().remove().end().after(d).siblings().removeClass("active").first().addClass("active")},renderSingleUser:function(a){var b=a.toJSON();return b.cid=a.cid,q.render("suggestedUser",b)},clear:function(){this.active=!1,this.$el.hide()},handleClick:function(a){var c=b(a.currentTarget);this.select(c.attr("data-cid"))},select:function(a){this.active&&(a||(a=this.$el.find(".active").attr("data-cid")),this.trigger("select",a),this.clear())},move:function(a){if(this.active){var b=this.$el.find(".active"),c="up"===a?"prev":"next",d=b[c]();d.length&&d.attr("data-cid")&&(b.removeClass("active"),d.addClass("active"))}}},{MAX_SUGGESTIONS:5});return{PostReplyView:E,PostEditView:G,TypingUserView:H,BlacklistView:I,TextareaView:J,ContentEditableView:K,SuggestionView:L,LoginFormView:F}}),define("lounge/views/post",["jquery","underscore","backbone","core/strings","common/templates","common/urls","common/utils","lounge/common","lounge/mixins","lounge/views/cards","lounge/views/media"],function(a,b,c,d,e,f,g,h,i,j,k){"use strict";var l=g.preventDefaultHandler,m=d.get,n=c.View.extend({tagName:"li",className:"post",actions:{upvote:l(function(a){this.handleVote(a,1)}),downvote:l(function(a){this.handleVote(a,-1)}),reply:"handleReply",flag:"handleFlag",edit:"handleEdit","delete":"handleDelete",spam:"handleSpam",blacklist:"handleBlacklist",highlight:"handleHighlight",unhighlight:"handleUnhighlight",collapse:"handleCollapse",reveal:"handleReveal","share:twitter":"_onShare","share:facebook":"_onShare"},events:{"click > [data-role=post-content] [data-action]":function(c){var d=this,e=a(c.currentTarget).attr("data-action"),f=d.actions[e];return f?(b.isFunction(f)?f:d[f]).call(d,c):void 0}},initialize:function(a){this.thread=a.thread,this.session=a.session,this.created=!!a.created,this.options=a,this.userSuggestions=a.userSuggestions,this.setAlertSelector("> [role=alert]"),this.listenTo(this.model,{"change:isDeleted spam":this.removeAsDeleted,"change:message":this.stopLoading,"change:points":this.updateVotePoints,"change:userScore":this.updateActiveUserVote,"change:isFlaggedByUser":this.updateUserFlagged,"change:isHighlighted":function(){this.redraw()},change:function(){var a=this.model.changedAttributes();(a.id||a.message)&&this.redraw()}}),this.listenTo(this.model.usersTyping,"add remove reset change",this.updateTypingCount),this.listenTo(this.session,"change:id",function(){this.updateFooter(),this.updateMenu(),this.updateSessionClass()}),this.reply=null,this.edit=null,this.parent=a.parent,this.trackPosition=!1,this.offset={top:-1,height:-1},this.dim={height:-1,width:-1},this.listenTo(h.getLounge(),"domReflow",function(){if(!this.trackPosition||!this.visible)return this.offset={top:-1,height:-1},void(this.dim={height:-1,width:-1});var a=this.contentNode;this.offset=a.offset(),this.dim=a.dim()}),this.isCollapseAllowed=!0,this.haveSubscribedToRichMediaEvents=!1},createTypingUserView:function(){var a=this.$el.find("[data-role=realtime-notification\\:"+this.model.id+"] .realtime-replies");this.typingUserView=new(require("lounge/views/posts").TypingUserView)({parentView:this,model:this.model,el:a})},updateTypingCount:function(){this.typingUserView||this.createTypingUserView(),this.typingUserView.render()},stopLoading:function(){this.contentNode.find(".loading").removeClass("loading")},updateRelativeTime:function(){this.contentNode.find("[data-role=relative-time]").text(this.model.getRelativeCreatedAt())},updateSessionClass:function(){var a="authored-by-session-user";this.model.isAuthorSessionUser(this.session)?this.contentNode.addClass(a):this.contentNode.removeClass(a)},updateActiveUserVote:function(){var a=this.model,b=this.contentNode.find("[data-action=upvote]"),c=this.contentNode.find("[data-action=downvote]");c.removeClass("downvoted"),b.removeClass("upvoted"),a.get("userScore")>0?b.addClass("upvoted"):a.get("userScore")<0&&c.addClass("downvoted")},updateVotePoints:function(){var c=this.model,d=this.contentNode.find("[data-role=likes], [data-role=dislikes]"),e=this.contentNode.find("[data-action=upvote], [data-action=downvote]"),f=function(a){b.delay(function(){a.addClass("update"),b.delay(function(){a.removeClass("update")},1e3)},500)};b.each(d,function(b,d){b=a(b);var g=b.html(),h=c.get(b.attr("data-role")),i=a(e[d]);h=Math.max(h,0).toString(),g!==h&&(i.removeClass("count-"+g),i.addClass("count-"+h),b.html(h),f(b))})},updateFooter:function(){var a=this.contentNode.find("footer"),b=(h.getLounge(),e.render("postFooter",{post:this.getPostAttributes(),session:this.session.toJSON()})),c=require("lounge/views/posts").PostReplyView;c.open[this.model.cid]&&this.toggleReplyLink(!0),a.html(b),this.initUpvotersCard()},updateMenu:function(){var a=this.contentNode.find("[data-role=menu]"),b=e.render("postMenu",{session:this.session.toJSON(),post:this.getPostAttributes()});a.replaceWith(b)},updatePostStateClasses:function(){var a=this.model,b=a.get("isHighlighted")||a.get("isSponsored");this.$el.toggleClass("highlighted",!!b),this.contentNode.toggleClass("disabled",!a.id)},updateUserFlagged:function(){this.model.get("isFlaggedByUser")?this.contentNode.addClass("user-reported"):this.contentNode.removeClass("user-reported")},getMessageContent:function(){return this.messageContent&&this.messageContent.length||(this.messageContent=this.contentNode.find("[data-role=message-content]")),this.messageContent},manageMessageHeight:function(a){var b=this,c=b.getMessageContent(),d=1.5*b.collapsedHeight,e=c&&c.length&&c.height()||0;e+=a||0,e>d&&!b.$el.hasClass("collapsed")?b.collapse():b.expand(!0)},preventCollapsing:function(a){a.get("deferred")||(this.expand(),this.isCollapseAllowed=!1)},markSeen:function(){function a(e){var f,g;return e?c.dim.height<=0||c.dim.width<=0?!1:(f=c.offset.top+e.frameOffset.top,g=f>e.pageOffset,(g=g&&f+c.dim.height<=e.pageOffset+e.height)?(c.contentNode.addClass("seen"),b.delay(function(){c.contentNode.removeClass("seen"),c.contentNode.removeClass("new")},1e4),c.trackPosition=!1,c.stopListening(d,"scroll",a),!0):!1):!1}var c=this,d=h.getLounge();a(d.position)||c.listenTo(d,"scroll",a)},renderRichMedia:function(c,d){var e=this.$el.find("[data-role=message]"),f={};e.find("a").each(function(b,c){var d=c.href;f[d]||(f[d]=a(c))});var h=this.model.cid;this.richMediaViews=c.chain().map(function(a){return k.instantiateRichMediaView(a,h)}).without(null).map(function(b){this.listenTo(b.model,"change:activated",this.preventCollapsing),b.render();var c=b.media.get("url"),e=g.bleachFindUrls(c);e.length&&(c=e[0].url);var h=f[c];if(h){var i=n.getHighestAncestor(h);i.after(b.$el),b.convertToButton(h)}else a("<li>").append(b.$el).appendTo(d);return b},this).value(),!this.haveSubscribedToRichMediaEvents&&this.richMediaViews.length&&(this.listenTo(k.settings,"change:collapsed",function(a,c){if(c)this.manageMessageHeight();else{var d=b.reduce(this.richMediaViews,function(a,b){return a+(b.model.get("deferredHeight")||0)},0);this.manageMessageHeight(d)}}),this.haveSubscribedToRichMediaEvents=!0)},renderMedia:function(){var a=this.model.media;if(a&&a.length){var b=this.$el.find("[data-role=post-media-list]");this.renderRichMedia(a,b)}},getStateByline:function(){var a,b=this.model;return b.get("isHighlighted")?a={icon:"trophy",text:m("Featured by %(forum)s"),style:"default"}:b.get("isSponsored")?a={icon:"trophy",text:m("Sponsored on Disqus"),style:"sponsored"}:b.isAuthorSessionUser(this.session)&&(b.get("isApproved")||(a={icon:"clock",text:m("Hold on, this is waiting to be approved by %(forum)s."),style:"default"})),a&&(a.text=d.interpolate(a.text,{forum:this.thread.forum.get("name")})),a},getTemplate:function(a){return a.isDeleted?"postDeleted":this.model.isAuthorSessionUser(this.session)&&!a.isApproved?"post":a.isMinimized?"postMinimized":"post"},getPostAttributes:function(){var a=this.model.toJSON({session:this.session,thread:this.thread}),b=this.model.getParent();return b&&b.get("isSponsored")&&(a.canBeRepliedTo=!1),a},render:function(){var a=this,b=a.$el,c=a.getPostAttributes(),d=h.getLounge(),i=a.thread.forum.get("avatar"),j=a.model.getParent(),k=this.getTemplate(c);return!c.message&&c.raw_message&&g.isPlainText(c.raw_message)&&(c.message=a.model.constructor.formatMessage(c.raw_message)),b.html(e.render(k,{post:c,forumName:a.thread.forum.get("name"),session:a.session.toJSON(),thread:a.thread.toJSON(),created:a.created,parentPost:j&&j.toJSON({session:this.session,thread:this.thread}),thumbnailWidth:d.loadedThumbnailWidth,thumbnailHeight:d.MAX_MEDIA_HEIGHT,defaultAvatarUrl:i?i.large.cache:f.avatar.generic,stateByline:a.getStateByline()})),"postMinimized"===k||"postDeleted"===k?b.addClass("minimized"):b.removeClass("minimized"),!a.options.excludeAnchor&&a.model.id&&b.attr("id","post-"+a.model.id),a.contentNode=b.find("[data-role=post-content]"),a.childrenNode=b.find("[data-role=children]"),a.messageNode=a.contentNode.find("[data-role=message]"),a.highlightSyntax(),a.processMentions(),a.initCards(),a.updatePostStateClasses(),a.renderMedia(),a.model.get("isRealtime")&&(a.trackPosition=!0,a.listenToOnce(d.postsView,"render:end",a.markSeen)),a.listenToOnce(d.postsView,"render:end",function(){a.markSeen(),a.manageMessageHeight()}),a},highlightSyntax:function(){var a=this.contentNode.find("pre code");a.length&&a.each(function(){g.syntaxHighlighter.highlight(this)})},redraw:function(){var a=document.createDocumentFragment();this.childrenNode.children().appendTo(a),this.render(),this.childrenNode.append(a),h.getLounge().postsView.trigger("render:end")},processMentions:function(){this.contentNode.find("[data-dsq-mention]").each(function(){a(this).addClass("mention")})},attachChild:function(a){var b=a.model;b.created||!b.id||b.get("isImmediateReply")?this.childrenNode.prepend(a.el):this.childrenNode.append(a.el)},toggleReply:function(){this.reply&&this.reply.isOpen()?this.hideReply():this.showReply()},toggleReplyLink:function(a){this.contentNode.find("[data-role=reply-link]").toggleClass("active",a)},showReply:function(){this.reply?(this.reply.prependTo(this.$el.find("[data-role=reply-form]")),this.reply.show(),this.reply.focus()):this.getReplyView(),this.toggleReplyLink(!0)},hideReply:function(){this.reply&&(this.reply.hide(),this.toggleReplyLink(!1))},toggleEdit:function(){return this.contentNode.find("[data-role=edit-link]").toggleClass("active"),this.edit?(this.edit.hide(),this.edit.remove(),this.edit=null,void this.messageNode.show()):void this.showEdit()},showEdit:function(){if(this.session.isLoggedOut())return void this.session.once("change:id",this.toggleEdit,this);if(this.model.canBeEdited(this.session,this.thread)&&!this.edit){this.edit=new(require("lounge/views/posts").PostEditView)({post:this.model,session:this.session}),this.edit.render(),this.listenTo(this.edit,"submitted cancel",this.toggleEdit),this.expand(!0),this.edit.show();var a=this.messageNode;this.edit.prependTo(a.parent()),a.hide(),this.edit.resize();var b=h.getLounge();b&&b.scrollToPost(this.model.id)}},removeAsDeleted:function(){this.redraw()},initCards:function(){var a=this;a.initProfileCard(),a.initContextCard(),a.initUpvotersCard()},initProfileCard:function(){if(!g.isPhone(window)){var a=this.$el.find(".hovercard");a.length&&(this.profileCard=j.ProfileCard.create({session:this.session,user:this.model.author,targetElement:a}))}},initContextCard:function(){if(!g.isPhone(window)){var a=this.parent&&this.parent.model;a&&!a.get("isDeleted")&&(this.contextCard=j.ContextCard.create({post:a,targetElement:this.$el.find("[data-role=parent-link]")}))}},initUpvotersCard:function(){if(!g.isPhone(window)){var a=this.$el.find("[data-action=upvote]");a.length&&(this.upvotersCard=j.UpvotersCard.create({session:this.session,model:this.model,postId:this.model.get("id"),targetElement:a}))}},_onShare:l(function(a){var b=g.extractService(a.target,"share");b&&(h.getLounge().trigger("uiAction:postShare",this.model,b),this.share(b))}),_shareUrl:function(){return this.model.permalink(this.thread)},handleBlacklist:l(function(){if(!this.blacklist){var a=this.blacklist=new(require("lounge/views/posts").BlacklistView)({model:this.model});a.render(),this.listenTo(a,"success cancel",function(){this.blacklist.remove(),this.blacklist=null}),this.contentNode.find("[data-role=blacklist-form]").first().append(a.el)}}),toggleCollapse:function(a){this.$el.toggleClass("collapsed",a)},handleCollapse:l(function(){this.toggleCollapse()}),handleHighlight:l(function(){this.model.highlight(),this.alert(e.render("highlightedSuccessMessage"),{safe:!0,type:"success"}),this.thread.set("highlightedPost",this.model);var a=h.getLounge();a&&a.scrollToPost(this.model.id)}),handleUnhighlight:l(function(){this.model.unhighlight(),this.dismissAlert(),this.thread.unset("highlightedPost")}),handleVote:function(a,b){var c=h.getLounge(),d=this.model.get("userScore")===b;d?c.trigger("uiAction:postUnvote",this.model,a):1===b?c.trigger("uiAction:postUpvote",this.model,a):-1===b&&c.trigger("uiAction:postDownvote",this.model,a),this.model.vote(d?0:b)},remove:function(){this.model.off(null,null,this),this.session.off(null,null,this),c.View.prototype.remove.call(this)},getReplyView:function(){return this.reply?this.reply:(this.reply=new(require("lounge/views/posts").PostReplyView)({parentView:this,parent:this.model,thread:this.thread,session:this.options.session,userSuggestions:this.userSuggestions}),this.reply.render(),this.showReply(),this.reply)},handleReply:l(function(){this.toggleReply()}),handleFlag:l(function(){if(!this.model.get("isFlaggedByUser")){var a=m("Are you sure you want to flag this comment?");window.confirm(a)&&(this.model.report(),this.model.set("isFlaggedByUser",!0))}}),handleEdit:l(function(){this.toggleEdit()}),handleDelete:l(function(){this.model.get("isHighlighted")&&(this.model.set("isHighlighted",!1),this.thread.unset("highlightedPost")),this.model._delete()}),handleSpam:l(function(){this.model.spam()}),handleReveal:l(function(){this.model.set("isMinimized",!1),this.redraw()}),handleExpandMessage:l(function(){return this.expand()})},{getHighestAncestor:function(a){return a.closest("[data-role=message] > *")}});return b.extend(n.prototype,i.ShareMixin),b.extend(n.prototype,i.AlertMixin),i.asCollapsible.call(n.prototype,{collapsedHeight:374,collapseTargetSelector:"[data-role=message-container]",collapseScope:"contentNode"}),n}),define("lounge/views/posts/collection",["jquery","underscore","backbone","moment","common/bus","common/models","common/utils","lounge/views/posts","lounge/views/post"],function(a,b,c,d,e,f,g,h,i){"use strict";var j=c.View.extend({STREAMING_MAX_VISIBLE:250,events:{"click [data-action=more-posts]":"handleLoadMore"},initialize:function(a){this.lounge=a.lounge,this.thread=a.thread,this.userSuggestions=a.userSuggestions,this.posts=a.posts,this.postsToAppend=[],this.postsToPrepend=[],this.session=a.session,this.subViews={},this.state={nextPassTimeoutId:null,renderedPosts:[],clearDomAfterRender:!1,totalPostsProcessed:0,totalElapsedTime:0},this.listenTo(this.posts,{reset:this.redrawPosts,add:this.addPosts,remove:this.removePost}),this.listenTo(this.thread,"change:highlightedPost",this.handleHasHighlightedState),this.listenTo(this.posts,"reset add",this.toggleNoPosts),this.listenTo(this.posts,"reset add",this.enableTimestampUpdates),this.listenTo(this,"render:end",this.toggleLoadMorePosts),this.listenTo(this,"render:end",this.handleHasHighlightedState)},handleHasHighlightedState:function(){this.$el.toggleClass("has-highlighted-post",this.thread.has("highlightedPost"))},getPostView:function(a){return this.subViews[a]},bootstrap:function(a,c){this.permalinkOptions=c,this.listenTo(this.posts,"reset",b.bind(this.posts.restoreFromCache,this.posts)),this.listenTo(this.posts,"change:isDeleted",b.bind(this.posts.removeFromCache,this.posts)),this.posts.reset(a.posts),b.invoke(this.subViews,"manageMessageHeight")},bindUIUpdateHandlers:function(){var c=this,d=a(window),e=a(document.body),f=e.width(),g=b.debounce(function(){var a=e.width();f!==a&&c.subViews&&(f=a,b.each(c.subViews,function(a){a.manageMessageHeight()}))},50);d.on("resize",g)},updateTimestamps:function(){return!this.subViews||b.size(this.subViews)<1?!1:(b.invoke(this.subViews,"updateRelativeTime"),!0)},enableTimestampUpdates:function(){var a=this,c=6e4;if(!a.timestampUpdateTimer){var d=function(){return a.updateTimestamps()?void(a.timestampUpdateTimer=b.delay(d,c)):void(a.timestampUpdateTimer=null)};a.timestampUpdateTimer=b.delay(d,c)}},openReply:function(a){var b=this.posts.get(a);if(b){var c=this.subViews[b.cid];c.showReply()}},openEdit:function(a){var b=this.posts.get(a);if(b){var c=this.subViews[b.cid];c.showEdit()}},toggleLoadMorePosts:function(){var a=this.$el.find("#posts [data-role=more]"),b=this.posts.hasNext();b?a.show():a.hide()},handleLoadMore:function(b){b.preventDefault();var c=this,d=a(b.currentTarget),f=c.posts.currentPage();d.addClass("busy"),c.posts.more({success:function(){c.posts.restoreFromCache(c.session),c.once("render:end",function(){d.removeClass("busy")})},error:function(){d.removeClass("busy")}}),c.lounge.trigger("uiAction:seeMore",f+1),e.sendHostMessage("posts.paginate")},renderLayout:a.noop,toggleNoPosts:function(){var b=this.posts.models;b.length?a("#no-posts").hide():a("#no-posts").show()},handleSort:function(){a("#posts [data-role=more]").hide(),a("#no-posts").hide(),a("#post-list").addClass("loading").empty()},redrawPosts:function(){var a=this;a.subViews={},a.once("render:end",function(){b.each(h.PostReplyView.open,function(b,c){var d=a.subViews[c];if(d){var e=d.getReplyView();e.textarea.set(b.textarea.get()),b.isOpen()?e.show():e.hide()}})}),a.posts.setPageFor&&a.permalinkOptions&&a.permalinkOptions.postId&&a.posts.setPageFor(a.permalinkOptions.postId,{silent:!0}),a.addPosts(a.posts,{clearDom:!0})},postsShouldBePrepended:function(a){var b=a.length&&a[0];return!!b&&(b.created||!b.id||b.get("isRealtime")||b.get("isCached")||b.requestedByPermalink)},hasQueuedPosts:function(){return this.postsToAppend.length||this.postsToPrepend.length},addPosts:g.decorate(c.collectionAddNormalizer(c.Collection,f.Post),function(a,c,d){var e=this;if(d.clearDom&&(e.postsToAppend=[],e.postsToPrepend=[],e.postsShouldClearDom=!0),e.postsShouldBePrepended(a)){var f=[];b.each(a,function(a){var b=a.get("parent");b&&e.posts.get(b)?e.postsToPrepend.push(a):f.push(a)}),e.postsToPrepend=f.concat(e.postsToPrepend)}else e.postsToAppend=e.postsToAppend.concat(a);e.state.nextPassTimeoutId||(e.state.nextPassTimeoutId=window.requestAnimationFrame(function(){e.trigger("render:start"),e.addPostsIncremental()}))}),onDeferredViewReady:function(a){var b=this.subViews;b.hasOwnProperty(a)&&b[a].manageMessageHeight()},removePost:function(a){if(this.hasQueuedPosts())return void this.once("render:end",b.bind(this.removePost,this,a));var c=this.subViews[a.cid];c&&(c.remove(),delete this.subViews[a.cid])},addPostsIncremental:function(a){this.state.nextPassTimeoutId=null,this.discardRenderProgressIfClearDomRequested();var b=this.getPostModelsForThePass();b.length&&this.renderPass(b,a),this.finishPass(b),this.scheduleNextPass()},discardRenderProgressIfClearDomRequested:function(){this.postsShouldClearDom&&(this.state.clearDomAfterRender=!0,this.postsShouldClearDom=!1,this.state.renderedPosts=[])},getPostModelsForThePass:function(){return this.postsToAppend.length?this.postsToAppend:this.postsToPrepend},renderPass:function(a,b){for(var c=j.TARGET_PROCESS_TIME,d=b||this.calculatePostsForNextRun(c)||j.MINIMUM_POSTS_PER_RUN;d>0;){var e=a.splice(0,d),f=this.timedRenderPosts(e);if(null===f)break;c-=f,d=this.calculatePostsForNextRun(c)}},timedRenderPosts:function(a){if(!a.length)return null;var c=+new Date;Array.prototype.push.apply(this.state.renderedPosts,b.map(a,this.createPostView,this));var d=+new Date-c;return 0>d&&(d=0),this.state.totalElapsedTime+=d,this.state.totalPostsProcessed+=a.length,d||null},createPostView:function(a){var b,c=a.get("parent");c&&(c=this.posts.get(c),b=c&&this.getPostView(c.cid));var d=new i({parent:b,model:a,thread:this.thread,session:this.session,created:a.created,userSuggestions:this.userSuggestions});return this.subViews[a.cid]=d,d.render(),d},calculatePostsForNextRun:function(a){return 0>=a?0:this.state.totalElapsedTime<=0?this.state.totalPostsProcessed:Math.floor(a*this.state.totalPostsProcessed/this.state.totalElapsedTime)},finishPass:function(b){if(!b.length){if(this.$postList=a("#post-list"),this.state.clearDomAfterRender&&(this.$postList.empty(),this.state.clearDomAfterRender=!1),this.state.renderedPosts.length){this.removeOldPostsIfRealtime(),this.enablePostTracking(this.state.renderedPosts);var c=b===this.postsToAppend;this.insertPostElements(this.state.renderedPosts,c),this.state.renderedPosts=[]}this.$postList.removeClass("loading"),this.postsToPrepend.length||this.postsToAppend.length||this.trigger("render:end")}},removeOldPostsIfRealtime:function(){var a=b.any(this.state.renderedPosts,function(a){return a.model.get("isRealtime")});a&&this.removeOldPosts()},removeOldPosts:function(){if(this.lounge.switches&&this.lounge.switches.enabled("next_realtime_cap")){var a=b.size(this.subViews)-this.STREAMING_MAX_VISIBLE;if(!(0>=a))for(var c,e=this.posts.sortBy(function(a){return d(a.get("createdAt")).valueOf()}),f=0,g=0;f<e.length&&a>=g;f++)c=this.getPostView(e[f].cid),c&&0===c.childrenNode.children().length&&(this.posts.remove(e[f]),g+=1)}},enablePostTracking:function(a){b.each(a,function(a){a.visible=!0})},insertPostElements:function(a,c){var d=b.groupBy(a,function(a){return!!a.parent});b.each(d[!0],function(a){a.parent.attachChild(a)});var e=b.pluck(d[!1],"$el");c?this.$postList.append(e):this.$postList.prepend(e)},scheduleNextPass:function(){if(this.postsToPrepend.length||this.postsToAppend.length){var a=this.calculatePostsForNextRun(j.TARGET_FIRST_ATTEMPT_TIME);a=Math.max(a,j.MINIMUM_POSTS_PER_RUN),this.state.nextPassTimeoutId=window.requestAnimationFrame(b.bind(this.addPostsIncremental,this,a))}}});return j.TARGET_PROCESS_TIME=30,j.TARGET_FIRST_ATTEMPT_TIME=Math.floor(.8*j.TARGET_PROCESS_TIME),j.MINIMUM_POSTS_PER_RUN=2,{PostCollectionView:j}}),define("lounge/views/community",["jquery","underscore","backbone","moment","when","core/time","common/templates","common/collections","common/views/mixins","common/utils","lounge/common","lounge/mixins"],function(a,b,c,d,e,f,g,h,i,j,k,l){"use strict";var m=c.View.extend({tagName:"ol",initialize:function(){this.listenTo(this.collection,"reset",this.render)},render:function(){return this.$el.empty(),this.collection.each(function(a){var b=f.assureTzOffset(a.get("createdAt")),c=g.render("topThread",{id:a.id,title:a.get("title"),url:a.get("link"),numPosts:a.get("posts"),numLikes:a.get("likes"),timeAgo:d(b,f.ISO_8601).fromNow()});this.$el.append(c)},this),this.trigger("render"),this.attachPosts(),this},attachPosts:function(){this.collection.each(function(a){this.renderPost(a)},this)},renderPost:function(a){var c=a.get("topPost");if(c){var d=b.escape(j.strip(c.message));d=j.truncate(d,160,"…");var e=g.render("topThreadPost",{message:d,author:c.author});this.$el.find("[data-role=thread-"+a.id+"] [data-role=top-thread-post]").html(e)}}}),n=c.View.extend({tagName:"ol",events:{"click [data-action=toggleFollow]":"toggleFollow"},initialize:function(a){this.listenTo(this.collection,"reset",function(){k.getLounge().thread.users.add(this.collection.models,{merge:!0}),this.render()}),this.listenTo(this.collection,"change:isFollowing",this.render),this.listenTo(this,"render",this.manageHeight),this.session=a.session,this.listenTo(this.session,"change:id",this.render),this.profileRowHeight=75},render:function(){return this.$el.empty(),this.collection.each(function(a){if(!a.get("isPrivate")){var b=g.render("topUser",{sessionId:this.session.user.id,buttonAsLink:!0,user:a.toJSON({session:this.session})});this.$el.append(b)}},this),this.trigger("render"),this},manageHeight:function(){this.el.scrollHeight-this.collapsedHeight>=this.profileRowHeight&&this.collapse()}});b.extend(n.prototype,i.FollowButtonMixin),l.asCollapsible.call(n.prototype,{collapsedHeight:297});var o=c.View.extend({initialize:function(a){var c=this;c.$el.addClass("loading"),c.forum=a.forum,c.session=a.session,c.topThreads=new m({id:"top-threads",collection:new h.TopThreadCollection(null,{forum:c.forum.id,limit:10})}),c.topUsers=new n({id:"top-users",session:c.session,collection:new h.TopUserCollection(null,{forum:c.forum.id,limit:20})}),this.fetch().then(b.bind(this.renderSubViews,this))},fetch:b.memoize(function(){return a.when(this.topThreads.collection.fetch({reset:!0}),this.topUsers.collection.fetch({reset:!0}))},function(){return this.forum.id}),renderSubViews:function(){this.$el.removeClass("loading"),this.$el.html(g.render("community",{forum:this.forum.toJSON()})),this.$el.find("[data-role=top-threads]").append(this.topThreads.el),this.$el.find("[data-role=top-users]").prepend(this.topUsers.el),this.topUsers.manageHeight()}});return{CommunityView:o,TopThreadCollectionView:m,TopUserCollectionView:n}}),define("lounge/views/onboard-alert",["backbone","moment","remote/config","common/collections","common/utils","common/templates","core/time"],function(a,b,c,d,e,f,g){"use strict";var h=a.View.extend({switches:new d.SwitchCollection(c.switches,{parse:!0}),events:{"click [data-action=close]":"handleClose"},initialize:function(a){this.session=a.session},render:function(){return this.session.isLoggedIn()&&this.shouldShow()&&(this.$el.html(f.render("onboard",{displayedSection:this.session.user.isEditable(this.session)?"complete-profile":"follow"})),this.trigger("uiAction:onboardAlertShow")),this},shouldShow:function(){var a=this.getCookie();return a?a===h.COOKIE_NEW_USER||a===h.COOKIE_POPUP:!1},shouldPopup:function(){var a=this.getCookie();return a?a===h.COOKIE_NEW_USER:!1},getCookie:function(){return e.cookies.read(h.COOKIE_NAME)},setInitialCookie:function(){this.joinedRecently(this.session.user)&&e.cookies.create(h.COOKIE_NAME,h.COOKIE_NEW_USER,{expiresIn:2592e6})},setPopupCookie:function(){this.shouldPopup()&&e.cookies.create(h.COOKIE_NAME,h.COOKIE_POPUP,{expiresIn:2592e6})},joinedRecently:function(a){var c=a.get("joinedAt");if(!c)return!1;var d=g.assureTzOffset(a.get("joinedAt"));return b().subtract(10,"seconds").isBefore(d)},eraseCookie:function(){e.cookies.erase(h.COOKIE_NAME)},handleClose:function(a){a.preventDefault(),this.remove(),this.trigger("uiAction:onboardAlertDismiss")},remove:function(){this.eraseCookie(),this.session=null,a.View.prototype.remove.call(this)}},{COOKIE_NAME:"disqus.onboarding",COOKIE_NEW_USER:"newUser",COOKIE_POPUP:"popup"});return{OnboardAlert:h}}),define("lounge/views/notification-menu",["jquery","underscore","backbone","modernizr","core/api","core/analytics/experiment","core/bus","remote/config","shared/common/corefuncs","shared/common/urls","common/templates","common/urls","common/utils","common/views/mixins"],function(a,b,c,d,e,f,g,h,i,j,k,l,m,n){"use strict";var o=m.preventDefaultHandler,p=c.View.extend({events:{"click [data-action=home]":"handleShowHome"},fetchUnreadCount:function(){var a=this;this.session.isLoggedIn()?e.call("timelines/getUnreadCount.json",{data:{type:"notifications"}}).done(function(b){a.session.set("notificationCount",b.response)}):this.session.set("notificationCount",this.loggedOutNotes.getUnread().length)},initialize:function(c){var d=a.Deferred();this.listenTo(this,"viewport:enter",b.bind(d.resolveWith,d,this));var e=this.session=c.session;this.forum=c.forum,this.isMobile=m.isPhone(window),this.loggedOutNotes=e.getLoggedOutNotes(),this.language=document.documentElement.lang,this.listenTo(e,"change:id",this.render),this.listenTo(e,"change:notificationCount",this.updateCount),this.listenTo(e,"change:id",function(){d.done(this.fetchUnreadCount),d.done(this.preloadSidebar)}),this.listenTo(this,{"sidebar:open:start":this.startLoadingAnimation,"sidebar:open:done":this.stopLoadingAnimation})},startLoadingAnimation:function(){this.$el.addClass("notification-loading")},stopLoadingAnimation:function(){this.$el.removeClass("notification-loading")},preloadSidebar:function(){g.trigger("sidebar:preload")},render:function(){return this.forum.get("settings").ssoRequired&&this.session.isLoggedOut()?void this.$el.hide():(this.$el.html(k.render("notificationMenu",{sidebarEnabled:this.sidebarEnabled()})),this.updateCount(),this.$el.show(),this)
},handleShowHome:o(function(b){this.session.set("notificationCount",0);var c=a(b.currentTarget).attr("data-home-path");g.trigger("sidebar:open",c,this)}),updateCount:function(){var a=this.session.get("notificationCount")||0;a>0?(this.$("[data-role=notification-count]").html(a>9?'9<i class="icon icon-plus"></i>':a),this.$el.addClass("unread")):(this.$("[data-role=notification-count]").html(""),this.$el.removeClass("unread"))}});return b.extend(p.prototype,n.IsVisibleViewMixin),b.extend(p.prototype,n.SidebarMixin),{NotificationMenuView:p}}),define("lounge/views/highlighted-post",["backbone","underscore","jquery","common/models","common/templates","lounge/views/post"],function(a,b,c,d,e,f){"use strict";var g=a.View.extend({template:"highlightedPost",itemViewContainer:".post-list",initialize:function(a){b.extend(this,b.pick(a,["thread","session","switches","userSuggestions"])),this.listenTo(this.thread,"change:highlightedPost",this.reset)},getPost:function(){return this.post?c.Deferred().resolve(this.post):this.getHighlightedPost()},_getHighlightedPost:function(){var a=this.thread.get("highlightedPost");return a?(a instanceof d.Post||(a=new d.UniqueModel(d.Post,a)),a.get("isDeleted")?null:a.get("isHighlighted")?a:null):null},getHighlightedPost:function(){var a,e=this.post=this._getHighlightedPost(),f=c.Deferred();return e?(a=e.getParent())&&!a.author?d.Post.fetchContext(a.id,this.thread).always(b.bind(f.resolve,f)):f.resolve():f.reject(),f.promise()},reset:function(){delete this.post,this.getPost().always(b.bind(this.render,this))},createPostView:function(){return this.post?new h({model:this.post,thread:this.thread,session:this.session,userSuggestions:this.userSuggestions,excludeAnchor:!0}).stopListening(this.post.usersTyping):null},render:function(){var a=this.createPostView();return a?(a.render(),this.$el.html(e.render(this.template)),this.$(this.itemViewContainer).append(a.el),this.$el.show(),this):(this.$el.hide(),this)}}),h=f.extend({getPostAttributes:function(){var a=f.prototype.getPostAttributes.apply(this,arguments);return a.canBeRepliedTo=!1,a},getStateByline:function(){return!1}});return{HighlightedPostView:g,FeaturedPostView:h}}),define("lounge/views/realtime",["underscore","backbone","common/templates","common/utils","lounge/common"],function(a,b,c,d,e){"use strict";var f=d.preventDefaultHandler,g=b.View.extend({initialize:function(a){this.options=a},events:{click:"handleDrain"},getDirection:function(a){if(this.offset&&this.dim){var b=a.pageOffset,c=b+a.height,d=this.offset.top+a.frameOffset.top,e=d+this.dim.height;return b>e?1:d>c?-1:0}},setCount:function(a){this.options.count=a},render:function(){var b=this;return 0===b.options.count?void b.$el.hide():(b.$el.html(c.render("realtimeCommentNotification",{comments:b.options.count})),b.listenTo(e.getLounge(),"domReflow",a.throttle(function(){0!==b.options.count&&(this.offset=b.$el.offset(),this.dim=b.$el.dim())},400)),void b.$el.show())},handleDrain:f(function(){this.model.queue.drain(),this.setCount(this.model.queue.counters.comments),this.render()})}),h=g.extend({events:{click:"handleDrain"},getDirection:function(a){if(this.options.postView.visible){this.offset=this.options.postView.offset,this.dim=this.options.postView.dim;var b=g.prototype.getDirection.call(this,a);return delete this.offset,delete this.dim,b}},render:function(){var b=this,d=b.options.postView;return 0===b.options.count?(b.$el.hide(),void(d.trackPosition=!1)):(d.trackPosition=!0,b.$el.html(c.render("realtimeReplyNotification",{replies:b.options.count})),b.$el.show(),void a.delay(function(){b.$el.addClass("reveal")},13))},handleDrain:f(function(){var a=this.model.id,b=this.options.postView,c=this.options.thread.queue;c.drain(a),this.setCount(c.counters.replies[a]),b.trackPosition=!1,this.render()})});return{QueuedPostView:g,QueuedReplyView:h}}),define("lounge/views/posts/UserSuggestionsManager",["underscore","jquery","backbone","common/collections"],function(a,b,c,d){"use strict";function e(){this.remotes=[]}return a.extend(e.prototype,{fetch:function(){return b.when.apply(b,a.chain(this.remotes).where({shouldFetch:!0}).map(this.fetchRemote,this).value())},fetchRemote:function(a){return a.collection.fetch().done(function(){a.shouldFetch=!1})},addRemote:function(a,b){b=b||{},this.remotes.push({collection:a,shouldFetch:b.shouldFetch})},all:function(){var b=new d.UserCollection;return b.add(a.chain(this.remotes).map(function(a){return a.collection.models}).flatten().value()),b},find:function(a,b){if(a&&a.length){var c,d=new RegExp(a.join(" ").replace(/[^\w\s]/,""),"i"),e=5,f=this.all(),g=[],h=0,i=1===a.length&&""===a[0]?function(){return!0}:function(a){return d.test(a.get("name"))||d.test(a.get("username"))};for(h=0;h<f.models.length&&g.length<e;h++)c=f.models[h],c.get("isAnonymous")||b.get(c.cid)||i(c)&&g.push(c);return g}},get:function(a){return this.all().get(a)}}),e}),define("lounge/views/viglink",["jquery","underscore","backbone","common/bus"],function(a,b,c,d){"use strict";var e=c.Model.extend({initialize:function(a){this.handlers={},this.listenTo(d,"viglink:getaffiliatelink:response",this.handleViglinkResponse),d.sendHostMessage("viglink:init",{clientUrl:a.linkAffiliatorClient,apiUrl:a.linkAffiliatorAPI,key:a.viglinkAPI,id:a.forumPk})},handleViglinkResponse:function(a){a=a||{};var b=this.handlers[a.linkId];b&&b(a)},fetchAffiliateLink:function(c,e){var f=a.Deferred();if(!this.shouldFetchAffiliateLink(c))return f.resolve();var g=b.uniqueId("viglink_");return d.sendHostMessage("viglink:getaffiliatelink",{linkId:g,url:e[0].href}),this.handlers[g]=function(a){a=a||{},a.url&&e.attr("href",a.url),f.resolve()},f.promise()},shouldFetchAffiliateLink:function(a){if("_blank"===a.currentTarget.getAttribute("target"))return!1;var b=a.ctrlKey||a.metaKey||a.altKey||a.shiftKey,c=a.which&&1===a.which||0===a.button;return b||!c?!1:"nofollow"!==a.currentTarget.getAttribute("rel")?!1:!0}});return e}),define("lounge/views/sidebar",["jquery","underscore","backbone","modernizr","core/analytics/experiment","core/bus","remote/config","shared/common/urls","common/bus","common/utils","common/views/mixins"],function(a,b,c,d,e,f,g,h,i,j,k){"use strict";var l=c.View.extend({initialize:function(a){this.forum=a.forum,this.session=a.session,this.language=document.documentElement.lang,this.listenTo(f,{"sidebar:open":this.open,"sidebar:preload":this.preload})},open:function(a,c){j.isPhone(window)?j.windowOpen(h.apps.home+a):(this.storeHomeSession(),i.sendHostMessage("home.show",a),c&&(c.trigger("sidebar:open:start"),this.listenToOnce(i,"home.opened",b.bind(c.trigger,c,"sidebar:open:done")))),f.trigger("uiAction:openHome")},preload:function(){this.session.isLoggedOut()||this.sidebarEnabled()&&(j.isPhone(window)||(this.storeHomeSession(),i.sendHostMessage("home.preload")))},storeHomeSession:function(){d.sessionstorage&&sessionStorage.setItem("home.session",JSON.stringify(this.session.user.toJSON()))}});return b.extend(l.prototype,k.SidebarMixin),l}),define("lounge/tracking",["jquery","underscore","common/intelligence","core/analytics/experiment","core/analytics/identity","common/juggler","core/analytics/jester","core/bus","core/config","remote/config","common/urls","common/utils"],function(a,b,c,d,e,f,g,h,i,j,k,l){"use strict";function m(a,d){var j=f.client("juggler",!0),m=new c.Intelligence,q=d.switches,r=d.forum,s=r.id,t=r.get("pk"),u=d.thread,v=u.id;d.session.on("change:id",function(a){g.client.set("user_id",a.id)}),d.session.once("change:id",function(){var c=this,g=c.user.id,h=l.isDNTEnabled(),i=p.shouldTrack(r,c.user);g&&(j.overwrite({user_id:g}),f.client("jester",!0).overwrite({user_id:g}));var k={thread_slug:u.get("slug"),user_type:c.user.get("user_type")||"anon",referrer:a.document.referrer,theme:"next",dnt:h?"1":"0",tracking_enabled:i?"1":"0"},n=r.get("settings");n&&b.has(n,"organicDiscoveryEnabled")&&b.extend(k,{organic_enabled:n.organicDiscoveryEnabled,promoted_enabled:n.promotedDiscoveryEnabled,max_enabled:n.discoveryMax,thumbnails_enabled:n.discoveryThumbnailsEnabled}),f.client("jester",!0).emit("init_embed",k),i&&p.load3rdParties("c"+e.clientId(),r),m.init({version:"next",forum:s,features:d.initialData.features,session:c.user}),d.session.on("change:id",function(a){m.setSession(a),m.trackEvent(a.id?"login":"logout")})}),j.load({disable:!q.enabled("juggler_enabled"),url:k.juggler+"/event.js",disableSSL:q.enabled("next_disable_ssl_juggler"),thread:v,forum:s,forum_id:t}),f.client("jester",!0).load(b.extend(j.copySettings(),{url:k.jester+"/event.js"})),g.client.set({product:"embed",thread:v,forum:s,forum_id:t,zone:"thread",version:i.version}),d.once("bootstrap:complete",function(){g.client.set({page_url:d.config.referrer}),g.client.setHostReferrer(d.config.hostReferrer)});var w={inViewport:function(){m.trackEvent("view_embed"),g.client.emit({verb:"view",object_type:"product",object_id:"embed"}),d.off("inViewport")},"uiAction:createPost":function(a){d.session.user.id||m.setSession("guest"),m.trackEvent(null!=a.get("parent")?"post_comment_reply":"post_comment")},"uiCallback:postCreated":function(a,c){c=c||{},b.extend(c,{object_type:"post",object_id:a.id,verb:"post"}),a.has("parent")&&(c.target_type="post",c.target_id=a.get("parent")),g.client.emit(c)},"uiAction:seeMore":function(a){g.client.emit({verb:"open",object_type:"section",object_id:"thread/page-"+a})},"uiAction:postUpvote":function(a,b){m.trackEvent("like_comment"),g.client.emit({verb:"like",object_type:"post",object_id:a.id,area:p.getEventTrackingArea(b)})},"uiAction:postUnvote":function(a,b){g.client.emit({verb:"unlike",object_type:"post",object_id:a.id,area:p.getEventTrackingArea(b)})},"uiAction:postDownvote":function(a,b){m.trackEvent("dislike_comment"),g.client.emit({verb:"dislike",object_type:"post",object_id:a.id,area:p.getEventTrackingArea(b)})},"uiAction:upvotersCardShow":function(){m.trackEvent("upvoters_card_shown")},"uiAction:showProfileFromUpvotes":function(){m.trackEvent("upvoters_profile_click")},"uiAction:threadUnlike":function(){g.client.emit({verb:"unlike",object_type:"thread",zone:o[d.currentZone]})},"uiAction:threadLike":function(){m.trackEvent("like_thread"),g.client.emit({verb:"like",object_type:"thread"})},"uiAction:postShare":function(a,b){m.trackEvent("share_comment_"+b),g.client.emit({verb:"share",object_type:"post",object_id:a.id,target_type:"service",target_id:b})},"uiAction:threadShare":function(a){m.trackEvent("share_thread_"+a),g.client.emit({verb:"share",object_type:"thread",target_type:"service",target_id:a})},"uiAction:openZone":function(a){n[a]&&m.trackEvent("open_"+n[a]),g.client.set({zone:o[a],section:"default"}),g.client.emit({verb:"view",object_type:"section",object_id:o[a]+"/default"})},"uiAction:clickLink":function(a,b){g.client.emit({verb:"click",object_type:"link",object_id:a[0].href,area:p.getEventTrackingArea(b)})},"uiAction:followUser":function(a){m.trackEvent("follow_user"),g.client.emit({verb:"follow",object_type:"user",object_id:a.id})},"uiAction:unfollowUser":function(a){g.client.emit({verb:"stop-following",object_type:"user",object_id:a.id})},"uiAction:openLogin":function(a){m.trackEvent("open_login_"+a),g.client.emit({verb:"open",object_type:"login",object_id:a})},"uiAction:finishRegistrationEmbed":function(){m.trackEvent("finish_registration_embed")},"uiAction:finishRegistrationWindow":function(){m.trackEvent("finish_registration_window")},"uiAction:finishAccountComplete":function(){m.trackEvent("finish_account_complete")},"uiAction:onboardAlertShow":function(){g.client.emit({verb:"view",object_type:"area",object_id:"onboard_alert"})},"uiAction:onboardOpen":function(){g.client.emit({verb:"open",object_type:"zone",object_id:"onboard"})},"uiAction:onboardAlertDismiss":function(){g.client.emit({verb:"close",object_type:"area",object_id:"onboard_alert"})},"uiAction:openHome":function(){g.client.emit({verb:"open",object_type:"product",object_id:"bridge"})},viewActivity:function(a,b){var c={verb:"view",object_type:a,object_id:b};g.client.emit(c)}};d.on(w),h.on(w)}var n={community:"community",notifications:"mydisqus",network:"mydisqus_network"},o={community:"community",conversation:"thread",notifications:"notifications",network:"activityfeed",dashboard:"notifications"},p={};return p.init=function(a){m(window,a)},p.getEventTrackingArea=function(b){return a(b.currentTarget).closest("[data-tracking-area]").attr("data-tracking-area")},p.load3rdParties=function(c,d){var e=j.lounge.tracking||{},f=e.iframe_limit||0,g=b.shuffle(e.list||[]),h=a("body"),i=a.now();b.each(g,function(e){if(!("img"!==e.type&&"iframe"!==e.type||"iframe"===e.type&&--f<0)){var g=e.rate||0,j=e.forced_forums||[];if(!(g<=Math.random()&&-1===b.indexOf(j,d.id))){var k=b.template(e.url,{variable:"data",evaluate:null})({userId:c,timestamp:i});h.append(a("<"+e.type+">").hide().attr("src",k))}}})},p.shouldTrack=function(a,b){return!(a&&a.get("settings").disable3rdPartyTrackers||b&&b.get("disable3rdPartyTrackers")||"1"===l.cookies.read("disqus_tracking_optout")||l.isDNTEnabled())},p}),define("lounge/notifications/NotificationsView",["backbone","jquery","underscore","common/templates"],function(a,b,c,d){"use strict";return a.View.extend({initialize:function(a){this.session=a.session},render:function(){if(this.$el.html(d.render("homeNotifications")),!this.notifications){var a=this;require(["require","lounge.notifications"],function(c){c(["home/views/NotificationsView","home/models/Notifications","home/models/Session","home/models/User","home/backbone.overrides"],function(c,d,e,f){var g=new e,h=new f(a.session.user.attributes);g.setUser(h);var i=new d;i.ensureFetched(),a.notifications=new c({model:i,activeTab:"all"}),a.notifications.render(),a.$("[data-role=home-notifications]").html(a.notifications.$el).addClass("home-notifications").on("click",'a[href^="/home"]',function(){var a=b(this);a.attr("href","//disqus.com"+a.attr("href")),a.attr("target","_blank")}),a.notifications.trigger("show"),a.listenToOnce(a.notifications.getTabView("all").model,"clearUnreadCount",function(){a.session.set("notificationCount",0)})})})}}})}),define("lounge/notifications/NotificationsLoggedOutView",["backbone","jquery","underscore","common/templates"],function(a,b,c,d){"use strict";return a.View.extend({initialize:function(a){this.notes=a.session.getLoggedOutNotes(),this.notes.markAllRead()},render:function(){return this.$el.html(d.render("notificationsLoggedOut")),this}})}),define("lounge/notifications/NotificationsLayout",["backbone","lounge/notifications/NotificationsView","lounge/notifications/NotificationsLoggedOutView"],function(a,b,c){"use strict";return a.View.extend({initialize:function(a){this.session=a.session,this.lounge=a.lounge,this.listenTo(this.session,"change:id",this.render)},getView:function(){return this.session.isLoggedOut()?c:b},render:function(){var a=this.getView();return this._view=new a({el:this.el,session:this.session,lounge:this.lounge}).render(),this}})}),define("templates/lounge",["handlebars"],function(a){return a.template(function(a,b,c,d,e){function f(a,b){var d,e="";return e+='\n\n<div class="follow-btn-wrap">\n',d=c["if"].call(a,(d=a&&a.user,null==d||d===!1?d:d.isSession),{hash:{},inverse:Ce.program(5,i,b),fn:Ce.program(2,g,b),data:b}),(d||0===d)&&(e+=d),e+="\n</div>\n"}function g(a,b){var d,e="";return e+="\n",d=c["if"].call(a,(d=a&&a.user,null==d||d===!1?d:d.isEditable),{hash:{},inverse:Ce.noop,fn:Ce.program(3,h,b),data:b}),(d||0===d)&&(e+=d),e+="\n\n\n"}function h(a,b){var d="";return d+='\n<a href="#" data-action="edit-profile" target="_blank" class="btn follow-btn edit-profile">'+Be(c.gettext.call(a,"Edit profile",{hash:{},data:b}))+"</a>\n"}function i(a,b){var d,e="";return e+="\n",d=c["if"].call(a,(d=a&&a.user,null==d||d===!1?d:d.isPrivate),{hash:{},inverse:Ce.program(8,k,b),fn:Ce.program(6,j,b),data:b}),(d||0===d)&&(e+=d),e+="\n"}function j(a,b){var d="";return d+='\n<span class="btn follow-btn private">\n<i aria-hidden="true" class="icon-lock"></i>\n<span class="btn-text">'+Be(c.gettext.call(a,"Private",{hash:{},data:b}))+"</span>\n</span>\n"}function k(a,b){var d,e="";return e+='\n<a href="'+Be((d=a&&a.user,d=null==d||d===!1?d:d.profileUrl,typeof d===De?d.apply(a):d))+'" class="btn follow-btn ',d=c["if"].call(a,(d=a&&a.user,null==d||d===!1?d:d.isFollowing),{hash:{},inverse:Ce.noop,fn:Ce.program(9,l,b),data:b}),(d||0===d)&&(e+=d),e+='" data-action="follow-user" data-user="'+Be((d=a&&a.user,d=null==d||d===!1?d:d.id,typeof d===De?d.apply(a):d))+'">\n<span class="btn-text following-text">'+Be(c.gettext.call(a,"Following",{hash:{},data:b}))+'</span>\n<span class="btn-text follow-text">'+Be(c.gettext.call(a,"Follow",{hash:{},data:b}))+'</span>\n<i aria-hidden="true" class="icon-plus"></i> \n<i aria-hidden="true" class="icon-checkmark"></i>\n</a>\n'}function l(){return"following"}function m(a,b){var d,e="";return e+='\n<a class="close" data-action="dismiss" title="'+Be(c.gettext.call(a,"Dismiss",{hash:{},data:b}))+'">×</a>\n<span>\n',d=c["if"].call(a,a&&a.icon,{hash:{},inverse:Ce.noop,fn:Ce.program(12,n,b),data:b}),(d||0===d)&&(e+=d),e+="\n",d=c["if"].call(a,a&&a.safe,{hash:{},inverse:Ce.program(16,p,b),fn:Ce.program(14,o,b),data:b}),(d||0===d)&&(e+=d),e+="\n</span>\n"}function n(){return'\n<span class="icon icon-warning"></span>\n'}function o(a,b){var d="";return d+="\n"+Be(c.html.call(a,a&&a.message,{hash:{},data:b}))+"\n"}function p(a){var b,c="";return c+="\n"+Be((b=a&&a.message,typeof b===De?b.apply(a):b))+"\n"}function q(a,b){var d,e="";return e+="\n<h5>"+Be(c.gettext.call(a,"Add to blacklist",{hash:{},data:b}))+"</h5>\n\n",d=c["if"].call(a,(d=a&&a.post,d=null==d||d===!1?d:d.author,null==d||d===!1?d:d.isRegistered),{hash:{},inverse:Ce.noop,fn:Ce.program(19,r,b),data:b}),(d||0===d)&&(e+=d),e+='\n\n<label><input type="checkbox" name="email" value="'+Be((d=a&&a.post,d=null==d||d===!1?d:d.author,d=null==d||d===!1?d:d.email,typeof d===De?d.apply(a):d))+'"> '+Be(c.gettext.call(a,"Email",{hash:{},data:b}))+": "+Be((d=a&&a.post,d=null==d||d===!1?d:d.author,d=null==d||d===!1?d:d.email,typeof d===De?d.apply(a):d))+'</label>\n\n<label><input type="checkbox" name="ip" value="'+Be((d=a&&a.post,d=null==d||d===!1?d:d.ipAddress,typeof d===De?d.apply(a):d))+'"> '+Be(c.gettext.call(a,"IP Address",{hash:{},data:b}))+": "+Be((d=a&&a.post,d=null==d||d===!1?d:d.ipAddress,typeof d===De?d.apply(a):d))+'</label>\n\n<label><input type="checkbox" name="retroactive" value="1"/> '+Be(c.gettext.call(a,"Apply retroactively",{hash:{},data:b}))+'</label>\n\n<div class="actions">\n<button class="btn btn-small" type="submit">'+Be(c.gettext.call(a,"Save",{hash:{},data:b}))+'</button>\n<button class="btn btn-small" data-action="cancel">'+Be(c.gettext.call(a,"Cancel",{hash:{},data:b}))+"</button>\n</div>\n"}function r(a,b){var d,e="";return e+='\n<label><input type="checkbox" name="user" value="'+Be((d=a&&a.post,d=null==d||d===!1?d:d.author,d=null==d||d===!1?d:d.id,typeof d===De?d.apply(a):d))+'" checked="checked"/> '+Be(c.gettext.call(a,"User",{hash:{},data:b}))+": "+Be((d=a&&a.post,d=null==d||d===!1?d:d.author,d=null==d||d===!1?d:d.username,typeof d===De?d.apply(a):d))+"</label>\n"}function s(a,b){var d="";return d+="\n"+Be(c.gettext.call(a,"We are unable to post your comment because you have been blocked by %(forumName)s.",{hash:{forumName:a&&a.forumName},data:b}))+'\n<a target="_blank" href="http://help.disqus.com/customer/portal/articles/466223-who-deleted-or-removed-my-comment-">'+Be(c.gettext.call(a,"Find out more.",{hash:{},data:b}))+"</a>\n"}function t(a){var b,c="";return c+='\n<link rel="stylesheet" href="'+Be((b=a&&a.loungeCss,typeof b===De?b.apply(a):b))+'">\n<div class="bubble">\n<div class="tooltip">\n<button class="close" data-action="close" title="Close">×</button>\n<div id="message">\n</div>\n</div>\n</div>\n'}function u(a,b){var d,e="";return e+="\n\n",d=c["if"].call(a,a&&a.topUser,{hash:{},inverse:Ce.program(31,y,b),fn:Ce.program(26,v,b),data:b}),(d||0===d)&&(e+=d),e+='\n\n\n<ul class="top-commenters">\n',d=c.each.call(a,a&&a.users,{hash:{},inverse:Ce.noop,fn:Ce.program(33,z,b),data:b}),(d||0===d)&&(e+=d),e+="\n</ul>\n\n"}function v(a,b){var d,e="";return e+="\n",d=c["if"].call(a,a&&a.usersCount,{hash:{},inverse:Ce.program(29,x,b),fn:Ce.program(27,w,b),data:b}),(d||0===d)&&(e+=d),e+="\n"}function w(a,b){var d="";return d+="\n"+Be(c.gettext.call(a,"Join %(topUser)s and %(usersCount)s others in comments below.",{hash:{usersCount:a&&a.usersCount,topUser:c.getPartial.call(a,"userName",a&&a.topUser,{hash:{},data:b})},data:b}))+"\n"}function x(a,b){var d="";return d+="\n"+Be(c.gettext.call(a,"Join %(topUser)s in comments below.",{hash:{topUser:c.getPartial.call(a,"userName",a&&a.topUser,{hash:{},data:b})},data:b}))+"\n"}function y(a,b){var e,f="";return f+="\n",e=Ce.invokePartial(d.topThreadLink,"topThreadLink",a&&a.topThread,c,d,b),(e||0===e)&&(f+=e),f+="\n"}function z(a,b){var d,e="";return e+='\n<li>\n<img src="'+Be((d=a&&a.avatar,d=null==d||d===!1?d:d.cache,typeof d===De?d.apply(a):d))+'" class="user" alt="'+Be(c.gettext.call(a,"Avatar",{hash:{},data:b}))+'" />\n</li>\n'}function A(a){var b,c="";return c+='\n<span class="author publisher-anchor-color"><a data-user="'+Be((b=a&&a.id,typeof b===De?b.apply(a):b))+'" data-role="username">'+Be((b=a&&a.name,typeof b===De?b.apply(a):b))+"</a></span>\n"}function B(a,b){var d,e="";return e+='\n\n<a href="'+Be((d=a&&a.link,typeof d===De?d.apply(a):d))+'" target="_blank" class="top-thread-link-overlay">\n</a>\n<span id="top-threads">\n<span id="community">\n<h3>'+Be(c.gettext.call(a,"Top Discussions on %(forum)s",{hash:{forum:c.getPartial.call(a,"communityForum",a&&a.forum,{hash:{},data:b})},data:b}))+'</h3>\n</span>\n<span class="publisher-anchor-color top-thread-link"><a>'+Be((d=a&&a.clean_title,typeof d===De?d.apply(a):d))+'</a></span>\n<ul class="meta">\n',d=c["if"].call(a,a&&a.likes,{hash:{},inverse:Ce.noop,fn:Ce.program(38,C,b),data:b}),(d||0===d)&&(e+=d),e+="\n\n",d=c["if"].call(a,c.gt.call(a,a&&a.posts,0,{hash:{},data:b}),{hash:{},inverse:Ce.program(47,H,b),fn:Ce.program(40,D,b),data:b}),(d||0===d)&&(e+=d),e+='\n\n<li class="time">'+Be((d=a&&a.timeAgo,typeof d===De?d.apply(a):d))+"</li>\n</ul>\n</span>\n"}function C(a,b){var d="";return d+='\n<li class="likes">\n<a>\n<span class="icon-star"></span>\n'+Be(c.gettext.call(a,"%(numLikes)s starred this",{hash:{numLikes:a&&a.likes},data:b}))+"\n</a>\n</li>\n"}function D(a,b){var d,e="";return e+="\n",d=c["if"].call(a,a&&a.likes,{hash:{},inverse:Ce.noop,fn:Ce.program(41,E,b),data:b}),(d||0===d)&&(e+=d),e+='\n\n<li class="comments">\n<a>\n',d=c["if"].call(a,c.eq.call(a,a&&a.posts,1,{hash:{},data:b}),{hash:{},inverse:Ce.program(45,G,b),fn:Ce.program(43,F,b),data:b}),(d||0===d)&&(e+=d),e+='\n</a>\n</li>\n<li class="bullet">•</li>\n'}function E(){return'\n<li class="bullet">•</li>\n'}function F(a,b){var d="";return d+="\n"+Be(c.gettext.call(a,"1 comment",{hash:{},data:b}))+"\n"}function G(a,b){var d="";return d+="\n"+Be(c.gettext.call(a,"%(numPosts)s comments",{hash:{numPosts:a&&a.posts},data:b}))+"\n"}function H(a,b){var d,e="";return e+="\n",d=c["if"].call(a,a&&a.likes,{hash:{},inverse:Ce.noop,fn:Ce.program(41,E,b),data:b}),(d||0===d)&&(e+=d),e+="\n"}function I(a){var b,c="";return c+="\n<strong>"+Be((b=a&&a.name,typeof b===De?b.apply(a):b))+"</strong>\n"}function J(a,b){var d="";return d+='\n<div>\n<div class="row">\n<h3>'+Be(c.gettext.call(a,"Top Commenters on %(forum)s",{hash:{forum:c.getPartial.call(a,"communityForum",a&&a.forum,{hash:{},data:b})},data:b}))+'</h3>\n\n<div data-role="top-users">\n\n<a class="see-more hidden" title="'+Be(c.gettext.call(a,"see more",{hash:{},data:b}))+'" data-action="see-more">'+Be(c.gettext.call(a,"see more",{hash:{},data:b}))+'</a>\n</div>\n\n</div>\n\n<div class="row">\n<h3>'+Be(c.gettext.call(a,"Top Discussions on %(forum)s",{hash:{forum:c.getPartial.call(a,"communityForum",a&&a.forum,{hash:{},data:b})},data:b}))+'</h3>\n<div data-role="top-threads"></div>\n</div>\n</div>\n'}function K(a,b){var d,e="";return e+='\n<div class="tooltip">\n<div class="notch"></div>\n\n',d=c["if"].call(a,(d=a&&a.post,d=null==d||d===!1?d:d.author,null==d||d===!1?d:d.isAnonymous),{hash:{},inverse:Ce.program(56,M,b),fn:Ce.program(54,L,b),data:b}),(d||0===d)&&(e+=d),e+='\n\n<img src="'+Be((d=a&&a.post,d=null==d||d===!1?d:d.author,d=null==d||d===!1?d:d.avatar,d=null==d||d===!1?d:d.cache,typeof d===De?d.apply(a):d))+'" class="user" alt="'+Be(c.gettext.call(a,"Avatar",{hash:{},data:b}))+'" />\n\n',d=c["if"].call(a,(d=a&&a.post,d=null==d||d===!1?d:d.author,null==d||d===!1?d:d.isAnonymous),{hash:{},inverse:Ce.program(60,O,b),fn:Ce.program(58,N,b),data:b}),(d||0===d)&&(e+=d),e+='\n\n<div class="content">\n<h3>\n',d=c.unless.call(a,(d=a&&a.post,d=null==d||d===!1?d:d.author,null==d||d===!1?d:d.isAnonymous),{hash:{},inverse:Ce.noop,fn:Ce.program(62,P,b),data:b}),(d||0===d)&&(e+=d),e+="\n\n<h3>"+Be((d=a&&a.post,d=null==d||d===!1?d:d.author,d=null==d||d===!1?d:d.name,typeof d===De?d.apply(a):d))+"</h3>\n\n",d=c.unless.call(a,(d=a&&a.post,d=null==d||d===!1?d:d.author,null==d||d===!1?d:d.isAnonymous),{hash:{},inverse:Ce.noop,fn:Ce.program(60,O,b),data:b}),(d||0===d)&&(e+=d),e+="\n</h3>\n\n<p>"+Be(c.html.call(a,(d=a&&a.post,null==d||d===!1?d:d.excerpt),{hash:{},data:b}))+"</p>\n</div>\n</div>\n"}function L(){return'\n<div class="avatar">\n'}function M(a){var b,c="";return c+='\n<a href="'+Be((b=a&&a.post,b=null==b||b===!1?b:b.author,b=null==b||b===!1?b:b.profileUrl,typeof b===De?b.apply(a):b))+'" class="avatar" data-action="profile" data-username="'+Be((b=a&&a.post,b=null==b||b===!1?b:b.author,b=null==b||b===!1?b:b.username,typeof b===De?b.apply(a):b))+'" data-user="'+Be((b=a&&a.post,b=null==b||b===!1?b:b.author,b=null==b||b===!1?b:b.id,typeof b===De?b.apply(a):b))+'">\n'}function N(){return"\n</div>\n"}function O(){return"\n</a>\n"}function P(a){var b,c="";return c+='\n<a href="'+Be((b=a&&a.post,b=null==b||b===!1?b:b.author,b=null==b||b===!1?b:b.profileUrl,typeof b===De?b.apply(a):b))+'" data-action="profile" data-username="'+Be((b=a&&a.post,b=null==b||b===!1?b:b.author,b=null==b||b===!1?b:b.username,typeof b===De?b.apply(a):b))+'" data-user="'+Be((b=a&&a.post,b=null==b||b===!1?b:b.author,b=null==b||b===!1?b:b.id,typeof b===De?b.apply(a):b))+'">\n'}function Q(a,b){var d="";return d+='\n<div class="textarea-wrapper" data-role="textarea">\n<div class="post-actions">\n<div class="logged-in">\n<section>\n<div class="temp-post">\n\n<a class="cancel" href="#" data-action="edit" tabindex="-1">\n'+Be(c.gettext.call(a,"Cancel",{hash:{},data:b}))+'\n</a>\n<button class="btn" type="submit">'+Be(c.gettext.call(a,"Save Edit",{hash:{},data:b}))+"</button>\n</div>\n</section>\n</div>\n</div>\n</div>\n"}function R(a,b){var d,e="";return e+="\n",d=c["if"].call(a,(d=a&&a.user,null==d||d===!1?d:d.isSession),{hash:{},inverse:Ce.program(73,W,b),fn:Ce.program(67,S,b),data:b}),(d||0===d)&&(e+=d),e+="\n"}function S(a,b){var d,e="";return e+="\n",d=c["if"].call(a,(d=a&&a.user,null==d||d===!1?d:d.isEditable),{hash:{},inverse:Ce.noop,fn:Ce.program(68,T,b),data:b}),(d||0===d)&&(e+=d),e+="\n"}function T(a,b){var d,e="";return e+='\n<a href="'+Be(c.urlfor.call(a,"editProfile",{hash:{},data:b}))+'"\ntarget="_blank"\nclass="\n',d=c["if"].call(a,a&&a.buttonAsLink,{hash:{},inverse:Ce.program(71,V,b),fn:Ce.program(69,U,b),data:b}),(d||0===d)&&(e+=d),e+='">\n'+Be(c.gettext.call(a,"Edit profile",{hash:{},data:b}))+"\n</a>\n"}function U(){return"\npublisher-anchor-color follow-link\n"}function V(){return"\nbtn btn-small\n"}function W(a,b){var d,e="";return e+="\n",d=c["if"].call(a,(d=a&&a.user,null==d||d===!1?d:d.isPrivate),{hash:{},inverse:Ce.program(76,Y,b),fn:Ce.program(74,X,b),data:b}),(d||0===d)&&(e+=d),e+="\n"}function X(a,b){var d="";return d+='\n<span\nclass="btn btn-small follow-btn private">\n<i aria-hidden="true" class="icon-lock"></i>\n<span class="btn-text">\n'+Be(c.gettext.call(a,"Private",{hash:{},data:b}))+"\n</span>\n</span>\n"}function Y(a,b){var d,e="";return e+='\n<a href="#" class="\n',d=c["if"].call(a,a&&a.buttonAsLink,{hash:{},inverse:Ce.program(77,Z,b),fn:Ce.program(69,U,b),data:b}),(d||0===d)&&(e+=d),e+="\n",d=c["if"].call(a,(d=a&&a.user,null==d||d===!1?d:d.isFollowing),{hash:{},inverse:Ce.noop,fn:Ce.program(9,l,b),data:b}),(d||0===d)&&(e+=d),e+='"\ndata-action="toggleFollow"\ndata-user="'+Be((d=a&&a.user,d=null==d||d===!1?d:d.id,typeof d===De?d.apply(a):d))+'">\n<span class="btn-text following-text">'+Be(c.gettext.call(a,"Following",{hash:{},data:b}))+'</span>\n<span class="btn-text follow-text">'+Be(c.gettext.call(a,"Follow",{hash:{},data:b}))+'</span>\n<i aria-hidden="true" class="icon-checkmark"></i>\n</a>\n'}function Z(){return"\nbtn btn-small follow-btn\n"}function $(a){var b,c="";return c+='\n<span data-user="'+Be((b=a&&a.id,typeof b===De?b.apply(a):b))+'" data-role="username">'+Be((b=a&&a.name,typeof b===De?b.apply(a):b))+"</span>\n"}function _(a,b){var d,e="";return e+='\n\n<div class="postbox">\n<div role="alert"></div>\n<div class="avatar">\n',d=c["if"].call(a,(d=a&&a.user,null==d||d===!1?d:d.isRegistered),{hash:{},inverse:Ce.program(84,bb,b),fn:Ce.program(82,ab,b),data:b}),(d||0===d)&&(e+=d),e+='\n</div>\n\n<div class="textarea-wrapper" data-role="textarea" dir="auto">\n<div data-role="drag-drop-placeholder" class="media-drag-hover" style="display: none">\n<div class="drag-text">\n⬇ '+Be(c.gettext.call(a,"Drag and drop your images here to upload them.",{hash:{},data:b}))+"\n</div>\n</div>\n",d=c["if"].call(a,a&&a.allowMedia,{hash:{},inverse:Ce.noop,fn:Ce.program(86,cb,b),data:b}),(d||0===d)&&(e+=d),e+='\n<div class="edit-alert" role="postbox-alert"></div>\n<div class="post-actions">\n<ul class="wysiwyg">\n',d=c["if"].call(a,a&&a.allowMedia,{hash:{},inverse:Ce.noop,fn:Ce.program(88,db,b),data:b}),(d||0===d)&&(e+=d),e+="\n</ul>\n\n",d=c["if"].call(a,(d=a&&a.user,null==d||d===!1?d:d.isRegistered),{hash:{},inverse:Ce.noop,fn:Ce.program(94,hb,b),data:b}),(d||0===d)&&(e+=d),e+='\n</div>\n</div>\n\n<div data-role="login-form"></div>\n</div>\n'}function ab(a,b){var d,e="";return e+='\n<a href="'+Be((d=a&&a.user,d=null==d||d===!1?d:d.profileUrl,typeof d===De?d.apply(a):d))+'" class="user" data-action="profile" data-username="'+Be((d=a&&a.user,d=null==d||d===!1?d:d.username,typeof d===De?d.apply(a):d))+'" data-user="'+Be((d=a&&a.user,d=null==d||d===!1?d:d.id,typeof d===De?d.apply(a):d))+'">\n<img data-role="user-avatar" data-user="'+Be((d=a&&a.user,d=null==d||d===!1?d:d.id,typeof d===De?d.apply(a):d))+'" src="'+Be((d=a&&a.user,d=null==d||d===!1?d:d.avatar,d=null==d||d===!1?d:d.cache,typeof d===De?d.apply(a):d))+'" alt="'+Be(c.gettext.call(a,"Avatar",{hash:{},data:b}))+'">\n</a>\n'}function bb(a,b){var d,e="";return e+='\n<span class="user">\n<img data-role="user-avatar" src="'+Be((d=a&&a.user,d=null==d||d===!1?d:d.avatar,d=null==d||d===!1?d:d.cache,typeof d===De?d.apply(a):d))+'" alt="'+Be(c.gettext.call(a,"Avatar",{hash:{},data:b}))+'">\n</span>\n'}function cb(a,b){var d="";return d+='\n<div class="media-preview empty" data-role="media-preview">\n<ul data-role="media-legacy-list"></ul>\n<ul data-role="media-rich-list"></ul>\n<div class="media-expanded empty" data-role="media-preview-expanded">\n\n<img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="\ndata-role="media-preview-expanded-image" alt="'+Be(c.gettext.call(a,"Media preview placeholder",{hash:{},data:b}))+'">\n</div>\n</div>\n'}function db(a,b){var d,e="";return e+='\n<li>\n<a href="#" tabindex="-1" data-action="attach" class="attach" title="'+Be(c.gettext.call(a,"Upload Images",{hash:{},data:b}))+'"><span>'+Be(c.gettext.call(a,"Attach",{hash:{},data:b}))+'</span></a>\n<input type="file" data-role="media-upload"\ntabindex="-1"\n',d=c["with"].call(a,"_window_",{hash:{},inverse:Ce.noop,fn:Ce.program(89,eb,b),data:b}),(d||0===d)&&(e+=d),e+="\n>\n</li>\n"}function eb(a,b){var d,e="";return e+="\n",d=c["if"].call(a,c["typeof"].call(a,a&&a.FormData,"undefined",{hash:{},data:b}),{hash:{},inverse:Ce.program(92,gb,b),fn:Ce.program(90,fb,b),data:b}),(d||0===d)&&(e+=d),e+="\n"
}function fb(){var a="";return a+='\n\nclass="ie"\nname="attachment"\n'}function gb(){return'\nclass="regular"\naccept="image/*"\n'}function hb(a,b){var d,e="";return e+="\n",d=c.unless.call(a,a&&a.audienceSyncRequired,{hash:{},inverse:Ce.noop,fn:Ce.program(95,ib,b),data:b}),(d||0===d)&&(e+=d),e+="\n"}function ib(a,b){var d="";return d+='\n<div class="logged-in">\n<section>\n<div class="temp-post" style="text-align: right">\n<button class="btn">\n'+Be(c.gettext.call(a,"Post as %(name)s",{hash:{name:c.getPartial.call(a,"formUser",a&&a.user,{hash:{},data:b})},data:b}))+"\n</button>\n</div>\n</section>\n</div>\n"}function jb(a,b){var d,e="";return e+="\n",d=c["if"].call(a,(d=a&&a.user,null==d||d===!1?d:d.isAnonymous),{hash:{},inverse:Ce.noop,fn:Ce.program(98,kb,b),data:b}),(d||0===d)&&(e+=d),e+="\n\n\n",d=c["if"].call(a,a&&a.audienceSyncRequired,{hash:{},inverse:Ce.noop,fn:Ce.program(100,lb,b),data:b}),(d||0===d)&&(e+=d),e+="\n"}function kb(a,b){var e,f="";return f+='\n<section class="auth-section logged-out">\n<div class="connect">\n<h6>'+Be(c.gettext.call(a,"Sign in with",{hash:{},data:b}))+"</h6>\n",e=Ce.invokePartial(d.loginButtons,"loginButtons",a,c,d,b),(e||0===e)&&(f+=e),f+="\n</div>\n",e=Ce.invokePartial(d.guestForm,"guestForm",a,c,d,b),(e||0===e)&&(f+=e),f+="\n</section>\n"}function lb(a,b){var e,f="";return f+='\n<section class="auth-section">\n',e=Ce.invokePartial(d.audienceSync,"audienceSync",a,c,d,b),(e||0===e)&&(f+=e),f+="\n</section>\n"}function mb(a,b){var d,e="";return e+='\n<ul data-role="login-menu" class="services login-buttons">\n\n',d=c["if"].call(a,(d=a&&a.sso,null==d||d===!1?d:d.url),{hash:{},inverse:Ce.noop,fn:Ce.program(103,nb,b),data:b}),(d||0===d)&&(e+=d),e+='\n\n<li class="auth-disqus">\n<button type="button" data-action="auth:disqus" title="Disqus"><i class="icon-disqus"></i></button>\n</li>\n<li class="auth-facebook">\n<button type="button" data-action="auth:facebook" title="Facebook"><i class="icon-facebook-circle"></i></button>\n</li>\n<li class="auth-twitter">\n<button type="button" data-action="auth:twitter" title="Twitter"><i class="icon-twitter-circle"></i></button>\n</li>\n<li class="auth-google">\n<button type="button" data-action="auth:google" title="Google"><i class="icon-google-plus-circle"></i></button>\n</li>\n<li class="auth-signup">\n<button type="button" data-action="auth:disqus" title="Disqus">Sign up for Disqus</button>\n</li>\n</ul>\n'}function nb(a,b){var d,e="";return e+='\n<li class="sso">\n<button type="button" data-action="auth:sso"\ntitle="'+Be((d=a&&a.sso,d=null==d||d===!1?d:d.name,typeof d===De?d.apply(a):d))+'"\nclass="',d=c["if"].call(a,(d=a&&a.sso,null==d||d===!1?d:d.button),{hash:{},inverse:Ce.program(106,pb,b),fn:Ce.program(104,ob,b),data:b}),(d||0===d)&&(e+=d),e+='">\n',d=c["if"].call(a,(d=a&&a.sso,null==d||d===!1?d:d.button),{hash:{},inverse:Ce.program(110,rb,b),fn:Ce.program(108,qb,b),data:b}),(d||0===d)&&(e+=d),e+="\n</button>\n</li>\n"}function ob(){return"image"}function pb(){return"no-image"}function qb(a){var b,c="";return c+='\n<img alt="'+Be((b=a&&a.sso,b=null==b||b===!1?b:b.name,typeof b===De?b.apply(a):b))+'" src="'+Be((b=a&&a.sso,b=null==b||b===!1?b:b.button,typeof b===De?b.apply(a):b))+'"/>\n'}function rb(a){var b,c="";return c+="\n"+Be((b=a&&a.sso,b=null==b||b===!1?b:b.name,typeof b===De?b.apply(a):b))+"\n"}function sb(a,b){var d,e="";return e+='\n<div class="guest">\n<h6 class="guest-form-title">\n',d=c["if"].call(a,a&&a.allowAnonPost,{hash:{},inverse:Ce.program(115,ub,b),fn:Ce.program(113,tb,b),data:b}),(d||0===d)&&(e+=d),e+='\n</h6>\n\n<div class="what-is-disqus help-icon">\n<div id="rules" class="tooltip show">\n<h3>'+Be(c.gettext.call(a,"Disqus is a conversation network",{hash:{},data:b}))+"</h3>\n<ul>\n<li><span>"+Be(c.gettext.call(a,"Disqus never moderates or censors. The rules on this community are its own.",{hash:{},data:b}))+"</span></li>\n<li><span>"+Be(c.gettext.call(a,"Your email is safe with us. It's only used for moderation and optional notifications.",{hash:{},data:b}))+"</span></li>\n<li><span>"+Be(c.gettext.call(a,"Don't be a jerk or do anything illegal. Everything is easier that way.",{hash:{},data:b}))+'</span></li>\n</ul>\n<p class="clearfix"><a href="http://docs.disqus.com/kb/terms-and-policies/" class="btn btn-small" target="_blank">'+Be(c.gettext.call(a,"Read full terms and conditions",{hash:{},data:b}))+'</a></p>\n</div>\n</div>\n\n<p class="input-wrapper">\n<input dir="auto" type="text" placeholder="'+Be(c.gettext.call(a,"Name",{hash:{},data:b}))+'" name="display_name" id="'+Be((d=a&&a.cid,typeof d===De?d.apply(a):d))+'_display_name" maxlength="30">\n</p>\n\n<div class="guest-details ',d=c["if"].call(a,(d=a&&a.sso,null==d||d===!1?d:d.url),{hash:{},inverse:Ce.noop,fn:Ce.program(117,vb,b),data:b}),(d||0===d)&&(e+=d),e+='" data-role="guest-details">\n<p class="input-wrapper">\n<input dir="auto" type="email" placeholder="'+Be(c.gettext.call(a,"Email",{hash:{},data:b}))+'" name="email" id="'+Be((d=a&&a.cid,typeof d===De?d.apply(a):d))+'_email">\n</p>\n\n<p class="input-wrapper">\n<input dir="auto" type="password" placeholder="'+Be(c.gettext.call(a,"Password",{hash:{},data:b}))+'" name="password" id="'+Be((d=a&&a.cid,typeof d===De?d.apply(a):d))+'_password">\n</p>\n',d=c["if"].call(a,a&&a.allowAnonPost,{hash:{},inverse:Ce.program(121,xb,b),fn:Ce.program(119,wb,b),data:b}),(d||0===d)&&(e+=d),e+='\n</div>\n</div>\n<div class="proceed">\n',d=c["if"].call(a,a&&a.allowAnonPost,{hash:{},inverse:Ce.program(125,zb,b),fn:Ce.program(123,yb,b),data:b}),(d||0===d)&&(e+=d),e+="\n</div>\n"}function tb(a,b){var d="";return d+="\n"+Be(c.gettext.call(a,"or pick a name",{hash:{},data:b}))+"\n"}function ub(a,b){var d="";return d+="\n"+Be(c.gettext.call(a,"or register with Disqus",{hash:{},data:b}))+"\n"}function vb(){return"expanded"}function wb(a,b){var d="";return d+='\n<div class="guest-checkbox">\n<label>\n<input type="checkbox" name="author-guest"/>\n'+Be(c.gettext.call(a,"I'd rather post as guest",{hash:{},data:b}))+"\n</label>\n</div>\n"}function xb(){return'\n<input type="checkbox" name="author-guest" style="display:none"/>\n'}function yb(a,b){var d="";return d+='\n<button type="submit" class="btn submit" aria-label="'+Be(c.gettext.call(a,"Post",{hash:{},data:b}))+'"><span class="icon-proceed"></span></button>\n<button type="submit" class="btn next" aria-label="'+Be(c.gettext.call(a,"Next",{hash:{},data:b}))+'"><span class="icon-proceed"></span></button>\n'}function zb(a,b){var d="";return d+='\n<button type="submit" class="btn submit" aria-label="'+Be(c.gettext.call(a,"Next",{hash:{},data:b}))+'"><span class="icon-proceed"></span></button>\n'}function Ab(a,b){var d,e="";return e+='\n<div class="audiencesync">\n<h6>'+Be(c.gettext.call(a,"Connect with %(forumName)s",{hash:{forumName:a&&a.forumName},data:b}))+'</h6>\n<div class="services">\n<div class="icons-container">\n<img class="icon" alt="Disqus"\nsrc="'+Be("//a.disquscdn.com/next/assets/img/audiencesync/sync-icon.a97d408756a74d139b9d78160ddda973.png")+'">\n<i class="icon-proceed"></i>\n<img class="icon" alt="'+Be((d=a&&a.forumName,typeof d===De?d.apply(a):d))+'"\nsrc="'+Be(c.urlfor.call(a,"root",{hash:{},data:b}))+"/api/applications/icons/"+Be((d=a&&a.apiKey,typeof d===De?d.apply(a):d))+'.png">\n</div>\n<p>\n'+Be(c.gettext.call(a,"%(forumName)s needs permission to access your account.",{hash:{forumName:a&&a.forumName},data:b}))+'\n</p>\n</div>\n<button type="button" data-action="audiencesync"\nclass="proceed btn submit">'+Be(c.gettext.call(a,"Next",{hash:{},data:b}))+"</button>\n</div>\n"}function Bb(a,b){var d,e="";return e+='\n<li class="publisher-border-color">\n<div class="media-box">\n<div class="media-ct">\n<div class="media-surface">\n<a href="'+Be(c.any.call(a,(d=a&&a.media,null==d||d===!1?d:d.url),a&&a.backupUrl,{hash:{},data:b}))+'" target="_blank">\n<img src="'+Be((d=a&&a.media,d=null==d||d===!1?d:d.thumbnailUrl,typeof d===De?d.apply(a):d))+'" alt="',d=c["if"].call(a,(d=a&&a.media,null==d||d===!1?d:d.title),{hash:{},inverse:Ce.program(132,Db,b),fn:Ce.program(130,Cb,b),data:b}),(d||0===d)&&(e+=d),e+='">\n</a>\n</div>\n</div>\n</div>\n</li>\n'}function Cb(a){var b;return Be((b=a&&a.media,b=null==b||b===!1?b:b.title,typeof b===De?b.apply(a):b))}function Db(a,b){return Be(c.gettext.call(a,"Media attachment",{hash:{},data:b}))}function Eb(a,b){var d,e="";return e+='\n<li class="publisher-border-color" data-media-id="'+Be((d=a&&a.location,typeof d===De?d.apply(a):d))+'">\n<div class="media-box">\n<div class="media-ct">\n<div class="media-surface">\n<img src="'+Be((d=a&&a.location,typeof d===De?d.apply(a):d))+'?w=128&h=128" alt="'+Be(c.gettext.call(a,"Media attachment",{hash:{},data:b}))+'">\n<a href="#" class="media-delete" data-action="detach">✕</a>\n</div>\n</div>\n</div>\n</li>\n'}function Fb(a,b){var d="";return d+='\n\n<h2 class="highlighted-comment-header">'+Be(c.gettext.call(a,"Featured Comment",{hash:{},data:b}))+'</h2>\n\n<ul class="post-list"></ul>\n'}function Gb(a,b){var d="";return d+='\n<div class="home-notifications-nav">\n<div class="right">\n<a href="https://disqus.com/home/notifications" target="_blank" title="'+Be(c.gettext.call(a,"Notifications Settings",{hash:{},data:b}))+'">\n<span class="text-desktop">'+Be(c.gettext.call(a,"Notifications Settings",{hash:{},data:b}))+'</span>\n<span class="text-mobile">'+Be(c.gettext.call(a,"Settings",{hash:{},data:b}))+'</span>\n</a>\n<a href="https://disqus.com/home/" target="_blank" title="'+Be(c.gettext.call(a,"Disqus Home",{hash:{},data:b}))+'">\n<span class="text-desktop">'+Be(c.gettext.call(a,"Disqus Home",{hash:{},data:b}))+'</span>\n<span class="text-mobile">'+Be(c.gettext.call(a,"Home",{hash:{},data:b}))+'</span>\n</a>\n</div>\n<div class="left">\n'+Be(c.gettext.call(a,"Your Notifications",{hash:{},data:b}))+'\n</div>\n</div>\n\n<div data-role="home-notifications"></div>\n'}function Hb(a,b){var e,f="";return f+='\n<div class="tooltip">\n<div class="notch"></div>\n<a href="'+Be((e=a&&a.user,e=null==e||e===!1?e:e.profileUrl,typeof e===De?e.apply(a):e))+'" class="avatar" data-action="profile" data-user="'+Be((e=a&&a.user,e=null==e||e===!1?e:e.id,typeof e===De?e.apply(a):e))+'" data-username="'+Be((e=a&&a.user,e=null==e||e===!1?e:e.username,typeof e===De?e.apply(a):e))+'">\n<img data-user="'+Be((e=a&&a.user,e=null==e||e===!1?e:e.id,typeof e===De?e.apply(a):e))+'" data-role="user-avatar" src="'+Be((e=a&&a.user,e=null==e||e===!1?e:e.avatar,e=null==e||e===!1?e:e.cache,typeof e===De?e.apply(a):e))+'" class="user" alt="'+Be(c.gettext.call(a,"Avatar",{hash:{},data:b}))+'" />\n</a>\n<div class="content">\n<h3>\n<a href="'+Be((e=a&&a.user,e=null==e||e===!1?e:e.profileUrl,typeof e===De?e.apply(a):e))+'" data-action="profile" data-role="username" data-user="'+Be((e=a&&a.user,e=null==e||e===!1?e:e.id,typeof e===De?e.apply(a):e))+'" data-username="'+Be((e=a&&a.user,e=null==e||e===!1?e:e.username,typeof e===De?e.apply(a):e))+'">'+Be((e=a&&a.user,e=null==e||e===!1?e:e.name,typeof e===De?e.apply(a):e))+"</a>\n",e=c["if"].call(a,(e=a&&a.user,e=null==e||e===!1?e:e.thread,null==e||e===!1?e:e.canModerate),{hash:{},inverse:Ce.noop,fn:Ce.program(141,Ib,b),data:b}),(e||0===e)&&(f+=e),f+="\n</h3>\n\n",e=c["if"].call(a,(e=a&&a.user,null==e||e===!1?e:e.about),{hash:{},inverse:Ce.noop,fn:Ce.program(143,Jb,b),data:b}),(e||0===e)&&(f+=e),f+='\n\n\n<p class="stats" data-role="counters">\n',e=c.if_all.call(a,c.notNull.call(a,(e=a&&a.user,null==e||e===!1?e:e.numPosts),{hash:{},data:b}),c.notNull.call(a,(e=a&&a.user,null==e||e===!1?e:e.numLikesReceived),{hash:{},data:b}),{hash:{},inverse:Ce.noop,fn:Ce.program(145,Kb,b),data:b}),(e||0===e)&&(f+=e),f+='\n</p>\n</div>\n<footer data-role="actions">\n',e=Ce.invokePartial(d.hovercardActions,"hovercardActions",a,c,d,b),(e||0===e)&&(f+=e),f+="\n</footer>\n</div>\n"}function Ib(a,b){var d="";return d+='<span class="badge moderator">'+Be(c.gettext.call(a,"MOD",{hash:{},data:b}))+"</span>"}function Jb(a,b){var d,e="";return e+='\n<p class="bio">'+Be(c.truncate.call(a,(d=a&&a.user,null==d||d===!1?d:d.about),80,{hash:{},data:b}))+"</p>\n"}function Kb(a,b){var e,f="";return f+="\n",e=Ce.invokePartial(d.hovercardCounters,"hovercardCounters",a,c,d,b),(e||0===e)&&(f+=e),f+="\n"}function Lb(a,b){var d,e="";return e+="\n",d=c["if"].call(a,c.eq.call(a,(d=a&&a.user,null==d||d===!1?d:d.numPosts),1,{hash:{},data:b}),{hash:{},inverse:Ce.program(148,Mb,b),fn:Ce.program(43,F,b),data:b}),(d||0===d)&&(e+=d),e+='\n<span class="bullet">•</span>\n',d=c["if"].call(a,c.eq.call(a,(d=a&&a.user,null==d||d===!1?d:d.numLikesReceived),1,{hash:{},data:b}),{hash:{},inverse:Ce.program(152,Ob,b),fn:Ce.program(150,Nb,b),data:b}),(d||0===d)&&(e+=d),e+="\n"}function Mb(a,b){var d,e="";return e+="\n"+Be(c.gettext.call(a,"%(numPosts)s comments",{hash:{numPosts:(d=a&&a.user,null==d||d===!1?d:d.numPosts)},data:b}))+"\n"}function Nb(a,b){var d="";return d+="\n"+Be(c.gettext.call(a,"1 vote",{hash:{},data:b}))+"\n"}function Ob(a,b){var d,e="";return e+="\n"+Be(c.gettext.call(a,"%(numLikesReceived)s votes",{hash:{numLikesReceived:(d=a&&a.user,null==d||d===!1?d:d.numLikesReceived)},data:b}))+"\n"}function Pb(a,b){var d,e="";return e+='\n<a href="'+Be((d=a&&a.user,d=null==d||d===!1?d:d.profileUrl,typeof d===De?d.apply(a):d))+'" class="full-profile" data-action="profile" data-user="'+Be((d=a&&a.user,d=null==d||d===!1?d:d.id,typeof d===De?d.apply(a):d))+'" data-username="'+Be((d=a&&a.user,d=null==d||d===!1?d:d.username,typeof d===De?d.apply(a):d))+'">'+Be(c.gettext.call(a,"Full profile",{hash:{},data:b}))+"</a>\n\n",d=c["if"].call(a,a&&a.showFollowButton,{hash:{},inverse:Ce.noop,fn:Ce.program(155,Qb,b),data:b}),(d||0===d)&&(e+=d),e+="\n\n \n"}function Qb(a,b){var e,f="";return f+="\n\n",e=Ce.invokePartial(d.followButtonSmall,"followButtonSmall",a,c,d,b),(e||0===e)&&(f+=e),f+="\n"}function Rb(a,b){var e,f="";return f+='\n<div id="layout" data-tracking-area="layout">\n\n<div id="discovery-top" data-tracking-area="discovery-north"></div>\n\n<div id="onboard" data-tracking-area="onboard"></div>\n\n<div id="highlighted-post" data-tracking-area="highlighted" class="highlighted-post"></div>\n\n<header id="main-nav" data-tracking-area="main-nav">\n',e=Ce.invokePartial(d.topNavigation,"topNavigation",a,c,d,b),(e||0===e)&&(f+=e),f+='\n</header>\n\n\n\n\n<section id="conversation" data-role="main" data-tracking-area="main">\n',e=Ce.invokePartial(d.secondaryNavigation,"secondaryNavigation",a,c,d,b),(e||0===e)&&(f+=e),f+='\n\n<div id="posts">\n\n<div id="form"></div>\n\n<button class="alert realtime" style="display: none" data-role="realtime-notification">\n\n</button>\n\n\n<div id="no-posts" style="display:none">'+Be(c.gettext.call(a,"Be the first to comment.",{hash:{},data:b}))+'</div>\n\n<ul id="post-list" class="post-list loading">\n</ul>\n\n<div class="load-more" data-role="more" style="display:none">\n<a href="#" data-action="more-posts" class="btn">'+Be(c.gettext.call(a,"Load more comments",{hash:{},data:b}))+'</a>\n</div>\n</div>\n\n</section>\n\n<section id="community" data-tracking-area="main" style="display:none" data-role="main" data-outbound-link="embed:community">\n\n</section>\n\n<section id="dashboard" style="display:none" data-role="main" data-tracking-area="main">\n\n\n<p style="line-height: 1.4">'+Be(c.gettext.call(a,"Nothing for you here ... yet. But as you comment with Disqus and follow\nother Disqus users, you will start to receive notifications here, as well as a personalized\nfeed of activity by you and the people you follow. So get out there and participate in\nsome discussions!",{hash:{},data:b}))+'</p>\n</section>\n\n<section id="profile" style="display:none" data-role="main" data-tracking-area="main">\n</section>\n\n<div id="discovery" data-tracking-area="discovery-south"></div>\n\n<div id="footer" data-tracking-area="footer">\n<ul>\n<li class="logo"><a href="http://disqus.com" title="'+Be(c.gettext.call(a,"Powered by Disqus",{hash:{},data:b}))+'">'+Be(c.gettext.call(a,"Powered by Disqus",{hash:{},data:b}))+'</a></li>\n<li id="thread-subscribe-button" class="email"> \n<div class="default">\n<a href="#" data-action="subscribe" title="'+Be(c.gettext.call(a,"Subscribe and get email updates from this discussion",{hash:{},data:b}))+'"><i aria-hidden="true" class="icon-mail"></i><span class="clip">'+Be(c.gettext.call(a,"Subscribe",{hash:{},data:b}))+'</span> <i aria-hidden="true" class="icon-checkmark"></i></a>\n</div>\n<div class="form">\n<div class="input-wrapper"><input id="thread-subscribe-email" type="email" placeholder="'+Be(c.gettext.call(a,"yourname@email.com",{hash:{},data:b}))+'"/></div>\n</div>\n</li>\n<li class="install">\n<a href="https://disqus.com/websites/?utm_source='+Be((e=a&&a.forum,e=null==e||e===!1?e:e.id,typeof e===De?e.apply(a):e))+'&utm_medium=Disqus-Footer" target="_blank">\n<i aria-hidden="true" class="icon-disqus"></i>\n<span class="clip">'+Be(c.gettext.call(a,"Add Disqus to your site",{hash:{},data:b}))+'</span>\n</a>\n</li>\n<li class="privacy">\n<a href="https://help.disqus.com/customer/portal/articles/1657951?utm_source=disqus&utm_medium=embed-footer&utm_content=privacy-btn" target="_blank">\n<i aria-hidden="true" class="icon-privacy"></i>\n<span class="clip">'+Be(c.gettext.call(a,"Privacy",{hash:{},data:b}))+"</span>\n</a>\n</li>\n</ul>\n</div>\n</div>\n"}function Sb(a,b){var d,e="";return e+='\n<li data-role="post-sort" class="dropdown sorting">\n<a href="#" class="dropdown-toggle" data-nav="conversation" data-toggle="dropdown">\n',d=c["if"].call(a,c.eq.call(a,a&&a.order,"popular",{hash:{},data:b}),{hash:{},inverse:Ce.noop,fn:Ce.program(160,Tb,b),data:b}),(d||0===d)&&(e+=d),e+="\n",d=c["if"].call(a,c.eq.call(a,a&&a.order,"desc",{hash:{},data:b}),{hash:{},inverse:Ce.noop,fn:Ce.program(162,Ub,b),data:b}),(d||0===d)&&(e+=d),e+="\n",d=c["if"].call(a,c.eq.call(a,a&&a.order,"asc",{hash:{},data:b}),{hash:{},inverse:Ce.noop,fn:Ce.program(164,Vb,b),data:b}),(d||0===d)&&(e+=d),e+='\n<span class="caret"></span>\n</a>\n<ul class="dropdown-menu">\n<li ',d=c["if"].call(a,c.eq.call(a,a&&a.order,"popular",{hash:{},data:b}),{hash:{},inverse:Ce.noop,fn:Ce.program(166,Wb,b),data:b}),(d||0===d)&&(e+=d),e+='>\n<a href="#" data-action="sort" data-sort="popular">'+Be(c.gettext.call(a,"Best",{hash:{},data:b}))+'<i aria-hidden="true" class="icon-checkmark"></i></a>\n</li>\n\n<li ',d=c["if"].call(a,c.eq.call(a,a&&a.order,"desc",{hash:{},data:b}),{hash:{},inverse:Ce.noop,fn:Ce.program(166,Wb,b),data:b}),(d||0===d)&&(e+=d),e+='>\n<a href="#" data-action="sort" data-sort="desc">'+Be(c.gettext.call(a,"Newest",{hash:{},data:b}))+'<i aria-hidden="true" class="icon-checkmark"></i></a>\n</li>\n\n<li ',d=c["if"].call(a,c.eq.call(a,a&&a.order,"asc",{hash:{},data:b}),{hash:{},inverse:Ce.noop,fn:Ce.program(166,Wb,b),data:b}),(d||0===d)&&(e+=d),e+='>\n<a href="#" data-action="sort" data-sort="asc">'+Be(c.gettext.call(a,"Oldest",{hash:{},data:b}))+'<i aria-hidden="true" class="icon-checkmark"></i></a>\n</li>\n</ul>\n</li>\n'}function Tb(a,b){return Be(c.gettext.call(a,"Sort by Best",{hash:{},data:b}))}function Ub(a,b){return Be(c.gettext.call(a,"Sort by Newest",{hash:{},data:b}))}function Vb(a,b){return Be(c.gettext.call(a,"Sort by Oldest",{hash:{},data:b}))}function Wb(){return'class="selected"'}function Xb(a,b){var d,e="";return e+='\n\n<span class="comment-count">\n',d=c["if"].call(a,c.eq.call(a,a&&a.count,1,{hash:{},data:b}),{hash:{},inverse:Ce.program(169,Yb,b),fn:Ce.program(43,F,b),data:b}),(d||0===d)&&(e+=d),e+='\n</span>\n\n\n<span class="comment-count-placeholder">\n'+Be(c.gettext.call(a,"Comments",{hash:{},data:b}))+"\n</span>\n"}function Yb(a,b){var d="";return d+="\n"+Be(c.gettext.call(a,"%(numPosts)s comments",{hash:{numPosts:a&&a.count},data:b}))+"\n"}function Zb(a,b){var d,e="";return e+='\n<nav class="nav nav-primary">\n<ul>\n<li class="tab-conversation active">\n\n<a href="#" data-role="post-count" class="publisher-nav-color" data-nav="conversation">\n',d=c["with"].call(a,"count",(d=a&&a.thread,null==d||d===!1?d:d.posts),{hash:{},inverse:Ce.noop,fn:Ce.program(172,$b,b),data:b}),(d||0===d)&&(e+=d),e+="\n</a>\n</li>\n",d=c.unless.call(a,a&&a.inHome,{hash:{},inverse:Ce.noop,fn:Ce.program(174,_b,b),data:b}),(d||0===d)&&(e+=d),e+='\n<li class="dropdown user-menu" data-role="logout">\n<!-- rendered dynamically -->\n</li>\n<li class="notification-menu" data-role="notification-menu">\n<!-- rendered dynamically -->\n</li>\n</ul>\n</nav>\n'}function $b(a,b){var e,f="";return f+="\n",e=Ce.invokePartial(d.postCount,"postCount",a,c,d,b),(e||0===e)&&(f+=e),f+="\n"}function _b(a,b){var d,e="";return e+='\n<li class="tab-community">\n<a href="#" class="publisher-nav-color" data-nav="community" id="community-tab">\n\n\n<span class="community-name">\n',d=c["with"].call(a,a&&a.forum,{hash:{},inverse:Ce.noop,fn:Ce.program(175,ac,b),data:b}),(d||0===d)&&(e+=d),e+='\n</span>\n\n\n<strong class="community-name-placeholder">'+Be(c.gettext.call(a,"Community",{hash:{},data:b}))+"</strong>\n</a>\n</li>\n"}function ac(a,b){var e;return e=Ce.invokePartial(d.communityForum,"communityForum",a,c,d,b),e||0===e?e:""}function bc(a,b){var d="";return d+='\n<a href="#" data-action="upvote" title="'+Be(c.gettext.call(a,"Favorite this discussion",{hash:{},data:b}))+'">\n<span class="label">'+Be(c.gettext.call(a,"Favorite",{hash:{},data:b}))+'</span>\n<span class="icon-star"></span>\n<span class="icon-check"></span>\n</a>\n'}function cc(a,b){var e,f="";return f+='\n<div class="nav nav-secondary" data-tracking-area="secondary-nav">\n<ul>\n',e=Ce.invokePartial(d.postSort,"postSort",a,c,d,b),(e||0===e)&&(f+=e),f+='\n\n<li id="thread-votes" class="favorite pull-right">\n<!-- rendered dynamically -->\n</li>\n\n<li id="thread-share-menu" class="dropdown share-menu">\n<a href="#" class="dropdown-toggle" data-toggle="dropdown" title="'+Be(c.gettext.call(a,"Share",{hash:{},data:b}))+'">\n<span class="label">'+Be(c.gettext.call(a,"Share",{hash:{},data:b}))+'</span> <span class="icon-export"></span>\n</a>\n<ul class="share-menu dropdown-menu pull-right">\n<li class="share">'+Be(c.gettext.call(a,"Share this discussion on",{hash:{},data:b}))+'\n<ul>\n<li class="twitter">\n<a data-action="share:twitter"\nhref="#">Twitter</a>\n</li>\n<li class="facebook">\n<a data-action="share:facebook" href="#">Facebook</a>\n</li>\n</ul>\n</li>\n</ul>\n</li>\n</ul>\n</div>\n'}function dc(a,b){var d,e="";return e+='\n<a href="#"\nclass="notification-container"\n',d=c["if"].call(a,a&&a.sidebarEnabled,{hash:{},inverse:Ce.program(184,fc,b),fn:Ce.program(182,ec,b),data:b}),(d||0===d)&&(e+=d),e+='>\n<span class="notification-icon icon-comment"></span>\n<span class="notification-count" data-role="notification-count"></span>\n</a>\n'}function ec(){return'data-action="home" data-home-path="inbox"'}function fc(){return'data-nav="dashboard"'}function gc(a,b){var d="";return d+='\n<div class="notifications-logged-out">\n<i class="icon-megaphone"></i>\n<img class="diagram" src="'+Be("//a.disquscdn.com/next/assets/img/notifications/logged_out.79d5a69f292f76d1953634b7dfe5cb7c.jpg")+'" alt="Disqus Notifications">\n<div class="content">\n<h3>'+Be(c.gettext.call(a,"%(disqus)s Announcement",{hash:{disqus:"Disqus"},data:b}))+"</h3>\n<h2>"+Be(c.gettext.call(a,"Get more with a %(disqus)s account!",{hash:{disqus:"Disqus"},data:b}))+"</h2>\n<p>"+Be(c.gettext.call(a,"Signing up means that you'll now be able to find old comments, discover new discussions, and get notified when someone replies to you.",{hash:{},data:b}))+'</p>\n<div class="cta">\n<a href="#" class="btn btn-primary" data-action="auth:disqus">'+Be(c.gettext.call(a,"Login or Signup",{hash:{},data:b}))+"</a>\n</div>\n</div>\n</div>\n"}function hc(a,b){var d,e="";return e+='\n<div class="notice">\n<div class="notice-wrapper">\n<span class="icon icon-disqus"></span>\n<a data-action="onboard" href="#" data-section="'+Be((d=a&&a.displayedSection,typeof d===De?d.apply(a):d))+'" class="message">'+Be(c.gettext.call(a,"Your Disqus account has been created! Learn more about using Disqus on your favorite communities.",{hash:{},data:b}))+'</a>\n<a data-action="onboard" href="#" data-section="'+Be((d=a&&a.displayedSection,typeof d===De?d.apply(a):d))+'" class="btn btn-primary">'+Be(c.gettext.call(a,"Get Started",{hash:{},data:b}))+'</a>\n</div>\n</div>\n<a class="dismiss" data-action="close" href="#" title=\''+Be(c.gettext.call(a,"Dismiss",{hash:{},data:b}))+'\'>Dismiss <span aria-label="Dismiss" class="cross">×</span></a>\n'}function ic(a,b){var e,f="";return f+='\n<div role="alert"></div>\n',e=Ce.invokePartial(d.postWrapperTop,"postWrapperTop",a,c,d,b),(e||0===e)&&(f+=e),f+="\n\n",e=Ce.invokePartial(d.postUserAvatar,"postUserAvatar",a,c,d,b),(e||0===e)&&(f+=e),f+='\n<div class="post-body">\n<header>\n<span class="post-byline">\n',e=c["if"].call(a,(e=a&&a.post,e=null==e||e===!1?e:e.author,null==e||e===!1?e:e.isRegistered),{hash:{},inverse:Ce.program(197,nc,b),fn:Ce.program(191,jc,b),data:b}),(e||0===e)&&(f+=e),f+="\n\n",e=c["if"].call(a,a&&a.parentPost,{hash:{},inverse:Ce.noop,fn:Ce.program(199,oc,b),data:b}),(e||0===e)&&(f+=e),f+='\n</span>\n\n<span class="post-meta">\n<span class="bullet time-ago-bullet" aria-hidden="true">•</span>\n\n',e=c["if"].call(a,(e=a&&a.post,null==e||e===!1?e:e.id),{hash:{},inverse:Ce.program(203,qc,b),fn:Ce.program(201,pc,b),data:b}),(e||0===e)&&(f+=e),f+="\n</span>\n\n",e=c["if"].call(a,a&&a.stateByline,{hash:{},inverse:Ce.noop,fn:Ce.program(205,rc,b),data:b}),(e||0===e)&&(f+=e),f+='\n</header>\n\n\n<div class="post-body-inner">\n\n<div class="post-message-container" data-role="message-container">\n\n<div class="publisher-anchor-color" data-role="message-content">\n<div class="post-message ',e=c.unless.call(a,(e=a&&a.post,null==e||e===!1?e:e.message),{hash:{},inverse:Ce.noop,fn:Ce.program(207,sc,b),data:b}),(e||0===e)&&(f+=e),f+='"\ndata-role="message" dir="auto">\n',e=c["if"].call(a,c.eq.call(a,(e=a&&a.post,null==e||e===!1?e:e.message),"",{hash:{},data:b}),{hash:{},inverse:Ce.program(211,uc,b),fn:Ce.program(209,tc,b),data:b}),(e||0===e)&&(f+=e),f+='\n</div>\n\n<span class="post-media"><ul data-role="post-media-list"></ul></span>\n</div>\n</div>\n<a class="see-more hidden" title="'+Be(c.gettext.call(a,"see more",{hash:{},data:b}))+'" data-action="see-more">'+Be(c.gettext.call(a,"see more",{hash:{},data:b}))+"</a>\n</div>\n\n<footer>\n",e=Ce.invokePartial(d.postFooter,"postFooter",a,c,d,b),(e||0===e)&&(f+=e),f+="\n</footer>\n</div>\n\n",e=Ce.invokePartial(d.postWrapperBottom,"postWrapperBottom",a,c,d,b),(e||0===e)&&(f+=e),f+="\n\n"}function jc(a,b){var d,e="";return e+='\n<span class="author publisher-anchor-color"><a href="#" data-action="profile" data-user="'+Be((d=a&&a.post,d=null==d||d===!1?d:d.author,d=null==d||d===!1?d:d.id,typeof d===De?d.apply(a):d))+'" data-username="'+Be((d=a&&a.post,d=null==d||d===!1?d:d.author,d=null==d||d===!1?d:d.username,typeof d===De?d.apply(a):d))+'" data-role="username">'+Be((d=a&&a.post,d=null==d||d===!1?d:d.author,d=null==d||d===!1?d:d.name,typeof d===De?d.apply(a):d))+"</a></span>\n",d=c["if"].call(a,(d=a&&a.post,d=null==d||d===!1?d:d.author,null==d||d===!1?d:d.badge),{hash:{},inverse:Ce.program(194,lc,b),fn:Ce.program(192,kc,b),data:b}),(d||0===d)&&(e+=d),e+="\n"}function kc(a){var b,c="";return c+='\n<span class="badge" data-type="tracked-badge">'+Be((b=a&&a.post,b=null==b||b===!1?b:b.author,b=null==b||b===!1?b:b.badge,typeof b===De?b.apply(a):b))+"</span>\n"}function lc(a,b){var d,e="";return e+="\n",d=c["if"].call(a,(d=a&&a.post,d=null==d||d===!1?d:d.author,d=null==d||d===!1?d:d.thread,null==d||d===!1?d:d.canModerate),{hash:{},inverse:Ce.noop,fn:Ce.program(195,mc,b),data:b}),(d||0===d)&&(e+=d),e+="\n"}function mc(a,b){var d="";return d+='\n<span class="badge moderator">'+Be(c.gettext.call(a,"Mod",{hash:{},data:b}))+"</span>\n"}function nc(a){var b,c="";return c+='\n<span class="author">'+Be((b=a&&a.post,b=null==b||b===!1?b:b.author,b=null==b||b===!1?b:b.name,typeof b===De?b.apply(a):b))+"</span>\n"}function oc(a){var b,c="";return c+='\n<span><a href="'+Be((b=a&&a.parentPost,b=null==b||b===!1?b:b.permalink,typeof b===De?b.apply(a):b))+'" class="parent-link" data-role="parent-link"><i aria-hidden="true" class="icon-forward" title="in reply to"></i> '+Be((b=a&&a.parentPost,b=null==b||b===!1?b:b.author,b=null==b||b===!1?b:b.name,typeof b===De?b.apply(a):b))+"</a></span>\n"}function pc(a){var b,c="";return c+='\n<a href="'+Be((b=a&&a.post,b=null==b||b===!1?b:b.permalink,typeof b===De?b.apply(a):b))+'" data-role="relative-time" class="time-ago" title="'+Be((b=a&&a.post,b=null==b||b===!1?b:b.formattedCreatedAt,typeof b===De?b.apply(a):b))+'">\n'+Be((b=a&&a.post,b=null==b||b===!1?b:b.relativeCreatedAt,typeof b===De?b.apply(a):b))+"\n</a>\n"}function qc(a){var b,c="";return c+='\n<span class="time-ago" data-role="relative-time" title="'+Be((b=a&&a.post,b=null==b||b===!1?b:b.formattedCreatedAt,typeof b===De?b.apply(a):b))+'">\n'+Be((b=a&&a.post,b=null==b||b===!1?b:b.relativeCreatedAt,typeof b===De?b.apply(a):b))+"\n</span>\n"}function rc(a){var b,c="";return c+='\n<span class="state-byline state-byline-'+Be((b=a&&a.stateByline,b=null==b||b===!1?b:b.style,typeof b===De?b.apply(a):b))+'">\n<span class="icon-mobile icon-'+Be((b=a&&a.stateByline,b=null==b||b===!1?b:b.icon,typeof b===De?b.apply(a):b))+'" aria-hidden="true"></span>\n<span class="text">\n'+Be((b=a&&a.stateByline,b=null==b||b===!1?b:b.text,typeof b===De?b.apply(a):b))+"\n</span>\n</span>\n"}function sc(){return"loading"}function tc(a,b){var d="";return d+="\n<p><i>"+Be(c.gettext.call(a,"This comment has no content.",{hash:{},data:b}))+"</i></p>\n"}function uc(a,b){var d,e="";return e+="\n"+Be(c.html.call(a,(d=a&&a.post,null==d||d===!1?d:d.message),{hash:{},data:b}))+"\n"}function vc(a,b){var e,f="";return f+='\n<div data-role="post-content" class="post-content\n',e=c["if"].call(a,(e=a&&a.post,null==e||e===!1?e:e.isRealtime),{hash:{},inverse:Ce.noop,fn:Ce.program(214,wc,b),data:b}),(e||0===e)&&(f+=e),f+="\n",e=c.if_all.call(a,(e=a&&a.session,null==e||e===!1?e:e.isRegistered),c.eq.call(a,(e=a&&a.post,e=null==e||e===!1?e:e.author,null==e||e===!1?e:e.id),(e=a&&a.session,null==e||e===!1?e:e.id),{hash:{},data:b}),{hash:{},inverse:Ce.noop,fn:Ce.program(216,xc,b),data:b}),(e||0===e)&&(f+=e),f+="\n",e=c["if"].call(a,(e=a&&a.post,null==e||e===!1?e:e.isFlaggedByUser),{hash:{},inverse:Ce.noop,fn:Ce.program(218,yc,b),data:b}),(e||0===e)&&(f+=e),f+='\n">\n',e=Ce.invokePartial(d.postMenu,"postMenu",a,c,d,b),(e||0===e)&&(f+=e),f+='\n<div class="indicator"></div>\n'}function wc(){return"new"}function xc(){return"authored-by-session-user"}function yc(){return"user-reported"}function zc(){var a="";return a+='\n<div data-role="blacklist-form"></div>\n<div class="reply-form-container" data-role="reply-form"></div>\n</div>\n\n\n<ul data-role="children" class="children"/>\n'}function Ac(a,b){var d,e="";return e+='\n\n<div data-role="post-media">\n\n<a class="media-button media-button-expand publisher-color publisher-border-color" href="'+Be((d=a&&a.media,d=null==d||d===!1?d:d.url,typeof d===De?d.apply(a):d))+'" rel="nofollow" target="_blank" data-action="expand"\ntitle="',d=c["if"].call(a,(d=a&&a.media,null==d||d===!1?d:d.title),{hash:{},inverse:Ce.noop,fn:Ce.program(223,Bc,b),data:b}),(d||0===d)&&(e+=d),e+='">\n',d=c["if"].call(a,(d=a&&a.model,null==d||d===!1?d:d.providerIcon),{hash:{},inverse:Ce.noop,fn:Ce.program(226,Dc,b),data:b}),(d||0===d)&&(e+=d),e+="\n"+Be((d=a&&a.model,d=null==d||d===!1?d:d.providerExpandMessage,typeof d===De?d.apply(a):d))+'\n</a>\n<a class="media-button media-button-contract publisher-color publisher-border-color" href="#" target="_blank" data-action="contract">\n<i class="icon-cancel publisher-background-color"></i> '+Be((d=a&&a.model,d=null==d||d===!1?d:d.providerCollapseMessage,typeof d===De?d.apply(a):d))+'\n</a>\n\n<div class="media-content-loader" data-role="content-loader"></div>\n\n<div data-role="content-placeholder" class="media-content-placeholder"></div>\n</div>\n'}function Bc(a,b){var d,e="";
return d=c["if"].call(a,(d=a&&a.media,null==d||d===!1?d:d.providerName),{hash:{},inverse:Ce.noop,fn:Ce.program(224,Cc,b),data:b}),(d||0===d)&&(e+=d),e+=Be((d=a&&a.media,d=null==d||d===!1?d:d.title,typeof d===De?d.apply(a):d))}function Cc(a){var b,c="";return c+=Be((b=a&&a.media,b=null==b||b===!1?b:b.providerName,typeof b===De?b.apply(a):b))+" – "}function Dc(a){var b,c="";return c+='<i class="'+Be((b=a&&a.model,b=null==b||b===!1?b:b.providerIcon,typeof b===De?b.apply(a):b))+' publisher-background-color"></i>'}function Ec(){var a="";return a+='\n\n<div data-role="post-media">\n\n<div class="media-content-loader" data-role="content-loader"></div>\n\n<div data-role="content-placeholder" class="media-content-placeholder"></div>\n</div>\n'}function Fc(a){var b,c="";return c+='\n<iframe src="'+Be((b=a&&a.url,typeof b===De?b.apply(a):b))+'" frameborder="0"></iframe>\n'}function Gc(a){var b,c="";return c+='\n<a href="#" class="media-force-load" data-action="force-load"><i class="'+Be((b=a&&a.model,b=null==b||b===!1?b:b.providerIcon,typeof b===De?b.apply(a):b))+'"></i></a>\n'}function Hc(a,b){var d,e="";return e+='\n<a href="'+Be((d=a&&a.imageUrl,typeof d===De?d.apply(a):d))+'" target="_blank" rel="nofollow">\n\n<img src="'+Be((d=a&&a.thumbnailUrl,typeof d===De?d.apply(a):d))+'" data-post="'+Be((d=a&&a.postId,typeof d===De?d.apply(a):d))+'" alt="'+Be(c.gettext.call(a,"Thumbnail",{hash:{},data:b}))+'" ',d=c["if"].call(a,(d=a&&a.model,null==d||d===!1?d:d.deferredHeight),{hash:{},inverse:Ce.noop,fn:Ce.program(235,Ic,b),data:b}),(d||0===d)&&(e+=d),e+=">\n</a>\n"}function Ic(a){var b,c="";return c+=' height="'+Be((b=a&&a.model,b=null==b||b===!1?b:b.deferredHeight,typeof b===De?b.apply(a):b))+'" '}function Jc(a,b){var d,e="";return e+="\n",d=c["if"].call(a,(d=a&&a.model,null==d||d===!1?d:d.deferred),{hash:{},inverse:Ce.program(240,Lc,b),fn:Ce.program(238,Kc,b),data:b}),(d||0===d)&&(e+=d),e+="\n"}function Kc(a){var b,c="";return c+='\n\n<a href="'+Be((b=a&&a.href,typeof b===De?b.apply(a):b))+'" rel="nofollow">'+Be((b=a&&a.text,typeof b===De?b.apply(a):b))+"</a>\n"}function Lc(a,b){var d,e="";return e+='\n\n<a href="'+Be((d=a&&a.href,typeof d===De?d.apply(a):d))+'" class="post-media-link" data-action="expand-collapse-media" rel="nofollow">',d=c["if"].call(a,(d=a&&a.model,null==d||d===!1?d:d.providerIcon),{hash:{},inverse:Ce.noop,fn:Ce.program(241,Mc,b),data:b}),(d||0===d)&&(e+=d),e+=Be((d=a&&a.mediaLinkText,typeof d===De?d.apply(a):d)),d=c["if"].call(a,a&&a.domain,{hash:{},inverse:Ce.noop,fn:Ce.program(243,Nc,b),data:b}),(d||0===d)&&(e+=d),e+="</a>\n"}function Mc(a){var b,c="";return c+='<i class="'+Be((b=a&&a.model,b=null==b||b===!1?b:b.providerIcon,typeof b===De?b.apply(a):b))+'"></i>'}function Nc(a){var b,c="";return c+='<span class="post-media-link-domain"> — '+Be((b=a&&a.domain,typeof b===De?b.apply(a):b))+"</span>"}function Oc(a){var b,c="";return c+='\n<meta name="twitter:widgets:csp" content="on">\n<blockquote class="twitter-tweet" data-theme="'+Be((b=a&&a.theme,typeof b===De?b.apply(a):b))+'" data-link-color="'+Be((b=a&&a.linkColor,typeof b===De?b.apply(a):b))+'" lang="'+Be((b=a&&a.language,typeof b===De?b.apply(a):b))+'">\n<a href="'+Be((b=a&&a.url,typeof b===De?b.apply(a):b))+'"></a>\n</blockquote>\n<script src="//platform.twitter.com/widgets.js"></script>\n'}function Pc(a,b){var d,e="";return e+='\n<a href="#" class="vote-up ',d=c["if"].call(a,c.gt.call(a,(d=a&&a.post,null==d||d===!1?d:d.userScore),0,{hash:{},data:b}),{hash:{},inverse:Ce.noop,fn:Ce.program(248,Qc,b),data:b}),(d||0===d)&&(e+=d),e+=" count-"+Be((d=a&&a.post,d=null==d||d===!1?d:d.likes,typeof d===De?d.apply(a):d))+'" data-action="upvote" title="',d=c.unless.call(a,(d=a&&a.post,null==d||d===!1?d:d.likes),{hash:{},inverse:Ce.noop,fn:Ce.program(250,Rc,b),data:b}),(d||0===d)&&(e+=d),e+='">\n<span class="updatable count" data-role="likes">'+Be((d=a&&a.post,d=null==d||d===!1?d:d.likes,typeof d===De?d.apply(a):d))+'</span>\n<span class="control"><i aria-hidden="true" class="icon icon-arrow-2"></i></span>\n</a>\n<span role="button" class="vote-down ',d=c["if"].call(a,c.lt.call(a,(d=a&&a.post,null==d||d===!1?d:d.userScore),0,{hash:{},data:b}),{hash:{},inverse:Ce.noop,fn:Ce.program(252,Sc,b),data:b}),(d||0===d)&&(e+=d),e+=" count-"+Be((d=a&&a.post,d=null==d||d===!1?d:d.dislikes,typeof d===De?d.apply(a):d))+'" ',d=c["if"].call(a,(d=a&&a.session,null==d||d===!1?d:d.isRegistered),{hash:{},inverse:Ce.noop,fn:Ce.program(254,Tc,b),data:b}),(d||0===d)&&(e+=d),e+=' title="'+Be(c.gettext.call(a,"Vote down",{hash:{},data:b}))+'">\n<span class="control"><i aria-hidden="true" class="icon icon-arrow"></i></span>\n',d=c["if"].call(a,(d=a&&a.session,null==d||d===!1?d:d.isAnonymous),{hash:{},inverse:Ce.noop,fn:Ce.program(256,Uc,b),data:b}),(d||0===d)&&(e+=d),e+="\n</span>\n"}function Qc(){return"upvoted"}function Rc(a,b){return Be(c.gettext.call(a,"Vote up",{hash:{},data:b}))}function Sc(){return"downvoted"}function Tc(){return'href="#" data-action="downvote"'}function Uc(a,b){var d="";return d+='\n<span class="tooltip">'+Be(c.gettext.call(a,"You must sign in to down-vote this post.",{hash:{},data:b}))+"</span>\n"}function Vc(a,b){var d,e="";return e+='\n<ul class="post-menu dropdown" data-role="menu">\n<li class="collapse">\n<a href="#" data-action="collapse" title="'+Be(c.gettext.call(a,"Collapse",{hash:{},data:b}))+'"><span>−</span></a>\n</li>\n<li class="expand">\n<a href="#" data-action="collapse" title="'+Be(c.gettext.call(a,"Expand",{hash:{},data:b}))+'"><span>+</span></a>\n</li>\n\n',d=c.if_all.call(a,(d=a&&a.post,null==d||d===!1?d:d.id),c.ne.call(a,(d=a&&a.post,null==d||d===!1?d:d.isMinimized),!0,{hash:{},data:b}),c.ne.call(a,(d=a&&a.post,null==d||d===!1?d:d.isDeleted),!0,{hash:{},data:b}),{hash:{},inverse:Ce.noop,fn:Ce.program(259,Wc,b),data:b}),(d||0===d)&&(e+=d),e+="\n</ul>\n"}function Wc(a,b){var d,e="";return e+='\n<li class="',d=c["if"].call(a,(d=a&&a.session,d=null==d||d===!1?d:d.thread,null==d||d===!1?d:d.canModerate),{hash:{},inverse:Ce.noop,fn:Ce.program(260,Xc,b),data:b}),(d||0===d)&&(e+=d),e+='"\nrole="menu">\n',d=c["if"].call(a,(d=a&&a.session,d=null==d||d===!1?d:d.thread,null==d||d===!1?d:d.canModerate),{hash:{},inverse:Ce.program(271,bd,b),fn:Ce.program(262,Yc,b),data:b}),(d||0===d)&&(e+=d),e+="\n</li>\n"}function Xc(){return"moderator-menu-options"}function Yc(a,b){var d,e="";return e+='\n<a class="dropdown-toggle" data-toggle="dropdown" href="#"><b\nclass="caret moderator-menu-options"></b></a>\n<ul class="dropdown-menu">\n<li><a href="#" data-action="spam">'+Be(c.gettext.call(a,"Mark as Spam",{hash:{},data:b}))+'</a></li>\n<li><a href="#" data-action="delete">'+Be(c.gettext.call(a,"Delete",{hash:{},data:b}))+'</a> </li>\n<li><a href="#" data-action="blacklist">'+Be(c.gettext.call(a,"Blacklist",{hash:{},data:b}))+'</a> </li>\n<li>\n<a href="'+Be(c.urlfor.call(a,"moderate",{hash:{},data:b}))+"#/approved/search/id:"+Be((d=a&&a.post,d=null==d||d===!1?d:d.id,typeof d===De?d.apply(a):d))+'"\ntarget="_blank">'+Be(c.gettext.call(a,"Moderate",{hash:{},data:b}))+'</a>\n</li>\n\n<li class="highlight-toggle">\n<a href="#"\ndata-action="',d=c["if"].call(a,(d=a&&a.post,null==d||d===!1?d:d.isHighlighted),{hash:{},inverse:Ce.program(265,$c,b),fn:Ce.program(263,Zc,b),data:b}),(d||0===d)&&(e+=d),e+='">\n',d=c["if"].call(a,(d=a&&a.post,null==d||d===!1?d:d.isHighlighted),{hash:{},inverse:Ce.program(269,ad,b),fn:Ce.program(267,_c,b),data:b}),(d||0===d)&&(e+=d),e+="\n</a>\n</li>\n</ul>\n"}function Zc(){return"unhighlight"}function $c(){return"highlight"}function _c(a,b){var d="";return d+="\n"+Be(c.gettext.call(a,"Stop featuring",{hash:{},data:b}))+"\n"}function ad(a,b){var d="";return d+="\n"+Be(c.gettext.call(a,"Feature this comment",{hash:{},data:b}))+"\n"}function bd(a,b){var d,e="";return e+="\n",d=c.if_all.call(a,(d=a&&a.session,null==d||d===!1?d:d.isRegistered),(d=a&&a.post,null==d||d===!1?d:d.author),c.eq.call(a,(d=a&&a.post,d=null==d||d===!1?d:d.author,null==d||d===!1?d:d.id),(d=a&&a.session,null==d||d===!1?d:d.id),{hash:{},data:b}),{hash:{},inverse:Ce.program(274,dd,b),fn:Ce.program(272,cd,b),data:b}),(d||0===d)&&(e+=d),e+="\n"}function cd(a,b){var d="";return d+='\n<a class="dropdown-toggle" data-toggle="dropdown"\nhref="#"><b class="caret"></b></a>\n<ul class="dropdown-menu">\n<li><a href="#" data-action="delete">'+Be(c.gettext.call(a,"Delete",{hash:{},data:b}))+'</a></li>\n<li><a href="#" data-action="flag">'+Be(c.gettext.call(a,"Flag as inappropriate",{hash:{},data:b}))+"</a></li>\n</ul>\n"}function dd(a,b){var d="";return d+='\n<a class="dropdown-toggle" href="#" data-action="flag"\ndata-role="flag" title="'+Be(c.gettext.call(a,"Flag as inappropriate",{hash:{},data:b}))+'">\n<i aria-hidden="true" class="icon icon-flag"></i>\n</a>\n'}function ed(a,b){var e,f="";return f+='\n<menu>\n\n<li class="voting" data-role="voting">\n',e=Ce.invokePartial(d.postVotes,"postVotes",a,c,d,b),(e||0===e)&&(f+=e),f+='\n</li>\n<li class="bullet" aria-hidden="true">•</li>\n\n',e=c["if"].call(a,(e=a&&a.post,null==e||e===!1?e:e.canBeEdited),{hash:{},inverse:Ce.noop,fn:Ce.program(277,fd,b),data:b}),(e||0===e)&&(f+=e),f+="\n\n",e=c["if"].call(a,(e=a&&a.post,null==e||e===!1?e:e.canBeRepliedTo),{hash:{},inverse:Ce.noop,fn:Ce.program(279,gd,b),data:b}),(e||0===e)&&(f+=e),f+="\n\n",e=c["if"].call(a,(e=a&&a.post,null==e||e===!1?e:e.isSponsored),{hash:{},inverse:Ce.noop,fn:Ce.program(281,hd,b),data:b}),(e||0===e)&&(f+=e),f+="\n\n",e=c["if"].call(a,(e=a&&a.post,null==e||e===!1?e:e.canBeShared),{hash:{},inverse:Ce.noop,fn:Ce.program(283,id,b),data:b}),(e||0===e)&&(f+=e),f+="\n\n",e=c.unless.call(a,(e=a&&a.post,null==e||e===!1?e:e.isDeleted),{hash:{},inverse:Ce.noop,fn:Ce.program(285,jd,b),data:b}),(e||0===e)&&(f+=e),f+="\n\n",e=c["if"].call(a,(e=a&&a.post,null==e||e===!1?e:e.isSponsored),{hash:{},inverse:Ce.noop,fn:Ce.program(287,kd,b),data:b}),(e||0===e)&&(f+=e),f+="\n</menu>\n"}function fd(a,b){var d="";return d+='\n<li class="edit" data-role="edit-link">\n<a href="#" data-action="edit">\n<i class="icon icon-mobile icon-pencil"></i><span class="text">'+Be(c.gettext.call(a,"Edit",{hash:{},data:b}))+'</span></a></li>\n<li class="bullet" aria-hidden="true">•</li>\n'}function gd(a,b){var d="";return d+='\n<li class="reply" data-role="reply-link">\n<a href="#" data-action="reply">\n<i class="icon icon-mobile icon-reply"></i><span class="text">'+Be(c.gettext.call(a,"Reply",{hash:{},data:b}))+'</span></a></li>\n<li class="bullet" aria-hidden="true">•</li>\n'}function hd(a,b){var d,e="";return e+='\n<li class="thread-link" data-role="thread-link">\n<a href="'+Be((d=a&&a.post,d=null==d||d===!1?d:d.permalink,typeof d===De?d.apply(a):d))+'" target="_blank" data-action="thread">\n<i class="icon icon-mobile"></i>\n<span class="text">'+Be(c.gettext.call(a,"View all comments",{hash:{},data:b}))+'</span>\n<span class="mobile-text">'+Be(c.gettext.call(a,"All Comments",{hash:{},data:b}))+'</span>\n</a>\n</li>\n<li class="bullet" aria-hidden="true">•</li>\n'}function id(a,b){var d,e="";return e+='\n<li class="share">\n<a class="toggle"><i class="icon icon-mobile icon-share"></i><span class="text">'+Be(c.gettext.call(a,"Share",{hash:{},data:b}))+' ›</span></a>\n<ul>\n<li class="twitter"><a href="#" data-action="share:twitter">Twitter</a></li>\n<li class="facebook"><a href="#" data-action="share:facebook">Facebook</a></li>\n<li class="link"><a href="'+Be((d=a&&a.post,d=null==d||d===!1?d:d.permalink,typeof d===De?d.apply(a):d))+'">'+Be(c.gettext.call(a,"Link",{hash:{},data:b}))+"</a></li>\n</ul>\n</li>\n"}function jd(a){var b,c="";return c+='\n<li class="realtime" data-role="realtime-notification:'+Be((b=a&&a.post,b=null==b||b===!1?b:b.id,typeof b===De?b.apply(a):b))+'">\n<span style="display:none;" class="realtime-replies"></span>\n<a style="display:none;" href="#" class="btn btn-small"></a>\n\n</li>\n'}function kd(a,b){var d="";return d+='\n<li class="feedback">\n<button data-action="feedback">'+Be(c.gettext.call(a,"Leave Feedback",{hash:{},data:b}))+"</button>\n</li>\n"}function ld(a,b){var d,e="";return e+="\n",d=c.if_all.call(a,(d=a&&a.post,d=null==d||d===!1?d:d.author,null==d||d===!1?d:d.isRegistered),c.ne.call(a,(d=a&&a.post,null==d||d===!1?d:d.isMinimized),!0,{hash:{},data:b}),{hash:{},inverse:Ce.program(292,nd,b),fn:Ce.program(290,md,b),data:b}),(d||0===d)&&(e+=d),e+="\n"}function md(a,b){var d,e="";return e+='\n<div class="avatar hovercard">\n<a href="'+Be((d=a&&a.post,d=null==d||d===!1?d:d.author,d=null==d||d===!1?d:d.profileUrl,typeof d===De?d.apply(a):d))+'" class="user"\ndata-action="profile" data-username="'+Be((d=a&&a.post,d=null==d||d===!1?d:d.author,d=null==d||d===!1?d:d.username,typeof d===De?d.apply(a):d))+'" data-user="'+Be((d=a&&a.post,d=null==d||d===!1?d:d.author,d=null==d||d===!1?d:d.id,typeof d===De?d.apply(a):d))+'">\n<img data-role="user-avatar" data-user="'+Be((d=a&&a.post,d=null==d||d===!1?d:d.author,d=null==d||d===!1?d:d.id,typeof d===De?d.apply(a):d))+'" src="'+Be((d=a&&a.defaultAvatarUrl,typeof d===De?d.apply(a):d))+'" data-src="'+Be((d=a&&a.post,d=null==d||d===!1?d:d.author,d=null==d||d===!1?d:d.avatar,d=null==d||d===!1?d:d.cache,typeof d===De?d.apply(a):d))+'"\nalt="'+Be(c.gettext.call(a,"Avatar",{hash:{},data:b}))+'"/>\n</a>\n</div>\n'}function nd(a,b){var d,e="";return e+='\n<div class="avatar">\n\n<div class="user"><img src="'+Be((d=a&&a.defaultAvatarUrl,typeof d===De?d.apply(a):d))+'"\nclass="user" alt="'+Be(c.gettext.call(a,"Avatar",{hash:{},data:b}))+'"/></div>\n</div>\n'}function od(a,b){var d="";return d+="\n\n"+Be(c.gettext.call(a,"You've featured a comment! This comment will now also appear at the top of the discussion.",{hash:{},data:b}))+"\n"}function pd(a,b){var e,f="";return f+="\n",e=Ce.invokePartial(d.postWrapperTop,"postWrapperTop",a,c,d,b),(e||0===e)&&(f+=e),f+='\n\n<div class="avatar">\n<img data-src="'+Be(c.urlfor.call(a,"avatar.generic",{hash:{},data:b}))+'" class="user" alt="'+Be(c.gettext.call(a,"Avatar",{hash:{},data:b}))+'" />\n</div>\n<div class="post-body">\n<div class="post-message">\n<p>'+Be(c.gettext.call(a,"This comment was deleted.",{hash:{},data:b}))+"</p>\n</div>\n\n<header>\n",e=Ce.invokePartial(d.postMenu,"postMenu",a,c,d,b),(e||0===e)&&(f+=e),f+="\n</header>\n</div>\n\n",e=Ce.invokePartial(d.postWrapperBottom,"postWrapperBottom",a,c,d,b),(e||0===e)&&(f+=e),f+="\n"}function qd(a,b){var e,f="";return f+="\n",e=Ce.invokePartial(d.postWrapperTop,"postWrapperTop",a,c,d,b),(e||0===e)&&(f+=e),f+="\n\n",e=Ce.invokePartial(d.postUserAvatar,"postUserAvatar",a,c,d,b),(e||0===e)&&(f+=e),f+='\n<div class="post-body">\n<div class="post-message publisher-anchor-color">\n',e=c.if_any.call(a,a&&a.created,(e=a&&a.post,null==e||e===!1?e:e.isApproved),{hash:{},inverse:Ce.program(304,ud,b),fn:Ce.program(299,rd,b),data:b}),(e||0===e)&&(f+=e),f+='\n</div>\n\n<header>\n<div class="post-meta">\n\n'+Be(c.gettext.call(a,"This comment is awaiting moderation.",{hash:{},data:b}))+"\n</div>\n\n",e=Ce.invokePartial(d.postMenu,"postMenu",a,c,d,b),(e||0===e)&&(f+=e),f+="\n</header>\n</div>\n\n",e=Ce.invokePartial(d.postWrapperBottom,"postWrapperBottom",a,c,d,b),(e||0===e)&&(f+=e),f+="\n"}function rd(a,b){var d,e="";return e+="\n",d=c["if"].call(a,(d=a&&a.post,null==d||d===!1?d:d.isApproved),{hash:{},inverse:Ce.program(302,td,b),fn:Ce.program(300,sd,b),data:b}),(d||0===d)&&(e+=d),e+="\n"}function sd(a,b){var d="";return d+="\n<p>"+Be(c.gettext.call(a,"Comment score below threshold.",{hash:{},data:b}))+' <a href="#" data-action="reveal">'+Be(c.gettext.call(a,"Show comment.",{hash:{},data:b}))+"</a></p>\n"}function td(a,b){var d="";return d+="\n<p>"+Be(c.gettext.call(a,"Your comment is awaiting moderation.",{hash:{},data:b}))+' <a href="#" data-action="reveal">'+Be(c.gettext.call(a,"See your comment.",{hash:{},data:b}))+'</a> <a href="http://help.disqus.com/customer/portal/articles/466223" class="help-icon" title="'+Be(c.gettext.call(a,"Why?",{hash:{},data:b}))+'" target="_blank"></a> </p>\n'}function ud(a,b){var d="";return d+="\n\n<p>"+Be(c.gettext.call(a,"This comment is awaiting moderation.",{hash:{},data:b}))+' <a href="#" data-action="reveal">'+Be(c.gettext.call(a,"Show comment.",{hash:{},data:b}))+"</a></p>\n"}function vd(a,b){var d,e="";return e+="\n",d=c["if"].call(a,c.eq.call(a,a&&a.comments,1,{hash:{},data:b}),{hash:{},inverse:Ce.program(309,xd,b),fn:Ce.program(307,wd,b),data:b}),(d||0===d)&&(e+=d),e+="\n"}function wd(a,b){var d="";return d+="\n"+Be(c.gettext.call(a,"Show One New Comment",{hash:{},data:b}))+"\n"}function xd(a,b){var d="";return d+="\n"+Be(c.gettext.call(a,"Show %(comments)s New Comments",{hash:{comments:a&&a.comments},data:b}))+"\n"}function yd(a,b){var d,e="";return e+="\n",d=c["if"].call(a,c.eq.call(a,a&&a.replies,1,{hash:{},data:b}),{hash:{},inverse:Ce.program(314,Ad,b),fn:Ce.program(312,zd,b),data:b}),(d||0===d)&&(e+=d),e+="\n"}function zd(a,b){var d="";return d+='\n<span class="indicator"></span>'+Be(c.gettext.call(a,"Show 1 new reply",{hash:{},data:b}))+"\n"}function Ad(a,b){var d="";return d+='\n<span class="indicator"></span>'+Be(c.gettext.call(a,"Show %(replies)s new replies",{hash:{replies:a&&a.replies},data:b}))+"\n"}function Bd(a){var b,c="";return c+='\n<!doctype html>\n<style>\nhtml * {\nmargin: 0;\npadding: 0;\ncursor: pointer;\n}\n\ndiv {\ntext-align: center;\nfont-family: "Helvetica Neue", Helvetica, sans-serif;\nborder: 2px solid #ccc;\nbackground: #f4f4f4;\ncolor: #777;\npadding: 7px 0;\nfilter: alpha(opacity=90);\nopacity: 0.9;\nfont-size: 13px;\nline-height: 1;\nz-index: 1000;\n}\n\ndiv.north {\nborder-top: 0;\nborder-radius: 0 0 4px 4px;\n}\n\ndiv.south {\nborder-bottom: 0;\nborder-radius: 4px 4px 0 0;\n}\n</style>\n<div class="'+Be((b=a&&a.orientation,typeof b===De?b.apply(a):b))+'" id="message">-</div>\n'}function Cd(a,b){var d,e="";return e+="\n",d=c["if"].call(a,c.eq.call(a,a&&a.orientation,"north",{hash:{},data:b}),{hash:{},inverse:Ce.program(324,Gd,b),fn:Ce.program(319,Dd,b),data:b}),(d||0===d)&&(e+=d),e+="\n"}function Dd(a,b){var d,e="";return e+="\n",d=c["if"].call(a,c.eq.call(a,a&&a.num,1,{hash:{},data:b}),{hash:{},inverse:Ce.program(322,Fd,b),fn:Ce.program(320,Ed,b),data:b}),(d||0===d)&&(e+=d),e+="\n"}function Ed(a,b){var d="";return d+="\n<p>"+Be(c.gettext.call(a,"One new comment above.",{hash:{},data:b}))+"</p>\n"}function Fd(a,b){var d="";return d+="\n<p>"+Be(c.gettext.call(a,"%(num)s new comments above.",{hash:{num:a&&a.num},data:b}))+"</p>\n"}function Gd(a,b){var d,e="";return e+="\n",d=c["if"].call(a,c.eq.call(a,a&&a.num,1,{hash:{},data:b}),{hash:{},inverse:Ce.program(327,Id,b),fn:Ce.program(325,Hd,b),data:b}),(d||0===d)&&(e+=d),e+="\n"}function Hd(a,b){var d="";return d+="\n<p>"+Be(c.gettext.call(a,"One new comment below.",{hash:{},data:b}))+"</p>\n"}function Id(a,b){var d="";return d+="\n<p>"+Be(c.gettext.call(a,"%(num)s new comments below.",{hash:{num:a&&a.num},data:b}))+"</p>\n"}function Jd(a,b){var d="";return d+='\n<ul class="suggestions">\n<li class="header">\n<h5>'+Be(c.gettext.call(a,"in this conversation",{hash:{},data:b}))+"</h5>\n</li>\n</ul>\n"}function Kd(a,b){var d,e="";return e+='\n<li data-cid="'+Be((d=a&&a.cid,typeof d===De?d.apply(a):d))+'">\n<img src="'+Be((d=a&&a.avatar,d=null==d||d===!1?d:d.cache,typeof d===De?d.apply(a):d))+'" class="avatar" alt="'+Be(c.gettext.call(a,"Avatar",{hash:{},data:b}))+'">\n<span>'+Be(c.any.call(a,a&&a.name,a&&a.username,{hash:{},data:b}))+"</span>\n</li>\n"}function Ld(a,b){var d,e="";return e+='\n<div>\n<div class="avatar">\n',d=c["if"].call(a,(d=a&&a.author,null==d||d===!1?d:d.isRegistered),{hash:{},inverse:Ce.program(336,Nd,b),fn:Ce.program(334,Md,b),data:b}),(d||0===d)&&(e+=d),e+="\n</div>\n\n<div>\n<p>\n<strong>\n",d=c["if"].call(a,(d=a&&a.author,null==d||d===!1?d:d.isRegistered),{hash:{},inverse:Ce.program(340,Pd,b),fn:Ce.program(338,Od,b),data:b}),(d||0===d)&&(e+=d),e+="\n</strong>\n— "+Be(c.html.call(a,a&&a.message,{hash:{},data:b}))+"\n</p>\n</div>\n</div>\n"}function Md(a,b){var d,e="";return e+='\n<a href="'+Be((d=a&&a.author,d=null==d||d===!1?d:d.profileUrl,typeof d===De?d.apply(a):d))+'" class="user" data-action="profile" data-user="'+Be((d=a&&a.author,d=null==d||d===!1?d:d.id,typeof d===De?d.apply(a):d))+'" data-username="'+Be((d=a&&a.author,d=null==d||d===!1?d:d.username,typeof d===De?d.apply(a):d))+'">\n<img data-src="'+Be((d=a&&a.author,d=null==d||d===!1?d:d.avatar,d=null==d||d===!1?d:d.cache,typeof d===De?d.apply(a):d))+'" alt="'+Be(c.gettext.call(a,"Avatar",{hash:{},data:b}))+'"/>\n</a>\n'}function Nd(a,b){var d,e="";return e+='\n<div class="user">\n<img data-src="'+Be((d=a&&a.author,d=null==d||d===!1?d:d.avatar,d=null==d||d===!1?d:d.cache,typeof d===De?d.apply(a):d))+'" class="user" alt="'+Be(c.gettext.call(a,"Avatar",{hash:{},data:b}))+'"/>\n</div>\n'}function Od(a,b){var d,e="";return e+='\n<a href="'+Be((d=a&&a.author,d=null==d||d===!1?d:d.profileUrl,typeof d===De?d.apply(a):d))+'" class="user" data-action="profile" data-user="'+Be((d=a&&a.author,d=null==d||d===!1?d:d.id,typeof d===De?d.apply(a):d))+'" data-username="'+Be((d=a&&a.author,d=null==d||d===!1?d:d.username,typeof d===De?d.apply(a):d))+'">\n'+Be(c.any.call(a,(d=a&&a.author,null==d||d===!1?d:d.name),(d=a&&a.author,null==d||d===!1?d:d.username),{hash:{},data:b}))+"</a>\n"}function Pd(a,b){var d,e="";return e+='\n<span class="user">'+Be(c.any.call(a,(d=a&&a.author,null==d||d===!1?d:d.name),(d=a&&a.author,null==d||d===!1?d:d.username),{hash:{},data:b}))+"</span>\n"}function Qd(a,b){var e,f="";return f+='\n<li class="top-user">\n<div class="avatar">\n',e=c["if"].call(a,(e=a&&a.user,null==e||e===!1?e:e.isRegistered),{hash:{},inverse:Ce.program(345,Sd,b),fn:Ce.program(343,Rd,b),data:b}),(e||0===e)&&(f+=e),f+='\n</div>\n\n<div class="profile-card-text">\n<h5>\n<span>\n',e=c["if"].call(a,(e=a&&a.user,null==e||e===!1?e:e.isRegistered),{hash:{},inverse:Ce.program(349,Ud,b),fn:Ce.program(347,Td,b),data:b}),(e||0===e)&&(f+=e),f+='\n</span>\n</h5>\n\n<span class="post-count">\n',e=c["if"].call(a,c.eq.call(a,(e=a&&a.user,null==e||e===!1?e:e.numPosts),1,{hash:{},data:b}),{hash:{},inverse:Ce.noop,fn:Ce.program(43,F,b),data:b}),(e||0===e)&&(f+=e),f+="\n\n",e=c["if"].call(a,c.ge.call(a,(e=a&&a.user,null==e||e===!1?e:e.numPosts),2,{hash:{},data:b}),{hash:{},inverse:Ce.noop,fn:Ce.program(148,Mb,b),data:b}),(e||0===e)&&(f+=e),f+="\n</span>\n\n",e=Ce.invokePartial(d.followButtonSmall,"followButtonSmall",a,c,d,b),(e||0===e)&&(f+=e),f+="\n\n</div>\n</li>\n"}function Rd(a,b){var d,e="";return e+='\n<a href="#" class="user" data-action="profile" data-user="'+Be((d=a&&a.user,d=null==d||d===!1?d:d.id,typeof d===De?d.apply(a):d))+'" data-username="'+Be((d=a&&a.user,d=null==d||d===!1?d:d.username,typeof d===De?d.apply(a):d))+'">\n<img data-role="user-avatar" data-user="'+Be((d=a&&a.user,d=null==d||d===!1?d:d.id,typeof d===De?d.apply(a):d))+'" data-src="'+Be((d=a&&a.user,d=null==d||d===!1?d:d.avatar,d=null==d||d===!1?d:d.cache,typeof d===De?d.apply(a):d))+'" alt="'+Be(c.gettext.call(a,"Avatar",{hash:{},data:b}))+'"/>\n</a>\n'}function Sd(a,b){var d,e="";return e+='\n<div class="user">\n<img data-src="'+Be((d=a&&a.user,d=null==d||d===!1?d:d.avatar,d=null==d||d===!1?d:d.cache,typeof d===De?d.apply(a):d))+'" class="user" alt="'+Be(c.gettext.call(a,"Avatar",{hash:{},data:b}))+'"/>\n</div>\n'}function Td(a,b){var d,e="";return e+='\n<a href="'+Be((d=a&&a.user,d=null==d||d===!1?d:d.profileUrl,typeof d===De?d.apply(a):d))+'" data-action="profile" data-user="'+Be((d=a&&a.user,d=null==d||d===!1?d:d.id,typeof d===De?d.apply(a):d))+'" data-username="'+Be((d=a&&a.user,d=null==d||d===!1?d:d.username,typeof d===De?d.apply(a):d))+'" data-role="username">\n'+Be(c.any.call(a,(d=a&&a.user,null==d||d===!1?d:d.name),(d=a&&a.user,null==d||d===!1?d:d.username),{hash:{},data:b}))+"</a>\n"}function Ud(a,b){var d,e="";return e+="\n"+Be(c.any.call(a,(d=a&&a.author,null==d||d===!1?d:d.name),(d=a&&a.author,null==d||d===!1?d:d.username),{hash:{},data:b}))+"\n"}function Vd(a,b){var d,e="";return e+='\n<li data-role="thread-'+Be((d=a&&a.id,typeof d===De?d.apply(a):d))+'">\n\n\n\n<h4><span class="publisher-anchor-color"><a class="outbound-link" target="_blank" href="'+Be((d=a&&a.url,typeof d===De?d.apply(a):d))+'">'+Be(c.html.call(a,a&&a.title,{hash:{},data:b}))+'<i aria-hidden="true" class="icon-expand"></i></a></span></h4>\n\n<ul class="meta">\n<li class="likes">\n<a href="'+Be((d=a&&a.url,typeof d===De?d.apply(a):d))+'">\n<span class="icon-star"></span>\n'+Be(c.gettext.call(a,"%(numLikes)s starred this",{hash:{numLikes:a&&a.numLikes},data:b}))+"\n</a>\n</li>\n\n",d=c["if"].call(a,c.gt.call(a,a&&a.numPosts,0,{hash:{},data:b}),{hash:{},inverse:Ce.noop,fn:Ce.program(352,Wd,b),data:b}),(d||0===d)&&(e+=d),e+='\n\n<li class="bullet">•</li>\n\n<li class="time">'+Be((d=a&&a.timeAgo,typeof d===De?d.apply(a):d))+'</li>\n</ul>\n\n<div class="top-thread-post" data-role="top-thread-post">\n\n</div>\n</li>\n'}function Wd(a,b){var d,e="";return e+='\n<li class="bullet">•</li>\n\n<li class="comments">\n<a href="'+Be((d=a&&a.url,typeof d===De?d.apply(a):d))+'">\n',d=c["if"].call(a,c.eq.call(a,a&&a.numPosts,1,{hash:{},data:b}),{hash:{},inverse:Ce.program(353,Xd,b),fn:Ce.program(43,F,b),data:b}),(d||0===d)&&(e+=d),e+="\n</a>\n</li>\n"}function Xd(a,b){var d="";return d+="\n"+Be(c.gettext.call(a,"%(numPosts)s comments",{hash:{numPosts:a&&a.numPosts},data:b}))+"\n"}function Yd(a,b){var d,e="";return e+='\n<div class="tooltip upvoters ',d=c.unless.call(a,(d=a&&a.users,null==d||d===!1?d:d.length),{hash:{},inverse:Ce.noop,fn:Ce.program(356,Zd,b),data:b}),(d||0===d)&&(e+=d),e+='">\n<ul class="scroll-measure" data-role="content">\n',d=c["if"].call(a,(d=a&&a.users,null==d||d===!1?d:d.length),{hash:{},inverse:Ce.program(361,ae,b),fn:Ce.program(358,$d,b),data:b}),(d||0===d)&&(e+=d),e+="\n\n",d=c["if"].call(a,a&&a.guestCount,{hash:{},inverse:Ce.noop,fn:Ce.program(364,ce,b),data:b}),(d||0===d)&&(e+=d),e+='\n</ul>\n</div>\n<div class="tooltip-point hidden"></div>\n'}function Zd(){return"guests-only"}function $d(a,b){var d,e="";return e+="\n",d=c.each.call(a,a&&a.users,{hash:{},inverse:Ce.noop,fn:Ce.program(359,_d,b),data:b}),(d||0===d)&&(e+=d),e+="\n"}function _d(a,b){var e,f="";return f+="\n",e=Ce.invokePartial(d.upvoter,"upvoter",a,c,d,b),(e||0===e)&&(f+=e),f+="\n"}function ae(a,b){var d,e="";return e+="\n",d=c["if"].call(a,a&&a.isLoading,{hash:{},inverse:Ce.noop,fn:Ce.program(362,be,b),data:b}),(d||0===d)&&(e+=d),e+="\n"}function be(){return'\n<li class="loading"></li>\n'}function ce(a,b){var e,f="";return f+="\n",e=Ce.invokePartial(d.guestUpvoter,"guestUpvoter",a,c,d,b),(e||0===e)&&(f+=e),f+="\n"}function de(a,b){var d,e="";return e+='\n<li class="user ',d=c["if"].call(a,a&&a.highlight,{hash:{},inverse:Ce.noop,fn:Ce.program(265,$c,b),data:b}),(d||0===d)&&(e+=d),e+='" data-action="profile" data-user="'+Be((d=a&&a.id,typeof d===De?d.apply(a):d))+'" data-username="'+Be((d=a&&a.username,typeof d===De?d.apply(a):d))+'">\n\n<a class="avatar" href="#" title="'+Be((d=a&&a.name,typeof d===De?d.apply(a):d))+'">\n<img src="'+Be((d=a&&a.avatar,d=null==d||d===!1?d:d.cache,typeof d===De?d.apply(a):d))+'" alt="'+Be(c.gettext.call(a,"Avatar",{hash:{},data:b}))+'" />\n</a>\n<a class="username" href="#" title="'+Be((d=a&&a.name,typeof d===De?d.apply(a):d))+'">\n'+Be((d=a&&a.name,typeof d===De?d.apply(a):d))+"\n</a>\n</li>\n"}function ee(a,b){var d,e="";return e+="\n",d=c["if"].call(a,a&&a.guestCount,{hash:{},inverse:Ce.noop,fn:Ce.program(369,fe,b),data:b}),(d||0===d)&&(e+=d),e+="\n"}function fe(a,b){var e,f="";return f+='\n<li class="user ',e=c["if"].call(a,a&&a.highlight,{hash:{},inverse:Ce.noop,fn:Ce.program(265,$c,b),data:b}),(e||0===e)&&(f+=e),f+='" data-role="guest">\n<span class="avatar" title="',e=Ce.invokePartial(d.guestUpvoterText,"guestUpvoterText",a,c,d,b),(e||0===e)&&(f+=e),f+='">\n<img src="'+Be((e=a&&a.guestAvatarUrl,typeof e===De?e.apply(a):e))+'" alt="'+Be(c.gettext.call(a,"Avatar",{hash:{},data:b}))+'" />\n</span>\n<span class="username" title="',e=Ce.invokePartial(d.guestUpvoterText,"guestUpvoterText",a,c,d,b),(e||0===e)&&(f+=e),f+='">\n',e=Ce.invokePartial(d.guestUpvoterText,"guestUpvoterText",a,c,d,b),(e||0===e)&&(f+=e),f+="\n</span>\n</li>\n"}function ge(a,b){var d,e="";return e+="\n",d=c["if"].call(a,c.gt.call(a,a&&a.guestCount,1,{hash:{},data:b}),{hash:{},inverse:Ce.program(374,ie,b),fn:Ce.program(372,he,b),data:b}),(d||0===d)&&(e+=d),e+="\n"}function he(a,b){var d="";return d+=" "+Be(c.gettext.call(a,"%(guestCount)s Guest Votes",{hash:{guestCount:a&&a.guestCount},data:b}))+" "}function ie(a,b){var d="";return d+=" "+Be(c.gettext.call(a,"1 Guest Vote",{hash:{},data:b}))+" "}function je(a,b){var d,e="";return e+="\n",d=c["if"].call(a,(d=a&&a.user,d=null==d||d===!1?d:d.thread,null==d||d===!1?d:d.canReply),{hash:{},inverse:Ce.noop,fn:Ce.program(377,ke,b),data:b}),(d||0===d)&&(e+=d),e+='\n<ul class="dropdown-menu">\n',d=c["if"].call(a,(d=a&&a.user,null==d||d===!1?d:d.isRegistered),{hash:{},inverse:Ce.program(385,pe,b),fn:Ce.program(382,ne,b),data:b}),(d||0===d)&&(e+=d),e+="\n\n",d=c["if"].call(a,(d=a&&a.user,d=null==d||d===!1?d:d.thread,null==d||d===!1?d:d.canModerate),{hash:{},inverse:Ce.noop,fn:Ce.program(388,re,b),data:b}),(d||0===d)&&(e+=d),e+="\n\n",d=c["if"].call(a,(d=a&&a.user,null==d||d===!1?d:d.isGlobalAdmin),{hash:{},inverse:Ce.noop,fn:Ce.program(399,xe,b),data:b}),(d||0===d)&&(e+=d),e+="\n\n",d=c.if_all.call(a,(d=a&&a.user,null==d||d===!1?d:d.isRegistered),(d=a&&a.user,d=null==d||d===!1?d:d.thread,null==d||d===!1?d:d.canReply),{hash:{},inverse:Ce.noop,fn:Ce.program(401,ye,b),data:b}),(d||0===d)&&(e+=d),e+="\n</ul>\n"}function ke(a,b){var d,e="";return e+='\n\n<a href="#" class="dropdown-toggle" data-toggle="dropdown">\n<span class="dropdown-toggle-wrapper">\n\n',d=c["if"].call(a,(d=a&&a.user,null==d||d===!1?d:d.isRegistered),{hash:{},inverse:Ce.program(380,me,b),fn:Ce.program(378,le,b),data:b}),(d||0===d)&&(e+=d),e+='\n\n</span> <span class="caret"></span>\n</a>\n'}function le(a,b){var d,e="";return e+='\n<span class="avatar">\n<img data-role="user-avatar" data-user="'+Be((d=a&&a.user,d=null==d||d===!1?d:d.id,typeof d===De?d.apply(a):d))+'" data-src="'+Be((d=a&&a.user,d=null==d||d===!1?d:d.avatar,d=null==d||d===!1?d:d.cache,typeof d===De?d.apply(a):d))+'" alt="'+Be(c.gettext.call(a,"Avatar",{hash:{},data:b}))+'">\n</span>\n<span class="username" data-role="username" data-user="'+Be((d=a&&a.user,d=null==d||d===!1?d:d.id,typeof d===De?d.apply(a):d))+'">\n'+Be(c.any.call(a,(d=a&&a.user,null==d||d===!1?d:d.name),(d=a&&a.user,null==d||d===!1?d:d.username),{hash:{},data:b}))+"\n</span>\n"}function me(a,b){var d="";return d+="\n<span>\n"+Be(c.gettext.call(a,"Login",{hash:{},data:b}))+"\n</span>\n"}function ne(a,b){var d,e="";return e+='\n<li>\n<a href="'+Be((d=a&&a.user,d=null==d||d===!1?d:d.profileUrl,typeof d===De?d.apply(a):d))+'" data-role="user-profile-link" data-action="profile" data-user="'+Be((d=a&&a.user,d=null==d||d===!1?d:d.id,typeof d===De?d.apply(a):d))+'" data-username="'+Be((d=a&&a.user,d=null==d||d===!1?d:d.username,typeof d===De?d.apply(a):d))+'">\n'+Be(c.gettext.call(a,"Your Profile",{hash:{},data:b}))+'\n</a>\n</li>\n<li>\n<a href="#" class="media-toggle-on" data-action="toggle-media">'+Be(c.gettext.call(a,"Display Media",{hash:{},data:b}))+'</a>\n<a href="#" class="media-toggle-off" data-action="toggle-media">'+Be(c.gettext.call(a,"Hide Media",{hash:{},data:b}))+"</a>\n</li>\n",d=c.unless.call(a,(d=a&&a.user,null==d||d===!1?d:d.remote),{hash:{},inverse:Ce.noop,fn:Ce.program(383,oe,b),data:b}),(d||0===d)&&(e+=d),e+="\n"}function oe(a,b){var d="";return d+='\n\n<li>\n<a href="'+Be(c.urlfor.call(a,"editProfile",{hash:{},data:b}))+'">'+Be(c.gettext.call(a,"Edit Settings",{hash:{},data:b}))+"</a>\n</li>\n"}function pe(a,b){var d,e="";return e+="\n\n",d=c["if"].call(a,(d=a&&a.sso,null==d||d===!1?d:d.url),{hash:{},inverse:Ce.noop,fn:Ce.program(386,qe,b),data:b}),(d||0===d)&&(e+=d),e+='\n\n<li>\n<a href="#" data-action="auth:disqus">Disqus</a>\n</li>\n<li>\n<a href="#" data-action="auth:facebook">Facebook</a>\n</li>\n<li>\n<a href="#" data-action="auth:twitter">Twitter</a>\n</li>\n<li>\n<a href="#" data-action="auth:google">Google</a>\n</li>\n'
}function qe(a){var b,c="";return c+='\n<li class="sso">\n<a href="#" data-action="auth:sso">'+Be((b=a&&a.sso,b=null==b||b===!1?b:b.name,typeof b===De?b.apply(a):b))+"</a>\n</li>\n"}function re(a,b){var d,e="";return e+='\n<li data-role="toggle-thread">\n<a href="#" data-action="',d=c["if"].call(a,(d=a&&a.thread,null==d||d===!1?d:d.isClosed),{hash:{},inverse:Ce.program(391,te,b),fn:Ce.program(389,se,b),data:b}),(d||0===d)&&(e+=d),e+='-thread">\n',d=c["if"].call(a,(d=a&&a.thread,null==d||d===!1?d:d.isClosed),{hash:{},inverse:Ce.program(395,ve,b),fn:Ce.program(393,ue,b),data:b}),(d||0===d)&&(e+=d),e+="\n</a>\n</li>\n\n",d=c.unless.call(a,(d=a&&a.user,null==d||d===!1?d:d.isGlobalAdmin),{hash:{},inverse:Ce.noop,fn:Ce.program(397,we,b),data:b}),(d||0===d)&&(e+=d),e+="\n\n"}function se(){return"open"}function te(){return"close"}function ue(a,b){var d="";return d+="\n"+Be(c.gettext.call(a,"Open Thread",{hash:{},data:b}))+"\n"}function ve(a,b){var d="";return d+="\n"+Be(c.gettext.call(a,"Close Thread",{hash:{},data:b}))+"\n"}function we(a,b){var d="";return d+='\n<li>\n<a href="http://docs.disqus.com/kb/2012/">'+Be(c.gettext.call(a,"Help",{hash:{},data:b}))+"</a>\n</li>\n"}function xe(a,b){var d="";return d+='\n<li>\n<a href="#" data-action="debug">'+Be(c.gettext.call(a,"Debug",{hash:{},data:b}))+'</a>\n</li>\n\n<li>\n<a href="#" data-action="repair">'+Be(c.gettext.call(a,"Repair",{hash:{},data:b}))+"</a>\n</li>\n"}function ye(a,b){var d,e="";return e+='\n<li>\n<a href="'+Be((d=a&&a.user,d=null==d||d===!1?d:d.logoutUrl,typeof d===De?d.apply(a):d))+'" data-action="logout">'+Be(c.gettext.call(a,"Logout",{hash:{},data:b}))+"</a>\n</li>\n"}this.compilerInfo=[4,">= 1.0.0"],c=this.merge(c,a.helpers),d=this.merge(d,a.partials),e=e||{};var ze,Ae="",Be=this.escapeExpression,Ce=this,De="function";return ze=c.partial.call(b,"followButton",{hash:{},inverse:Ce.noop,fn:Ce.program(1,f,e),data:e}),(ze||0===ze)&&(Ae+=ze),Ae+="\n\n",ze=c.partial.call(b,"alert",{hash:{},inverse:Ce.noop,fn:Ce.program(11,m,e),data:e}),(ze||0===ze)&&(Ae+=ze),Ae+="\n\n",ze=c.partial.call(b,"blacklist",{hash:{},inverse:Ce.noop,fn:Ce.program(18,q,e),data:e}),(ze||0===ze)&&(Ae+=ze),Ae+="\n\n",ze=c.partial.call(b,"blacklistErrorMessage",{hash:{},inverse:Ce.noop,fn:Ce.program(21,s,e),data:e}),(ze||0===ze)&&(Ae+=ze),Ae+="\n\n",ze=c.partial.call(b,"bubbleLayout",{hash:{},inverse:Ce.noop,fn:Ce.program(23,t,e),data:e}),(ze||0===ze)&&(Ae+=ze),Ae+="\n\n",ze=c.partial.call(b,"bubbleMessage",{hash:{},inverse:Ce.noop,fn:Ce.program(25,u,e),data:e}),(ze||0===ze)&&(Ae+=ze),Ae+="\n\n\n",ze=c.partial.call(b,"userName",{hash:{},inverse:Ce.noop,fn:Ce.program(35,A,e),data:e}),(ze||0===ze)&&(Ae+=ze),Ae+="\n\n",ze=c.partial.call(b,"topThreadLink",{hash:{},inverse:Ce.noop,fn:Ce.program(37,B,e),data:e}),(ze||0===ze)&&(Ae+=ze),Ae+="\n\n\n\n",ze=c.partial.call(b,"communityForum",{hash:{},inverse:Ce.noop,fn:Ce.program(49,I,e),data:e}),(ze||0===ze)&&(Ae+=ze),Ae+="\n\n",ze=c.partial.call(b,"community",{hash:{},inverse:Ce.noop,fn:Ce.program(51,J,e),data:e}),(ze||0===ze)&&(Ae+=ze),Ae+="\n\n",ze=c.partial.call(b,"contextCard",{hash:{},inverse:Ce.noop,fn:Ce.program(53,K,e),data:e}),(ze||0===ze)&&(Ae+=ze),Ae+="\n\n",ze=c.partial.call(b,"edit",{hash:{},inverse:Ce.noop,fn:Ce.program(64,Q,e),data:e}),(ze||0===ze)&&(Ae+=ze),Ae+="\n\n",ze=c.partial.call(b,"followButtonSmall",{hash:{},inverse:Ce.noop,fn:Ce.program(66,R,e),data:e}),(ze||0===ze)&&(Ae+=ze),Ae+="\n\n",ze=c.partial.call(b,"formUser",{hash:{},inverse:Ce.noop,fn:Ce.program(79,$,e),data:e}),(ze||0===ze)&&(Ae+=ze),Ae+="\n\n",ze=c.partial.call(b,"form",{hash:{},inverse:Ce.noop,fn:Ce.program(81,_,e),data:e}),(ze||0===ze)&&(Ae+=ze),Ae+="\n\n",ze=c.partial.call(b,"loginForm",{hash:{},inverse:Ce.noop,fn:Ce.program(97,jb,e),data:e}),(ze||0===ze)&&(Ae+=ze),Ae+="\n\n",ze=c.partial.call(b,"loginButtons",{hash:{},inverse:Ce.noop,fn:Ce.program(102,mb,e),data:e}),(ze||0===ze)&&(Ae+=ze),Ae+="\n\n",ze=c.partial.call(b,"guestForm",{hash:{},inverse:Ce.noop,fn:Ce.program(112,sb,e),data:e}),(ze||0===ze)&&(Ae+=ze),Ae+="\n\n",ze=c.partial.call(b,"audienceSync",{hash:{},inverse:Ce.noop,fn:Ce.program(127,Ab,e),data:e}),(ze||0===ze)&&(Ae+=ze),Ae+="\n\n",ze=c.partial.call(b,"mediaUpload",{hash:{},inverse:Ce.noop,fn:Ce.program(129,Bb,e),data:e}),(ze||0===ze)&&(Ae+=ze),Ae+="\n\n",ze=c.partial.call(b,"legacyMediaUpload",{hash:{},inverse:Ce.noop,fn:Ce.program(134,Eb,e),data:e}),(ze||0===ze)&&(Ae+=ze),Ae+="\n\n",ze=c.partial.call(b,"highlightedPost",{hash:{},inverse:Ce.noop,fn:Ce.program(136,Fb,e),data:e}),(ze||0===ze)&&(Ae+=ze),Ae+="\n\n",ze=c.partial.call(b,"homeNotifications",{hash:{},inverse:Ce.noop,fn:Ce.program(138,Gb,e),data:e}),(ze||0===ze)&&(Ae+=ze),Ae+="\n\n",ze=c.partial.call(b,"hovercard",{hash:{},inverse:Ce.noop,fn:Ce.program(140,Hb,e),data:e}),(ze||0===ze)&&(Ae+=ze),Ae+="\n\n",ze=c.partial.call(b,"hovercardCounters",{hash:{},inverse:Ce.noop,fn:Ce.program(147,Lb,e),data:e}),(ze||0===ze)&&(Ae+=ze),Ae+="\n\n",ze=c.partial.call(b,"hovercardActions",{hash:{},inverse:Ce.noop,fn:Ce.program(154,Pb,e),data:e}),(ze||0===ze)&&(Ae+=ze),Ae+="\n\n\n\n",ze=c.partial.call(b,"layout",{hash:{},inverse:Ce.noop,fn:Ce.program(157,Rb,e),data:e}),(ze||0===ze)&&(Ae+=ze),Ae+="\n\n",ze=c.partial.call(b,"postSort",{hash:{},inverse:Ce.noop,fn:Ce.program(159,Sb,e),data:e}),(ze||0===ze)&&(Ae+=ze),Ae+="\n\n",ze=c.partial.call(b,"postCount",{hash:{},inverse:Ce.noop,fn:Ce.program(168,Xb,e),data:e}),(ze||0===ze)&&(Ae+=ze),Ae+="\n\n",ze=c.partial.call(b,"topNavigation",{hash:{},inverse:Ce.noop,fn:Ce.program(171,Zb,e),data:e}),(ze||0===ze)&&(Ae+=ze),Ae+="\n\n",ze=c.partial.call(b,"threadVotes",{hash:{},inverse:Ce.noop,fn:Ce.program(177,bc,e),data:e}),(ze||0===ze)&&(Ae+=ze),Ae+="\n\n",ze=c.partial.call(b,"secondaryNavigation",{hash:{},inverse:Ce.noop,fn:Ce.program(179,cc,e),data:e}),(ze||0===ze)&&(Ae+=ze),Ae+="\n\n",ze=c.partial.call(b,"notificationMenu",{hash:{},inverse:Ce.noop,fn:Ce.program(181,dc,e),data:e}),(ze||0===ze)&&(Ae+=ze),Ae+="\n\n",ze=c.partial.call(b,"notificationsLoggedOut",{hash:{},inverse:Ce.noop,fn:Ce.program(186,gc,e),data:e}),(ze||0===ze)&&(Ae+=ze),Ae+="\n\n",ze=c.partial.call(b,"onboard",{hash:{},inverse:Ce.noop,fn:Ce.program(188,hc,e),data:e}),(ze||0===ze)&&(Ae+=ze),Ae+="\n\n",ze=c.partial.call(b,"post",{hash:{},inverse:Ce.noop,fn:Ce.program(190,ic,e),data:e}),(ze||0===ze)&&(Ae+=ze),Ae+="\n\n",ze=c.partial.call(b,"postWrapperTop",{hash:{},inverse:Ce.noop,fn:Ce.program(213,vc,e),data:e}),(ze||0===ze)&&(Ae+=ze),Ae+="\n\n",ze=c.partial.call(b,"postWrapperBottom",{hash:{},inverse:Ce.noop,fn:Ce.program(220,zc,e),data:e}),(ze||0===ze)&&(Ae+=ze),Ae+="\n\n",ze=c.partial.call(b,"postMedia",{hash:{},inverse:Ce.noop,fn:Ce.program(222,Ac,e),data:e}),(ze||0===ze)&&(Ae+=ze),Ae+="\n\n",ze=c.partial.call(b,"sponsoredCommentMedia",{hash:{},inverse:Ce.noop,fn:Ce.program(228,Ec,e),data:e}),(ze||0===ze)&&(Ae+=ze),Ae+="\n\n",ze=c.partial.call(b,"unknownMediaIframe",{hash:{},inverse:Ce.noop,fn:Ce.program(230,Fc,e),data:e}),(ze||0===ze)&&(Ae+=ze),Ae+="\n\n",ze=c.partial.call(b,"postMediaPlaceholder",{hash:{},inverse:Ce.noop,fn:Ce.program(232,Gc,e),data:e}),(ze||0===ze)&&(Ae+=ze),Ae+="\n\n",ze=c.partial.call(b,"postMediaImage",{hash:{},inverse:Ce.noop,fn:Ce.program(234,Hc,e),data:e}),(ze||0===ze)&&(Ae+=ze),Ae+="\n\n",ze=c.partial.call(b,"postMediaInlineLink",{hash:{},inverse:Ce.noop,fn:Ce.program(237,Jc,e),data:e}),(ze||0===ze)&&(Ae+=ze),Ae+="\n\n",ze=c.partial.call(b,"postMediaTwitterContent",{hash:{},inverse:Ce.noop,fn:Ce.program(245,Oc,e),data:e}),(ze||0===ze)&&(Ae+=ze),Ae+="\n\n",ze=c.partial.call(b,"postVotes",{hash:{},inverse:Ce.noop,fn:Ce.program(247,Pc,e),data:e}),(ze||0===ze)&&(Ae+=ze),Ae+="\n\n",ze=c.partial.call(b,"postMenu",{hash:{},inverse:Ce.noop,fn:Ce.program(258,Vc,e),data:e}),(ze||0===ze)&&(Ae+=ze),Ae+="\n\n",ze=c.partial.call(b,"postFooter",{hash:{},inverse:Ce.noop,fn:Ce.program(276,ed,e),data:e}),(ze||0===ze)&&(Ae+=ze),Ae+="\n\n",ze=c.partial.call(b,"postUserAvatar",{hash:{},inverse:Ce.noop,fn:Ce.program(289,ld,e),data:e}),(ze||0===ze)&&(Ae+=ze),Ae+="\n\n",ze=c.partial.call(b,"highlightedSuccessMessage",{hash:{},inverse:Ce.noop,fn:Ce.program(294,od,e),data:e}),(ze||0===ze)&&(Ae+=ze),Ae+="\n\n",ze=c.partial.call(b,"postDeleted",{hash:{},inverse:Ce.noop,fn:Ce.program(296,pd,e),data:e}),(ze||0===ze)&&(Ae+=ze),Ae+="\n\n",ze=c.partial.call(b,"postMinimized",{hash:{},inverse:Ce.noop,fn:Ce.program(298,qd,e),data:e}),(ze||0===ze)&&(Ae+=ze),Ae+="\n\n",ze=c.partial.call(b,"realtimeCommentNotification",{hash:{},inverse:Ce.noop,fn:Ce.program(306,vd,e),data:e}),(ze||0===ze)&&(Ae+=ze),Ae+="\n\n",ze=c.partial.call(b,"realtimeReplyNotification",{hash:{},inverse:Ce.noop,fn:Ce.program(311,yd,e),data:e}),(ze||0===ze)&&(Ae+=ze),Ae+="\n\n",ze=c.partial.call(b,"realtimeIndicator",{hash:{},inverse:Ce.noop,fn:Ce.program(316,Bd,e),data:e}),(ze||0===ze)&&(Ae+=ze),Ae+="\n\n",ze=c.partial.call(b,"realtimeIndicatorText",{hash:{},inverse:Ce.noop,fn:Ce.program(318,Cd,e),data:e}),(ze||0===ze)&&(Ae+=ze),Ae+="\n\n",ze=c.partial.call(b,"suggestions",{hash:{},inverse:Ce.noop,fn:Ce.program(329,Jd,e),data:e}),(ze||0===ze)&&(Ae+=ze),Ae+="\n\n",ze=c.partial.call(b,"suggestedUser",{hash:{},inverse:Ce.noop,fn:Ce.program(331,Kd,e),data:e}),(ze||0===ze)&&(Ae+=ze),Ae+="\n\n\n\n",ze=c.partial.call(b,"topThreadPost",{hash:{},inverse:Ce.noop,fn:Ce.program(333,Ld,e),data:e}),(ze||0===ze)&&(Ae+=ze),Ae+="\n\n\n\n",ze=c.partial.call(b,"topUser",{hash:{},inverse:Ce.noop,fn:Ce.program(342,Qd,e),data:e}),(ze||0===ze)&&(Ae+=ze),Ae+="\n\n\n\n",ze=c.partial.call(b,"topThread",{hash:{},inverse:Ce.noop,fn:Ce.program(351,Vd,e),data:e}),(ze||0===ze)&&(Ae+=ze),Ae+="\n\n",ze=c.partial.call(b,"upvoters",{hash:{},inverse:Ce.noop,fn:Ce.program(355,Yd,e),data:e}),(ze||0===ze)&&(Ae+=ze),Ae+="\n\n",ze=c.partial.call(b,"upvoter",{hash:{},inverse:Ce.noop,fn:Ce.program(366,de,e),data:e}),(ze||0===ze)&&(Ae+=ze),Ae+="\n\n",ze=c.partial.call(b,"guestUpvoter",{hash:{},inverse:Ce.noop,fn:Ce.program(368,ee,e),data:e}),(ze||0===ze)&&(Ae+=ze),Ae+="\n\n",ze=c.partial.call(b,"guestUpvoterText",{hash:{},inverse:Ce.noop,fn:Ce.program(371,ge,e),data:e}),(ze||0===ze)&&(Ae+=ze),Ae+="\n\n",ze=c.partial.call(b,"userMenu",{hash:{},inverse:Ce.noop,fn:Ce.program(376,je,e),data:e}),(ze||0===ze)&&(Ae+=ze),Ae+="\n"})}),define("lounge/views",["jquery","underscore","backbone","moment","modernizr","core/api","remote/config","common/defines","core/analytics/experiment","common/models","common/collections","common/utils","common/bus","core/bus","core/strings","common/urls","core/analytics/jester","common/views/mixins","common/Session","common/templates","common/keys","common/switches","core/time","common/outboundlinkhandler","shared/common/corefuncs","shared/common/logger","shared/common/urls","lounge/common","lounge/menu-handler","lounge/mixins","lounge/realtime","lounge/views/posts","lounge/views/posts/collection","lounge/views/community","lounge/views/media","lounge/views/onboard-alert","lounge/views/notification-menu","lounge/views/highlighted-post","lounge/views/realtime","lounge/views/posts/UserSuggestionsManager","lounge/views/viglink","lounge/views/sidebar","lounge/tracking","lounge/notifications/NotificationsLayout","templates/lounge","initializer"],function(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T){"use strict";function U(a){var b={};if(!a)return b;var c=a.match(/discovery\-([\w\-]+)/);return b.discoveryOverride=c&&c[1],c=a.match(/\bsponsored-comment-ad-id=(\d+)/),b.sponsoredCommentAdId=c&&c[1],c=a.match(/\brequest-bin=([\w:-]+)/),b.discoveryRequestBin=c&&c[1],b}var V=o.get,W=l.preventDefaultHandler,X=c.View.extend({events:{"click [data-action^=auth\\:]":"handleAuth","click [data-action=verify-email]":"verifyEmail","click [data-action=audiencesync]":"audienceSync","click [data-action=profile]":"handleShowProfile","click [data-action=onboard]":"handleShowOnboarding","click [data-action=sort]":"handleSort","click [data-action=close-thread]":"closeThread","click [data-action=open-thread]":"openThread","click [data-action=debug]":"renderDebugInfo","click [data-action=repair]":"repairThread","click [data-action=toggle-media]":"toggleMedia","click a":"handleLinkClick"},MEDIA_PERSISTED_WIDTHS:[320,480,600,800],MAX_MEDIA_HEIGHT:480,initialize:function(c){B.setLounge(this),c=c||{};var d=c.jsonData||{};this.language=document.documentElement.lang,this.initialData=d.response||{},this.cleanInitialData(this.initialData),this.profileWindowName=l.globalUniqueId("disqus_"),l.extract(d,"response.forum.id")&&(p.moderate=l.updateURL(p.moderate,{hostname:d.response.forum.id+"."})),this.deferredViews=[],this.unsortedDeferredViews=[],s.setDefaults(this.initialData.session),this.session=s.get(),this.forum=new j.Forum,this.forum.set(this.initialData.forum),this.thread=new j.Thread(this.initialData.thread,{forum:this.forum,postCursor:d.cursor,moderators:(this.initialData.thread||{}).moderators,order:d.order}),this.initUserSuggestionsManager(),this.postsView=new G.PostCollectionView({posts:this.thread.posts,thread:this.thread,lounge:this,session:this.session,el:this.el,userSuggestions:this.userSuggestions}),this.switches=new k.SwitchCollection(g.switches,{parse:!0}),this.states={realtimeIndicatorsCreated:!1,streamingPaused:!1,discoveryLoaded:!1,inViewport:!1},T.timings.loungeStart=a.now();var e=b.bind(this.bootstrap,this);l.isIframed(window)?this.listenTo(m,"init",e):b.defer(e),this.setAlertSelector("#layout"),this.initResizeHandler(),this.initAlertListeners()},cleanInitialData:function(a){var c=a.thread&&a.thread.highlightedPost;c&&(c.isHighlighted=!0),b.each(a.posts,function(a){a.isHighlighted=c?a.id===c.id:!1})},initAlertListeners:function(){this.listenTo(this.session,"change:isReadOnly",function(){this.session.get("isReadOnly")&&this.trigger("alert",o.gettext("The Disqus comment system is temporarily in maintenance mode. You can still read comments during this time, however posting comments and other actions are temporarily delayed."))}),this.listenTo(this.session,"alert",this.alert)},initOnboardAlert:function(){var a=this.onboardAlert=new J.OnboardAlert({session:this.session});this.proxyViewEvents(this.onboardAlert),this.listenTo(this.session,"change:id",function(){a.setInitialCookie(),a.render().$el.appendTo("#onboard")}),this.listenTo(m,{"onboard.complete":b.bind(a.remove,a),"onboardAlert.show":function(){a.render().$el.appendTo("#onboard")}}),this.listenToOnce(this,"uiCallback:postCreated",function(){if(a.shouldPopup()){a.setPopupCookie();var b=this.session.user.isEditable(this.session)?"complete-profile":"follow";this.showOnboarding(b)}}),this.listenTo(m,"onboard.profileUpdated",this.updateSessionUser)},updateSessionUser:function(){this.updateUserFromSession()||this.session.user.fetch({reset:!0})},updateUserFromSession:function(){var a=this.session.user,b=e.sessionstorage&&sessionStorage.getItem("onboard.profileUpdated");if(!b)return!1;try{var c=JSON.parse(b);a.set(c)}catch(d){return!1}finally{sessionStorage.removeItem("onboard.profileUpdated")}return!0},bootstrap:function(d){var e=this,g={};e.config=d=d||l.getConfigFromHash(window),e.hashConfig=new c.Model(U(d.parentWindowHash)),e.listenTo(this.hashConfig,"change:discoveryOverride change:sponsoredCommentAdId",b.bind(e.session.fetch,e.session)),d.discovery||(d.discovery={}),d.apiKey&&(g["X-Disqus-Publisher-API-Key"]=d.apiKey),d.remoteAuthS3&&(g["X-Disqus-Remote-Auth"]=d.remoteAuthS3),b.isEmpty(g)||f.headers(g),e.isForceHttpsAPIEnabled()&&f.defaults({secure:!0}),d.anchorColor&&!function(){var a=l.escapeColor(d.anchorColor);l.addStylesheetRules([[".publisher-anchor-color a",["color",a,!0]],["a.publisher-anchor-color",["color",a,!0]],[".publisher-anchor-hover a:hover",["color",a,!0]],["a.publisher-anchor-hover:hover",["color",a,!0]],[".active .publisher-nav-color:after",["background",a,!0]],[".media-preview .active.publisher-border-color",["border-color",a,!0]],[".publisher-color",["color",a,!1]],[".publisher-color:hover",["color",a,!1]],[".publisher-background-color",["background-color",a,!1]],[".publisher-border-color",["border-color",a,!1]]])}(),e.isMobile=l.isPhone(window),l.injectBaseElement(),d.referrer&&(e.thread.currentUrl=d.referrer),d.width&&(document.body.style.width=d.width+"px");var h=this.getPermalinkOptions(d.parentWindowHash);h&&m.once("embed.rendered",b.bind(e.scrollToPost,e,h.postId,h.options)),d.sso&&e.session.set("sso",d.sso),e.position=d.initialPosition?d.initialPosition:l.calculatePositionFullscreen(),e.switches.enabled("experiments_disabled")&&i.disable(),e.updateModeratorText(),e.initUI(),e.bindBusListeners(),e.initHighlightedPost();var j=T.timings;j.hostStart=d.timestamp||j.initStart,e.listenToOnce(e.postsView,"render:start",function(){j.renderStart=a.now()}),e.listenToOnce(e.postsView,"render:end",e.sendTelemetry),j.bootstrapStart=a.now(),e.postsView.bootstrap(e.initialData,h),e.listenTo(e.thread,"create",function(a){m.sendHostMessage("posts.create",a.toJSON())}),e.initSession(),e.initLinkHandler(),e.initialized=!0,this.initSpoofedComment(),e.trigger("bootstrap:complete",e)},isInHome:function(){return this.config.referrer&&0===this.config.referrer.indexOf(p.home)},initSpoofedComment:function(){var a=this,c=function(){return a.session.get("canModerate")||a.session.get("canAdminister")};if(i.isActive("spoofed_comment")&&!a.spoofedCommentExperimentActive&&!c()){var d=g.lounge.spoofed_comments||{},e=b.keys(d),f=a.thread.posts.length,h=e.length;if(!f&&h){this.listenTo(this.session,"change:id",function(){c()&&a.spoofedCommentExperimentActive&&(a.postsView.posts.reset([]),q.client.unset("adjective"),a.spoofedCommentExperimentActive=!1)}),a.spoofedCommentExperimentActive=!0;var k=Math.floor(Math.random()*(e.length-1)),l=new j.Post({id:1,author:{isFollowing:!1,isFollowedBy:!0,connections:{},isPrimary:!0,id:"108890117",numFollowers:12,numPosts:7,rep:1.280524,numFollowing:40,emailHash:"acaec4eb92d82ab15a6d867de3f87127",location:"SF",isPrivate:!1,joinedAt:"2014-05-30T17:22:44",email:"HomeModelUser@disqus.com",isVerified:!1,username:"HomeModelUser",numLikesReceived:5,about:"A great person. With great interests. Yes.",name:"Model User",url:"http://disqus.com/",numForumsFollowing:36,profileUrl:"http://disqus.com/HomeModelUser/",reputation:1.280524,avatar:{small:{permalink:"http://disqus.com/api/users/avatars/HomeModelUser.jpg",cache:"//a.disquscdn.com/uploads/users/10889/117/avatar32.jpg?1401497461"},isCustom:!0,permalink:"http://disqus.com/api/users/avatars/HomeModelUser.jpg",cache:"//a.disquscdn.com/uploads/users/10889/117/avatar92.jpg?1401497461",large:{permalink:"http://disqus.com/api/users/avatars/HomeModelUser.jpg",cache:"//a.disquscdn.com/uploads/users/10889/117/avatar92.jpg?1401497461"}},isAnonymous:!1,badge:"Disqus Conversation Starter"},raw_message:d[e[k]],message:d[e[k]]});this.listenTo(l,"change:isFlaggedByUser",function(){a.spoofedCommentExperimentActive&&q.client.emit({verb:"flag-as-inappropriate",object_type:"spoofed_comment",object_id:k})}),l.canBeRepliedTo=function(){return!1},l.canBeShared=function(){return!1},q.client.set({adjective:e[k]}),b.delay(function(){a.spoofedCommentExperimentActive&&a.postsView.posts.reset([l])},300)}}},initSession:function(){var a=this.config;this.session.start({remoteAuthS3:a.remoteAuthS3,sso:a.sso,apiKey:a.apiKey,thread:this.thread}),this.listenTo(this.session,"change:id",this.loadDiscovery),this.session.shouldFetchSession()?!this.switches.enabled("next_lazy_embed")||this.states.inViewport?this.session.fetch():this.listenToOnce(this,"inViewport",b.bind(this.session.fetch,this.session)):this.session.setUser(this.session.getAnonUserInstance())},isForceHttpsAPIEnabled:function(){var a=g.lounge;return"withCredentials"in new XMLHttpRequest&&a&&(b.random(0,100)<100*a.force_https_sample_rate||a.force_https_enabled_forums&&a.force_https_enabled_forums.hasOwnProperty(this.forum.id))},sendTelemetry:function(){if(l.shouldSample(g.lounge.telemetry_sample_percent)){var c=a.now(),d=T.timings,e={frame:d.initStart-d.hostStart,asset:d.downloadEnd-d.initStart,render:c-d.renderStart,total:c-d.hostStart-(d.renderStart-d.bootstrapStart)},f=window.performance;if(f){var h=f.timing;h.responseStart&&(e.frame_rtt=h.responseStart-h.navigationStart);var i=b.find(f.getEntries&&f.getEntries()||[],function(a){return a.name.indexOf("/next/config.js")>-1});i&&i.responseStart&&(e.config_rtt=i.responseStart-i.startTime)}b.any(e,function(a){return 0>=a})||(b.each(e,function(a,b){e[b]=Math.round(a)}),(new Image).src=y.serialize(p.jester+"/telemetry/lounge.gif",e))}},initUI:function(){this.applyPublisherClasses(),S(),this.renderLayout(),this.currentZone="conversation",this.bindUIUpdateHandlers(),this.initDeferredViews(),this.postsView.once("render:end",function(){var a=l.getPageHeight();m.sendHostMessage("mainViewRendered",{height:a}),this._lastHeight=a,this.initRealtime()},this),b.defer(b.bind(this.initUIComponents,this))},initUIComponents:function(){this.findClosestThumbnailSize(),this.renderForm(),this.updatePostCount(),this.isInHome()||(this.initUserMenu(),this.initOnboardAlert(),this.initNotificationMenu()),this.initThreadVotes(),this.initThreadShareMenu(),this.initThreadSubscribe(),this.bindProfileUIListeners(this.session)},initHighlightedPost:function(){var b=this.thread.get("highlightedPost");b&&this.thread.posts.add(b),this.highlightedPostView=new L.HighlightedPostView({el:a("#highlighted-post"),thread:this.thread,session:this.session,switches:this.switches,userSuggestions:this.userSuggestions}),this.highlightedPostView.reset()},bindUIUpdateHandlers:function(){var a=this,b=a.thread,c=a.session;a.listenTo(b,{"change:likes":a.updateThreadVotes,"change:userScore":a.updateThreadUserScore,"change:posts":a.updatePostCount}),a.listenTo(b.queue,"add reset",a.toggleRealtimeNotifications),a.postsView.bindUIUpdateHandlers(),a.listenTo(c,"change:id",a.updateThreadSessionData),a.listenTo(a,"scrollOffViewport",function(){this.states.realtimeIndicatorsCreated&&"conversation"===this.currentZone&&m.sendHostMessage("indicator:hide")}),a.listenTo(a,"scroll",a.handleRealtimeScroll),a.listenTo(a,"scroll",function(a){this.position=a,"conversation"===this.currentZone&&(this.conversationPosition=a)}),a.listenTo(a.postsView,"render:end",a.toggleRealtimeNotifications)},initDeferredViews:function(){var a=this;a.listenTo(a,"scroll",a.processDeferredViews),a.listenTo(a,"domReflow",function(){this.invalidateDeferredViewOffsets(),this.processDeferredViews()}),a.listenTo(m,"window.resize",a.processDeferredViews)},bindBusListeners:function(){this.listenTo(m,{"window.hashchange":function(a){this.hashConfig.set(U(a));var b=this.getPermalinkOptions(a);b&&this.scrollToPost(b.postId,b.options)},"window.scroll":function(a){this.trigger("scroll",a)},"window.inViewport":function(){this.states.inViewport=!0,this.trigger("inViewport")},"window.scrollOffViewport":function(){this.states.inViewport=!1,this.trigger("scrollOffViewport")},"window.resize":this.resize,"indicator:click":this.handleRealtimeClick}),this.listenToOnce(this.session,"change:id",this.initSidebar)},isLinkAffiliatorEnabled:function(){return this.switches.enabled("enable_link_affiliation")&&this.forum.get("settings").linkAffiliationEnabled&&!this.isHttps()&&this.isPublisherIdValid()},isPublisherIdValid:function(){var a=this.forum.get("pk");return b.isNumber(a)},initLinkHandler:function(){this.outboundLinkHandler=new x,this.outboundLinkHandler.registerBeforeNavigationHandler(this.logLinkClick,this),this.isLinkAffiliatorEnabled()&&!this.initLinkAffiliatorCalled&&(this.viglink=new O({forumPk:this.forum.get("pk"),linkAffiliatorClient:p.linkAffiliatorClient,linkAffiliatorAPI:p.linkAffiliatorAPI,viglinkAPI:u.viglinkAPI}),this.listenTo(m,"viglink:change:timeout",function(a){this.outboundLinkHandler.timeout=a.timeout}),this.initLinkAffiliatorCalled=!0,this.outboundLinkHandler.registerBeforeNavigationHandler(this.viglink.fetchAffiliateLink,this.viglink))},handleLinkClick:function(a){this.outboundLinkHandler.handleClick(a)},initRealtimeIndicators:function(){if(!this.switches.enabled("disable_realtime_indicators")&&!this.states.realtimeIndicatorsCreated){var a={contents:t.render("realtimeIndicator",{orientation:"north"})},b={contents:t.render("realtimeIndicator",{orientation:"south"})};m.sendHostMessage("indicator:init",{north:a,south:b}),this.states.realtimeIndicatorsCreated=!0}},insertStreamingComments:b.throttle(function(){var a=this.thread.queue;a.drain(),b.each(a.counters.replies,function(b,c){a.drain(c)})},1e3),updateModeratorText:function(){var a=this.forum.get("settings");a.moderatorText&&(o.translations.Mod=a.moderatorText)},logLinkClick:function(b){var c=a(b.currentTarget);if(l.clickShouldBeLogged(b,c))return q.client.emit({verb:"click",object_type:"link",object_id:c[0].href,area:Q.getEventTrackingArea(b)})},handleRealtimeScroll:function(a){if(this.states.inViewport&&this.states.realtimeIndicatorsCreated&&"conversation"===this.currentZone){var c=b.union([this.queueView],b.values(this.postsView.subViews)),d=0,e=0;b.each(c,function(b){if(b&&!b.getDirection&&(b=b.queueView),b&&!(b.options.count<=0)){var c=b.getDirection(a);1===c?d+=b.options.count:-1===c&&(e+=b.options.count)}});var f,g;g={type:"north"},d>0?(f="indicator:show",g.content=t.render("realtimeIndicatorText",{num:d,orientation:"north"})):f="indicator:hide",m.sendHostMessage(f,g),g={type:"south"},e>0?(g.content=t.render("realtimeIndicatorText",{num:e,orientation:"south"}),f="indicator:show"):f="indicator:hide",m.sendHostMessage(f,g)}},handleRealtimeClick:function(a){var c=this;m.sendHostMessage("indicator:hide",{type:a});var d,e,f,g=b.union([c],b.toArray(c.postsView.subViews));g=b.filter(g,function(b){if(b=b.queueView,!b||b.options.count<=0)return!1;var d="north"===a?1:-1;return b.getDirection(c.position)!==d?!1:!0}),g=b.sortBy(g,function(a){return a===c?0:a.offset.top}),d="north"===a?b.last(g):b.first(g),e=d.queueView,d===c?(f=0,e.handleDrain()):(f=d.offset.top-100,e.handleDrain()),B.getLounge().once("domReflow",b.bind(m.sendHostMessage,m,"scrollTo",{top:f}))},toggleRealtimeNotifications:function(){var c=this,d=c.thread.queue;if(b.defer(function(){m.sendHostMessage("fakeScroll")}),!d.length)return void a("[data-role=realtime-notification]").hide();if(c.thread.get("hasStreaming"))return void c.insertStreamingComments();if(d.counters.comments){var e=c.queueView||new M.QueuedPostView({model:c.thread,el:c.$el.find("button[data-role=realtime-notification]")});c.queueView=e,e.setCount(d.counters.comments),e.render()}b.each(d.counters.replies,function(a,b){var d=c.thread.posts.get(b);if(d){var e=c.postsView.getPostView(d.cid);if(e){var f=e.queueView;f||(f=new M.QueuedReplyView({thread:c.thread,postView:e,model:d,el:e.$el.find("[data-role=realtime-notification\\:"+b+"] a")}),e.queueView=f),f.setCount(a),f.render()}}})},renderDebugInfo:W(function(){if(this.session.user.get("isGlobalAdmin")){for(var a=[],b=0,c=this.switches.models.length;c>b;b++)this.switches.models[b].attributes.enabled&&a.push(this.switches.models[b].id);var d=new bb({Shortname:this.thread.get("forum"),"Thread ID":this.thread.get("id"),"Thread slug":this.thread.get("slug"),"Anchor color":l.escapeColor(this.config.anchorColor),Switches:a.join(", ")});d.render();var e=document.body;e.insertBefore(d.el,e.firstChild)}}),repairThread:W(function(){this.session.user.get("isGlobalAdmin")&&f.call("internal/threads/repair.json",{method:"GET",data:{thread:this.thread.get("id")},success:b.bind(this.alert,this,"Thread repair has been queued. Refresh in a few seconds."),error:b.bind(this.alert,this,"An error occurred while repairing thread. Please try again.","error")})}),getPermalinkOptions:function(a){var b=a&&a.match(/(comment|reply|edit)\-([0-9]+)/);if(b)return{postId:b[2],options:{highlight:!0,openReply:"reply"===b[1],openEdit:"edit"===b[1]}}},scrollToPost:function(a,c){c=c||{},c.padding=c.padding||90;var d=this;"conversation"!==d.currentZone&&(c.force=!0),d.mainNav.navTo("conversation");var e=d.$el.find("#post-"+a);return e.length?(c.highlight&&(d.$el.find(".post-content.target").removeClass("target"),e.find(".post-content").first().addClass("target")),c.openReply&&d.postsView.openReply(a),c.openEdit&&d.postsView.openEdit(a),void m.sendHostMessage("scrollTo",{top:e.offset().top-c.padding,force:c.force||null})):void j.Post.fetchContext(a,d.thread,{requestedByPermalink:!0}).done(function(){m.once("embed.resized",b.bind(d.scrollToPost,d,a,c))})},updateThreadSessionData:function(a){if(a){a.get("thread")&&this.thread.set(a.get("thread"));var c=a.get("votes");c&&"object"==typeof c&&b.each(c,function(a,b){var c=this.postsView.posts.get(b);c&&c.set("userScore",a)},this)}},initSidebar:function(){this.sidebar=new P({session:this.session,forum:this.forum})},initNotificationMenu:function(){var a=this.notificationMenu=new K.NotificationMenuView({el:this.$el.find("[data-role=notification-menu]")[0],session:this.session,forum:this.forum});a.render(),this.trackDeferredView(a)},initUserMenu:function(){var a=this.userMenu=new _({el:this.$el.find("[data-role=logout]")[0],session:this.session,thread:this.thread,referrerUrl:this.config.referrer});this.listenTo(this.thread,"change:isClosed",this.render),a.render()},initThreadShareMenu:function(){this.threadShareMenu=new Y({el:a("#thread-share-menu")[0],model:this.thread})},getFeaturedPostInTrophyPosition:function(){return this.highlightedPostView?this.highlightedPostView.getPost():a.Deferred().resolve()},loadDiscovery:function(){var a=this;(!a.config.discovery.disable_all||a.forum.get("settings").discoveryLocked)&&(a.states.discoveryLoaded||(a.states.discoveryLoaded=!0,T.loadCss("rtl"!==document.documentElement.dir?"//a.disquscdn.com/next/styles/discovery.8e2fd74ff53a2886a5ac91277ee82f2f.css":"//a.disquscdn.com/next/styles/discovery_rtl.88be063ada283d5a02f5b5db36e704dc.css"),require(["discovery/main"],function(c){a.getFeaturedPostInTrophyPosition().always(b.bind(a.initDiscovery,a,c))})))},initDiscovery:function(a,b){var c=a.init(this.thread,this.hashConfig,this.config.discovery,this.switches,{containerId:"discovery",session:this.session,position:this.getPosition(),userSuggestions:this.userSuggestions,hasSpaceForSponsoredComment:!b,colorTheme:this.getColorScheme()});return c?(this.listenTo(this.thread,"change:highlightedPost",function(a,b){c.set("hasSpaceForSponsoredComment",!b)}),void this.listenTo(c,"init:bubble",this.initBubble)):void z.log("Discovery seems not enabled. Check Gargoyle switches or forum settings.")},initBubble:function(a){h.browser.mobile||(m.sendHostMessage("bubble:init",{contents:t.render("bubbleLayout",{loungeCss:"//a.disquscdn.com/next/styles/lounge.113557499d80a7364bf126f215d752cc.css"}),colorTheme:this.getColorScheme()}),this.listenTo(m,"window.scroll.always",this.bubbleOnScroll),this.listenTo(m,"bubble:click",this.handleBubbleClick),this.listenTo(m,"bubble:close",b.bind(this.closeBubble,this,!0)),this.isNotificationBubbleVisible=!1,this.notificatinoBubbleTargetPerc=a.targetPerc,this.notificationBubbleReportOptions=a.reportOptions,this.thread.posts.length||(this.topThread=new k.TopThreadCollection(null,{forum:this.forum.id,limit:1}),this.topThread.fetch()))},bubbleOnScroll:function(a){var b=a.frameOffset.top-a.pageOffset-a.height<0,c=this.notificatinoBubbleTargetPerc,e=a.frameOffset.top*c-a.pageOffset-a.height<0;if(b)return void this.closeBubble(!0);if(!e)return void(this.isNotificationBubbleVisible&&this.closeBubble());if(!this.isNotificationBubbleVisible){for(var f=[],g={},h=this.thread.posts.models,i=0;i<h.length;i++){var j=h[i];if(g[j.author.id]||this.session.user.id===j.author.id||(f.push(j.author.toJSON()),g[j.author.id]=1),5===f.length)break}var k=this.topThread&&this.topThread.length&&this.topThread.at(0).toJSON();if(k){k.timeAgo=d(k.createdAt,w.ISO_8601).fromNow(),k.forum=this.forum.toJSON();var l=this.topThread.at(0).get("link");/\#/.test(l)||(l+="#disqus_thread"),k.link=l}(f.length||k)&&(m.sendHostMessage("bubble:show",{message:t.render("bubbleMessage",{usersCount:this.thread.users.length-1,topUser:f.length&&f[0],users:f,topThread:k})}),this.reportBubbleActivity({verb:"view"},this.topThread&&this.topThread.length),this.isNotificationBubbleVisible=!0)
}},handleBubbleClick:function(){var a=this.topThread&&this.topThread.length;a||m.sendHostMessage("scrollTo",{top:0,force:!0}),this.closeBubble(!0),this.reportBubbleActivity({verb:"click"},a)},reportBubbleActivity:function(a,c){q.client.emit(b.defaults(a,this.notificationBubbleReportOptions,{object_type:"area",object_id:c?"article_bubble":"comment_bubble"}))},closeBubble:function(a){this.isNotificationBubbleVisible&&m.sendHostMessage("bubble:hide"),this.isNotificationBubbleVisible=!1,a===!0&&(this.stopListening(m,"window.scroll.always",this.showBubble),this.stopListening(m,"bubble:click"),this.stopListening(m,"bubble:close"))},isHttps:function(){return"https:"===window.location.protocol},isRealtimeEnabled:function(){var a=d.unix(this.initialData.lastModified);return!this.thread.get("isClosed")&&(this.switches.enabled("realtime_for_oldies")||d().diff(a,"days")<=7)},realtimeHandlers:{Post:function(a){var b=a.data,c=this.thread;if(!this.thread.get("hasStreaming")||!this.states.streamingPaused){if(!b.id)return void z.logError("RT: no post ID");if(!b.author||!b.author.id)return void z.logError("RT: no author or author ID");if(!b.author.name)return void z.logError("RT: no author name or email hash");if(!b.post||!b.post.message)return void z.logError("RT: no post message");if(c.posts.get(b.id)||c.queue.get(b.id))return void z.log("RT: duplicate: ",b.id);if("approved"!==b.type)return void z.log("RT: unnaproved: ",b.id);if(b.type===b.type_prev)return void z.log("RT: Post change message, ignoring for now ",b.id);this.thread.incrementPostCount(1);var d=b.post.parent_post.id;if(d="0"!==d?d:null,d&&!c.posts.get(d)&&!c.queue.get(d))return void z.log("RT: parent is not on this page: ",b.id);var e=b.author.id,f=c.users.get(e);f||(f=new j.UniqueModel(j.User,{id:e,name:b.author.name,isAnonymous:"0"===b.author.id}),b.author.avatar&&f.set("avatar",{cache:b.author.avatar,permalink:b.author.avatar}),c.users.add(f)),c.queue.add({id:b.id,userId:f.get("id"),parentId:d,message:b.post.message,createdAt:b.date,media:b.post.media})}},Vote:function(a){var b=a.data;if(b.id&&b.vote){var c=this.thread,d=c.posts.get(b.vote.recipient_post_id);if(d){z.log("RT: Vote for post ",d.id);var e=d.votes.get(b.id);e||(z.log("RT: Creating new vote with id ",b.id),e=new j.Vote({id:b.id}),d.votes.add(e));var f=d._vote(b.vote.vote,e.get("score"),b.voter);0!==f&&e.set("score",f)}}},ThreadVote:function(a){var b=a.data,c=this.thread;if(b.id&&b.vote&&(!this.session.user.id||b.vote.voter_id!==this.session.user.id)){var d=c.votes.get(b.id);d||(d=new j.ThreadVote({id:b.id}),c.votes.add(d));var e=c._vote(b.vote.vote,d.get("score"));0!==e&&d.set("score",e)}},typing:function(a){var c=a.data,d=this.thread,e=c.typing,f=c.post;if(c.thread===d.id&&f){var g=d.posts.get(f);g&&(g.usersTyping.count()<=0&&!e||g.usersTyping.add(j.TypingUser.make(b.extend({client_context:a.lastEventId},c))))}}},initRealtime:function(){var a=E.Manager;if(!a.pipe&&this.isRealtimeEnabled()){this.initRealtimeIndicators();var b;this.switches.enabled("aggressive_embed_cache")&&(b=this.initialData.lastModified),a.initialize("thread/"+this.thread.id,b,this.realtimeHandlers,this);var c=0;this.listenTo(f,"call",function(b){"POST"!==b.method||b.secure||(c++,a.pause())}),this.listenTo(f,"complete",function(){0>=c||--c||a.resume()})}},initThreadVotes:b.debounce(function(){var c,d=this;d.threadVotes&&d.threadVotes.remove(),d.threadVotes=c=new Z({thread:d.thread,session:d.session}),d.listenTo(c,{"vote:like":b.bind(d.trigger,d,"uiAction:threadLike"),"vote:unlike":b.bind(d.trigger,d,"uiAction:threadUnlike")}),c.render(),a("#thread-votes").append(c.el)},200),initThreadSubscribe:function(){this.threadSubscribeButton=new $({session:this.session,thread:this.thread,el:a("#thread-subscribe-button")[0]})},updateThreadVotes:function(){a("#thread-votes [data-role=like-count]").text(this.thread.get("likes"))},updateThreadUserScore:function(){var b=this.thread.get("userScore"),c=a("#thread-votes [data-role=vote-button]");c.removeClass("upvoted").removeClass("downvoted"),b>0?c.addClass("upvoted"):0>b&&c.addClass("downvoted")},updatePostCount:function(){var a=this;this.postCountContainer=this.postCountContainer||this.$("a[data-role=post-count]"),this.postCountContainer.html(t.render("postCount",{count:a.thread.get("posts")}))},swapMain:function(a){var c=this.$("#main-nav [data-nav=conversation]").parent("li");"conversation"!==a?c.attr("data-dropdown","disabled"):b.defer(function(){c.attr("data-dropdown","enabled")}),this.states.realtimeIndicatorsCreated&&"conversation"!==a&&m.sendHostMessage("indicator:hide"),this.$("[data-role=main]").hide(),"dashboard"!==a||this._notificationsApp||(this._notificationsApp=new R({el:"#dashboard",session:this.session,lounge:this}).render()),"community"!==a||this._communityApp||(this._communityApp=new H.CommunityView({el:"#community",forum:this.forum,session:this.session})),this.$("[data-role=main]#"+a).show();var d=this.currentZone;this.currentZone=a,this.trigger("uiAction:openZone",a,d)},setupNavigation:function(){var a=this;a.mainNav=new cb({el:a.$("#main-nav")}),this.listenTo(this.session,"change:id",function(){this.session.isLoggedIn()&&"dashboard"===this.currentZone&&this.swapMain("conversation")}),a.listenTo(a.mainNav,"nav",function(a){this.swapMain(a)})},renderLayout:function(){var b=this;b.addFeatureDetectionClasses(),C.init();var c=a(t.render("layout",{thread:b.thread.toJSON(),forum:b.forum.toJSON(),order:b.thread.posts.getOrder(),inHome:b.isInHome()}));c.appendTo(b.$el),b.setupNavigation(),b.postsView.renderLayout()},addFeatureDetectionClasses:function(){var b=a(document.documentElement);this.isMobile&&b.addClass("mobile"),l.useOpacityTransitions(window)&&b.addClass("use-opacity-transitions")},renderForm:function(){if(this.thread.get("isClosed"))return void this.alert(V("Comments for this thread are now closed."));if(!this.session.get("canReply"))return void this.session.once("change:id",this.renderForm,this);var b=this.form=new F.PostReplyView({thread:this.thread,userSuggestions:this.userSuggestions,session:this.session});b.render(),b.prependTo(a("#form")),b.resize()},initUserSuggestionsManager:function(){this.userSuggestions=new N,this.userSuggestions.addRemote(this.thread.users),this.listenTo(this.session,"change:id",function(){this.session.isLoggedIn()&&(this.session.user.getFollowing(),this.session.user.following.PER_PAGE=100),this.userSuggestions.addRemote(this.session.user.following,{shouldFetch:!0})})},showOnboarding:function(a){this.showOnboardApp({threadId:this.thread.get("id"),forumId:this.forum.get("id"),forumPk:this.forum.get("pk").toString(),session:this.session,activeSection:a,isFullscreen:this.isFullscreen})},handleShowOnboarding:W(function(b){var c=a(b.target).attr("data-section");this.showOnboarding(c)}),handleShowProfile:W(function(b){var c=a(b.currentTarget).attr("data-user"),d=a(b.currentTarget).attr("data-username");v.isFeatureActive("open_profile_sidebar")&&this.sidebarEnabled()&&d?this.showProfileSidebar(d):this.showProfile(c)}),handleSort:W(function(b){var c=a(b.currentTarget).attr("data-sort");this.$el.find('[data-role="post-sort"]').replaceWith(t.render("postSort",{order:c})),this.thread.posts.setOrder(c),this.thread.posts.fetch({reset:!0}),m.sendHostMessage("change:sort",c),this.postsView.handleSort()}),closeThread:W(function(){this.thread.close({success:b.bind(m.sendHostMessage,m,"reset"),error:b.bind(this.alert,this,"An error occurred while closing thread. Please try again.","error")})}),openThread:W(function(){this.thread.open({success:b.bind(m.sendHostMessage,m,"reset"),error:b.bind(this.alert,this,"An error occurred while opening thread. Please try again.","error")})}),findClosestThumbnailSize:function(){var a=document.body.offsetWidth;if(this.loadedThumbnailWidth)return this.loadedThumbnailWidth;var c=this.MEDIA_PERSISTED_WIDTHS,d=c.length;this.loadedThumbnailWidth=b.find(c,function(b,e){return e+1===d||Math.abs(c[e+1]-a)>Math.abs(c[e]-a)})},createDeferredViewsForImages:function(){var b=this;a("img[data-src]").each(function(c,d){var e=a(d),f=new ab({el:d,url:e.attr("data-src")});f.relatedPost=e.attr("data-post"),e.removeAttr("data-src"),b.trackDeferredView(f)})},trackDeferredView:function(a){if(null===a.getOffset())return void this.unsortedDeferredViews.push(a);var c=b.sortedIndex(this.deferredViews,a,function(a){var b=a.getOffset();return b?b.visibleTop:null});this.deferredViews[c]!==a&&this.deferredViews.splice(c,0,a)},invalidateDeferredViewOffsets:function(){b.invoke(this.deferredViews,"invalidateOffset"),this.unsortedDeferredViews=this.unsortedDeferredViews.concat(this.deferredViews),this.deferredViews=[]},trackUnsortedDeferredViews:function(){var a=this.unsortedDeferredViews;this.unsortedDeferredViews=[],b.each(a,this.trackDeferredView,this)},getPosition:function(){return this.position},processDeferredViews:function(){this.createDeferredViewsForImages(),this.trackUnsortedDeferredViews();var a=this.deferredViews.length;if(a){var c=this.getPosition(),d=c.pageOffset+c.height-c.frameOffset.top;if(!(0>d)){for(var e=0;a>e;++e){var f=this.deferredViews[e];if(!f.isAboveOffset(d))break;f.relatedPost&&this.postsView.listenTo(f,"load error",b.bind(this.postsView.onDeferredViewReady,this.postsView,f.relatedPost)),f.trigger("viewport:enter")}this.deferredViews=this.deferredViews.slice(e)}}},showProfileSidebar:function(a){n.trigger("sidebar:open","user/"+a)},showProfile:function(b){e.sessionstorage&&sessionStorage.setItem("profile.session",JSON.stringify(this.session.user.toJSON())),a(document).trigger("mouseout");var c={threadId:this.thread.get("id"),forumId:this.forum.get("id"),forumPk:this.forum.get("pk").toString()};if(h.browser.mobile){var d={user:{id:b},fullscreen:!0};l.windowOpen(A.get("profile",{f:this.forum.get("id")},d))}else c.userId=b,m.sendHostMessage("profile.show",c)},initResizeHandler:function(){var a=this,b=function(){a.resize(),window.requestAnimationFrame(b)};window.requestAnimationFrame(b)},resize:function(){var a=l.getPageHeight();this._lastHeight!==a&&(this._lastHeight=a,this.trigger("domReflow"),m.sendHostMessage("resize",{height:a}))},handleAuth:W(function(a){this.session.authenticate(l.extractService(a.target,"auth"))}),verifyEmail:W(function(){this.session.verifyEmail()}),audienceSync:W(function(){this.session.audienceSync()}),toggleMedia:W(function(){var a=I.settings,b=!a.get("collapsed");a.set("collapsed",b)})});b.extend(X.prototype,D.ShareMixin),b.extend(X.prototype,D.AlertMixin),l.mixin(X,r.UiActionEventProxy),l.mixin(X,r.OnboardHelper),r.appliesPublisherClasses.call(X.prototype);var Y=c.View.extend({events:{"click [data-action=share\\:twitter]":"_onShare","click [data-action=share\\:facebook]":"_onShare"},_onShare:W(function(a){var b=l.extractService(a.target,"share");b&&this.sharers[b]&&(B.getLounge().trigger("uiAction:threadShare",b),this.share(b))}),_shareUrl:function(){return this.model.permalink()}});b.extend(Y.prototype,D.ShareMixin);var Z=c.View.extend({className:"thread-likes",initialize:function(a){b.extend(this,a)},events:{"click [data-action=upvote]":"upvote"},render:function(){var a=this,b=a.$el;return b.html(t.render("threadVotes",{thread:a.thread.toJSON(),user:a.session.toJSON()})),a.thread.get("userScore")>0?b.addClass("upvoted"):b.removeClass("upvoted"),b.attr("data-role","vote-button"),b},upvote:W(function(){this.vote(1)}),vote:function(a){var c,d=this.thread.get("userScore")===a;this.trigger(d?"vote:unlike":"vote:like"),this.thread.vote(d?0:a),d||(c=this.$el.find(".dropdown"),b.defer(function(){c.addClass("open")}))},remove:function(){this.off(),c.View.prototype.remove.call(this)}}),$=c.View.extend({events:{"click [data-action=subscribe]":"subscribe","keydown #thread-subscribe-email":"subscribeKeypress"},initialize:function(a){this.thread=a.thread,this.session=a.session,this.listenTo(this.thread,"change:userSubscription",this.updateStatus),this.updateStatus(),this._boundDocumentClickHandler=b.bind(this._documentClickHandler,this)},updateStatus:function(){this.thread.get("userSubscription")?this.$el.addClass("subscribed"):this.$el.removeClass("subscribed")},subscribe:W(function(){var a=this.thread.get("userSubscription");this.session.isLoggedOut()&&!a?this.showForm():this.thread.subscribe(!a)}),showForm:function(){var c=this;this._unbindDocumentClickHandler(),b.defer(function(){a(document.body).on("click",c._boundDocumentClickHandler)}),c.$el.addClass("show-form").find("input")[0].focus()},_documentClickHandler:function(a){"thread-subscribe-email"!==a.target.id&&this.hideForm()},_unbindDocumentClickHandler:function(){a(document.body).off("click",this._boundDocumentClickHandler)},hideForm:function(){this._unbindDocumentClickHandler(),this.$el.removeClass("show-form").find("input")[0].blur()},subscribeKeypress:function(a){var b=this.$el.find("input");if(b.removeClass("alert error"),"Esc"===a.key||27===a.keyCode)return void this.hideForm();if("Enter"===a.key||13===a.keyCode){var c=a.target.value;if(!l.validateEmail(c))return void b.addClass("alert error");this.hideForm(),this.thread.subscribe(!0,c)}}}),_=c.View.extend({initialize:function(a){b.extend(this,a),this.listenTo(this.session,"change:id",this.render),this.listenTo(I.settings,"change:collapsed",this.onMediaCollapseChange)},render:function(){var a=t.render("userMenu",{user:this.session.toJSON(),thread:this.thread.toJSON(),feedbackUrl:this.getSurveyMonkeyUrl(),sso:this.session.get("sso")});this.$el.html(a),this.onMediaCollapseChange()},onMediaCollapseChange:function(){I.settings.get("collapsed")?this.$el.addClass("media-collapsed"):this.$el.removeClass("media-collapsed")},getSurveyMonkeyUrl:function(){var a,b="https://www.surveymonkey.com/s/5RBPTTZ",c=this.referrerUrl,d=this.session.user.id;a=d?[d,c]:[c];var e="?c="+encodeURIComponent(a.join(";"));return b+e}}),ab=c.View.extend(b.extend({},r.IsVisibleViewMixin,{topEdgeOffset:function(){return-B.getLounge().getPosition().height},initialize:function(a){this.options=a,this.hasLoaded=null,this.once("viewport:enter",this.loadImage,this)},loadImage:function(){var a=this;if(!a.hasLoaded){var b=function(b){return function(){a.trigger(b),a.$el.off(".deferredMediaView")}};a.$el.on("load.deferredMediaView",b("load")),a.$el.on("error.deferredMediaView",b("error")),a.$el.attr("src",a.options.url),a.hasLoaded=!0}}})),bb=c.View.extend({tagName:"ul",className:"debug",initialize:function(a){this.values=a},render:function(){return this.$el.empty(),b.each(this.values,function(a,b){var c=document.createElement("li");c.innerHTML="<strong>"+b+"</strong>: "+a,this.$el.append(c)},this),this}}),cb=c.View.extend({events:{"click [data-nav]":"_navTo"},initialize:function(){this.prevDestination=this.activeNav()},_navTo:function(b){b.preventDefault();var c=a(b.target);c=c.is("[data-nav]")?c:c.closest("[data-nav]");var d=c.attr("data-nav");this.navTo(d)},navTo:function(a){if(this.prevDestination!==a){this.prevDestination=a;var b=this.$el.find("[data-nav="+a+"]").parent();b.siblings("li").removeClass("active"),b.addClass("active"),this.trigger("nav",a)}},activeNav:function(){return null!=this.prevDestination?this.prevDestination:this.$el.find(".active [data-nav]").attr("data-nav")},clear:function(){this.$el.find("li").removeClass("active"),this.prevDestination=null}});return l.mixin(X,r.ProfileHtmlHelpers),b.extend(X.prototype,r.SidebarMixin),{Lounge:X,UserMenuView:_,ThreadVotesView:Z,ThreadSubscribeButton:$,DeferredMediaView:ab,DebugInfoView:bb}}),define("lounge/load",["jquery","lounge/views","lounge/tracking","initializer"],function(a,b,c,d){"use strict";return{init:function(){var e=d.getEmbeddedData,f=e("threadData");if(!f)return{code:15};if(f.code)return f;a.extend(f.response,e("forumData")),a("#postCompatContainer").remove();var g=new b.Lounge({jsonData:f,el:document.body});c.init(g)}}}),define("lounge",function(){});