﻿var msURL = "[HOST]ajax/helper.aspx";
var moXMLHTTP = GetXmlHttpObject();
var KEYVALUE_SEPERATOR = "|||";
var PAIR_SEPERATOR = "###";
var SELECT_MODE_SINGLE = "1";
var SELECT_MODE_MULTI = "2";

msURL = msURL.replace('[HOST]',gsHOST);

function managestatechange(sCallbackFunction)
{
  switch (moXMLHTTP.readyState) 
  {
	case 4:
      eval(sCallbackFunction + "()");
	  break;
  }
}

function GetXmlHttpObject()
{
  var oXMLHTTP;
  try
  {
    // Firefox, Opera 8.0+, Safari
    oXMLHTTP=new XMLHttpRequest();
  }
  catch (e)
  {
    //Internet Explorer
    try
    {
      oXMLHTTP=new ActiveXObject("Msxml2.XMLHTTP");
    }
    catch (e)
    {
      oXMLHTTP=new ActiveXObject("Microsoft.XMLHTTP");
    }
  }
  return (oXMLHTTP);
}

function GetKeyValue(sList, sKey) 
{
    var nPair;
    var nPairs;
    var asPairs;
    var asPair;
    var sValue;
    var sPairKey;
    var sPairValue;
    var sRes;

    asPairs = sList.split("&");

    nPairs = asPairs.length;

    for (nPair = 0; nPair < nPairs; nPair++) {
        asPair = asPairs[nPair].split("=");
        sPairKey = asPair[0];
        sPairValue = asPair[1];
        if (sPairKey == sKey) {
            sRes = sPairValue;
            break;
        }
    }

    return (sRes);
}

function IsPostcodeValid(sData) 
{
    var nLetter;
    var nLetters;
    var bHasNumbers = false;
    var bHasLetters = false;

    //remove spaces
    while (sData.indexOf(" ") > -1) 
    {
        sData = sData.replace(" ", '');
    }

    if (sData != '') 
    {
        nLetters = sData.length;

        for (nLetter = 0; nLetter < nLetters; nLetter++) 
        {
            sLetter = sData.substr(nLetter, 1);
            if (!bHasNumbers) { bHasNumbers = (!(isNaN(sLetter))); }
            if (!bHasLetters) { bHasLetters = isNaN(sLetter); }
        }
    }

    bRes = ((bHasNumbers) && (bHasLetters));

    return (bRes);
}