(function(d){d.timeago=function(g){if(g instanceof Date){return b(g)}else{if(typeof g=="string"){return b(d.timeago.parse(g))}else{return b(d.timeago.parse(d(g).attr("title")))}}};var f=d.timeago;d.extend(d.timeago,{settings:{refreshMillis:60000,allowFuture:false,strings:{prefixAgo:null,prefixFromNow:null,suffixAgo:"ago",suffixFromNow:"from now",ago:null,fromNow:null,seconds:"less than a minute",minute:"about a minute",minutes:"%d minutes",hour:"about an hour",hours:"about %d hours",day:"a day",days:"%d days",month:"about a month",months:"%d months",year:"about a year",years:"%d years"}},inWords:function(k){var l=this.settings.strings;var h=l.prefixAgo;var p=l.suffixAgo||l.ago;if(this.settings.allowFuture){if(k<0){h=l.prefixFromNow;p=l.suffixFromNow||l.fromNow}k=Math.abs(k)}var n=k/1000;var g=n/60;var m=g/60;var o=m/24;var i=o/365;var j=n<45&&a(l.seconds,Math.round(n))||n<90&&a(l.minute,1)||g<45&&a(l.minutes,Math.round(g))||g<90&&a(l.hour,1)||m<24&&a(l.hours,Math.round(m))||m<48&&a(l.day,1)||o<30&&a(l.days,Math.floor(o))||o<60&&a(l.month,1)||o<365&&a(l.months,Math.floor(o/30))||i<2&&a(l.year,1)||a(l.years,Math.floor(i));return d.trim([h,j,p].join(" "))},parse:function(h){var g=d.trim(h);g=g.replace(/-/,"/").replace(/-/,"/");g=g.replace(/T/," ").replace(/Z/," UTC");g=g.replace(/([\+-]\d\d)\:?(\d\d)/," $1$2");return new Date(g)}});d.fn.timeago=function(){var h=this;h.each(c);var g=f.settings;if(g.refreshMillis>0){setInterval(function(){h.each(c)},g.refreshMillis)}return h};function c(){var g=f.parse(this.title);if(!isNaN(g)){d(this).text(b(g))}return this}function b(g){return f.inWords(e(g))}function e(g){return(new Date().getTime()-g.getTime())}function a(g,i){var h=d.isFunction(g)?g(i):g;return h.replace(/%d/i,i)}document.createElement("abbr")})(jQuery);jQuery.cookie=function(b,j,m){if(typeof j!="undefined"){m=m||{};if(j===null){j="";m.expires=-1}var e="";if(m.expires&&(typeof m.expires=="number"||m.expires.toUTCString)){var f;if(typeof m.expires=="number"){f=new Date();f.setTime(f.getTime()+(m.expires*24*60*60*1000))}else{f=m.expires}e="; expires="+f.toUTCString()}var l=m.path?"; path="+(m.path):"";var g=m.domain?"; domain="+(m.domain):"";var a=m.secure?"; secure":"";document.cookie=[b,"=",encodeURIComponent(j),e,l,g,a].join("")}else{var d=null;if(document.cookie&&document.cookie!=""){var k=document.cookie.split(";");for(var h=0;h<k.length;h++){var c=jQuery.trim(k[h]);if(c.substring(0,b.length+1)==(b+"=")){d=decodeURIComponent(c.substring(b.length+1));break}}}return d}};(function(b){var d=/(^|&lt;|\s)(www\..+?\..+?)(\s|&gt;|$)/g,a=/(^|&lt;|\s)(((https?|ftp):\/\/|mailto:).+?)(\s|&gt;|$)/g,c=function(){var g=this.childNodes,f=g.length;while(f--){var h=g[f];if(h.nodeType==3){var e=b.trim(h.nodeValue);if(e){e=e.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(d,'$1<a href="http://$2" target="_blank">$2</a>$3').replace(a,'$1<a href="$2" target="_blank">$2</a>$5');b(h).after(e).remove()}}else{if(h.nodeType==1&&!/^(a|button|textarea)$/i.test(h.tagName)){c.call(h)}}}};b.fn.linkify=function(){return this.each(c)}})(jQuery);function makeCachedRequest(c,f,e,b){var d=new Date().getTime();var a="?";if(b&&b>0){d=Math.floor(d/(b*1000))}if(c.indexOf("?")>-1){a="&"}c=[c,a,"nocache=",d].join("");if(e&&user_id){e.opensocial_viewer_id=user_id}gadgets.io.makeRequest(c,f,e)}function get(a,c,b){params={};params[gadgets.io.RequestParameters.AUTHORIZATION]=gadgets.io.AuthorizationType.SIGNED;params[gadgets.io.RequestParameters.REFRESH_INTERVAL]=1;if(b){$(document).trigger("pre-"+b)}makeCachedRequest(a,function(d){if(d){if(c){if(c(d.data)&&b){$(document).trigger("post-"+b)}}else{$(document).trigger("post-"+b)}}else{if(b){$(document).trigger(b,{error:"no response"})}}},params,1)}function post(a,e,d,b){var c={};if(d!=undefined){c[gadgets.io.RequestParameters.POST_DATA]=gadgets.io.encodeValues(d)}c[gadgets.io.RequestParameters.AUTHORIZATION]=gadgets.io.AuthorizationType.SIGNED;c[gadgets.io.RequestParameters.METHOD]=gadgets.io.MethodType.POST;c[gadgets.io.RequestParameters.REFRESH_INTERVAL]=1;if(b){$(document).trigger("pre-"+b)}makeCachedRequest(a,function(f){if(f){if(e){if(e(f.data)&&b){$(document).trigger("post-"+b)}}else{$(document).trigger("post-"+b)}}else{if(b){$(document).trigger(b,{error:"no response"})}}},c,1)}function json(a,c,d,b){if(c==undefined){c={}}c.sid=sid;c.opensocial_viewer_id=user_id;if(a.indexOf("?")>-1){a+="&"}else{a+="?"}a+="callback=?";ajax_start(b);$.jsonp({url:a,data:c,success:function(e){ajax_sucess(e,d,b);ajax_complete(b)},error:function(){ajax_error(b)}})}function ajax_start(a){if(a){$(document).trigger("pre-"+a)}}function ajax_timeout(a){if(a){$(document).trigger("timeout-"+a)}}function ajax_error(a){if(a){$(document).trigger("error-"+a)}}function ajax_sucess(b,c,a){if(b.error){handle_error(a,b)}else{if(c){c(b)}if(a){$(document).trigger("sucesss-"+a)}}}function ajax_complete(a){if(a){$(document).trigger("post-"+a)}}function handle_error(a,b){if(b.error==100&&on_session_expired){on_session_expired(a,b)}else{if(b.error==101&&on_oauth_fail){on_oauth_fail(a,b)}else{if(b.error==102&&on_api_timeout){on_api_timeout(a,b)}else{if(b.error==103&&on_server_error){on_server_error(a,b)}else{if(on_ajax_error){on_ajax_error(a,b)}}}}}}$.ajaxSetup({beforeSend:function(a){a.setRequestHeader("Accept-Encoding","gzip");a.setRequestHeader("User-Agent","gzip")}});function on_session_expired(){show_error("Your session is expired, please reload Gmail.")}function adjust_height(){try{gadgets.window.adjustHeight()}catch(a){}}var sid;var user_id;var network;function login(a){get(BASE_URL+"/access",function(b){if(b.sid){sid=b.sid}get_user(a)},"request-access")}function get_user(b){if(user_id){authorize(b)}else{var a=opensocial.newDataRequest();a.add(a.newFetchPersonRequest(opensocial.IdSpec.PersonId.VIEWER),"req");a.send(function(c){user_id=c.get("req").getData().getId();authorize(b)})}}function authorize(a){json(BASE_URL+"/authorize",{},function(b){if(b.sid){sid=b.sid}a()},"authorize")}function get_authorized_accounts(b,a){json(BASE_URL+"/accounts",{},function(c){accounts=[];accounts.addAll(c);b(accounts)},a)}function get_authorize_url(b,a){json(BASE_URL+"/oauth_authorize_url",{},b,a)}function get_account(a,c,b){json(BASE_URL+"/account",{account:a},c,b)}function delete_account(b,c,a){json(BASE_URL+"/delete_account",{account:b.screen_name},c,a)}function get_new_tweets(b,a,d,e,c){if(d==undefined){d={}}if(a>0){d.since_id=a}delete d.max_id;json(b,d,e,c)}function get_old_tweets(a,d,c,e,b){if(c==undefined){c={max_id:d}}else{c.max_id=d}delete c.since_id;json(a,c,e,b)}function get_tweets(a,c,d,e,b){if(d==undefined){d={page:c}}else{d.page=c}json(a,d,e,b)}function get_tweet(b,d,c,a){json(BASE_URL+"/tweet",{account:b.screen_name,id:d},c,a)}function mark_friend_read(b,d,c,a){json(BASE_URL+"/friend_since_id",{account:b.screen_name,friend_since_id:d},c,a)}function post_update(c,a,d,b){json(BASE_URL+"/post_update",{account:c.screen_name,status:a},d,b)}function post_reply(d,b,a,e,c){json(BASE_URL+"/post_reply",{account:d.screen_name,status:a,in_reply_to_status_id:b},e,c)}function post_direct(d,b,a,e,c){json(BASE_URL+"/post_direct_reply",{account:d.screen_name,text:a,user:b},e,c)}function delete_direct_message(b,d,c,a){json(BASE_URL+"/delete_direct",{account:b.screen_name,id:d},c,a)}function favorite(b,d,c,a){json(BASE_URL+"/favorites_create",{account:b.screen_name,status_id:d},c,a)}function unfavorite(b,d,c,a){json(BASE_URL+"/favorites_destroy",{account:b.screen_name,status_id:d},c,a)}function unread_tweet(b,d,c,a){json(BASE_URL+"/unread",{account:b.screen_name,id:d},c,a)}function ununread_tweet(b,d,c,a){json(BASE_URL+"/ununread",{account:b.screen_name,id:d},c,a)}function delete_tweet(b,d,c,a){json(BASE_URL+"/delete_tweet",{account:b.screen_name,status_id:d},c,a)}function retweet_status(b,d,c,a){json(BASE_URL+"/retweet",{account:b.screen_name,status_id:d},c,a)}var is_sharing=false;var share_to_friends;function share(c,e,a,d,b){is_sharing=true;share_to_friends(c,e,a,0,10,function(){is_sharing=false;d()})}function share_to_friends(e,g,c,d,b,f){var a=d+b>c.length?c.length:d+b;json(BASE_URL+"/share",{account:e.screen_name,id:g,share_to:JSON.stringify(c.slice(d,a)),append:d>0},function(){if(a==c.length){f()}else{share_to_friends(e,g,c,a,b,f)}})}function get_unread(c,a,d,b){if(a){json(BASE_URL+"/unread_counter",{account:c.screen_name,since_id:a},d,b)}else{json(BASE_URL+"/unread_counter",{account:c.screen_name},d,b)}}function search_tweets(b,d,a,e,c){search_url="http://search.twitter.com/search.json";params={};if(b&&b!=""){params.q=b}if(d&&d!=""){params.ref=d}if(a&&a!=""){params.tag=a}json(search_url,params,e,c)}var idle_timer;var idle_interval=30000;var is_idle=false;function init_idle_checker(){$("body").bind("mousemove",reset_idle_timer);$("body").bind("keypress",reset_idle_timer)}function reset_idle_timer(){if(is_idle){is_idle=false;$(document).trigger("idle_changed",{is_idle:is_idle})}if(idle_timer){clearInterval(idle_timer)}idle_timer=setInterval(function(){is_idle=true;$(document).trigger("idle_changed",{is_idle:is_idle})},idle_interval)}function show_message(a){if(a){$("#message-panel-content").removeClass("ui-state-error");$("#message-panel-content").addClass("ui-state-highlight");$("#message-panel-txt").html(a);$("#message-panel").show()}else{$("#message-panel").hide()}adjust_height()}function show_error(a){if(a){$("#message-panel-content").removeClass("ui-state-highlight");$("#message-panel-content").addClass("ui-state-error");$("#message-panel-txt").html(a);$("#message-panel").show()}else{$("#message-panel").hide()}adjust_height()}var Button=function(b,f,d,e,c){this.id=f;$(b).append('<div id="btn-'+f+'" class="goog-imageless-button goog-inline-block" style="-moz-user-select: none;"></div>');var a='<div id="btn-content-'+f+'" class="goog-inline-block goog-imageless-button-outer-box"><div class="goog-inline-block goog-imageless-button-inner-box"><div class="goog-imageless-button-pos"><div class="goog-imageless-button-top-shadow"> </div><div class="goog-imageless-button-content"><span id="btn-txt-'+f+'">'+d+"</span>";if(c){a+='<div id="down-'+f+'" id="project_list_toggle" class="goog-dropdown goog-inline-block"> </div>'}a+="</div></div></div></div>";$("#btn-"+f).html(a);$("#btn-"+f).data("btn",this);if(c){this.setCallback(c)}else{this.setCallback(e)}this.enable=true};Button.prototype.setCallback=function(b){var a=this;if(b){$("#btn-"+this.id).mousedown(function(){if(a.enable){$("#btn-"+a.id).addClass("goog-imageless-button-active")}});$("#btn-"+this.id).mouseout(function(){if(a.enable){$("#btn-"+a.id).removeClass("goog-imageless-button-active")}});$("#btn-"+this.id).mouseup(function(){if(a.enable){$("#btn-"+a.id).removeClass("goog-imageless-button-active");b()}})}};Button.prototype.setChecked=function(c){if(this.enable){var b=$("#btn-content-"+this.id);if(c){if(this.group){for(var a=0;a<this.group.buttons.length;a++){$("#btn-content-"+this.group.buttons[a].id).removeClass("goog-imageless-button-checked")}}b.addClass("goog-imageless-button-checked")}else{b.removeClass("goog-imageless-button-checked");if(this.uncheck_callback){this.uncheck_callback()}}}};Button.prototype.setEnable=function(a){this.enable=a};var ButtonGroup=function(b,a){this.parent=b;this.buttons=[];this.toggle=a};ButtonGroup.prototype.setEnable=function(a){for(var b=0;b<this.buttons.length;b++){this.buttons[b].setEnable(a)}};ButtonGroup.prototype.add=function(g,e,f,d,b){var c=this;var a=new Button(this.parent,g,e,null,d);a.setCallback(function(){if(c.toggle){for(var h=0;h<c.buttons.length;h++){if(c.buttons[h]==a){a.setChecked(true);a.setEnable(false)}else{c.buttons[h].setEnable(true);c.buttons[h].setChecked(false)}}}if(f){f()}});a.group=c;if(this.buttons.length==0){$("#btn-"+g).addClass("goog-imageless-button-collapse-right")}else{$("#btn-"+g).addClass("goog-imageless-button-collapse-left");$("#btn-"+g).addClass("goog-imageless-button-collapse-right")}a.uncheck_callback=b;this.buttons.add(a);return a};ButtonGroup.prototype.finish=function(){if(this.buttons.length>0){$("#btn-"+this.buttons[this.buttons.length-1].id).removeClass("goog-imageless-button-collapse-right")}};var TextButton=function(a,c,e,d){var b=document.createElement("span");$(b).html(a);$(b).addClass("txt-button");$(b).attr("title",c);if(d==undefined){$(b).click(function(){e()})}else{$(b).click(function(){e(d)})}return b};var TextToggleButton=function(b,e,a,d){this.callback=e;var f=this;var c=document.createElement("span");$(c).addClass("txt-button");$(c).html(b);$(c).click(function(){f.callback();$(c).html(f.callback==e?a:b);f.callback=f.callback==e?d:e});return c};Array.prototype.add=function(b){for(var a=0;a<this.length;a++){if(this[a]==b){return}}this[this.length]=b};Array.prototype.addAll=function(b){for(var a=0;a<b.length;a++){this.add(b[a])}};Array.prototype.remove=function(f){for(var c=0;c<this.length;c++){if(this[c]==f){var a=this.slice(0,c);var d=this.slice(c+1,this.length);this.length=0;this.push.apply(this,a);this.push.apply(this,d)}}};