﻿
function setCookie(Name, Value)
{
    var ArgumentCount;
    var ArgumentValues;
    var Domain;
    var Expires;
    var Path;
    var Secure;

    ArgumentValues = setCookie.arguments;
    ArgumentCount = setCookie.arguments.length;

    Expires = new Date();
    Expires.setDate(Expires.getDate() + 30);
    
    Path = (ArgumentCount > 2) ? ArgumentValues[2] : null;
    Domain = (ArgumentCount > 3) ? ArgumentValues[3] : null;
    Secure = (ArgumentCount > 4) ? ArgumentValues[4] : false;

    document.cookie = Name + "=" + escape (Value) + "; expires=" + Expires.toGMTString() + 
    ((Path == null) ? "" : ("; path=" + Path)) +
    ((Domain == null) ? "" : ("; domain=" + Domain)) +
    ((Secure == true) ? "; secure" : "");
}

function getCookie(Name)
{
    var Argument;
    var ArgumetLength;
    var CookieLength;
    var EndString;
    var startIndex;
    var endIndex;

    Argument = Name + "=";
    ArgumentLength = Argument.length;
    CookieLength = document.cookie.length;
    startIndex = 0;
    while (startIndex < CookieLength)
    {
        endIndex = startIndex + ArgumentLength;
        
        if (document.cookie.substring(startIndex, endIndex) == Argument)
        {
            EndString = document.cookie.indexOf (";", endIndex);
            if (EndString == -1)
            EndString = document.cookie.length;
            return unescape(document.cookie.substring(endIndex, EndString));
        }
        
        startIndex = document.cookie.indexOf(" ",startIndex) + 1;
        if (startIndex == 0)
        {
           break;
        }
    }
    return (null);
}

function deleteCookie(Name)
{
    var CookieValue;
    var ExpirationDate;

    ExpirationDate = new Date();
    ExpirationDate.setTime (ExpirationDate.getTime() - 1);

    /* Make Sure Cookie Exists First */
    CookieValue = getCookie(Name);
    if (CookieValue != null)
    {
        setCookie(Name, "", ExpirationDate, "/");
    }
}

function saveDataInCookie()
{
    var cookiName = "dbsEnquiryForm";
    var cookieValue = "";
    var elementIndex = 0;
      
    var elementList = null;
    var elementValue = null;
    var cookieValue = "";
    if(getElementList!= null && getElementList != "undefined" && typeof(getElementList)=="function")
    {
        elementList = getElementList();
        if(elementList!=null)
        {
            for(elementIndex=0; elementIndex < elementList.length; elementIndex++)
            {
                elementValue = "";
                var formElement = document.getElementById(elementList[elementIndex]);
                if(formElement!=null)
                {
                    if(formElement.tagName.toLowerCase() == "input" && formElement.type.toLowerCase() == "text")
                    {
                        elementValue = formElement.value;
                    }
                    else if(formElement.tagName.toLowerCase() == "input" && formElement.type.toLowerCase() == "checkbox")
                    {
                        elementValue = formElement.checked;
                    }
                    else if(formElement.tagName.toLowerCase() == "select" || formElement.tagName.toLowerCase() == "textarea")
                    {
                        elementValue = formElement.value;
                    }
                    
                    if(elementValue!="")
                    {
                        cookieValue += formElement.id + "$$" + elementValue + ":";
                    }
                }
            }
        }
    }
    if(cookieValue!="")
    {
        setCookie(cookiName,cookieValue);
    }
}

function loadCookieValue()
{
    var cookiName = "dbsEnquiryForm";
    var nameValueList = null;
    var nameValue = null;
    var elementIndex = 0;
    
    var cookieValue = getCookie(cookiName);
    if(cookieValue!=null)
    {
        nameValueList = cookieValue.split(":");
        if(nameValueList!=null && nameValueList.length > 0)
        {
            for(elementIndex=0; elementIndex < nameValueList.length; elementIndex++)
            {
                nameValue = nameValueList[elementIndex].split("$$");
                if(nameValue!=null && nameValue.length == 2)
                {
                    var formElement = document.getElementById(nameValue[0]);
                    if(formElement!=null)
                    {
                        if(formElement.tagName.toLowerCase() == "input" && formElement.type.toLowerCase() == "text")
                        {
                            formElement.value = nameValue[1];
                        }
                        else if(formElement.tagName.toLowerCase() == "input" && formElement.type.toLowerCase() == "checkbox")
                        {
                            formElement.checked = nameValue[1];
                        }
                        else if(formElement.tagName.toLowerCase() == "select" || formElement.tagName.toLowerCase() == "textarea")
                        {
                            formElement.value = nameValue[1];
                        }
                    }
                }
            }
        }
    }
}
