// <![CDATA[
//-----------------------------------------------------------------------------
// Define some constants.
//-----------------------------------------------------------------------------

// Define a list of Microsoft XML HTTP ProgIDs.
var XMLHTTPREQUEST_MS_PROGIDS = new Array(
	"Msxml2.XMLHTTP.7.0",
	"Msxml2.XMLHTTP.6.0",
	"Msxml2.XMLHTTP.5.0",
	"Msxml2.XMLHTTP.4.0",
	"MSXML2.XMLHTTP.3.0",
	"MSXML2.XMLHTTP",
	"Microsoft.XMLHTTP"
);

// Define ready state constants.
var XMLHTTPREQUEST_READY_STATE_UNINITIALIZED = 0;
var XMLHTTPREQUEST_READY_STATE_LOADING       = 1;
var XMLHTTPREQUEST_READY_STATE_LOADED        = 2;
var XMLHTTPREQUEST_READY_STATE_INTERACTIVE   = 3;
var XMLHTTPREQUEST_READY_STATE_COMPLETED     = 4;

//-----------------------------------------------------------------------------
// Returns an XMLHttpRequest object.
//-----------------------------------------------------------------------------
function getXMLHttpRequest()
{
	var httpRequest = null;

	// Create the appropriate HttpRequest object for the browser.
	if (window.XMLHttpRequest != null)
		httpRequest = new window.XMLHttpRequest();
	else if (window.ActiveXObject != null)
	{
		// Must be IE, find the right ActiveXObject.
		var success = false;
		for (var i = 0; i < XMLHTTPREQUEST_MS_PROGIDS.length && !success; i++)
		{
			try
			{
				httpRequest = new ActiveXObject(XMLHTTPREQUEST_MS_PROGIDS[i]);
				success = true;
			}
			catch (ex)
			{}
		}
	}

	// Display an error if we couldn't create one.
	if (httpRequest == null)
		alert("Error in HttpRequest():\n\nCannot create an XMLHttpRequest object.");

	// Return it.
	return httpRequest;
}

//-----------------------------------------------------------------------------
// This code uses an XMLHttpRequest object to look up the city and state of the
// ZIP code entered by the user. That data is then used to populate the
// corresponding form fields.
//-----------------------------------------------------------------------------

var clientLookup = getXMLHttpRequest();

function initiateClientLookup(event) {
	var personnr  = document.getElementById("barnpersonnr").value;
	if(personnr.length < 13) {
		return;
  }

	// Abort any currently active request.
	clientLookup.abort();

	// Encode the data to be POSTed.
	var client_id  = encodeURI(personnr);

	var url = "/js/ajaxclientsearch.phtml";
	clientLookup.onreadystatechange = clientReadyStateChange;
	clientLookup.open("POST", url, true);
	clientLookup.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	clientLookup.send("s=" + client_id);
}

function clientReadyStateChange() {
	var statusText;

	// Check the ready state.
	switch (clientLookup.readyState) {
		case XMLHTTPREQUEST_READY_STATE_UNINITIALIZED:
			break;

		case XMLHTTPREQUEST_READY_STATE_LOADING:
			break;

		case XMLHTTPREQUEST_READY_STATE_LOADED:
			break;

		case XMLHTTPREQUEST_READY_STATE_INTERACTIVE:
			break;

		case XMLHTTPREQUEST_READY_STATE_COMPLETED:
			// Assume no matches were found.
			statusText = "Ingen matchande kund."
			// Get the XML document returned from the request and fill in the
			// form fields.
			try
			{
				var xmlDoc = clientLookup.responseXML;

				// Copy the city and state attributes from the root XML node to the appropriate form fields.
				var client_id  = xmlDoc.documentElement.getAttribute("search");
				if (client_id.length > 0) {
          var answer = confirm("Det finns redan en anmälan på detta barnet, vill du uppdatera den?");
          if(answer) {
            initiateCityStateLookup(client_id);
          }
				}
			}
			catch (ex)
			{}
			break;

		default:
			break;
	}
}



var clientinfoLookup = getXMLHttpRequest();

