var scriptJSON=function(a){this.fullUrl=a;this.scriptId="scriptId"+this.scriptCounter++;this.noCacheIE="&noCacheIE="+(new Date()).getTime();this.documentHead=document.getElementsByTagName("head").item(0)};scriptJSON.prototype={constructor:scriptJSON,scriptCounter:1,buildScriptTag:function(){this.scriptTag=document.createElement("script");this.scriptTag.setAttribute("type","text/javascript");this.scriptTag.setAttribute("charset","utf-8");this.scriptTag.setAttribute("src",this.fullUrl+this.noCacheIE);this.scriptTag.setAttribute("id",this.scriptId)},removeScriptTag:function(){this.documentHead.removeChild(this.scriptTag)},addScriptTag:function(){this.documentHead.appendChild(this.scriptTag)}};var tokenJSONScript;aolAuth={init:function(b,c,d){this.token=null;this.dodebug=false;if(aolAuth.server==undefined){this.server="https://api.screenname.aol.com"}this.devId=b;this.loginCallback=null;this.logoutCallback=null;this.directloginCallback=null;var a;if(typeof(c)=="undefined"){a=this.getAuthReceiver()}else{a=c}this.authReceiver=a;if(typeof(d)=="undefined"){this.winMode="normal"}else{this.winMode=d}this.loginWindow=null;this.authType="0";this.logoutType="iframe";this.succUrl=this.getSuccUrl();this.flowType="login";this.logoutIframe=null;this.userLoggedIn=false;this.referer=document.location.href;this.getTokenDone=false;this.openidUrl=null;this.idType=null},getSuccUrl:function(){var a=this.authReceiver;return a},getAuthReceiver:function(){var b=location.href;var a=b.substring(0,b.lastIndexOf("/"));return a+"/authReceiver.html"},ifUserLoggedIn:function(a){if(a!=undefined){this.loginCallback=a}var b=aolAuth.server+"/auth/getToken?devId="+aolAuth.urlEncoder(aolAuth.devId)+"&referer="+aolAuth.urlEncoder(aolAuth.referer)+"&f=json&c=aolAuth.gotToken";tokenJSONScript=new scriptJSON(b);tokenJSONScript.buildScriptTag();tokenJSONScript.addScriptTag()},gotToken:function(a){tokenJSONScript.removeScriptTag();if(a.response.statusCode==200){aolAuth.token=a.response.data.token.a;aolAuth.userLoggedIn=true;aolAuth.getInfo()}},doLogin:function(g,e,d,b){this.authType=0;this.flowType="login";var c=null;var f=null;if(typeof(d)!="undefined"){c=d}if(typeof(b)!="undefined"){f=b}var a=g.join(",");if(typeof(e)!="undefined"){this.loginCallback=e}var h=aolAuth.server+"/auth/login?devId="+aolAuth.urlEncoder(aolAuth.devId)+"&supportedIdType="+aolAuth.urlEncoder(a)+"&f=qs&succUrl="+aolAuth.urlEncoder(aolAuth.succUrl);if(c!=null){h+="&st="+c}if(f!=null){h+="&openidTab="+f}this.openLoginWindow(h)},doDirectLogin:function(c,b){this.authType=1;this.flowType="login";this.loginCallback=b;this.idType=c.toLowerCase();if(typeof(b)!="undefined"){this.directloginCallback=b}var a=aolAuth.server+"/auth/login?devId="+aolAuth.urlEncoder(aolAuth.devId)+"&f=qs&idType="+aolAuth.urlEncoder(c)+"&succUrl="+aolAuth.urlEncoder(aolAuth.succUrl);if(this.openidUrl!=null){a+="&openid_url="+aolAuth.urlEncoder(this.openidUrl)}this.openLoginWindow(a)},doLogout:function(d,c){this.logoutCallback=c;this.flowType="logout";if(d){aolAuth.logoutType="popup"}else{aolAuth.logoutType="iframe"}var a=aolAuth.server+"/auth/logout?devId="+aolAuth.urlEncoder(aolAuth.devId)+"&a="+aolAuth.urlEncoder(aolAuth.token)+"&f=json&succUrl="+aolAuth.urlEncoder(aolAuth.succUrl);if(d){this.openLoginWindow(a)}else{var e=document.createElement("iframe");e.setAttribute("src",a);var b=e.style;b.width=0+"px";b.height=0+"px";b.display="none";this.logoutIframe=e;document.body.appendChild(e)}},openLoginWindow:function(c){var d=528;var b=395;if(this.idType=="tw"||this.idType=="twitter"){d=800}if(this.idType=="yahoo"){b=520}var a=(screen.width-d)/2;var g=(screen.height-b)/2;var f="SignIn";var e="resizable=yes,width="+d+",height="+b+",directories=no,titlebar=no,status=no,menubar=no,toolbar=no,location=yes,left="+a+",top="+g;this.loginWindow=window.open(c,f,e);if(this.loginWindow){this.loginWindow.focus()}},handleResponse:function(a){if(document.getElementById("screen_overlay")){document.getElementById("screen_overlay").style.display="none";document.getElementById("screen_overlay").style.backgroundImage="none"}this.closeLoginWindow();var b=getQueryParams(a);if(this.flowType=="logout"){this.logoutResponse(b)}else{this.loginResponse(b)}},loginResponse:function(a){if(a){if(a.statusCode==200){aolAuth.token=a.token_a;aolAuth.getInfo()}}},logoutResponse:function(qsParms){if(this.logoutType=="iframe"){document.body.removeChild(this.logoutIframe)}if(qsParms.res){var res=unescape(qsParms.res);res=res.replace(/\+/g,"");var jsonObj=eval("("+res+")");if(jsonObj.response.statusCode==200){aolAuth.token=""}this.logoutCallback(jsonObj)}},getInfo:function(a){if(a!=undefined){this.loginCallback=a}var b=aolAuth.server+"/auth/getInfo?a="+aolAuth.urlEncoder(aolAuth.token)+"&devId="+aolAuth.urlEncoder(aolAuth.devId)+"&referer="+aolAuth.urlEncoder(aolAuth.referer)+"&f=json&c=aolAuth.gotInfo";infoJSONScript=new scriptJSON(b);infoJSONScript.buildScriptTag();infoJSONScript.addScriptTag()},gotInfo:function(a){infoJSONScript.removeScriptTag();aolAuth.loginCallback(a)},closeLoginWindow:function(){if(this.loginWindow&&!this.loginWindow.close()){this.loginWindow.close();window.focus()}},getWidth:function(){var a=0;if(self.innerHeight){a=self.innerWidth}else{if(document.documentElement&&document.documentElement.clientHeight){a=document.documentElement.clientWidth}else{if(document.body){a=document.body.clientWidth}}}return a},getHeight:function(){var a=0;if(self.innerHeight){a=self.innerHeight}else{if(document.documentElement&&document.documentElement.clientHeight){a=document.documentElement.clientHeight}else{if(document.body){a=document.body.clientHeight}}}return a},urlEncoder:function(b){var a=encodeURIComponent(b);a=a.replace("+","%2B");a=a.replace("/","%2F");return a}};function getQueryParams(d){var f=d.split("&");var a={};for(var c=0;c<f.length;c++){var g=f[c].indexOf("=");if(g>0){var b=f[c].substring(0,g);var e=f[c].substring(g+1);a[b]=e}}return a};
