/**********************************************************************
 * Project HeardSys2
 * File js/custom.js
 * Javascript for pagination of survey form
 * David Johnson softdev@festsoft.co.uk July 2011
 **********************************************************************/
function page_select() {
//    if(pagenumber==2) {
    var valid = verify();
        if (!valid) {
            return;
        }
//    }
    var el;
    progress=20*(pagenumber-1);
    el=document.getElementById('meter-value');el.style.width=progress+"%";
//    if(document.all){
//         document.getElementById('meter-text').innerText = "Progress "+progress+"%";
//    } else{
//         document.getElementById('meter-text').textContent = "Progress "+progress+"%";
//    }

    var hasInnerText = (document.getElementsByTagName("body")[0].innerText != undefined) ? true : false;
    el = document.getElementById('meter-text');

    if(!hasInnerText){
        el.textContent = "Progress "+progress+"%";
    } else {
        el.innerText = "Progress "+progress+"%";
    }
    switch(pagenumber) {
        case(6):
            var frm=document.getElementById('contactForm');
            frm.submit();
            break;
        case(5):
            el=document.getElementById('page1');el.style.display='none';
            el=document.getElementById('page2');el.style.display='none';
            el=document.getElementById('page3');el.style.display='none';
            el=document.getElementById('page4');el.style.display='none';
            el=document.getElementById('page5');el.style.display='block';
            el=document.getElementById('hs2_survey_end');el.value="Submit";el.style.color="#FFFFFF";
            pagenumber++;
            break;
        case(4):
            el=document.getElementById('page1');el.style.display='none';
            el=document.getElementById('page2');el.style.display='none';
            el=document.getElementById('page3');el.style.display='none';
            el=document.getElementById('page4');el.style.display='block';
            el=document.getElementById('page5');el.style.display='none';
            el=document.getElementById('hs2_survey_end');el.value="Next";el.style.color="#FFFFFF";
            pagenumber++;
            break;
        case(3):
            el=document.getElementById('page1');el.style.display='none';
            el=document.getElementById('page2');el.style.display='none';
            el=document.getElementById('page3');el.style.display='block';
            el=document.getElementById('page4');el.style.display='none';
            el=document.getElementById('page5');el.style.display='none';
            el=document.getElementById('hs2_survey_end');el.value="Next";el.style.color="#FFFFFF";
            pagenumber++;
            break;
        case(2):
            el=document.getElementById('page1');el.style.display='none';
            el=document.getElementById('page2');el.style.display='block';
            el=document.getElementById('page3');el.style.display='none';
            el=document.getElementById('page4');el.style.display='none';
            el=document.getElementById('page5');el.style.display='none';
            el=document.getElementById('hs2_survey_end');el.value="Next";el.style.color="#FFFFFF";
            pagenumber++;
            break;
        case(1):
        default:
            el=document.getElementById('page1');el.style.display='block';
            el=document.getElementById('page2');el.style.display='none';
            el=document.getElementById('page3');el.style.display='none';
            el=document.getElementById('page4');el.style.display='none';
            el=document.getElementById('page5');el.style.display='none';
            el=document.getElementById('hs2_survey_end');el.value="Next";el.style.color="#FFFFFF";
            pagenumber++;
            break;
    }
}

function hide_months(code) {
    var el=document.getElementById('target_months');
    if (code==1) {
        el.style.display='none';
    } else {
        el.style.display='block';
    }
}

function toggleInfo(element) {
    var id=element.id;
    var info_id=id.substring(4);
    var status=element.checked ? 'on' : 'off';
    var info=document.getElementById(info_id);
    var mode= status=='on' ? 'inline' : 'none';
    info.style.display= mode;
    //alert("id="+id+"\ninfo_id="+info_id+"\nChecked="+status+"\nmode="+mode);
}

function verify() {
    /*Controls form submission enforcing non-empty fields*/
    //Required fields & translate field names to labels
    var decode=new Object();
    decode.hs2_first="First name";
    decode.hs2_last="Last name";
    decode.hs2_addr1="Address line 1";
    decode.hs2_town="Town";
    decode.hs2_state="State";
    decode.hs2_country="Country";
    decode.hs2_postcode="Postcode";
    decode.hs2_email="Email";
    var ff=document.getElementById("contactForm");
    var msg="";
    var empty_fields="";
    for(name in decode) {
        var e=ff[name];
        e.optional=false;
        var label=decode[e.name];
//        alert("Label="+label+"\nName="+e.name+"\nValue="+e.value+"\nType="+e.type);
        if(((e.type=="text")||(e.type=="textarea")) && !e.optional) {
            if((e.value==null)||(e.value=="")||isblank(e.value)) {
                empty_fields+="\n          "+label;
                continue;
            }
        }
    }
    if(empty_fields=="") {
        return true;    //Form can be submitted
    }
    msg ="==============================================\n";
    msg+="  Please complete the following empty fields before proceeding.\n";
    msg+="==============================================\n";
    if(empty_fields!="") {
        msg+=empty_fields+"\n\nThank you";
    }
    alert(msg);
    return false;   //Form cannot be submitted.
}

function isblank(s) {
    /*Does a string s contain only whitespace?*/
    for(var ii=0; ii<s.length; ii++) {
        var c=s.charAt(ii);
        if((c!=' ') && (c!='\n') &&(c!='')) {
            return false;
        }
    }
    return true;
}

