﻿// JScript File
var vBackId = 0;

var cMorn = 0;
var cAfter = 0;
var cEve = 0;

var lastSelected = '';

function trim(stringToTrim) {
	return stringToTrim.replace(/^\s+|\s+$/g,"");
}
function ltrim(stringToTrim) {
	return stringToTrim.replace(/^\s+/,"");
}
function rtrim(stringToTrim) {
	return stringToTrim.replace(/\s+$/,"");
}



function ShowHide()
{
    if(document.getElementById('Panel1').style.display == '')
    {
        document.getElementById('Panel1').style.display = 'none';
        document.getElementById('Panel2').style.display = '';
    }
    else
    {
        document.getElementById('Panel1').style.display = '';
        document.getElementById('Panel2').style.display = 'none';
    }
}
function SetSlot(planner, slotDate, slotProductType, slotSession, obj)
{
    document.getElementById('planner').value = planner;
    document.getElementById('slotDate').value = slotDate;
    document.getElementById('slotProductType').value = slotProductType;
    document.getElementById('slotSession').value = slotSession;
    
    //swap images
    if(lastSelected != '')
    {
        document.getElementById(lastSelected).src = 'images/new_design_request/available.gif';
    }
    document.getElementById(obj).src = 'images/new_design_request/booked.gif';
    lastSelected = obj;
    //alert(planner +'\n\n'+ slotDate +'\n\n'+ slotProductType +'\n\n'+ slotSession);
}

function next(id)
{
    if(id == 10)  // *********** new special validation and submit for brochure request
    {
        if(form1Val()) {

            // set defaults for options are no longer seen by user but sent to web service
            document.getElementById('appointmentTypeInterest1').checked = true;
            WhenBuying('Within 3 Months');
            VisitedHammonds('Y');
            HammondsBrochure('Y');

            // do the submit            
            submitbutton = document.getElementById('ImageButton1');
            submitbutton.click();
        }
    }
    else if(id == 2) // ******** this should only apply if design visit and not brochure
    {
        //catch certain pcs, and do not allow to go any further
        pc = document.getElementById('postcode1').value;
        pc2 = pc.substring(0,2).toUpperCase();
        pc3 = pc.substring(0,3).toUpperCase();
        pc4 = pc.substring(0,4).toUpperCase();
        
        if
        (
        pc2 == 'JE' || pc2 == 'IM' || pc2 == 'PL' || pc2 == 'TR' || pc2 == 'GY' ||
        pc3 == 'DN2' || pc3 == 'DN3' || pc3 == 'DN4' || pc3 == 'DN5' ||
        pc4 == 'DN10' || pc4 == 'DN11'
        )
        {
            //document.getElementById('Panel1').style.display = 'none';
            //document.getElementById('BlockedPostCodes').style.display = '';
            //vBackId++;
            location.href = 'invalid_pc.aspx?pc='+document.getElementById('postcode1').value+' '+document.getElementById('postcode2').value;
        }
        else
        {
            if(form1Val())
            {
                document.getElementById('Panel1').style.display = 'none';
                document.getElementById('Panel2').style.display = '';
                vBackId++;
				// check if can skip
				if(document.getElementById('sourceCodeA').value!='')
				{
					next(3);
				}
            }
        }
    }
    /*else if(id == '3no')
    {
        if(form1Val())
        {
            update_code('2000');
            document.getElementById('Panel2').style.display = 'none';
            document.getElementById('Panel3').style.display = '';
            vBackId++;
        }
    }*/
    else if(id == 3)
    {
        if(form2Val())
        {
            document.getElementById('Panel2').style.display = 'none';
            document.getElementById('Panel3').style.display = '';
            vBackId++;
        }
    }
}

function back(id)
{
    if(id == 0)
    {
        //history.go(-1);
        location.href = 'step2.aspx?prepop=1';
    }
    
	document.getElementById('Panel1').style.display = 'none';
	document.getElementById('Panel2').style.display = 'none';
	document.getElementById('Panel3').style.display = 'none';	
    document.getElementById('Panel'+id).style.display = '';
//    document.getElementById('Panel'+(id+1)).style.display = 'none';
    vBackId--;
}

function update_code(param)
{
    document.getElementById('alt_lit').value = '';
	document.getElementById('sourceCodeA').value = param;
}

