if (!window.$TORA) { var $TORA={};(function(){$TORA=function e(){return $TORA._$public.apply(this,arguments)};$TORA._$config={BASE_PKG_LOCATION:"/resources/static/libtora/packages/",BASE_RES_LOCATION:"/resources/static/libtora/resources/"};var d=[],f=[];var i={};$TORA._$tmp={};var n=false;$TORA._$public=function(){return l(arguments[0])};d.push(function(){$TORA.whenReady=function(q){if(n){q()}else{if(q){f.push(q)}}};i.common.dom.addEventListener.call(document,"DOMContentLoaded",function(){n=true;for(var r=0,q;(q=f[r]);r++){q()}})});var l,j,h={};d.push(function(){var q=i.common.object;l=q.Registry(h);l.add("DEFAULTS",q.Registry(null,true));j={get:function(){return l.lookup.apply(l,arguments)},add:function(){return l.add.apply(l,arguments)}};g()});function g(){$TORA.registry=function(){return j}}var b,a,m={};d.push(function(){var r=$TORA._$config,t=i.packaging;b=t.PackageRegistry(r.BASE_PKG_LOCATION);a=t.PackageRepository(b,m);l.extend(($TORA.packages=m));$TORA.addPackages=function q(u){a.registerPackages(u)};$TORA.initModule=$TORA.initCoreModule=function s(u,v){return a.insert(u,v({resourceLocation:r.BASE_RES_LOCATION,windowObject:window,packageRoot:a.getPackageRoot(),Error:Error}))};$TORA.Requirement=function(){function u(H,G,F){var A={},z=[];this._$config={packageStatus:A,executionQueue:z};this._$config.onComplete=v(this);var y,J,K=(F?(J=H,y=true,G):H),B=K.length;var E={constructor:arguments.callee,prototype:arguments.callee.prototype};if(J){var I;if(I=J.initRequirements){z.push(function(){I()})}}if(B>0){for(var D=B-1,C;C=K[D];D--){A[C]=false;this.loadFeaturePath(C,y)}}}u.prototype.execute=function(y){if(this.checkStatus()){y()}else{this._$config.executionQueue.push(y)}};u.prototype.getRequiredPackages=$TORA.Requirement.resolve;u.prototype.loadFeaturePath=function(z,y){if(n||((!y)&&(!n))){a.loadFeature(z,this._$config.onComplete)}else{a.loadFeature(z,this._$config.onComplete,true)}};u.prototype.checkStatus=function(){var D,B=this._$config;for(var C in (D=B.packageStatus)){if(!D[C]){return false}}var y=B.executionQueue,z=y.length;B.executionQueue=[];if(z>0){for(var C=0,A;A=y[C];C++){A()}}return true};function v(z){var y=z._$config.packageStatus;return function(A){y[A]=true;z.checkStatus()}}function x(A,z,y){return w(new u(A,z,y))}function w(z){function y(A){z.execute(A)}y.constructor=u;y.instance=z;return y}$TORA.Requirement=function(){return x.apply(this,arguments)};$TORA.Requirement.resolve=u.prototype.getRequiredPackages;return x.apply(this,arguments)};$TORA.Requirement.resolve=function(v,u){return a.resolveFeaturePath(v,u)}});$TORA.initCoreModule=function(q,r){k[q]=r;o()};var k={"common-core":false,packaging:false};function o(){for(var r in k){if(!k[r]){return}}$TORA._$tmp.CORE_RES=i;for(var r in k){var s=k[r]();for(var q in s){i[q]=s[q]}}p()}function p(){for(var r=0,q;q=d[r];r++){q()}c();delete $TORA._$tmp;delete $TORA.initCoreModule;o=i=k=d=p=null}function c(){var r=[];for(var q in k){a.insert(q,i)}}})(); $TORA.initCoreModule("common-core",function(){var $package={};var $lib={common:$package};var $moduleObject=($package.object={}),$moduleString=($package.string={}),$moduleHTML=($package.html={}),$moduleDOM=($package.dom={}),$moduleXHR=($package.xhr={});$moduleObject.cloneObject=function cloneObject(o){if(typeof(o)!="object"){return o}if(o==null){return o}var newO=new o.constructor();for(var i in o){newO[i]=$moduleObject.cloneObject(o[i])}return newO};$moduleObject.each=function each(obj,process,arraysForward){if(obj){var arrLen;if((arrLen=obj.length)){if(arrLen>0){if(!arraysForward){for(var i=arrLen-1;i>=0;i--){process.call(obj[i],i)}}else{for(var i=0,k=arrLen;i0){for(var i=0,k;k=obj[i];i++){returnValue.push(k)}}}}}return returnValue};$moduleObject.mergeObjects=function mergeObjects(object,mergeArray,config){var p,merge=$moduleObject.mergeObjects;if(config){var cloneFn=(!(p=config.noClone)&&(typeof(p)!=="undefined"))?$moduleObject.cloneObject:null;var shallow=config.shallow||false;var clobber=config.clobber||false;var ignoreFalse=config.ignoreFalse||false}var clone=cloneFn||function(t){return t};$moduleObject.each(mergeArray,function(){for(var i in this){if(object[i]){var val=object[i],thisVal=this[i],type=val.constructor;switch(type){case Object:if((!shallow)&&(object[i])){object[i]=merge(val,[thisVal],config)}else{if((!clobber)&&(ignoreFalse)&&(!thisVal)&&(thisVal.constructor==Boolean)){continue}else{object[i]=clone(thisVal)}}break;case Array:if(thisVal.constructor==Array){object[i]=val.concat(thisVal);break}case String||Number||Array:if((clobber)||!((this[i]==false)&&(ignoreFalse))){object[i]=thisVal}break;default:continue}}else{object[i]=clone(this[i])}}});return object};$moduleObject.Registry=function Registry(objects,noLookupWrapper){function Registry(objects){var members=[];this._$members=members;if(!objects){var objects={}}if(!objects.length>0){members.push(objects)}else{$moduleObject.each(objects,function(){this.extend(objects)})}this._$ready=true}Registry.prototype.add=function(key,value){var returnValue,obj=this._$members[0];if(!obj[key]){obj[key]=value;returnValue=true}else{returnValue=false}return returnValue};Registry.prototype.lookup=function(prop){var e,members=this._$members;for(var i=0,k;k=members[i];i++){if((e=k[prop])!=undefined){return e}}return undefined};Registry.prototype.extend=function(object){this._$members.push(object)};Registry.prototype._$getMembers=function(){return this._$members};return($moduleObject.Registry=function(objects,noLookupWrapper){var returnValue,inst=new Registry(objects);if(!noLookupWrapper){returnValue=function registry(prop){return inst.lookup(prop)};returnValue=$moduleObject.mergeObjects(returnValue,[inst],{noClone:true})}else{returnValue=inst}return returnValue})(objects,noLookupWrapper)};$moduleObject.Mixin=function Mixin(){if(arguments.length>0){switch(arguments.length){case 2:return arguments.callee.mix(arguments[0],arguments[1]);case 1:return arguments[0];default:return arguments.callee.mix(arguments[0],Array.prototype.slice.call(arguments).slice(1))}}else{return{}}};$moduleObject.Mixin.mix=function(target,mixins){var options={noClone:true};for(var i=mixins.length-1,k;k=mixins[i];i--){for(var p in k){var e,l;if(!(e=target[p])){target[p]=k[p]}else{if(typeof((l=k[p]))=="object"){target[p]=$moduleObject.mergeObjects(e,[l],options)}}}}};$moduleObject.Config=function Config(target){function ConfigInstance(target){this._$targetList=[target];this._$defaults={};this._$properties={}}ConfigInstance.prototype.update=function(properties){$moduleObject.mergeObjects(this._$properties,[properties])};ConfigInstance.prototype.setDefaults=function(properties){$moduleObject.mergeObjects(this._$defaults,[properties])};ConfigInstance.prototype.prepare=function(target){if(target){var targetList=this._$targetList;targetList.push(target);if(target==targetList[0]){var config={},defaults=this._$defaults,properties=this._$properties;for(var i in defaults){if(!properties[i]){config[i]=defaults[i]}}for(var i in properties){config[i]=properties[i]}this._$executeOnTargets("_$checkConfig",[config]);for(var i in config){if(!target[i]){target["_$"+i]=config[i]}}this._$executeOnTargets("_$configReady")}}};ConfigInstance.prototype._$executeOnTargets=function(methodName,args){var args=args||[],targetList=this._$targetList,target=targetList[0];for(var i=1,k,m;(k=targetList[i]);i++){if((m=k[methodName])){m.apply(target,args)}}if((m=target[m])){m.apply(target,args)}};return($moduleObject.Config=function(target){return new ConfigInstance(target)})(target)};$moduleString.buildURL=function buildURL(url,data,noescape){var _URL_PARTS=/([^\?]*)(\?|)([^#]*)/;return($moduleString.buildURL=function buildUrl(url,data,noescape){var params="";for(var i in data){params+=i+"="+(!noescape?escape(data[i]):data[i])+"&"}var urlParts=url.match(_URL_PARTS);var start=(urlParts[2]!=="?")?"?":"&";return urlParts[1]+start+params.slice(0,params.length-1)+urlParts[3]})(url,data,noescape)};$moduleString.toObject=function toObject(str){var finalFunction=function toObject(str){return eval("("+str+")")};return($moduleString.toObject=function toObject(str){var returnValue;try{returnValue=finalFunction(str)}catch(e){returnValue=null}return returnValue})(str)};$moduleDOM.getElementsByClassName=function getElementsByClassName(strClassName){var arrReturnElements;if(this.getElementsByClassName){arrReturnElements=this.getElementsByClassName(strClassName);if(arrReturnElements){arrReturnElements=Array.prototype.slice.call(arrReturnElements)}return arrReturnElements}else{var strTagName="*";var arrElements=(strTagName=="*"&&this.all)?this.all:this.getElementsByTagName(strTagName);arrReturnElements=[];strClassName=strClassName.replace(/\-/g,"\\-");var oRegExp=new RegExp("(^|\\s)"+strClassName+"(\\s|$)");var oElement;for(var i=0;i0){for(var i=0,k;k=dLoadedHdlrs[i];i++){k(event)}dLoadedHdlrs=[]}}}function listenDLoaded(envType){switch(envType){case 1:window.addEventListener("DOMContentLoaded",executeDHdlrs,false);window.addEventListener("load",executeDHdlrs,false);break;case 2:ie_interval=window.setInterval(function(){try{document.documentElement.doScroll("left")}catch(e){return}executeDHdlrs(true)},100);break;case 0:finalFunction.call(window,"load",executeDHdlrs)}}return($moduleDOM.addEventListener=finalFunction)(event,listener)}).call(window,"fakeEvent",function(){});$moduleXHR.XMLHttpRequest=function(){if(window.ActiveXObject){return($moduleXHR.XMLHttpRequest=function(){return new ActiveXObject("Microsoft.XMLHTTP")})()}else{return($moduleXHR.XMLHttpRequest=function(){return new XMLHttpRequest()})()}};$moduleXHR.httpGet=function httpGet(url,callback,isSync){var xhr=$moduleXHR.XMLHttpRequest();function checkStatus(){if((xhr.readyState==4)&&(callback)){callback(xhr)}}if(isSync){xhr.open("GET",url,false);xhr.send(null);checkStatus()}else{xhr.open("GET",url,true);xhr.onreadystatechange=checkStatus;xhr.send(null)}};return $lib}); $TORA.initCoreModule("packaging",function(b){var c={};var d={packaging:c};var i=$TORA._$tmp.CORE_RES.common.object.each,e=$TORA._$tmp.CORE_RES.common.object.toArray,j=$TORA._$tmp.CORE_RES.common.object.cloneObject,h=$TORA._$tmp.CORE_RES.common.object.mergeObjects,g=$TORA._$tmp.CORE_RES.common.object.Mixin;c.PackageRegistry=function f(l){function m(p){this._$pkgdb={packageInfo:{},packageStruct:{}};this._$config={baseLocation:p}}m.prototype.registerPackages=function o(p){var q=n(this);this.registerPackages=function(r){i(r,q)};i(p,q)};m.prototype.resolvePackages=function(z,w,r,y){var p,v,t,s,u=this._$pkgdb,q=u.packageInfo;if((s=u.packageStruct[z])){if((w)&&(v=s[w])){if((r)&&(t=v[r])){s=t}else{if(v.ASSOC_PKG.length>0){s=v}}}}if(s){var x;i(s.ASSOC_PKG,function(){if((!x)&&(!q[this])){x=true}});if(!x){if(y){if(s.ASSOC_PKG.length>0){p={};i(s.ASSOC_PKG,function(){p[this]=j(u.packageInfo[this])})}else{p=null}}else{p=Array.prototype.slice.call(s.ASSOC_PKG)}}}return p||[]};m.prototype.resolveDependencies=function(q,s){var u,p,r,t=this._$pkgdb.packageInfo;if((u=t[q])){u=u.depends}else{return[]}r={};i(u,function(){var v;p=true;if((v=t[this])){r[this]=v}});return p?r:null};function n(p){function r(v,y,u){var w,x=(w=y[u])?w:(y[u]={ASSOC_PKG:[]}),s=x.ASSOC_PKG;if(v!=null){if(!v.length){s.push(v)}else{x.ASSOC_PKG=s.concat(v)}}return x}var q=p._$config.baseLocation;return function(){var s=this["direct-name"],E=this["provides-package"],u=this["file-path"],B=p._$pkgdb,t=B.packageInfo,A=B.packageStruct,D=null,v=this["provides-modules"];if(v){for(var y in v){if(typeof v[y]=="object"){D=true}break}}if((u)&&((s&&E)||(s=E))&&(!t[s])){var z,x=[s];var C=!D?x:null;if(u.charAt(0)!=="/"){this["file-path"]=q+u}this["depends"]=e(this["depends"]);t[s]=this;var w=r(C,A,E);i(v,function(G){var F=r(C,w,G);i(this,function(){r(x,F,this)})})}}}c.PackageRegistry=function(p){return new m(p)};return new m(l)};c.ScriptResourceLoader=function a(l,n,p){var o=document.createElement("script");o.type="text/javascript";o.language="Javascript";function m(q,r,s){this._$config={container:document.getElementsByTagName("head")[0],location:q,type:r,lang:s}}m.prototype.getLocation=function(){return this._$config.location};m.prototype.load=function(t){var v,s=this._$config,r=o.cloneNode(false);r.src=s.location;if((v=s.lang)){r.language=v}if((v=s.type)){r.type=v}if(!t){var q=this._$config.container;q.appendChild(r)}else{var u=document.createElement("div");u.appendChild(r);document.write(u.innerHTML)}};return(c.ScriptResourceLoader=function(q,r,s){return new m(q,r,s)})(l,n,p)};c.PackageRepository=function k(m,s){function r(t,v,u){this._$config={waiting:{},packageRoot:v||{},isRequested:{},isLoaded:{}};g(this,[t])}r.prototype.loadFeature=function(z,A,v){var B=this,y,u=this._$config,t=q();var w=this._$parseFeaturePath(z);w.push(true);var x=this.resolvePackages.apply(this,w);this._$loadPackages({pkgInfo:x,request:w,callback:A,now:v,rawRequest:z,additionalInfo:true})};r.prototype._$loadDependencies=function(B){var x=B.pkgInfo;if(x){var y=B.aditionalInfo,z=B.callback;function t(C){var D=A.resolveDependencies(C,true);if((D)&&(w=true)){h(u,[D],{shallow:true})}}var A=this,u={},w;if(y){for(var v in x){t(v)}}else{i(x,t)}if(w){this._$loadPackages({pkgInfo:u,callback:z,now:B.now})}else{z()}}};r.prototype._$loadPackages=function(C){var w=this._$config,u=C.pkgInfo,B=e(u),v=w.isRequested,t=w.isLoaded,x=w.now,y=C.request,A=this;this._$loadDependencies({pkgInfo:u,additionalInfo:true,callback:z});function z(){if((B)&&(B.length>0)){var D,E=(E=C.rawRequest)?[E]:null;(D=l(B,t,C.callback,E))();i(u,function(F){A._$monitorStatus(F,y,D);if((!t[F])&&(!v[F])){v[F]=true;p(this["file-path"],x)}},true)}else{C.callback(C.rawRequest)}}};r.prototype._$monitorStatus=function(v,x,t){var u=this._$config.packageRoot,w=((x)&&(x[2]))?true:false;this._$waitPackage(v,function(y){if((!x)||(o(u,x))){t(v,w)}})};r.prototype._$waitPackage=function(u,v){var w=this._$config.waiting,t=w[u];if(!t){if(typeof t=="undefined"){w[u]=t=[]}else{if(t==null){v(u)}return}}t.push(v)};r.prototype._$parseFeaturePath=function(v){var t=".",u="::";return(r.prototype._$parseFeaturePath=function(z){var w=z.split(t),y=w.length-1,A,x=w[y].split(u);if(x.length>0){A=x[1];w[y]=x[0]}while(w.length<2){w.push(null)}w.push(A||null);return w})(v)};r.prototype.resolveFeaturePath=function(v,u){var t=(v?this._$parseFeaturePath(v):[]);t.push(u||false);t=this.resolvePackages.apply(this,t);return t};r.prototype.insert=function(u,v){var t=this._$config;h(t.packageRoot,[v]);n(this,u);t.isLoaded[u]=true};r.prototype.getPackageRoot=function(){return this._$config.packageRoot};function p(u,t){c.ScriptResourceLoader(q()+u).load(t)}function q(){var t,u;if((u=$TORA("PAGE"))){t="http://"+u.getSiteDomain()}else{t=""}return(v=function v(){return t})()}function l(v,w,u,t){return function(A,z){if(A){w[A]=true}if(!z){for(var y=v.length-1,x;(x=v[y]);y--){if(!w[x]){return}}}u.apply(this,t||[])}}function o(v,x){var w,u=x[1],t=x[2],y=v[x[0]];if(y){if(!u){if(!t||y[t]){w=true}}else{if((y=y[u])){if((t)&&!(y=y[t])){w=false}else{w=true}}else{w=false}}}else{w=false}return w}function n(u,t){var w=u._$config.waiting,v;if((v=w[t])){delete w[t];v=v.slice();w[t]=null;i(v,function(){this(t)},true)}}c.PackageRepository=function(t,u){return new r(t,u)};return new r(m,s)};return d}); $TORA.addPackages([{description:"Provides user, page, and site information.","file-path":"environment.js","provides-package":"environment"},{description:"Provides common utility methods and types.","direct-name":"common-core","file-path":"common/common_core.js","provides-package":"common"},{description:"Provides non-core extra utility methods and types.","direct-name":"common-extras","file-path":"common/common_extras.js","provides-package":"common","provides-modules":{object:["Iterator"],type:["EventObject","EventManager"]}},{description:"Provides common AJAX components.","direct-name":"common-ajax","file-path":"common/common-type_ajax.js",depends:"common-core","provides-package":"common","provides-modules":{type:["StateMachine","SimpleWidget","DataProvider"]}},{description:"Provides a base for interaction with external sources.","direct-name":"external-core","file-path":"external/external_core.js","provides-package":"external",depends:"common-extras"},{description:"Provides various interfaces for interaction with external sources.","direct-name":"external-interfaces","file-path":"external/external_interfaces.js","provides-package":"external",depends:"external-core"},{description:"Provides basic advertising interfaces for site interaction.","direct-name":"external-advertising","file-path":"external/external_ads.js","provides-package":"external","provides-modules":{advertising:["BasicAdvert","USFormatAdapter"]},depends:"external-core"},{"direct-name":"content-frames","file-path":"content-frames.js",depends:"external-interfaces","provides-package":"content","provides-modules":{frames:true}},{description:"Provides a core UI framework","direct-name":"ui-core","file-path":"ui/ui_core.js","provides-package":"ui","provides-modules":{control:true,animation:true}},{"direct-name":"photogallery-core","file-path":"/resources/photogallery/js/photogallery_core.js",depends:"common-extras","provides-package":"photogallery","provides-modules":{ui:true,data:true}},{"direct-name":"photogallery-hp","file-path":"/resources/photogallery/js/photogallery_hp.js",depends:["photogallery-core","common-ajax","ui-core","thirdparty-addthis"],"provides-package":"photogallery","provides-modules":{ui:["LightGalleryWidget"]}},{"direct-name":"video","file-path":"/resources/video/js/video-package.js",depends:"common-extras","provides-package":"video"},{"direct-name":"reporting-core","file-path":"reporting/reporting_core.js","provides-package":"reporting"},{"direct-name":"reporting-basic","file-path":"reporting/reporting_basic.js",depends:"reporting-core","provides-package":"reporting","provides-modules":{processors:["NetworkInfoProcessor","ComscoreProcessor","OmnitureProcessor"],dispatchers:["ComscoreDispatcher","OmnitureDispatcher"]}},{"direct-name":"games-scores","file-path":"/resources/igroups/js/games/games-scores.js",depends:"common-ajax","provides-package":"games","provides-modules":{scores:true}},{"file-path":"/resources/igroups/js/shuffle/shuffle.js",depends:["common-ajax","thirdparty-addthis"],"provides-package":"shuffle"},{"direct-name":"thirdparty-addthis","file-path":"thirdparty/addthis/thirdparty-addthis.js","provides-package":"3rdparty.AddThis"},{"direct-name":"thirdparty-omniture","file-path":"thirdparty/omniture/thirdparty-omniture.js","provides-package":"3rdparty","provides-modules":{omniture:true}}]); }