Download=Class.create();Download.prototype={FUNCTION_CACHE_MAPPING:$H(),OBSERVER_CACHE:[],actionTrigger:null,productType:{foxaddon:"firefoxaddon",browser:"browser",nodown:"nodownload"},initialize:function(b,a,c){this.type=b;this.source="";this.options=Object.extend({delay:1,addloading:true},a||{});this.params=Object.extend({},c||{});this.originaltoppos={down_instructions:($("down_instructions")!=null)?parseInt($("down_instructions").style.top):0,down_instructions2:($("down_instructions2")!=null)?parseInt($("down_instructions2").style.top):0,dialog_notification:($("dialog_notification")!=null)?parseInt($("dialog_notification").style.top):0};this.addObservers();this.themeDownload=false;this.downloadttype="";this.gmRecaptcha="";this.themeInst=null;this.profileSubmitted=false;if(this.params.theme!=undefined&&this.params.theme instanceof Theme_Builder){this.themeInst=this.params.theme}},doOverlay:function(){$("down_overlay").show()},submitProfile:function(f){inputObj={};this.actionTrigger=f.element();var c="";var e=$("down_instructions");if(e!=null){var b=($("down_instructions").visible())?"down_instructions":"down_instructions2";Effect.ScrollTo($(b))}var g="/gmasync/download";if(this.actionTrigger.tagName=="INPUT"&&this.actionTrigger.type=="button"){var d=this.actionTrigger.up("FORM");if(d==undefined){if((attrib=this.actionTrigger.readAttribute("formsubmit"))!=undefined){d=$(attrib)}else{parentelem=this.actionTrigger.up(1);d=parentelem.down("FORM")}}this.params.form=d.id;g=d.action;c=d.name}allinputstext=$(this.params.form).getInputs("text");allinputspass=$(this.params.form).getInputs("password");allinputshidden=$(this.params.form).getInputs("hidden");defaultchecked=$$("input.defaultchecked");allinputstext.each(function(h){inputObj[h.name]=h.value});allinputspass.each(function(h){inputObj[h.name]=h.value});allinputshidden.each(function(h){inputObj[h.name]=h.value});selected=$A($(this.params.form).getElementsByTagName("select"));if(selected.size()>0){selected.each(function(h){inputObj[h.name]=h.value})}defaultchecked.each(function(h){if(h.checked){inputObj[h.name]=h.value}});if(Prototype.Browser.IE){inputObj.browser="ie6"}if(this.options.addloading){this.loading()}var a=new AjaxSetInfo("submitdownload",{pars:inputObj},{source:g});AjaxSetInfo.addMethods({AfterProcess:this.postDownload.bind(this)}).bind(this);a.makeSet();this.profileSubmitted=true},loading:function(){var a=new Loading("gm_popup_dialog","world","Preparing Download...",{background:true,color:"#FFFFFF"},{width:260});a.modalMask();this.FUNCTION_CACHE_MAPPING.set("loadinginst",a)},getDownload:function(b){var a=($("down_instructions").visible())?"down_instructions":"down_instructions2";Event.stop(b);inputObj={};if($("causes_coverflow")!=null){swfobject.embedSWF("/flash/coverflow.swf","causes_coverflow",300,210,"9.0.0","",{xml_path:"/causes_v7.xml"},{menu:false,scale:"noScale",wmode:"transparent"})}var j=b.element();if(this.themeDownload){inputObj.theme=this.themeInst.getSelection();var i=$("themebuildExt");if(i!=null&&i.hasClassName("themebuildExt")){var d=i.value+"/thm/"+inputObj.theme;document.location=d;return}}Effect.ScrollTo($(a));if(b.element().hasClassName("causeimg")){causeCollection=new Array();var h=b.element();var f=b.element().up(1);if(f!=null||f!=undefined){causeCollection.push(f.down("input.req").value)}else{var c=h.readAttribute("refcode");if(!c.blank()){causeCollection.push(c)}}inputObj.causes=causeCollection}if(Prototype.Browser.IE){inputObj.browser="ie6"}var e=new Loading("gm_popup_dialog","world","Preparing Download...",{background:true,color:"#FFFFFF",animations:false},{width:260});e.modalMask();this.FUNCTION_CACHE_MAPPING.set("loadinginst",e);formaction=j.readAttribute("formaction");if(formaction!=undefined){inputObj.formaction=formaction;var k=j.readAttribute("downtype");if(k!=undefined){inputObj.downloadtype=k}var g=new AjaxSetInfo("submitdownload",{pars:inputObj},{source:"/gmasync/download"})}AjaxSetInfo.addMethods({AfterProcess:this.postDownload.bind(this)}).bind(this);g.makeSet()},getSigninForm:function(d){var f=new GM_overlib();var c=d.element();f.generateoverlib({},{bubbleselect:"progress",innercontent:" Retrieving signin form...",elem:c,bubbleidpostfix:c.identify(),regex:c.identify(),anchorY:-20,anchorX:-150});var g=$("contentverify").wrap("div");var b={contentverify:g.innerHTML,postreg:$("downloadtype").value};var a=new AJAXgetinfo("getsigninForm",{source:"/gmasync/getsigninform"},{pars:b});AJAXgetinfo.addMethods({afterProcess:function(k){var e={actionparams:{download:this},okAction:function(l){var m=new Loading("gm_popup_dialog","world","Preparing Download...",{animations:false},{width:250});m.modalMask();l.download.submitProfile(l.evalue)}.bind(this)};f.disabletip(c.identify());var h=k.responseText.evalJSON();var i=h.signinform;params={header:"Signin",message:i,actions:e,doverlay:"down_overlay",buttonnames:{ok:"Submit"}};options={width:400,buttons:["ok","close2"],override:true,overflow:true,animations:false};var j=new Popup_dialog(options,params);this.FUNCTION_CACHE_MAPPING.set("popupdiaginst",j)}.bind(this)});a.getinfoGen2()},addObservers:function(){if($("instruction_wrapper")!=null){$("instruction_wrapper").select("div.close").invoke("observe","click",this.closeOverlay.bind(this))}var k=Element.getWidth(document.body);if($("down_instructions2")!=null){var f=$("down_instructions2").getWidth();var i=k-f}if(Prototype.Browser.IE){$("down_instructions2").setStyle({left:i+"px"});var e=getPageDimensions();$("down_overlay").setStyle({position:"absolute",height:e.height});$("answer_yes").observe("click",this.notification.bindAsEventListener(this,"yes"));$("answer_no").observe("click",this.notification.bindAsEventListener(this,"no"));if($("iesecuritycheck")!=null&&$("iesecuritycheck").value=="securitycheck"){$$("div.main_content").invoke("hide");$$("div.footer").invoke("hide");var d=$("down_instructions2").down("div#IE_instructions");d.show();d.down("li#clickYellowBar").setStyle({color:"#c0c0c0"});d.down("li#clickYellowBar div.arrow_str_up").hide();$("down_instructions2").show();var j=$("down_instructions2").getHeight();$("down_instructions2").setStyle({top:-j+"px"});$("down_overlay").setStyle({display:"block"});document.location=$("downuri").value;var h=$("down_instructions2").getHeight();new Effect.Move($("down_instructions2"),{y:h,x:0,duration:1})}}else{downInstructions=$("down_instructions2");if(downInstructions!=null){downInstructions.setStyle({left:i+"px"})}}this.testIfGeckoBrowser();if(!this.testIfCanDownloadBrowser()){return}if(this.type=="install"){$("downbrowserext").observe("click",this.doOverlay);processInfo.makeSet()}if(this.type=="installLoggedin"){$$("a#download_button_grn").invoke("observe","click",this.getDownload.bindAsEventListener(this));$$("a#select_addon_download").invoke("observe","click",this.getDownload.bindAsEventListener(this))}if(this.type=="step2"){Event.observe($("applychange"),"click",this.activateCapture.bindAsEventListener(this));var a=$("get_signupform");if(a!=null){a.observe("click",this.getSigninForm.bind(this))}}if(this.type=="home"){var b=$$(".download_button_grn");var l=$("themeselection");if(b.size()!==0){b.each(function(m){m.onclick=function(){return false}});b.invoke("observe","click",this.getDownload.bindAsEventListener(this))}var c=$$("div.sidebar div#downbrowse");if(c.size()!==0){sidedownsid="div.sidebar div#downbrowse<%cssselect%>";this.FUNCTION_CACHE_MAPPING.set(sidedownsid,this.getRegistrationForm.bindAsEventListener(this));c.invoke("observe","click",this.FUNCTION_CACHE_MAPPING.get(sidedownsid));this.OBSERVER_CACHE.push(sidedownsid)}if(l!=null){theme_selectionid=l.identify();this.FUNCTION_CACHE_MAPPING.set(theme_selectionid,this.ifthemeSelected.bindAsEventListener(this));l.observe("click",this.FUNCTION_CACHE_MAPPING.get(theme_selectionid));this.OBSERVER_CACHE.push(theme_selectionid);var g=$("download_addon_button");if(g!=null){download_addon_buttonid=g.identify();this.FUNCTION_CACHE_MAPPING.set(download_addon_buttonid,this.ifthemeSelected.bindAsEventListener(this));g.observe("click",this.FUNCTION_CACHE_MAPPING.get(download_addon_buttonid));this.OBSERVER_CACHE.push(download_addon_buttonid)}}if($$("table.c_mod_lg").size()!=0){$$("table.c_mod_lg div.cause_button a.causeimg").invoke("observe","click",this.getRegistrationForm.bindAsEventListener(this));$$("table.c_mod_lg div.cause_button a.textlink").invoke("observe","click",this.getRegistrationForm.bindAsEventListener(this))}}},releaseObservers:function(){this.OBSERVER_CACHE.each(function(c){var a=/<%cssselect%>$/.test(c);if(a){var b=c.replace(/<%cssselect%>$/,"");if($$(b).size()!==0){$$(b).invoke("stopObserving","click",this.FUNCTION_CACHE_MAPPING.get(c))}}else{$(c).stopObserving("click",this.FUNCTION_CACHE_MAPPING.get(c))}}.bind(this))},resetObservers:function(){this.releaseObservers();this.addObservers()},notification:function(c){Event.stop(c);var b=$A(arguments);b.shift();var a=b[0];if(a=="yes"){$("IE_instructions").show();$("down_instructions2").setStyle({top:(0)+"px"});new Effect.Parallel([new Effect.Fade("dialog_notification",{sync:true}),new Effect.Appear("down_instructions2",{sync:true})],{duration:1,afterFinish:function(){$("bool_notification").hide()}})}else{if(a=="no"){new Effect.Parallel([new Effect.Fade("heading_1",{sync:true}),new Effect.Fade("bool_notification",{sync:true}),new Effect.Fade("notification_arrow",{sync:true}),new Effect.Appear("heading_2",{sync:true}),new Effect.Appear("install_notification",{sync:true})],{duration:1})}}},closeOverlay:function(){var a=($("down_instructions").visible())?"down_instructions":"down_instructions2";$("down_instructions").setStyle({top:this.originaltoppos.down_instructions+"px"});var c=$("browser_not_supported");var b=$("browser_instructions_nosupport_mac_butfirefox");new Effect.Parallel([new Effect.Fade("down_overlay",{sync:true}),new Effect.Fade(a,{sync:true})],{duration:0.5,afterFinish:function(){$("down_instructions").setStyle({top:this.originaltoppos.down_instructions+"px"});$("down_instructions2").setStyle({top:this.originaltoppos.down_instructions2+"px"});if($("causes_coverflow")!=null){swfobject.embedSWF("/flash/coverflow.swf","causes_coverflow",300,210,"9.0.0","",{xml_path:"/causes_v7.xml"},{menu:false,scale:"noScale"})}if(c!=null){c.hide()}if(b!=null){b.hide()}}.bind(this)})},ifthemeSelected:function(a){this.themeDownload=true;this.getDownload(a)},testIfGeckoBrowser:function(){if(!Prototype.Browser.Gecko){var a=$("download_extension_button");if(a!=null){a.observe("click",this.cannotDownloadExtension.bind(this));a.onclick=function(){return false}}}},testIfCanDownloadBrowser:function(){var a=navigator.userAgent.toLowerCase();if((a.indexOf("mac")!=-1)){var b=$("download_button_grn");if(b!=null){b.observe("click",this.cannotDownloadBrowser.bind(this));b.onclick=function(){return false}}return false}else{return true}},setThemeInst:function(a){this.themeInst=a},cannotDownloadExtension:function(b){Event.stop(b);var a=($("down_instructions").visible())?"down_instructions":"down_instructions2";if($("causes_coverflow")!=null){swfobject.embedSWF("/flash/coverflow.swf","causes_coverflow",300,210,"9.0.0","",{xml_path:"/causes_v7.xml"},{menu:false,scale:"noScale",wmode:"transparent"})}Effect.ScrollTo($(a));if(Prototype.Browser.IE){test=getPageDimensions();$("down_overlay").setStyle({position:"absolute",height:test.height})}$("browser_not_supported").show();$("down_instructions2").show();var f=1;var c="down_instructions2";var e=$(c).getHeight();$("down_instructions2").setStyle({top:-e+"px"});$("welcome_header2").down("b").update("");$("installing_is_easy2").update("Hello User!");$("divInstallingIsEasy2").setStyle({color:"#000000",fontSize:"16px"});Effect.Appear("down_overlay",{duration:0.5,from:0,to:0.7});var d=$(c).getHeight();new Effect.Move($(c),{duration:1,y:d})},cannotDownloadBrowser:function(){Effect.Appear("down_overlay",{duration:0.5,from:0,to:0.7});if($("causes_coverflow")!=null){swfobject.embedSWF("/flash/coverflow.swf","causes_coverflow",300,210,"9.0.0","",{xml_path:"/causes_v7.xml"},{menu:false,scale:"noScale",wmode:"transparent"})}$("browser_instructions_nosupport_mac_butfirefox").show();var b=$("down_instructions2");b.show();var e=1;var a="down_instructions2";var d=$(a).getHeight();$("down_instructions2").setStyle({top:-d+"px"});$("welcome_header2").down("b").update("");$("installing_is_easy2").update("Hello Mac User!");$("divInstallingIsEasy2").setStyle({color:"#000000",fontSize:"16px"});var c=b.getHeight();new Effect.Move(b,{duration:1,y:c})},refreshFormFieldColors:function(){var a=["enrollform","sign_form_signup_page"];a.each(function(c){var b=$(c);if(b!=null){allinputstext=b.getInputs("text");allinputspass=b.getInputs("password");allinputstext.invoke("setStyle",{borderColor:"#D2D2FF"});allinputspass.invoke("setStyle",{borderColor:"#D2D2FF"})}})},setPixelConfirm:function(a){body=$$("body")[0];if(body){pixel=new Element("img",{src:a});body.appendChild(pixel)}},postDownload:function(b){var a=b.responseText.evalJSON();this.FUNCTION_CACHE_MAPPING.get("loadinginst").fadeMask();this.refreshFormFieldColors();if(!a.err){var c=this.FUNCTION_CACHE_MAPPING.get("popupdiaginst");if(GM.validationobject!=undefined){GM.validationobject.refresh()}if(a.confirm!=undefined){this.setPixelConfirm(a.confirm)}if(c!=undefined){c.terminateDialog()}if(a.type==this.productType.foxaddon){this.extensionDownloadNotice(a)}if(a.type==this.productType.browser){this.browserDownloadNotice(a)}else{if(a.redirect){document.location=a.url;return}else{return}}}else{if(GM.validationobject!=undefined){GM.validationobject.refresh()}$(a.errcontainer).addClassName("ui-state-error");this.testandReloadCaptcha(a.errcollection);str=this.createErrorString(a.errcollection);$(a.errcontainer).update(str);$("down_overlay").hide();this.FUNCTION_CACHE_MAPPING.get("popupdiaginst").bodyOverflow().bind(this)}},testandReloadCaptcha:function(a){a.each(function(c){if(c.field=="recaptcha"){var b=$("recaptcha_reload_btn");if(b!=null){Recaptcha.reload()}if(this.gmRecaptcha.empty()||this.gmRecaptcha==null){this.gmRecaptcha=$("gm_recaptcha")}this.gmRecaptcha.show()}}.bind(this))},createErrorString:function(c){str='<ul class="errors">';for(var a=0;a<c.length;a++){var b=c[a]["field"];str+="<li>"+c[a]["errtext"]+"</li>";if($(b)!=null){$(b).style.borderColor="#FF0000"}}str+="</ul>";return str},browserDownloadNotice:function(b){var c=navigator.userAgent;Object.extend(Prototype.Browser,{Chrome:c.indexOf("Chrome")>-1});if(parseInt(b.errcollection.length)==0){if(Prototype.Browser.IE&&b.type=="browser"){$("bool_notification").show();$("heading_1").show();$("dialog_notification").down("div#notification_arrow").show();$("install_link").href=b.url;doEventDispatch($("install_link"));var a="dialog_notification";var f=1}else{if(Prototype.Browser.Gecko&&b.type!="browser"){$("ff3_instructions").show();$("down_instructions").show();var a="down_instructions";var f=1}else{if(Prototype.Browser.Opera&&b.type!="browser"){$("other_instructions").show();$("down_instructions").show();var a="down_instructions";var f=0}else{if(b.type=="browser"&&Prototype.Browser.Chrome){$("browser_instructions_chrome").show();$("down_instructions2").show();var f=1;var a="down_instructions2";var e=$(a).getHeight();$("down_instructions2").setStyle({top:-e+"px"})}else{if(b.type=="browser"&&Prototype.Browser.Opera){$("browser_instructions").show();$("down_instructions2").show();var f=1;var a="down_instructions2"}else{if(b.type=="browser"&&!Prototype.Browser.IE&&!Prototype.Browser.Gecko){$("browser_instructions").show();$("down_instructions2").show();var f=1;var a="down_instructions2"}else{if(b.type=="browser"&&Prototype.Browser.Gecko){$("browser_instructions_ff").show();$("down_instructions2").show();var f=1;var a="down_instructions2";$("browser_instructions_ff").down("span#productname").update(b.filename);var e=$(a).getHeight();$("down_instructions2").setStyle({top:-e+"px"})}else{$("other_instructions").show();$("down_instructions").show();var a="down_instructions";var f=1}}}}}}}window.location=b.url}else{if(b.err.in_array("is_mac")){$("browser_instructions_nosupport_mac_butfirefox").show();$("down_instructions2").show();var f=1;var a="down_instructions2";var e=$(a).getHeight();$("down_instructions2").setStyle({top:-e+"px"});$("welcome_header2").down("b").update("");$("installing_is_easy2").update("Hello Mac User!");$("divInstallingIsEasy2").setStyle({color:"#000000",fontSize:"16px"})}}$("down_overlay").show();if(Prototype.Browser.IE){Effect.Appear(a,{duration:f})}else{var d=$(a).getHeight();new Effect.Move($(a),{duration:1,y:d})}waitforbardown(1,orgheight)},extensionDownloadNotice:function(b){if(window.innerHeight){orgheight=window.innerHeight}else{if(document.all){orgheight=document.body.clientHeight}}if(Prototype.Browser.Gecko){$("ff3_instructions").show();var a="down_instructions";var c=1}else{return}$("down_overlay").show();Effect.Appear(a,{duration:c});var d={GlobalMojo:{URL:b.url,IconURL:b.iconurl,toString:function(){return this.URL}}};InstallTrigger.install(d);waitforbardown(1,orgheight)},yahoodefaultcheck:function(b){var f=b.element();if(!f.checked){$("down_overlay").setStyle({zIndex:10005});var c=$("search_engine_wrap");if(window.innerHeight&&window.innerWidth){winheight=window.innerHeight;winwidth=window.innerWidth}else{winheight=document.body.offsetHeight;winwidth=document.body.offsetWidth}confirmheight=$("search_engine_wrap").getHeight();confirmwidth=$("search_engine_wrap").getWidth();var h=(winwidth-confirmwidth)/2;var g=(winheight-confirmheight)/2;var a="";if(Prototype.Browser.IE){a="absolute"}else{a="fixed"}c.show();c.setStyle({position:a,left:h+"px",zIndex:"10010"});var d=$("search_engine_wrap").getStyle("top");var e=g-(parseInt(d));new Effect.Move($("search_engine_wrap"),{duration:0.8,y:e})}},defaultengineselected:function(){var a=$("search_engine_wrap");var b=$("search_engine_wrap").getStyle("top");var c=-300-(parseInt(b));new Effect.Move($("search_engine_wrap"),{duration:0.5,y:c});new Effect.Parallel([new Effect.Fade("search_engine_wrap",{sync:true})],{duration:0.5,afterFinish:function(){a.setStyle({top:"-300px"})}});$("down_overlay").setStyle({zIndex:1000})},activateCapture:function(d){if(this.profileSubmitted){this.submitProfile(d);return}var a={actionparams:{download:this},okAction:function(e){var f=new Loading("gm_popup_dialog","world","Preparing Download...",{animations:false},{width:250});f.modalMask();this.gmRecaptcha=$("gm_recaptcha_clone");this.FUNCTION_CACHE_MAPPING.get("popupdiaginst_captcha").terminateDialog();$("gm_recaptcha").replace(this.gmRecaptcha.hide());e.evalue.element().writeAttribute("formsubmit","form1");e.download.submitProfile(e.evalue)}.bind(this)};var b=$("gm_recaptcha").clone(true).show();b.id="gm_recaptcha_clone";params={header:"Are You Human?",message:b,actions:a,doverlay:"down_overlay",buttonnames:{ok:"Finish"}};options={width:500,buttons:["ok","close2"],override:true,overflow:true,animations:false};var c=new Popup_dialog(options,params);this.FUNCTION_CACHE_MAPPING.set("popupdiaginst_captcha",c)}};