function showQuestion(vID) {
	if(vID == 1) {
		document.getElementById('question2_1').style.display = '';
		document.getElementById('question2_2').style.display = '';
		document.getElementById('question2_3').style.display = '';
		document.getElementById('question2_4').style.display = '';
		document.getElementById('question2_alt').style.display = '';
		document.getElementById('question2_no1').style.display = 'none';
		document.getElementById('question2_no2').style.display = 'none';
	}
	if(vID == 2) {
	    //preset code incase they don't select an option
	    update_code('2000');
	    
	    //hide all other options
	    show_sub(0);
	
		document.getElementById('question2_1').style.display = 'none';
		document.getElementById('question2_2').style.display = 'none';
		document.getElementById('question2_3').style.display = 'none';
		document.getElementById('question2_4').style.display = 'none';
		document.getElementById('question2_alt').style.display = 'none';
		document.getElementById('question2_no1').style.display = '';
		document.getElementById('question2_no2').style.display = '';
	}	
}

function show_sub(param)
{
	if (param == 0)
	{
		//close all
		document.getElementById('sub_q').style.display = 'none';
		document.getElementById('sub_1_a').style.display = 'none';
		document.getElementById('sub_1_b').style.display = 'none';
		document.getElementById('sub_1_c').style.display = 'none';
		document.getElementById('sub_2_a').style.display = 'none';
		document.getElementById('sub_3_a').style.display = 'none';
	}
	else if (param == 1)
	{
		//close all
		document.getElementById('sub_q').style.display = '';
		document.getElementById('sub_1_a').style.display = '';
		document.getElementById('sub_1_b').style.display = '';
		document.getElementById('sub_1_c').style.display = '';
		document.getElementById('sub_2_a').style.display = 'none';
		document.getElementById('sub_3_a').style.display = 'none';
	}
	else if (param == 2)
	{
		//close all
		document.getElementById('sub_q').style.display = '';
		document.getElementById('sub_1_a').style.display = 'none';
		document.getElementById('sub_1_b').style.display = 'none';
		document.getElementById('sub_1_c').style.display = 'none';
		document.getElementById('sub_2_a').style.display = '';
		document.getElementById('sub_3_a').style.display = 'none';
	}
	else if (param == 3)
	{
		//close all
		document.getElementById('sub_q').style.display = '';
		document.getElementById('sub_1_a').style.display = 'none';
		document.getElementById('sub_1_b').style.display = 'none';
		document.getElementById('sub_1_c').style.display = 'none';
		document.getElementById('sub_2_a').style.display = 'none';
		document.getElementById('sub_3_a').style.display = '';
	}
}

function WhenBuying(param)
{
	document.getElementById('whenbuying').value = param;
}

function VisitedHammonds(param)
{
	document.getElementById('visitedhammonds').value = param;
}

function KeepInTouchEmail(param)
{
	document.getElementById('keepintouchEmail').value = param;
}

function KeepInTouchMail(param)
{
	document.getElementById('keepintouchMail').value = param;
}

function HammondsBrochure(param)
{
	document.getElementById('hammondsbrochure').value = param;
}

/*function SwapImage(obj, booked)
{
    ClearRads();
    var src2 = (obj.src.indexOf('images/new_design_request/booked.gif') != -1);
    if(src2)
    {
        obj.src = 'images/new_design_request/available.gif';
    }
    else
    {
        obj.src = 'images/new_design_request/booked.gif';
    }
}*/

function SwapImage(obj)
{
    if(lastSelected != '')
    {
        document.getElementById(lastSelected).src = 'images/new_design_request/available.gif';
    }
    obj.src = 'images/new_design_request/booked.gif';
    lastSelected = obj.id;
}

function ClearRads()
{
    for(i=1; i<=cMorn; i++)
    {
        document.getElementById('morn'+i).src = 'images/new_design_request/available.gif';
    }
    for(i=1; i<=cAfter; i++)
    {
        document.getElementById('afternoon'+i).src = 'images/new_design_request/available.gif';
    }
    for(i=1; i<=cEve; i++)
    {
        document.getElementById('eve'+i).src = 'images/new_design_request/available.gif';
    }         
}

function checkemail(email)
{
	var str=email
	var filter=/^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i
	if (filter.test(str))
		testresults=true;
	else
		testresults=false;
	return (testresults)
}