function initiateCityStateLookup(clientid)
{

	// Abort any currently active request.
	clientinfoLookup.abort();

	// Perform an asynchronous request to get the matching city and state.
	var url = "/js/ajaxclientget.phtml";
	clientinfoLookup.onreadystatechange = clientinfoReadyStateChange;

	clientinfoLookup.open("POST", url, true);
	clientinfoLookup.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	clientinfoLookup.send("id=" + clientid);
}

function clientinfoReadyStateChange()
{
	var statusText;
	switch (clientinfoLookup.readyState)
	{
		case XMLHTTPREQUEST_READY_STATE_UNINITIALIZED:
			statusText = "";
			break;

		case XMLHTTPREQUEST_READY_STATE_LOADING:
			statusText = "Söker efter kund";
			break;

		case XMLHTTPREQUEST_READY_STATE_LOADED:
			statusText = "Skickar data";
			break;

		case XMLHTTPREQUEST_READY_STATE_INTERACTIVE:
			statusText = "Hämtar data";
			break;

		case XMLHTTPREQUEST_READY_STATE_COMPLETED:

			// Assume no match was found.
			statusText = "Ingen kund hittad."
			try
			{
				var xmlDoc = clientinfoLookup.responseXML;
    		var els = xmlDoc.getElementsByTagName("client");
        if(els.length > 0) {

          var forskola_ar_class = document.getElementById("forskola_ar").className;
          var forskola_manad_class = document.getElementById("forskola_manad").className;
          var skola_ar_class = document.getElementById("skola_ar").className;
          var fritids_ar_class = document.getElementById("fritids_ar").className;

          if(els[0].getElementsByTagName('forskola')[0].hasChildNodes() == true) {
            if(els[0].getElementsByTagName('forskola')[0].firstChild.data == "Y") {
              document.forms[0].elements["forskola"].checked = true;
              document.getElementById("forskola_period").style.display="";
              document.getElementById("forskola_ar").className=forskola_ar_class+" required";
              document.getElementById("forskola_manad").className=forskola_manad_class+" required";
            }
          }
          else {
          	document.forms[0].elements["forskola"].value = "";
            document.getElementById("forskola_period").style.display="none";
            document.getElementById("forskola_ar").className=forskola_ar_class;
            document.getElementById("forskola_manad").className=forskola_manad_class;
          }
          if(els[0].getElementsByTagName('forskola_ar')[0].hasChildNodes() == true) {
            document.forms[0].elements["forskola_ar"].value = els[0].getElementsByTagName('forskola_ar')[0].firstChild.data;
          }
          else {
          	document.forms[0].elements["forskola_ar"].value = "";
          }
          if(els[0].getElementsByTagName('forskola_manad')[0].hasChildNodes() == true) {
            document.forms[0].elements["forskola_manad"].value = els[0].getElementsByTagName('forskola_manad')[0].firstChild.data;
          }
          else {
          	document.forms[0].elements["forskola_manad"].value = "";
          }

          if(els[0].getElementsByTagName('skola')[0].hasChildNodes() == true) {
            if(els[0].getElementsByTagName('skola')[0].firstChild.data == "Y") {
              document.forms[0].elements["skola"].checked = true;
              document.getElementById("skola_period").style.display="";
              document.getElementById("skola_ar").className=skola_ar_class+" required";
            }
          }
          else {
          	document.forms[0].elements["skola"].value = "";
            document.getElementById("skola_period").style.display="none";
            document.getElementById("skola_ar").className=skola_ar_class;
          }
          if(els[0].getElementsByTagName('skola_ar')[0].hasChildNodes() == true) {
            document.forms[0].elements["skola_ar"].value = els[0].getElementsByTagName('skola_ar')[0].firstChild.data;
          }
          else {
          	document.forms[0].elements["skola_ar"].value = "";
          }

          if(els[0].getElementsByTagName('fritids')[0].hasChildNodes() == true) {
            if(els[0].getElementsByTagName('fritids')[0].firstChild.data == "Y") {
              document.forms[0].elements["fritids"].checked = true;
              document.getElementById("fritids_period").style.display="";
              document.getElementById("fritids_ar").className=fritids_ar_class+" required";
            }
          }
          else {
          	document.forms[0].elements["fritids"].value = "";
            document.getElementById("fritids_period").style.display="none";
            document.getElementById("fritids_ar").className=fritids_ar_class;
          }
          if(els[0].getElementsByTagName('fritids_ar')[0].hasChildNodes() == true) {
            document.forms[0].elements["fritids_ar"].value = els[0].getElementsByTagName('fritids_ar')[0].firstChild.data;
          }
          else {
          	document.forms[0].elements["fritids_ar"].value = "";
          }

          if(els[0].getElementsByTagName('barnnamn')[0].hasChildNodes() == true) {
            document.forms[0].elements["barnnamn"].value = els[0].getElementsByTagName('barnnamn')[0].firstChild.data;
          }
          else {
          	document.forms[0].elements["barnnamn"].value = "";
          }
          if(els[0].getElementsByTagName('barnpersonnr')[0].hasChildNodes() == true) {
            document.forms[0].elements["barnpersonnr"].value = els[0].getElementsByTagName('barnpersonnr')[0].firstChild.data;
          }
          else {
          	document.forms[0].elements["barnpersonnr"].value = "";
          }
          if(els[0].getElementsByTagName('barnadress')[0].hasChildNodes() == true) {
            document.forms[0].elements["barnadress"].value = els[0].getElementsByTagName('barnadress')[0].firstChild.data;
          }
          else {
          	document.forms[0].elements["barnadress"].value = "";
          }
          if(els[0].getElementsByTagName('barnpostadress')[0].hasChildNodes() == true) {
            document.forms[0].elements["barnpostadress"].value = els[0].getElementsByTagName('barnpostadress')[0].firstChild.data;
          }
          else {
          	document.forms[0].elements["barnpostadress"].value = "";
          }
          if(els[0].getElementsByTagName('barntelefon')[0].hasChildNodes() == true) {
            document.forms[0].elements["barntelefon"].value = els[0].getElementsByTagName('barntelefon')[0].firstChild.data;
          }
          else {
          	document.forms[0].elements["barntelefon"].value = "";
          }
          if(els[0].getElementsByTagName('mammanamn')[0].hasChildNodes() == true) {
            document.forms[0].elements["mammanamn"].value = els[0].getElementsByTagName('mammanamn')[0].firstChild.data;
          }
          else {
          	document.forms[0].elements["mammanamn"].value = "";
          }
          if(els[0].getElementsByTagName('mammapersonnr')[0].hasChildNodes() == true) {
            document.forms[0].elements["mammapersonnr"].value = els[0].getElementsByTagName('mammapersonnr')[0].firstChild.data;
          }
          else {
          	document.forms[0].elements["mammapersonnr"].value = "";
          }
          if(els[0].getElementsByTagName('mammaadress')[0].hasChildNodes() == true) {
            document.forms[0].elements["mammaadress"].value = els[0].getElementsByTagName('mammaadress')[0].firstChild.data;
          }
          else {
          	document.forms[0].elements["mammaadress"].value = "";
          }
          if(els[0].getElementsByTagName('mammapostadress')[0].hasChildNodes() == true) {
            document.forms[0].elements["mammapostadress"].value = els[0].getElementsByTagName('mammapostadress')[0].firstChild.data;
          }
          else {
          	document.forms[0].elements["mammapostadress"].value = "";
          }
          if(els[0].getElementsByTagName('mammatelefon')[0].hasChildNodes() == true) {
            document.forms[0].elements["mammatelefon"].value = els[0].getElementsByTagName('mammatelefon')[0].firstChild.data;
          }
          else {
          	document.forms[0].elements["mammatelefon"].value = "";
          }
          if(els[0].getElementsByTagName('mammamobil')[0].hasChildNodes() == true) {
            document.forms[0].elements["mammamobil"].value = els[0].getElementsByTagName('mammamobil')[0].firstChild.data;
          }
          else {
          	document.forms[0].elements["mammamobil"].value = "";
          }
          if(els[0].getElementsByTagName('mammaarbete')[0].hasChildNodes() == true) {
            document.forms[0].elements["mammaarbete"].value = els[0].getElementsByTagName('mammaarbete')[0].firstChild.data;
          }
          else {
          	document.forms[0].elements["mammaarbete"].value = "";
          }
          if(els[0].getElementsByTagName('mammatelefonarb')[0].hasChildNodes() == true) {
            document.forms[0].elements["mammatelefonarb"].value = els[0].getElementsByTagName('mammatelefonarb')[0].firstChild.data;
          }
          else {
          	document.forms[0].elements["mammatelefonarb"].value = "";
          }
          if(els[0].getElementsByTagName('mammaepost')[0].hasChildNodes() == true) {
            document.forms[0].elements["mammaepost"].value = els[0].getElementsByTagName('mammaepost')[0].firstChild.data;
          }
          else {
          	document.forms[0].elements["pappanamn"].value = "";
          }
          if(els[0].getElementsByTagName('pappanamn')[0].hasChildNodes() == true) {
            document.forms[0].elements["pappanamn"].value = els[0].getElementsByTagName('pappanamn')[0].firstChild.data;
          }
          else {
          	document.forms[0].elements["pappanamn"].value = "";
          }
          if(els[0].getElementsByTagName('pappapersonnr')[0].hasChildNodes() == true) {
            document.forms[0].elements["pappapersonnr"].value = els[0].getElementsByTagName('pappapersonnr')[0].firstChild.data;
          }
          else {
          	document.forms[0].elements["pappapersonnr"].value = "";
          }
          if(els[0].getElementsByTagName('pappaadress')[0].hasChildNodes() == true) {
            document.forms[0].elements["pappaadress"].value = els[0].getElementsByTagName('pappaadress')[0].firstChild.data;
          }
          else {
          	document.forms[0].elements["pappaadress"].value = "";
          }
          if(els[0].getElementsByTagName('pappapostadress')[0].hasChildNodes() == true) {
            document.forms[0].elements["pappapostadress"].value = els[0].getElementsByTagName('pappapostadress')[0].firstChild.data;
          }
          else {
          	document.forms[0].elements["pappapostadress"].value = "";
          }
          if(els[0].getElementsByTagName('pappatelefon')[0].hasChildNodes() == true) {
            document.forms[0].elements["pappatelefon"].value = els[0].getElementsByTagName('pappatelefon')[0].firstChild.data;
          }
          else {
          	document.forms[0].elements["pappatelefon"].value = "";
          }
          if(els[0].getElementsByTagName('pappamobil')[0].hasChildNodes() == true) {
            document.forms[0].elements["pappamobil"].value = els[0].getElementsByTagName('pappamobil')[0].firstChild.data;
          }
          else {
          	document.forms[0].elements["pappamobil"].value = "";
          }
          if(els[0].getElementsByTagName('pappaarbete')[0].hasChildNodes() == true) {
            document.forms[0].elements["pappaarbete"].value = els[0].getElementsByTagName('pappaarbete')[0].firstChild.data;
          }
          else {
          	document.forms[0].elements["pappaarbete"].value = "";
          }
          if(els[0].getElementsByTagName('pappatelefonarb')[0].hasChildNodes() == true) {
            document.forms[0].elements["pappatelefonarb"].value = els[0].getElementsByTagName('pappatelefonarb')[0].firstChild.data;
          }
          else {
          	document.forms[0].elements["pappatelefonarb"].value = "";
          }
          if(els[0].getElementsByTagName('pappaepost')[0].hasChildNodes() == true) {
            document.forms[0].elements["pappaepost"].value = els[0].getElementsByTagName('pappaepost')[0].firstChild.data;
          }
          else {
          	document.forms[0].elements["pappaepost"].value = "";
          }

          document.forms[0].elements["id"].value = els[0].getElementsByTagName('id')[0].firstChild.data;
          document.forms[0].elements["apply"].value = "U";

          statusText = "Kunduppgifter uppdaterad";
        }
			}
			catch (ex)
			{}
			break;

		default:
			statusText = "Unknown error.";
			break;
	}
}






// ]]>
