﻿
/********************************************************

Handle swapping of bread crumb and link information
in main nav bar

********************************************************/

// Copies text from hidden asp breadcrumb into nav banner
  
function loadInBreadCrumb() {

var navText = document.getElementById('changeable_nav_text');

var hiddenBreadCrumbHTML = document.getElementById('breadCrumbContainer').innerHTML;

navText.innerHTML = hiddenBreadCrumbHTML;

}

// Swaps the bread crumb text for info about the link they are mouse overing (Defined in ASP code behind).

function navTextChange(theText) {

var navText = document.getElementById('changeable_nav_text');

navText.innerHTML = theText;

}


/********************************************************

DHTML input background effect for contact forms

********************************************************/

function ChangeInputBgColor( sender )
{
    sender.style.backgroundColor = "#fef1b5" ;
    sender.style.backgroundImage = "url(Images/fieldBgDropShadow.png)";
    sender.style.fontWeight = "bold";
    sender.style.color = "#3399ff";
}
/// <reference path="../Images/fieldBgDropShadow.png" />

function ResetInputBgColor( sender )
{
    sender.style.backgroundColor = "#ffffff";
    sender.style.backgroundImage = "none"
    sender.style.fontWeight = "normal";
    sender.style.color = "#3399ff";
}


function ChangeBtnView( sender )
{
    sender.style.cursor = "pointer";
    sender.style.backgroundColor = "#333333";
    sender.style.color = "#ffffff";
}

function ChangeBtnViewBack( sender )
{
    sender.style.cursor = "default";
    sender.style.backgroundColor = "#e0dfe3";
    sender.style.color = "#333333";

}





/********************************************************

Image preloader

********************************************************/

function ImagePreloader( imgSrc )
{
    var preloadedImage = new Image;

    preloadedImage.src = imgSrc;

}


/********************************************************

Big button swap

********************************************************/

function ChangeQuoteBtn( sender )
{
    var bigButton = sender;
    bigButton.src = "Images/RequestAQuoteHover.png";
    bigButton.style.cursor = "pointer";
}


function ChangeQuoteBtnBack( sender ) {

    var bigButton = sender;
    bigButton.src = "Images/RequestAQuote.png";
    bigButton.style.cursor = "default";

}

function ChangeContactBtn( sender )
{
    var bigButton = sender;
    bigButton.src = "Images/ContactUsHover.png";
    bigButton.style.cursor = "pointer";
}


function ChangeContactBtnBack( sender ) {

    var bigButton = sender;
    bigButton.src = "Images/ContactUs.png";
    bigButton.style.cursor = "default";

}


/********************************************************

Basic show p element with upload message

********************************************************/

function ShowUploadMessage()
{
    var uploadMessage = document.getElementById('uploadMessage');
    uploadMessage.style.visibility = "visible";
}


/********************************************************

Ajax Send Request for Phone call script

********************************************************/

var xmlHttp;
        
var requestType = "";

// Standard browser detection and creation of relevant XmlHttpRequest object
function createXMLHttpRequest() {

    if(window.ActiveXObject) {
        
        xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
    }
    else if (window.XMLHttpRequest) {
    
        xmlHttp = new XMLHttpRequest();
    }
}

// Initiate asyncronous request
function startSendPhoneMeRequest( /*requestedList*/ ) {
    
    var userName = document.getElementById('userPhoneMeNameTxtBox').value;
    var userPhoneNumber = document.getElementById('userPhoneMeNumberTxtBox').value;
    
    //requestType = requestedList;
    createXMLHttpRequest();
    xmlHttp.onreadystatechange = handleStateChange; // Like function pointer
    
    var methodCallUrl = "http://www.eecb.co.uk/EmailPhoneMeRequest.asmx/SendPhoneMeEmail?name=" + userName + "&phoneNumber=" + userPhoneNumber;
    // var methodCallUrl = "http://localhost/EECB/EmailPhoneMeRequest.asmx/SendPhoneMeEmail?name=" + userName + "&phoneNumber=" + userPhoneNumber;
    
    // Use get, and send parameters as collection string
    xmlHttp.open("GET", methodCallUrl, true); //?name='Dave'
    xmlHttp.send(null);
    
    //http://www.w3schools.com/ajax/ajax_xmlhttprequest.asp
}

