source: media/bibliographie-02/js/widget.js @ 0:2f43cb89e87c

Revision 0:2f43cb89e87c, 26.5 KB checked in by andre.hagenbruch@rub.de, 9 years ago (diff)

Initial commit for version 0.2

Line 
1/**
2 * Twitter - http://www.twitter.com
3 * Copyright (C) 2009 Twitter
4 * Author: Dustin Diaz (dustin@twitter.com)
5 *
6 * V 2.1.0 Twitter search/profile/faves/list widget
7 * http://twitter.com/widgets
8 */
9if(!"console" in window){window.console={log:function(){}}}TWTR=window.TWTR||{};if(!Array.forEach){Array.prototype.forEach=function(D,E){var C=E||window;for(var B=0,A=this.length;B<A;++B){D.call(C,this[B],B,this)}};Array.prototype.filter=function(E,F){var D=F||window;var A=[];for(var C=0,B=this.length;C<B;++C){if(!E.call(D,this[C],C,this)){continue}A.push(this[C])}return A};Array.prototype.indexOf=function(B,C){var C=C||0;for(var A=0;A<this.length;++A){if(this[A]===B){return A}}return -1}}(function(){if(TWTR&&TWTR.Widget){return }function A(B,D,C){this.el=B;this.prop=D;this.from=C.from;this.to=C.to;this.time=C.time;this.callback=C.callback;this.animDiff=this.to-this.from}A.canTransition=function(){var B=document.createElement("twitter");B.style.cssText="-webkit-transition: all .5s linear;";return !!B.style.webkitTransitionProperty}();A.prototype._setStyle=function(B){switch(this.prop){case"opacity":this.el.style[this.prop]=B;this.el.style.filter="alpha(opacity="+B*100+")";break;default:this.el.style[this.prop]=B+"px";break}};A.prototype._animate=function(){var B=this;this.now=new Date();this.diff=this.now-this.startTime;if(this.diff>this.time){this._setStyle(this.to);if(this.callback){this.callback.call(this)}clearInterval(this.timer);return }this.percentage=(Math.floor((this.diff/this.time)*100)/100);this.val=(this.animDiff*this.percentage)+this.from;this._setStyle(this.val)};A.prototype.start=function(){var B=this;this.startTime=new Date();this.timer=setInterval(function(){B._animate.call(B)},15)};TWTR.Widget=function(B){this.init(B)};(function(){var N={};var a={};var Y=function(d){var b=a[d];if(!b){b=new RegExp("(?:^|\\s+)"+d+"(?:\\s+|$)");a[d]=b}return b};var C=function(g,l,h,j){var l=l||"*";var h=h||document;var d=[],b=h.getElementsByTagName(l),k=Y(g);for(var e=0,f=b.length;e<f;++e){if(k.test(b[e].className)){d[d.length]=b[e];if(j){j.call(b[e],b[e])}}}return d};var Z=function(){var b=navigator.userAgent;return{ie:b.match(/MSIE\s([^;]*)/)}}();var G=function(b){if(typeof b=="string"){return document.getElementById(b)}return b};var S=function(b){return b.replace(/^\s+|\s+$/g,"")};var R=function(){var b=self.innerHeight;var c=document.compatMode;if((c||Z.ie)){b=(c=="CSS1Compat")?document.documentElement.clientHeight:document.body.clientHeight}return b};var X=function(d,b){var c=d.target||d.srcElement;return b(c)};var P=function(c){try{if(c&&3==c.nodeType){return c.parentNode}else{return c}}catch(b){}};var Q=function(c){var b=c.relatedTarget;if(!b){if(c.type=="mouseout"){b=c.toElement}else{if(c.type=="mouseover"){b=c.fromElement}}}return P(b)};var U=function(c,b){b.parentNode.insertBefore(c,b.nextSibling)};var V=function(c){try{c.parentNode.removeChild(c)}catch(b){}};var T=function(b){return b.firstChild};var B=function(d){var c=Q(d);while(c&&c!=this){try{c=c.parentNode}catch(b){c=this}}if(c!=this){return true}return false};var F=function(){if(document.defaultView&&document.defaultView.getComputedStyle){return function(c,f){var e=null;var d=document.defaultView.getComputedStyle(c,"");if(d){e=d[f]}var b=c.style[f]||e;return b}}else{if(document.documentElement.currentStyle&&Z.ie){return function(b,d){var c=b.currentStyle?b.currentStyle[d]:null;return(b.style[d]||c)}}}}();var W={has:function(b,d){return new RegExp("(^|\\s)"+d+"(\\s|$)").test(G(b).className)},add:function(b,d){if(!this.has(b,d)){G(b).className=S(G(b).className)+" "+d}},remove:function(b,d){if(this.has(b,d)){G(b).className=G(b).className.replace(new RegExp("(^|\\s)"+d+"(\\s|$)","g"),"")}}};var D={add:function(d,c,b){if(d.addEventListener){d.addEventListener(c,b,false)}else{d.attachEvent("on"+c,function(){b.call(d,window.event)})}},remove:function(d,c,b){if(d.removeEventListener){d.removeEventListener(c,b,false)}else{d.detachEvent("on"+c,b)}}};var H={bool:function(c){return typeof c==="boolean"},def:function(b){return !(typeof b==="undefined")},number:function(b){return typeof b==="number"&&isFinite(b)},string:function(b){return typeof b==="string"},fn:function(b){return typeof b==="function"},array:function(b){if(b){return H.number(b.length)&&H.fn(b.splice)}return false}};var L=["January","February","March","April","May","June","July","August","September","October","November","December"];var O=function(f){var i=new Date(f);if(Z.ie){i=Date.parse(f.replace(/( \+)/," UTC$1"))}var c="";var b=function(){var d=i.getHours();if(d>0&&d<13){c="am";return d}else{if(d<1){c="am";return 12}else{c="pm";return d-12}}}();var e=i.getMinutes();var h=i.getSeconds();function g(){var d=new Date();if(d.getDate()!=i.getDate()||d.getYear()!=i.getYear()||d.getMonth()!=i.getMonth()){return" - "+L[i.getMonth()]+" "+i.getDate()+", "+i.getFullYear()}else{return""}}return b+":"+e+c+g()};var J=function(h){var j=new Date();var f=new Date(h);if(Z.ie){f=Date.parse(h.replace(/( \+)/," UTC$1"))}var i=j-f;var c=1000,d=c*60,e=d*60,g=e*24,b=g*7;if(isNaN(i)||i<0){return""}if(i<c*7){return"right now"}if(i<d){return Math.floor(i/c)+" seconds ago"}if(i<d*2){return"about 1 minute ago"}if(i<e){return Math.floor(i/d)+" minutes ago"}if(i<e*2){return"about 1 hour ago"}if(i<g){return Math.floor(i/e)+" hours ago"}if(i>g&&i<g*2){return"yesterday"}if(i<g*365){return Math.floor(i/g)+" days ago"}else{return"over a year ago"}};var E={link:function(b){return b.replace(/\b(((https*\:\/\/)|www\.).+?)(([!?,.\)]+)?(\s|$))/g,function(h,g,e,d,c){var f=e.match(/w/)?"http://":"";return'<a class="twtr-hyperlink" target="_blank" href="'+f+g+'">'+((g.length>25)?g.substr(0,24)+"...":g)+"</a>"+c})},at:function(b){return b.replace(/\B\@([a-zA-Z0-9_]{1,20})/g,function(c,d){return'@<a target="_blank" class="twtr-atreply" href="http://twitter.com/'+d+'">'+d+"</a>"})},list:function(b){return b.replace(/\B\@([a-zA-Z0-9_]{1,20}\/\w+)/g,function(c,d){return'@<a target="_blank" class="twtr-atreply" href="http://twitter.com/'+d+'">'+d+"</a>"})},hash:function(b){return b.replace(/\B\#(\w+)/gi,function(c,d){return'<a target="_blank" class="twtr-hashtag" href="http://twitter.com/search?q=%23'+d+'">#'+d+"</a>"})},clean:function(b){return this.hash(this.at(this.list(this.link(b))))}};function M(c,d,b){this.job=c;this.decayFn=d;this.interval=b;this.decayRate=1;this.decayMultiplier=1.25;this.maxDecayTime=3*60*1000}M.prototype={start:function(){this.stop().run();return this},stop:function(){if(this.worker){window.clearTimeout(this.worker)}return this},run:function(){var b=this;this.job(function(){b.decayRate=b.decayFn()?Math.max(1,b.decayRate/b.decayMultiplier):b.decayRate*b.decayMultiplier;var c=b.interval*b.decayRate;c=(c>=b.maxDecayTime)?b.maxDecayTime:c;c=Math.floor(c);b.worker=window.setTimeout(function(){b.run.call(b)},c)})},destroy:function(){this.stop();this.decayRate=1;return this}};function I(c,d,b,e){this.time=d||6000;this.loop=b||false;this.repeated=0;this.total=c.length;this.callback=e;this.haystack=c}I.prototype={start:function(b){var c=this;if(b){this.repeated=0}this.stop()._job();this.timer=window.setInterval(function(){c._job.call(c)},this.time);return this},stop:function(){if(this.timer){window.clearInterval(this.timer)}return this},_job:function(){if(this.repeated===this.total){if(this.loop){this.repeated=0}else{this.stop();return }}this.callback(this.haystack[this.repeated]);this.repeated++;return this}};function K(c){var b='<div class="twtr-tweet-wrap">         <div class="twtr-avatar">           <div class="twtr-img"><a target="_blank" href="http://twitter.com/'+c.user+'"><img alt="'+c.user+' profile" src="'+c.avatar+'"></a></div>         </div>         <div class="twtr-tweet-text">           <p>             <a target="_blank" href="http://twitter.com/'+c.user+'" class="twtr-user">'+c.user+"</a> "+c.tweet+'             <i>            <a target="_blank" class="twtr-timestamp" time="'+c.timestamp+'" href="http://twitter.com/'+c.user+"/status/"+c.id+'">'+c.created_at+'</a>             <a target="_blank" class="twtr-reply" href="http://twitter.com/?status=@'+c.user+"%20&in_reply_to_status_id="+c.id+"&in_reply_to="+c.user+'">reply</a>             </i>           </p>         </div>       </div>';var d=document.createElement("div");d.id="tweet-id-"+ ++K._tweetCount;d.className="twtr-tweet";d.innerHTML=b;this.element=d}K._tweetCount=0;N.loadStyleSheet=function(d,c){if(!TWTR.Widget.loadingStyleSheet){TWTR.Widget.loadingStyleSheet=true;var b=document.createElement("link");b.href=d;b.rel="stylesheet";b.type="text/css";document.getElementsByTagName("head")[0].appendChild(b);var e=setInterval(function(){var f=F(c,"position");if(f=="relative"){clearInterval(e);TWTR.Widget.hasLoadedStyleSheet=true}},50)}};(function(){var b=false;N.css=function(e){var d=document.createElement("style");d.type="text/css";if(Z.ie){d.styleSheet.cssText=e}else{var f=document.createDocumentFragment();f.appendChild(document.createTextNode(e));d.appendChild(f)}function c(){document.getElementsByTagName("head")[0].appendChild(d)}if(!Z.ie||b){c()}else{window.attachEvent("onload",function(){b=true;c()})}}})();TWTR.Widget.isLoaded=false;TWTR.Widget.loadingStyleSheet=false;TWTR.Widget.hasLoadedStyleSheet=false;TWTR.Widget.WIDGET_NUMBER=0;TWTR.Widget.matches={mentions:/^@[a-zA-Z0-9_]{1,20}\b/,any_mentions:/\b@[a-zA-Z0-9_]{1,20}\b/};TWTR.Widget.jsonP=function(c,d){var b=document.createElement("script");b.type="text/javascript";b.src=c;document.getElementsByTagName("head")[0].appendChild(b);d(b);return b};TWTR.Widget.prototype=function(){var f="http://search.twitter.com/search.";var g="http://twitter.com/statuses/user_timeline.";var d="http://twitter.com/favorites/";var e="http://twitter.com/";var c=20000;var b="http://widgets.twimg.com/j/1/default.gif";return{init:function(i){var h=this;this._widgetNumber=++TWTR.Widget.WIDGET_NUMBER;TWTR.Widget["receiveCallback_"+this._widgetNumber]=function(j){h._prePlay.call(h,j)};this._cb="TWTR.Widget.receiveCallback_"+this._widgetNumber;this.opts=i;this._base=f;this._isRunning=false;this._hasOfficiallyStarted=false;this._rendered=false;this._profileImage=false;this._isCreator=!!i.creator;this._setWidgetType(i.type);this.timesRequested=0;this.runOnce=false;this.newResults=false;this.results=[];this.jsonMaxRequestTimeOut=19000;this.showedResults=[];this.sinceId=1;this.source="TWITTERINC_WIDGET";this.id=i.id||"twtr-widget-"+this._widgetNumber;this.tweets=0;this.setDimensions(i.width,i.height);this.interval=i.interval||6000;this.format="json";this.rpp=i.rpp||50;this.subject=i.subject||"";this.title=i.title||"";this.setFooterText(i.footer);this.setSearch(i.search);this._setUrl();this.theme=i.theme?i.theme:this._getDefaultTheme();if(!i.id){document.write('<div class="twtr-widget" id="'+this.id+'"></div>')}this.widgetEl=G(this.id);if(i.id){W.add(this.widgetEl,"twtr-widget")}if(i.version>=2&&!TWTR.Widget.hasLoadedStyleSheet){N.loadStyleSheet("http://127.0.0.1/media/bibliographie-02/css/screen/widget.css",this.widgetEl)}this.occasionalJob=new M(function(j){h.decay=j;h._getResults.call(h)},function(){return h._decayDecider.call(h)},c);this._ready=H.fn(i.ready)?i.ready:function(){};this._isRelativeTime=true;this._tweetFilter=false;this._avatars=true;this._isFullScreen=false;this._isLive=true;this._isScroll=false;this._loop=true;this._behavior="default";this.setFeatures(this.opts.features);return this},setDimensions:function(i,j){this.wh=(i&&j)?[i,j]:[250,300];if(i=="auto"||i=="100%"){this.wh[0]="100%"}else{this.wh[0]=((this.wh[0]<150)?150:this.wh[0])+"px"}this.wh[1]=((this.wh[1]<100)?100:this.wh[1])+"px";return this},setRpp:function(h){var h=parseInt(h);this.rpp=(H.number(h)&&(h>0&&h<=100))?h:30;return this},_setWidgetType:function(h){this._isSearchWidget=false,this._isProfileWidget=false,this._isFavsWidget=false,this._isListWidget=false;switch(h){case"profile":this._isProfileWidget=true;break;case"search":this._isSearchWidget=true,this.search=this.opts.search;break;case"faves":case"favs":this._isFavsWidget=true;break;case"list":case"lists":this._isListWidget=true;break}return this},setFeatures:function(h){if(h){if(H.def(h.filters)){this._tweetFilter=h.filters}if(H.def(h.dateformat)){this._isRelativeTime=!!(h.dateformat!=="absolute")}if(H.def(h.fullscreen)&&H.bool(h.fullscreen)){if(h.fullscreen){this._isFullScreen=true;this.wh[0]="100%";this.wh[1]=(R()-90)+"px"}}if(H.def(h.loop)&&H.bool(h.loop)){this._loop=h.loop}if(H.def(h.behavior)&&H.string(h.behavior)){switch(h.behavior){case"all":this._behavior="all";break;default:this._behavior="default";break}}if(H.def(h.avatars)&&H.bool(h.avatars)){if(!h.avatars){N.css("#"+this.id+" .twtr-avatar, #"+this.id+" .twtr-user { display: none; } #"+this.id+" .twtr-tweet-text { margin-left: 0; }");this._avatars=false}else{var i=(this._isFullScreen)?"90px":"40px";N.css("#"+this.id+" .twtr-avatar { display: block; } #"+this.id+" .twtr-user { display: inline; } #"+this.id+" .twtr-tweet-text { margin-left: "+i+"; }");this._avatars=true}}else{if(this._isProfileWidget){this.setFeatures({avatars:false});this._avatars=false}else{this.setFeatures({avatars:true});this._avatars=true}}if(H.def(h.hashtags)&&H.bool(h.hashtags)){(!h.hashtags)?N.css("#"+this.id+" a.twtr-hashtag { display: none; }"):""}if(H.def(h.timestamp)&&H.bool(h.timestamp)){var j=h.timestamp?"block":"none";N.css("#"+this.id+" i { display: "+j+"; }")}if(H.def(h.live)&&H.bool(h.live)){this._isLive=h.live}if(H.def(h.scrollbar)&&H.bool(h.scrollbar)){this._isScroll=h.scrollbar}}else{if(this._isProfileWidget){this.setFeatures({avatars:false});this._avatars=false}if(this._isProfileWidget||this._isFavsWidget){this.setFeatures({behavior:"all"})}}return this},setTweetInterval:function(h){this.interval=h;return this},setBase:function(h){this._base=h;return this},setUser:function(i,h){this.username=i;this.realname=h||" ";if(this._isFavsWidget){this.setBase(d+i+".")}else{if(this._isProfileWidget){this.setBase(g+this.format+"?screen_name="+i)}}this.setSearch(" ");return this},setList:function(i,h){this.listslug=h.replace(/ /g,"-").toLowerCase();this.username=i;this.setBase(e+i+"/lists/"+this.listslug+"/statuses.");this.setSearch(" ");return this},setProfileImage:function(h){this._profileImage=h;this.byClass("twtr-profile-img","img").src=h;this.byClass("twtr-profile-img-anchor","a").href="http://twitter.com/"+this.username;return this},setTitle:function(h){this.title=h;this.widgetEl.getElementsByTagName("h3")[0].innerHTML=this.title;return this},setCaption:function(h){this.subject=h;this.widgetEl.getElementsByTagName("h4")[0].innerHTML=this.subject;return this},setFooterText:function(h){this.footerText=(H.def(h)&&H.string(h))?h:"Join the conversation";if(this._rendered){this.byClass("twtr-join-conv","a").innerHTML=this.footerText}return this},setSearch:function(i){i=i||"";if(this._isSearchWidget&&this._isFullscreen){document.title="Twitter search: "+escape(i)}i=i.replace(" ","+");this.search=escape("-RT "+i);this._setUrl();if(this._rendered){var h=this.byClass("twtr-join-conv","a");h.href="http://twitter.com/"+this._getWidgetPath()}return this},_getWidgetPath:function(){if(this._isProfileWidget){return this.username}else{if(this._isFavsWidget){return this.username+"/favorites"}else{if(this._isListWidget){return this.username+"/lists/"+this.listslug}else{return"#search?q="+this.search}}}},_setUrl:function(){var h=this;function i(){return(h.sinceId==1)?"":"&since_id="+h.sinceId+"&refresh=true"}if(this._isProfileWidget){this.url=this._base+"&callback="+this._cb+"&count="+this.rpp+i()+"&clientsource="+this.source}else{if(this._isFavsWidget||this._isListWidget){this.url=this._base+this.format+"?callback="+this._cb+i()+"&clientsource="+this.source}else{this.url=this._base+this.format+"?q="+this.search+"&callback="+this._cb+"&rpp="+this.rpp+i()+"&clientsource="+this.source}}return this},setTheme:function(m,h){var k=this;var i=" !important";var l=((window.location.hostname.match(/twitter\.com/))&&(window.location.pathname.match(/goodies/)));if(h||l){i=""}this.theme={shell:{background:function(){return m.shell.background||k._getDefaultTheme().shell.background}(),color:function(){return m.shell.color||k._getDefaultTheme().shell.color}()},tweets:{background:function(){return m.tweets.background||k._getDefaultTheme().tweets.background}(),color:function(){return m.tweets.color||k._getDefaultTheme().tweets.color}(),links:function(){return m.tweets.links||k._getDefaultTheme().tweets.links}()}};var j="#"+this.id+" .twtr-doc,                      #"+this.id+" .twtr-hd a,                      #"+this.id+" h3,                      #"+this.id+" h4 {            background: "+this.theme.shell.background+i+";            color: "+this.theme.shell.color+i+";          }          #"+this.id+" .twtr-tweet a {            color: "+this.theme.tweets.links+i+";          }          #"+this.id+" .twtr-bd, #"+this.id+" .twtr-timeline i a {            color: "+this.theme.tweets.color+i+";          }          #"+this.id+" .twtr-new-results,           #"+this.id+" .twtr-results-inner,           #"+this.id+" .twtr-timeline {            background: "+this.theme.tweets.background+i+";          }";if(Z.ie){j+="#"+this.id+" .twtr-tweet { background: "+this.theme.tweets.background+i+"; }"}N.css(j);return this},byClass:function(k,h,i){var j=C(k,h,G(this.id));return(i)?j:j[0]},render:function(){var j=this;if(!TWTR.Widget.hasLoadedStyleSheet){window.setTimeout(function(){j.render.call(j)},50);return this}this.setTheme(this.theme,this._isCreator);if(this._isProfileWidget){W.add(this.widgetEl,"twtr-widget-profile")}if(this._isScroll){W.add(this.widgetEl,"twtr-scroll")}if(!this._isLive&&!this._isScroll){this.wh[1]="auto"}this.widgetEl.innerHTML=this._getWidgetHtml();this.spinner=this.byClass("twtr-spinner","div");var i=this.byClass("twtr-timeline","div");if(this._isLive&&!this._isFullscreen){var k=function(l){if(B.call(this,l)){j.pause.call(j)}};var h=function(l){if(B.call(this,l)){j.resume.call(j)}};this.removeEvents=function(){D.remove(i,"mouseover",k);D.remove(i,"mouseout",h)};D.add(i,"mouseover",k);D.add(i,"mouseout",h)}this._rendered=true;this._ready();return this},removeEvents:function(){},_getDefaultTheme:function(){return{shell:{background:"#8ec1da",color:"#ffffff"},tweets:{background:"#ffffff",color:"#444444",links:"#1985b5"}}},_getWidgetHtml:function(){var k=this;function l(){if(k._isProfileWidget){return'<a target="_blank" href="http://twitter.com/" class="twtr-profile-img-anchor"><img alt="profile" class="twtr-profile-img" src="'+b+'"></a>                      <h3></h3>                      <h4></h4>'}else{return"<h3>"+k.title+"</h3><h4>"+k.subject+"</h4>"}}function j(){if(!k._isFullScreen){return' height="15"'}return""}function i(){return k._isFullScreen?" twtr-fullscreen":""}var h='<div class="twtr-doc'+i()+'" style="width: '+this.wh[0]+';">            <div class="twtr-hd">'+l()+'               <div class="twtr-spinner twtr-inactive"></div>            </div>            <div class="twtr-bd">              <div class="twtr-timeline" style="height: '+this.wh[1]+';">                <div class="twtr-tweets">                  <div class="twtr-reference-tweet"></div>                  <!-- tweets show here -->                </div>              </div>            </div>            <div class="twtr-ft">              <div><a target="_blank" href="http://twitter.com"><img alt="" src="http://widgets.twimg.com/j/1/twitter_logo_s.'+(Z.ie?"gif":"png")+'"'+j()+'></a>                <span><a target="_blank" class="twtr-join-conv" style="color:'+this.theme.shell.color+'" href="http://twitter.com/'+this._getWidgetPath()+'">'+this.footerText+"</a></span>              </div>            </div>          </div>";return h},_appendTweet:function(h){U(h,this.byClass("twtr-reference-tweet","div"));return this},_slide:function(i){var j=this;var h=T(i).offsetHeight;if(this.runOnce){new A(i,"height",{from:0,to:h,time:500,callback:function(){j._fade.call(j,i)}}).start()}return this},_fade:function(h){var i=this;if(A.canTransition){h.style.webkitTransition="opacity 0.5s ease-out";h.style.opacity=1;return this}new A(h,"opacity",{from:0,to:1,time:500}).start();return this},_chop:function(){if(this._isScroll){return this}var n=this.byClass("twtr-tweet","div",true);var o=this.byClass("twtr-new-results","div",true);if(n.length){for(var k=n.length-1;k>=0;k--){var m=n[k];var l=parseInt(m.offsetTop);if(l>parseInt(this.wh[1])){V(m)}else{break}}if(o.length>0){var h=o[o.length-1];var j=parseInt(h.offsetTop);if(j>parseInt(this.wh[1])){V(h)}}}return this},_appendSlideFade:function(i){var h=i||this.tweet.element;this._chop()._appendTweet(h)._slide(h);return this},_createTweet:function(h){h.timestamp=h.created_at;h.created_at=this._isRelativeTime?J(h.created_at):O(h.created_at);this.tweet=new K(h);if(this._isLive&&this.runOnce){this.tweet.element.style.opacity=0;this.tweet.element.style.filter="alpha(opacity:0)";this.tweet.element.style.height="0"}return this},_getResults:function(){var h=this;this.timesRequested++;this.jsonRequestRunning=true;this.jsonRequestTimer=window.setTimeout(function(){if(h.jsonRequestRunning){clearTimeout(h.jsonRequestTimer);W.add(h.spinner,"twtr-inactive")}h.jsonRequestRunning=false;V(h.scriptElement);h.newResults=false;h.decay()},this.jsonMaxRequestTimeOut);W.remove(this.spinner,"twtr-inactive");TWTR.Widget.jsonP(h.url,function(i){h.scriptElement=i})},clear:function(){var i=this.byClass("twtr-tweet","div",true);var h=this.byClass("twtr-new-results","div",true);i=i.concat(h);i.forEach(function(j){V(j)});return this},_sortByLatest:function(h){this.results=h;this.results=this.results.slice(0,this.rpp);this.results.reverse();return this},_sortByMagic:function(h){var h=h;var i=this;if(this._tweetFilter){if(this._tweetFilter.negatives){h=h.filter(function(j){if(!i._tweetFilter.negatives.test(j.text)){return j}})}if(this._tweetFilter.positives){h=h.filter(function(j){if(i._tweetFilter.positives.test(j.text)){return j}})}}switch(this._behavior){case"all":this._sortByLatest(h);break;default:this._sortByDefault(h);break}return this},_sortByDefault:function(i){var j=this;var h=function(){if(Z.ie){return function(k){return Date.parse(k.replace(/( \+)/," UTC$1"))}}else{return function(k){return new Date(k)}}}();this.results.unshift.apply(this.results,i);this.results.forEach(function(k){if(!k.views){k.views=0}});this.results.sort(function(l,k){if(h(l.created_at)<h(k.created_at)){return 1}else{if(h(l.created_at)>h(k.created_at)){return -1}else{return 0}}});this.results=this.results.slice(0,this.rpp);if(!this._isLive){this.results.reverse()}this.results.sort(function(l,k){if(l.views>k.views){return 1}else{if(l.views<k.views){return -1}}return 0})},_prePlay:function(i){if(this.jsonRequestTimer){clearTimeout(this.jsonRequestTimer)}if(!Z.ie){V(this.scriptElement)}if(i.error){this.newResults=false}else{if(i.results&&i.results.length>0){this.response=i;if(this.intervalJob){this.intervalJob.stop()}this.newResults=true;this.sinceId=i.max_id;this._sortByMagic(i.results);if(this.isRunning()){this._play()}}else{if((this._isProfileWidget||this._isFavsWidget||this._isListWidget)&&H.array(i)&&i.length>0){if(this.intervalJob){this.intervalJob.stop()}this.newResults=true;if(!this._profileImage&&this._isProfileWidget){var h=i[0].user.screen_name;this.setProfileImage(i[0].user.profile_image_url);this.setTitle(i[0].user.name);this.setCaption('<a target="_blank" href="http://twitter.com/'+h+'">'+h+"</a>")}this.sinceId=i[0].id;this._sortByMagic(i);if(this.isRunning()){this._play()}}else{this.newResults=false}}}this._setUrl();if(this._isLive){this.decay()}W.add(this.spinner,"twtr-inactive")},_play:function(){var h=this;if(this._avatars){this._preloadImages(this.results)}if(this._isRelativeTime&&this._behavior=="all"){this.byClass("twtr-timestamp","a",true).forEach(function(i){i.innerHTML=J(i.getAttribute("time"))})}if(!this._isLive||this._behavior=="all"){this.results.forEach(function(j){if(h._isProfileWidget){j.from_user=h.username;j.profile_image_url=j.user.profile_image_url}if(h._isFavsWidget||h._isListWidget){j.from_user=j.user.screen_name;j.profile_image_url=j.user.profile_image_url}h._createTweet({id:j.id,user:j.from_user,tweet:E.clean(j.text),avatar:j.profile_image_url,created_at:j.created_at});var i=h.tweet.element;(h._behavior=="all")?h._appendSlideFade(i):h._appendTweet(i)});return this}this._insertNewResultsNumber();this.intervalJob=new I(this.results,this.interval,this._loop,function(i){i.views++;if(h._isProfileWidget){i.from_user=h.username;i.profile_image_url=i.user.profile_image_url}if(h._isFavsWidget||h._isListWidget){i.from_user=i.user.screen_name;i.profile_image_url=i.user.profile_image_url}if(h._isFullScreen){i.profile_image_url=i.profile_image_url.replace(/_normal\./,"_bigger.")}h._createTweet({id:i.id,user:i.from_user,tweet:E.clean(i.text),avatar:i.profile_image_url,created_at:i.created_at})._appendSlideFade()}).start(true);return this},_insertNewResultsNumber:function(){if(this.runOnce&&this._isSearchWidget){var k=this.response.total>this.rpp?this.response.total:this.response.results.length;var h=k>1?"s":"";var j=(this.response.warning&&this.response.warning.match(/adjusted since_id/))?"more than":"";var i=document.createElement("div");W.add(i,"twtr-new-results");i.innerHTML='<div class="twtr-results-inner"> &nbsp; </div><div class="twtr-results-hr"> &nbsp; </div><span>'+j+" <strong>"+k+"</strong> new tweet"+h+"</span>";U(i,this.byClass("twtr-reference-tweet","div"))}},_preloadImages:function(h){if(this._isProfileWidget||this._isFavsWidget||this._isListWidget){h.forEach(function(j){var i=new Image();i.src=j.user.profile_image_url})}else{h.forEach(function(i){(new Image()).src=i.profile_image_url})}},_decayDecider:function(){var h=false;if(!this.runOnce){this.runOnce=true;h=true}else{if(this.newResults){h=true}}return h},start:function(){var h=this;if(!this._rendered){setTimeout(function(){h.start.call(h)},50);return this}if(!this._isLive){this._getResults()}else{this.occasionalJob.start()}this._isRunning=true;this._hasOfficiallyStarted=true;return this},stop:function(){this.occasionalJob.stop();if(this.intervalJob){this.intervalJob.stop()}this._isRunning=false;return this},pause:function(){if(this.isRunning()&&this.intervalJob){this.intervalJob.stop();W.add(this.widgetEl,"twtr-paused");this._isRunning=false}if(this._resumeTimer){clearTimeout(this._resumeTimer)}return this},resume:function(){var h=this;if(!this.isRunning()&&this._hasOfficiallyStarted&&this.intervalJob){this._resumeTimer=window.setTimeout(function(){h.intervalJob.start();h._isRunning=true;W.remove(h.widgetEl,"twtr-paused")},2000)}return this},isRunning:function(){return this._isRunning},destroy:function(){this.stop();this.clear();this.runOnce=false;this._hasOfficiallyStarted=false;this.intervalJob=false;this._profileImage=false;this._isLive=true;this._tweetFilter=false;this._isScroll=false;this.newResults=false;this._isRunning=false;this.sinceId=1;this.results=[];this.showedResults=[];this.occasionalJob.destroy();if(this.jsonRequestRunning){clearTimeout(this.jsonRequestTimer);W.add(this.spinner,"twtr-inactive")}W.remove(this.widgetEl,"twtr-scroll");this.removeEvents();return this}}}()})()})();
Note: See TracBrowser for help on using the repository browser.