﻿// JScript File

var DSLPrequalFrm = function(cfg){
    this.cfg = cfg;
}
DSLPrequalFrm.prototype.Init = function(){
    this.ov = $('overlay');
    var bname = this.cfg.bname;
    this.state = $(bname+'_hdnType');
    this.ctx = $(bname+'_hdnCtx');
    this.ok = $(bname+'_imgSave');
    //this.error = $('lblError');
    this.ediv = $(bname+'_divError');
    this.edivCnt = this.ediv.innerHTML;
    this.phone = new PhoneVal({    baseName:bname,
                                   fields:{ac:$(bname+'_ppcPhone_txtData'),exc:$(bname+'_ppcPhone_txtExchange'), ext:$(bname+'_ppcPhone_txtLine') 
                                   },
                                   errflds:{phone:$(bname+'_iphone')}
                                   });
    this.addr = new Addr({ baseName:bname,
                            fields:{addr1:$(bname+'_txtAddr1'),addr2:$(bname+'_txtAddr2'), addr3:$(bname+'_txtAddr3'), 
                                    city:$(bname+'_txtCity'), state:$(bname+'_ddlState'),county:null, country:null,
                                    zip:$(bname+'_txtZip'),zipp:$(bname+'_txtZipP')},
                        errflds:{addr1:$(bname+'_iaddr1'),city:$(bname+'_icity'), state:$(bname+'_istate'), zip:$(bname+'_izip')}
                        });
    //this.ModalInit();    
    if(this.ok ) $addHandler(this.ok,'click',delegate(this,this.Validate));
}
DSLPrequalFrm.prototype.LoadCtx=function(){
    var c=this.ctx.value;
    var vals = this.toJson(c);
        this.addr.ele.addr1.value=vals.addr.addr1;
        this.addr.ele.city.value=vals.addr.city;
        this.addr.ele.zip.value=vals.addr.zip;
}
DSLPrequalFrm.prototype.toJson = function(val){
    var v = val.split('');
    if( v[0]=='{' ) return val;
    v = val.split("|");
    var res = {pt:0,cc:{ccnum:'',month:'',year:''},ach:{rtnum:'',accnum:''},
                addr:{addr1:'',addr2:'',addr3:'',city:'',state:'',county:'',country:'',zip:'',zipp:''}};
    var le = v.length,nv=[],ke='',va='';
    for( var i=0;i<le;i++){
        nv=v[i].split(":");
        ke=nv[0];va=(nv.length==2)?nv[1]:"";
        switch( nv[0] ){ 
            case 'addr1':res.addr.addr1=va;break;
            case 'addr2':res.addr.addr2=va;break;
            case 'state':res.addr.state=va;break;
            case 'city':res.addr.city=va;break;
            case 'zip':res.addr.zip=va;break;
        }
    }
    return res;
}
DSLPrequalFrm.prototype.Validate = function(src){
    var errors = [],res=null, flds=[];
    res = this.addr.Validate();
    errors = errors.concat(res.err);
    flds = res.flds;
    res = this.phone.Validate();
    errors = errors.concat(res.err);
    flds = flds.concat(res.flds);

    if( errors.length == 0 ){ this.HideError();this.Serialize();document.forms[0].submit();}
    else { src.preventDefault(); src.stopPropagation(); this.ShowError( errors ); this.ShowErrorEle(flds); }
}
DSLPrequalFrm.prototype.ShowError = function( arr ){
    var msg="",l=arr.length;
    for(var i=0;i<l;i++) {msg += arr[i]+ "&nbsp;"; msg += (i%2) ? "<br/>" : "";}
    if( msg ) {
        //this.error.innerHTML = msg;
        // swap inner html
        //this.ShowModal();
        this.ediv.innerHTML = msg;
        this.ediv.style.color = 'red';
    }
}
DSLPrequalFrm.prototype.HideError = function(  ){
    this.ediv.innerHTML = this.edivCnt;
    this.ediv.style.color = '';
}
DSLPrequalFrm.prototype.ShowErrorEle = function(arr){
    for( var i=0;i<arr.length;i++) if( arr[i] && arr[i].style ) arr[i].style.display = '';
}
DSLPrequalFrm.prototype.Serialize = function(){
    var c ='';
    c+=this.addr.Serialize();
    this.ctx.value = c;//this.error.innerHTML = '';
}
DSLPrequalFrm.prototype.ShowModal = function() {
    DOM.hideddl();
	var cfg = DOM.PageSize();
	this.ediv.style.top = parseInt(cfg.height)/2 - 39 + 'px'; 
	this.ediv.style.left = parseInt(cfg.width)/2 - 100 + 'px'; 
    this.ov.style.display = 'block';
    this.ediv.style.display = 'block';
    this.ediv.zIndex = '9999';
}
DSLPrequalFrm.prototype.HideModal = function() {
    DOM.showddl();
    this.ov.style.display = 'none';
    this.ediv.style.display = 'none';
}
DSLPrequalFrm.prototype.ModalInit = function() {
	var cfg = DOM.PageSize();
//	this.ov = DOM.create('div');
//	this.ov.id = 'overlay';
//	this.ov.className = 'overlay';
	this.ov.style.display = 'none';
	this.ov.style.height = cfg.height + 'px';
//	document.body.appendChild(this.ov);
//	document.body.appendChild(this.ediv);
}
    var sSelectedTab = "Features";
    var aryTabs = new Array("ServicePlans","Features","SysReq","Faq");
    
    function displayTab(id)
    {
        for (i=0; i<aryTabs.length; i++)
        {
            if ($(aryTabs[i]+"Tab") && $("TabContent"+aryTabs[i])){
                $(aryTabs[i]+"Tab").className = (id==aryTabs[i]) ? "TabOn" : "TabOff";
                $(aryTabs[i]+"TabCornerLeft").src = (id==aryTabs[i]) ? "i.ashx?i=Dsl/Landing/tab_whtL.gif" : "i.ashx?i=Common/glassblock.gif";
                $(aryTabs[i]+"TabCornerRight").src = (id==aryTabs[i]) ? "i.ashx?i=Dsl/Landing/tab_whtR.gif" : "i.ashx?i=Common/glassblock.gif";
                $("TabContent"+aryTabs[i]).style.display = (id==aryTabs[i]) ? "block" : "none";
            }
        }
        sSelectedTab = id;
    }
    
    function displayRollover(id)
    {
        if (sSelectedTab==id) return;
        $(id+"TabCornerLeft").src = "i.ashx?i=Dsl/Landing/tab_rollover_L.png";
        $(id+"TabCornerRight").src = "i.ashx?i=Dsl/Landing/tab_rollover_R.png";
        $(id+"Tab").className = "TabHover";
    }
    
    function hideRollover(id)
    {
        if (sSelectedTab==id) return;
        $(id+"TabCornerLeft").src = "i.ashx?i=Common/glassblock.gif";
        $(id+"TabCornerRight").src = "i.ashx?i=Common/glassblock.gif";
        $(id+"Tab").className = "TabOff";
    }
    
    function toggle(obj){
	    var o = $(obj);
	    if (o && o.style.display == 'none') {
		    for (i =1; i<9; i++){toggleClose($('a'+i));}
		    toggleOpen(o);
	    }else if (o && o.style.display == 'block' || o.style.display == 'table-row') {toggleClose(o);}
    }	
    function toggleOpen(o){if (o){o.style.display = 'block';}}
    function toggleClose(o){if (o){o.style.display = 'none';}}

    function showWaitListOverlay(){toggleOpen($('WaitListOverlay'));}
    function hideWaitListOverlay(){toggleClose($('WaitListOverlay'));}
    function fnNavigateMB(srep){
        var url = 'https://moonbase.peoplepc.com/enrollment/track_2.asp?EPid=16&TRKID=000&OfferCode=PHONE6&srep=' + srep;
        document.location.href = url;
        return false;
    }