function handleStateChange() {
    
    // If the request has been set up, display a message to user
    if(xmlHttp.readyState == 1) {
        
        document.getElementById('uploadAnimationDiv').style.display = "block";
        document.getElementById('phoneMeMessageStatusConfirmationDiv').style.display = "block";
        document.getElementById('phoneMeMessageStatusConfirmation').innerHTML = "Sending Message...";
        //alert('Request set up');
    }
    
    // If the request has been sent display a message to user
    if(xmlHttp.readyState == 2) {
        
        //alert('Request sent');
    }
    
    // If the request has been sent display a message to user
    if(xmlHttp.readyState == 3) {
        
        //alert('Request in process');
    }
    
    // If the request is complete display result to user
    if(xmlHttp.readyState == 4) {
        
        if(xmlHttp.status == 200) {
           
           result = checkResult();
           
           if (result == "success")
           {
                document.getElementById('uploadAnimationDiv').style.display = "none";
                document.getElementById('phoneMeMessageStatusConfirmationDiv').style.display = "block";
                document.getElementById('phoneMeMessageStatusConfirmation').innerHTML = "Thank you! We'll be back to you asap.";
           }
           else if (result == "invalid")
           {
                document.getElementById('uploadAnimationDiv').style.display = "none";
                document.getElementById('phoneMeMessageStatusConfirmationDiv').style.display = "block";
                document.getElementById('phoneMeMessageStatusConfirmation').innerHTML = "Your message could not be sent. Please ensure you have entered both a name and a number.";
           }
           else 
           {
                document.getElementById('uploadAnimationDiv').style.display = "none";
                document.getElementById('phoneMeMessageStatusConfirmationDiv').style.display = "block";
                document.getElementById('phoneMeMessageStatusConfirmation').innerHTML = "Apologies, there has been an error sending your message. Please contact us via our <a href='Default.aspx?_ContactGeneral'>Contact</a> page.";
           }
        }
    }
  
}


function checkResult() {

    var xmlDoc = xmlHttp.responseXML;
    
    // alert(xmlHttp.responseText);
    
    var resultNode = xmlDoc.getElementsByTagName("result");
    
    var result = resultNode[0].childNodes[0].nodeValue;
    
    return(result);
}


/********************************************************

Navigation Bar image swappong

********************************************************/

function SwapNavImage( objectSender )
{   
    // Nav image swapping. Images preloaded in script at bottom of page

    if ( objectSender.id == "HomeNav" )
    {
        objectSender.src = "Images/EECB_New_Nav_Buttons/Hover/home.jpg";
    }
    if ( objectSender.id == "EPCsNav" )
    {
        objectSender.src = "Images/EECB_New_Nav_Buttons/Hover/epcs.jpg";
    }
    if ( objectSender.id == "CostingNav" )
    {
        objectSender.src = "Images/EECB_New_Nav_Buttons/Hover/costing.jpg";
    }
    if ( objectSender.id == "AboutUsNav" )
    {
        objectSender.src = "Images/EECB_New_Nav_Buttons/Hover/aboutus.jpg";
    }
    if ( objectSender.id == "ContactUsNav" )
    {
        objectSender.src = "Images/EECB_New_Nav_Buttons/Hover/contactus.jpg";
    }
    if (objectSender.id == "EPCExclusions") {
        objectSender.src = "Images/EECB_New_Nav_Buttons/Hover/EPCExclusions.jpg";
    }
    if (objectSender.id == "WhyEpcNav") {
        objectSender.src = "Images/EECB_New_Nav_Buttons/Hover/whyEpc.jpg";
    }
}

function SwapNavImageBack( objectSender )
{
    if ( objectSender.id == "HomeNav" )
    {
        objectSender.src = "Images/EECB_New_Nav_Buttons/Normal/home.jpg";
    }
    if ( objectSender.id == "EPCsNav" )
    {
        objectSender.src = "Images/EECB_New_Nav_Buttons/Normal/epcs.jpg";
    }
    if ( objectSender.id == "CostingNav" )
    {
        objectSender.src = "Images/EECB_New_Nav_Buttons/Normal/costing.jpg";
    }
    if ( objectSender.id == "AboutUsNav" )
    {
        objectSender.src = "Images/EECB_New_Nav_Buttons/Normal/aboutus.jpg";
    }
    if ( objectSender.id == "ContactUsNav" )
    {
        objectSender.src = "Images/EECB_New_Nav_Buttons/Normal/contactus.jpg";
    }
    if (objectSender.id == "EPCExclusions") 
    {
        objectSender.src = "Images/EECB_New_Nav_Buttons/Normal/EPCExclusions.jpg";
    }
    if (objectSender.id == "WhyEpcNav") 
    {
        objectSender.src = "Images/EECB_New_Nav_Buttons/Normal/whyEpc.jpg";
    }
    
}