function Postit(postcode){ //check postcode format is valid
 test = postcode; size = test.length
 test = test.toUpperCase(); //Change to uppercase
 while (test.slice(0,1) == " ") //Strip leading spaces
  {test = test.substr(1,size-1);size = test.length
  }
 while(test.slice(size-1,size)== " ") //Strip trailing spaces
  {test = test.substr(0,size-1);size = test.length
  }
 if (size < 6 || size > 8){ //Code length rule
  return false;
  }
 if (!(isNaN(test.charAt(0)))){ //leftmost character must be alpha character rule
   return false;
  }
 if (isNaN(test.charAt(size-3))){ //first character of inward code must be numeric rule
   return false;
  }
 if (!(isNaN(test.charAt(size-2)))){ //second character of inward code must be alpha rule
   return false;
  }
 if (!(isNaN(test.charAt(size-1)))){ //third character of inward code must be alpha rule
   return false;
  }
 if (!(test.charAt(size-4) == " ")){//space in position length-3 rule
   return false;
   }
 count1 = test.indexOf(" ");count2 = test.lastIndexOf(" ");
 if (count1 != count2){//only one space rule
   return false;
  }
return true;
}

// added for brochure single form
function formSpecialVal()
{   
    form1Val();
    return false;
}


function form1Val()
{   
    e = '';

    if(document.getElementById('homeTel').value.length < 10)
    {
        e += ' - Please enter a vaild home telephone number\n\n';
    }
    if(document.getElementById('workTel').value.length < 10 && document.getElementById('workTel').value != '')
    {
        e += ' - Please enter a vaild work telephone number\n\n';
    }
    if(document.getElementById('mobileTel').value.length < 10 && document.getElementById('mobileTel').value != '')
    {
        e += ' - Please enter a vaild mobile telephone number\n\n';
    }
    if(!checkemail(document.getElementById('email').value))
    {
        e += ' - Please enter a vaild email address\n\n';
    }       
    if(document.getElementById('title').value == '')
    {
        e += ' - Please select your title\n\n';
    }
    if(document.getElementById('forename').value == '')
    {
        e += ' - Please enter your forename\n\n';
    }
    if(document.getElementById('surname').value == '')
    {
        e += ' - Please enter your surname\n\n';
    }
    if(document.getElementById('houseNumber').value == '')
    {
        e += ' - Please enter your house/flat number\n\n';
    }        
    if(document.getElementById('address1').value == '')
    {
        e += ' - Please enter your road/street address\n\n';
    }
    if(document.getElementById('address3').value == '' && document.getElementById('address4').value == '')
    {
        e += ' - Please enter your town or county\n\n';
    }
    if(!Postit(trim(document.getElementById('postcode1').value) + ' ' + trim(document.getElementById('postcode2').value)))
    {
        e += ' - Please enter a valid postcode\n\n';
    }
    if(e == '')
    {
        return true;
    }
    else
    {
        alert(e);
        return false;
    }
}

function form2Val()
{
    e = '';
    
    if(document.getElementById('sourceCodeA').value == '' && document.getElementById('alt_lit').value.length != 4)
    {
        e += ' - Please select from where you heard about Hammonds\n\n';
    }
    
    if(e == '')
    {
        return true;
    }
    else
    {
        alert(e);
        return false;
    }
}




function form3Val()
{
    var e = '';

    if(!document.getElementById('appointmentTypeInterest1').checked && !document.getElementById('appointmentTypeInterest2').checked)
    {
        e += ' - Please select the type of visit you require\n\n';
    }
    if(document.getElementById('whenbuying').value == '')
    {
        e += ' - Please select when you are thinking of buying\n\n';
    }
    if(document.getElementById('visitedhammonds').value == '')
    {
        e += ' - Please select when you have visited Hammonds before\n\n';
    }
    if(document.getElementById('hammondsbrochure').value == '')
    {
        e += ' - Please select if you already have a Hammonds brochure\n\n';
    }    
    /*if(document.getElementById('keepintouch').value == '')
    {
        e += ' - Please select when you are want to keep in touch\n\n';
    }*/

    if(e == '')
    {
        return true;
    }
    else
    {
        alert(e);
        return false;
    }
}

function form4Val()
{
    var e = '';

    if(document.getElementById('planner').value == '')
    {
        e += ' - Please select a slot before continuing';
    }
    
    if(e == '')
    {
        return true;
    }
    else
    {
        alert(e);
        return false;
    }
}

function globalFormVal(id)
{
    if(id == 2)
    {
        return form3Val();
    }
    else
    {
        return form4Val();
    }
}