﻿var ie = document.all;
var nn6 = document.getElementById && !document.all;

var isdrag = false;
var x, y;
var dobj;
//<![CDATA[
var map;
var xmlhttp;

var strDomain = "http://www.soor.com.kw/";

var paramValue, langValue;
var langField;
// Create a base icon for all of our markers that specifies the
// shadow, icon dimensions, etc.
var baseIcon = new GIcon();
baseIcon.iconSize = new GSize(15, 19);
baseIcon.shadowSize = new GSize(25, 19);
baseIcon.iconAnchor = new GPoint(9, 34);
baseIcon.infoWindowAnchor = new GPoint(9, 2);
baseIcon.infoShadowAnchor = new GPoint(18, 25);

function load() {
    //paramField = document.getElementById("hidVars");
    //paramValue = paramField.value;
    langField = document.getElementById("hidLang");
    langValue = langField.value;
    
    var strView = gup('view') + "";
    if (strView != '2') {
        getAllGov(langValue);
        getAllServices(langValue, '0');
        getAllServices(langValue, '1');
    }
    if (GBrowserIsCompatible()) {

        map = new GMap2(document.getElementById("map"));
        map.addControl(new GLargeMapControl());
        map.addControl(new GMapTypeControl());
        map.addControl(new GScaleControl());
        //map.addControl(new GOverviewMapControl());

        map.removeMapType(G_SATELLITE_MAP);
        map.removeMapType(G_HYBRID_MAP);
        //map.removeMapType(G_NORMAL_MAP); 				

        map.addMapType(G_PHYSICAL_MAP);
        map.addMapType(G_HYBRID_MAP);
        map.addMapType(G_NORMAL_MAP);
        map.addMapType(G_SATELLITE_MAP);

        map.setCenter(new GLatLng(29.295981, 47.974548), 9);
    }
    if (strView != '') {
        var strGov = gup('govID') + '';
        var strArea = gup('areaID') + '';
        var strServ = gup('sID') + '';
        if (strGov != '') {
            paramValue = 'govID=' + strGov;
            getMapByGov(langValue, strGov);
        }
        else if (strArea != '') {
            paramValue = 'areaID=' + strArea;
            getMapByArea2(langValue, strArea);
        }
        else if (strServ != '') {
            paramValue = 'sID=' + strServ;
            getMapByService(langValue, strServ);
        }
        if (strView == '2') {
            window.print();
        }

    }
}

// Creates a marker whose info window displays the letter corresponding
// to the given index.
function createMarker(point, mapId, sid, name) {
    // Create a lettered icon for this point using our icon class
    var letteredIcon = new GIcon(baseIcon);
    letteredIcon.image = "templates/icons/gas.png";
    letteredIcon.shadow = "templates/icons/gas_shadow.png";

    // Set up our GMarkerOptions object
    var mTitle = sid + " - " + name;
    markerOptions = { icon: letteredIcon, title: mTitle };
    var marker = new GMarker(point, markerOptions);
    GEvent.addListener(marker, "click", function() {
        marker.openInfoWindowHtml(buildHTML(mapId, langValue));
    });
    //GEvent.addListener(marker, "mouseover", function() {
        //map.panTo(point);
    //});
    GEvent.addListener(marker, "infowindowclose", function() {
        map.panTo(point);
    });
    return marker;
}

//            function closeMyPopup() {
//                document.getElementById("gmap1").style.display = "none";
//                GUnload();

//            }

//List Functions



function state_Change() {
    if (xmlhttp.readyState == 4) {
        if (xmlhttp.status == 200) {
            //alert("OK");
        }
        else {
            alert("Problem retrieving XML data");
        }
    }
}
function centerMap() {
    var ctrmap = new GLatLng(29.295981, 47.974548);
    map.panTo(ctrmap);
}

function gup(name) {
    name = name.replace(/[\[]/, "\\\[").replace(/[\]]/, "\\\]");
    var regexS = "[\\?&]" + name + "=([^&#]*)";
    var regex = new RegExp(regexS);
    var results = regex.exec(window.location.href);
    if (results == null)
        return "";
    else
        return results[1];
}


function getAllGov(lang) {

    var xmlQuery = "<soap:Envelope xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xmlns:xsd='http://www.w3.org/2001/XMLSchema' xmlns:soap='http://schemas.xmlsoap.org/soap/envelope/'>";
    xmlQuery += "<soap:Body>";
    xmlQuery += "<getAllGovernorates xmlns='http://soor.com.kw/'>";
    if (lang.length == 0) {
        xmlQuery += "<lang></lang>";
    }
    else {
        xmlQuery += "<lang>" + lang + "</lang>";
    }
    xmlQuery += "</getAllGovernorates></soap:Body></soap:Envelope>";
    if (window.ActiveXObject) {
        var xmldoc = new ActiveXObject("Microsoft.XMLDOM");
        xmldoc.loadXML(xmlQuery);
        xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
        xmlhttp.onreadystatechange = state_Change;
        xmlhttp.open("POST", strDomain + "soormapService/mapservice.asmx", false);
        xmlhttp.setRequestHeader("SOAPAction", "http://soor.com.kw/getAllGovernorates");
        xmlhttp.setRequestHeader("Content-Type", "text/xml");
        xmlhttp.send(xmlQuery);
        var xmldoc1 = new ActiveXObject("Microsoft.XMLDOM");
        xmldoc1.loadXML(xmlhttp.responseXML.xml);
        var len = xmldoc1.documentElement.childNodes[0].childNodes[0].childNodes[0].childNodes.length;
        var xmlStr = "";
        for (var i = 0; i < len; i++) {
            xmlStr = xmlStr + xmldoc1.documentElement.childNodes[0].childNodes[0].childNodes[0].childNodes[i].nodeValue;
        }
        if (xmlStr.search(/<Governorates>/) > -1) {
            //      alert(xmlStr);
            AddGov(xmlStr);
        }
        else {
            // alert("Location does not exist");
        }
    }
    else if (document.implementation && document.implementation.createDocument) {
        var parser = new DOMParser();
        var xmldoc = parser.parseFromString(xmlQuery, "text/xml");
        xmlhttp = new XMLHttpRequest();
        xmlhttp.onreadystatechange = state_Change;
        xmlhttp.open("POST", strDomain + "soormapService/mapservice.asmx", false);
        xmlhttp.setRequestHeader("SOAPAction", "http://soor.com.kw/getAllGovernorates");
        xmlhttp.setRequestHeader("Content-Type", "text/xml");
        xmlhttp.send(xmlQuery);
        var xmlStr = xmlhttp.responseText;
        if (xmlStr.search(/&lt;Governorates&gt;/) > -1) {
            //alert(xmlStr);
            AddGov(xmlStr);
        }
        else {
            //alert("Location does not exist");
        }
    }
    else {
        alert('Your browser cannot handle this script');
    }
}

function AddGov(xmlstr) {
    var ulGov = document.getElementById("ulGov");
    var ddlGov = document.getElementById("ddlGov");
    if (window.ActiveXObject) {
        var xmldoc = new ActiveXObject("Microsoft.XMLDOM");
        xmldoc.loadXML(xmlstr);
        var len = xmldoc.documentElement.childNodes.length;
        for (var i = 0; i < len; i++) {
            var opt = document.createElement("option");
            var govText = xmldoc.documentElement.childNodes[i].getAttribute("name");
            var govID = xmldoc.documentElement.childNodes[i].getAttribute("id");
            opt.text = govText;
            opt.value = govID;
            ddlGov.options.add(opt);
            var liChild = document.createElement('li');
            var aChild = document.createElement('a');
            aChild.setAttribute('class', 'text');
            //aChild.setAttribute('href', 'javascript:void(0);')
            aChild.setAttribute('href', 'javascript:getMapByGov("' + langValue + '","' + govID + '")');
            aChild.innerHTML = govText;
            liChild.appendChild(aChild);
            ulGov.appendChild(liChild);
        }


    }
    else if (document.implementation && document.implementation.createDocument) {
        var parser = new DOMParser();
        var xmldoc = parser.parseFromString(xmlstr, "text/xml");
        var newXml = "";
        var len1 = xmldoc.documentElement.childNodes[0].childNodes[0].childNodes[0].childNodes.length;
        for (var i = 0; i < len1; i++) {
            newXml = newXml + xmldoc.documentElement.childNodes[0].childNodes[0].childNodes[0].childNodes[i].nodeValue;
        }
        var xmldoc1 = parser.parseFromString(newXml, "text/xml");
        var len = xmldoc1.documentElement.childNodes.length;
        var lat, icon, longt, desc, mname;
        for (var i = 0; i < len; i++) {
            var opt = document.createElement("option");
            var govText = xmldoc1.documentElement.childNodes[i].getAttribute("name");
            var govID = xmldoc1.documentElement.childNodes[i].getAttribute("id");
            opt.text = govText;
            opt.value = govID;
            ddlGov.options.add(opt);
            var liChild = document.createElement('li');
            var aChild = document.createElement('a');
            aChild.setAttribute('class', 'text');
            aChild.setAttribute('href', 'javascript:void(0);')
            aChild.setAttribute('onclick', 'javascript:getMapByGov("' + langValue + '","' + govID + '")');
            aChild.innerHTML = govText;            
            liChild.appendChild(aChild);
            ulGov.appendChild(liChild);
        }
    }
    else {
        alert('Your browser cannot handle this script');
    }
}

function getAllAreas(lang) {

    var xmlQuery = "<soap:Envelope xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xmlns:xsd='http://www.w3.org/2001/XMLSchema' xmlns:soap='http://schemas.xmlsoap.org/soap/envelope/'>";
    xmlQuery += "<soap:Body>";
    xmlQuery += "<getMapPointsByGov xmlns='http://soor.com.kw/'>";
    if (lang.length == 0) {
        xmlQuery += "<govID></govID>";
    }
    else {
        xmlQuery += "<govID>" + document.getElementById("ddlGov").value + "</govID>";
    }
    if (lang.length == 0) {
        xmlQuery += "<lang></lang>";
    }
    else {
        xmlQuery += "<lang>" + lang + "</lang>";
    }
    xmlQuery += "</getMapPointsByGov></soap:Body></soap:Envelope>";
    if (window.ActiveXObject) {
        var xmldoc = new ActiveXObject("Microsoft.XMLDOM");
        xmldoc.loadXML(xmlQuery);
        xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
        xmlhttp.onreadystatechange = state_Change;
        xmlhttp.open("POST", strDomain + "soormapService/mapservice.asmx", false);
        xmlhttp.setRequestHeader("SOAPAction", "http://soor.com.kw/getMapPointsByGov");
        xmlhttp.setRequestHeader("Content-Type", "text/xml");
        xmlhttp.send(xmlQuery);
        var xmldoc1 = new ActiveXObject("Microsoft.XMLDOM");
        xmldoc1.loadXML(xmlhttp.responseXML.xml);
        var len = xmldoc1.documentElement.childNodes[0].childNodes[0].childNodes[0].childNodes.length;
        var xmlStr = "";
        for (var i = 0; i < len; i++) {
            xmlStr = xmlStr + xmldoc1.documentElement.childNodes[0].childNodes[0].childNodes[0].childNodes[i].nodeValue;
        }
        if (xmlStr.search(/<MapPoints>/) > -1) {
            //   alert(xmlStr);
           
            AddArea(xmlStr,lang);
        }
        else {
            // alert("Location does not exist");
        }
    }
    else if (document.implementation && document.implementation.createDocument) {
        var parser = new DOMParser();
        var xmldoc = parser.parseFromString(xmlQuery, "text/xml");
        xmlhttp = new XMLHttpRequest();
        xmlhttp.onreadystatechange = state_Change;
        xmlhttp.open("POST", strDomain + "soormapService/mapservice.asmx", false);
        xmlhttp.setRequestHeader("SOAPAction", "http://soor.com.kw/getMapPointsByGov");
        xmlhttp.setRequestHeader("Content-Type", "text/xml");
        xmlhttp.send(xmlQuery);
        var xmlStr = xmlhttp.responseText;
        if (xmlStr.search(/&lt;MapPoints&gt;/) > -1) {
            //alert(xmlStr);
            AddArea(xmlStr,lang);
        }
        else {
            //alert("Location does not exist");
        }
    }
    else {
        alert('Your browser cannot handle this script');
    }
}

function AddArea(xmlstr,lang) {
    var ddlArea = document.getElementById("ddlArea")
    ddlArea.options.length = 0;
    var opt1 = document.createElement("option");
    if (lang == "en")
    {
     opt1.text = "-Select Soor Station-";
    }
    else
    {
        opt1.text = "-إختر محطة الوقود-";
    }
    ddlArea.options.add(opt1);
    opt1.value = "0";
    if (window.ActiveXObject) {
        var xmldoc = new ActiveXObject("Microsoft.XMLDOM");
        xmldoc.loadXML(xmlstr);
        var len = xmldoc.documentElement.childNodes.length;
        for (var i = 0; i < len; i++) {
            var opt = document.createElement("option");
            opt.text = xmldoc.documentElement.childNodes[i].getAttribute("sid") + " - " + xmldoc.documentElement.childNodes[i].getAttribute("desc");
            opt.value = xmldoc.documentElement.childNodes[i].getAttribute("id");
            ddlArea.options.add(opt);
        }


    }
    else if (document.implementation && document.implementation.createDocument) {
        var parser = new DOMParser();
        var xmldoc = parser.parseFromString(xmlstr, "text/xml");
        var newXml = "";
        var len1 = xmldoc.documentElement.childNodes[0].childNodes[0].childNodes[0].childNodes.length;
        for (var i = 0; i < len1; i++) {
            newXml = newXml + xmldoc.documentElement.childNodes[0].childNodes[0].childNodes[0].childNodes[i].nodeValue;
        }
        var xmldoc1 = parser.parseFromString(newXml, "text/xml");
        var len = xmldoc1.documentElement.childNodes.length;
        var lat, icon, longt, desc, mname;
        for (var i = 0; i < len; i++) {
            var opt = document.createElement("option");
            opt.text = xmldoc1.documentElement.childNodes[i].getAttribute("sid") + " - " + xmldoc1.documentElement.childNodes[i].getAttribute("desc");
            opt.value = xmldoc1.documentElement.childNodes[i].getAttribute("id");
            ddlArea.options.add(opt);
        }
    }
    else {
        alert('Your browser cannot handle this script');
    }
}

function getAllServices(lang, stype) {

    var xmlQuery = "<soap:Envelope xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xmlns:xsd='http://www.w3.org/2001/XMLSchema' xmlns:soap='http://schemas.xmlsoap.org/soap/envelope/'>";
    xmlQuery += "<soap:Body>";
    xmlQuery += "<getServicesByType xmlns='http://soor.com.kw/'>";
    if (stype.length == 0) {
        xmlQuery += "<serviceType></serviceType>";
    }
    else {
        xmlQuery += "<serviceType>" + stype + "</serviceType>";
    }
    if (lang.length == 0) {
        xmlQuery += "<lang></lang>";
    }
    else {
        xmlQuery += "<lang>" + lang + "</lang>";
    }
    xmlQuery += "</getServicesByType></soap:Body></soap:Envelope>";
    if (window.ActiveXObject) {
        var xmldoc = new ActiveXObject("Microsoft.XMLDOM");
        xmldoc.loadXML(xmlQuery);
        xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
        xmlhttp.onreadystatechange = state_Change;
        xmlhttp.open("POST", strDomain + "soormapService/mapservice.asmx", false);
        xmlhttp.setRequestHeader("SOAPAction", "http://soor.com.kw/getServicesByType");
        xmlhttp.setRequestHeader("Content-Type", "text/xml");
        xmlhttp.send(xmlQuery);
        var xmldoc1 = new ActiveXObject("Microsoft.XMLDOM");
        xmldoc1.loadXML(xmlhttp.responseXML.xml);
        var len = xmldoc1.documentElement.childNodes[0].childNodes[0].childNodes[0].childNodes.length;
        var xmlStr = "";
        for (var i = 0; i < len; i++) {
            xmlStr = xmlStr + xmldoc1.documentElement.childNodes[0].childNodes[0].childNodes[0].childNodes[i].nodeValue;
        }
        if (xmlStr.search(/<Services>/) > -1) {
            //      alert(xmlStr);
            AddService(xmlStr, stype, lang);
        }
        else {
            // alert("Location does not exist");
        }
    }
    else if (document.implementation && document.implementation.createDocument) {
        var parser = new DOMParser();
        var xmldoc = parser.parseFromString(xmlQuery, "text/xml");
        xmlhttp = new XMLHttpRequest();
        xmlhttp.onreadystatechange = state_Change;
        xmlhttp.open("POST", strDomain + "soormapService/mapservice.asmx", false);
        xmlhttp.setRequestHeader("SOAPAction", "http://soor.com.kw/getServicesByType");
        xmlhttp.setRequestHeader("Content-Type", "text/xml");
        xmlhttp.send(xmlQuery);
        var xmlStr = xmlhttp.responseText;
        if (xmlStr.search(/&lt;Services&gt;/) > -1) {
            //alert(xmlStr);
            AddService(xmlStr, stype, lang);
        }
        else {
            //alert("Location does not exist");
        }
    }
    else {
        alert('Your browser cannot handle this script');
    }
}

function AddService(xmlStr, stype, lang) {
    var ulServ;
    if (stype == '0') {
        ulServ = document.getElementById("ulFuelServ")
    }
    else {
        ulServ = document.getElementById("ulNonFuelServ")
    }
    if (window.ActiveXObject) {
        var xmldoc = new ActiveXObject("Microsoft.XMLDOM");
        xmldoc.loadXML(xmlStr);
        var len = xmldoc.documentElement.childNodes.length;
        for (var i = 0; i < len; i++) {
            var servText = xmldoc.documentElement.childNodes[i].getAttribute("name");
            var servID = xmldoc.documentElement.childNodes[i].getAttribute("id");
            var liChild = document.createElement('li');
            var aChild = document.createElement('a');
            aChild.setAttribute('class', 'text');
            if (lang == 'ar') {
                aChild.setAttribute('dir', 'rtl');
            }
            aChild.setAttribute('href', 'javascript:void(0);')
            aChild.setAttribute('onclick', 'javascript:getMapByService("' + langValue + '","' + servID + '");');
            aChild.innerHTML = servText;
            liChild.appendChild(aChild);
            ulServ.appendChild(liChild);
        }


    }
    else if (document.implementation && document.implementation.createDocument) {
        var parser = new DOMParser();
        var xmldoc = parser.parseFromString(xmlStr, "text/xml");
        var newXml = "";
        var len1 = xmldoc.documentElement.childNodes[0].childNodes[0].childNodes[0].childNodes.length;
        for (var i = 0; i < len1; i++) {
            newXml = newXml + xmldoc.documentElement.childNodes[0].childNodes[0].childNodes[0].childNodes[i].nodeValue;
        }
        var xmldoc1 = parser.parseFromString(newXml, "text/xml");
        var len = xmldoc1.documentElement.childNodes.length;
        var lat, icon, longt, desc, mname;
        for (var i = 0; i < len; i++) {
            var servText = xmldoc1.documentElement.childNodes[i].getAttribute("name");
            var servID = xmldoc1.documentElement.childNodes[i].getAttribute("id");
            var liChild = document.createElement('li');
            var aChild = document.createElement('a');
            aChild.setAttribute('class', 'text');
            if (lang == 'ar') {
                aChild.setAttribute('dir', 'rtl');
            }
            aChild.setAttribute('href', 'javascript:void(0);')
            aChild.setAttribute('onclick', 'javascript:getMapByService("' + langValue + '","' + servID + '");');
            aChild.innerHTML = servText;
            liChild.appendChild(aChild);
            ulServ.appendChild(liChild);
        }
    }
    else {
        alert('Your browser cannot handle this script');
    }
}

function getMapByGov(lang, govID) {
    map.clearOverlays();
    paramValue = 'govID=' + govID;
    var xmlQuery = "<soap:Envelope xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xmlns:xsd='http://www.w3.org/2001/XMLSchema' xmlns:soap='http://schemas.xmlsoap.org/soap/envelope/'>";
    xmlQuery += "<soap:Body>";
    xmlQuery += "<getMapPointsByGov xmlns='http://soor.com.kw/'>";
    if (lang.length == 0) {
        xmlQuery += "<govID></govID>";
    }
    else {
        xmlQuery += "<govID>" + govID + "</govID>";
    }
    if (lang.length == 0) {
        xmlQuery += "<lang></lang>";
    }
    else {
        xmlQuery += "<lang>" + lang + "</lang>";
    }
    xmlQuery += "</getMapPointsByGov></soap:Body></soap:Envelope>";
    if (window.ActiveXObject) {
        var xmldoc = new ActiveXObject("Microsoft.XMLDOM");
        xmldoc.loadXML(xmlQuery);
        xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
        xmlhttp.onreadystatechange = state_Change;
        xmlhttp.open("POST", strDomain + "soormapService/mapservice.asmx", false);
        xmlhttp.setRequestHeader("SOAPAction", "http://soor.com.kw/getMapPointsByGov");
        xmlhttp.setRequestHeader("Content-Type", "text/xml");
        xmlhttp.send(xmlQuery);
        var xmldoc1 = new ActiveXObject("Microsoft.XMLDOM");
        xmldoc1.loadXML(xmlhttp.responseXML.xml);
        var len = xmldoc1.documentElement.childNodes[0].childNodes[0].childNodes[0].childNodes.length;
        var xmlStr = "";
        for (var i = 0; i < len; i++) {
            xmlStr = xmlStr + xmldoc1.documentElement.childNodes[0].childNodes[0].childNodes[0].childNodes[i].nodeValue;
        }
        if (xmlStr.search(/<MapPoints>/) > -1) {
            //   alert(xmlStr);
            parseXml(xmlStr);
        }
        else {
            // alert("Location does not exist");
        }
    }
    else if (document.implementation && document.implementation.createDocument) {
        var parser = new DOMParser();
        var xmldoc = parser.parseFromString(xmlQuery, "text/xml");
        xmlhttp = new XMLHttpRequest();
        xmlhttp.onreadystatechange = state_Change;
        xmlhttp.open("POST", strDomain + "soormapService/mapservice.asmx", false);
        xmlhttp.setRequestHeader("SOAPAction", "http://soor.com.kw/getMapPointsByGov");
        xmlhttp.setRequestHeader("Content-Type", "text/xml");
        xmlhttp.send(xmlQuery);
        var xmlStr = xmlhttp.responseText;
        if (xmlStr.search(/&lt;MapPoints&gt;/) > -1) {
            //alert(xmlStr);
            parseXml(xmlStr);
        }
        else {
            //alert("Location does not exist");
        }
    }
    else {
        alert('Your browser cannot handle this script');
    }

}

function getMapByArea(lang) {
    map.clearOverlays();
    mapId = document.getElementById("ddlArea").value;
paramValue = 'areaID=' + document.getElementById("ddlArea").value;
//    var xmlQuery = "<soap:Envelope xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xmlns:xsd='http://www.w3.org/2001/XMLSchema' xmlns:soap='http://schemas.xmlsoap.org/soap/envelope/'>";
//    xmlQuery += "<soap:Body>";
//    xmlQuery += "<getMapPointsByArea xmlns='http://soor.com.kw/'>";
//    if (lang.length == 0) {
//        xmlQuery += "<areaID></areaID>";
//    }
//    else {
//        xmlQuery += "<areaID>" + document.getElementById("ddlArea").value + "</areaID>";
//    }
//    if (lang.length == 0) {
//        xmlQuery += "<lang></lang>";
//    }
//    else {
//        xmlQuery += "<lang>" + lang + "</lang>";
//    }
//    xmlQuery += "</getMapPointsByArea></soap:Body></soap:Envelope>";
//    if (window.ActiveXObject) {
//        var xmldoc = new ActiveXObject("Microsoft.XMLDOM");
//        xmldoc.loadXML(xmlQuery);
//        xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
//        xmlhttp.onreadystatechange = state_Change;
//        xmlhttp.open("POST", strDomain + "soormapService/mapservice.asmx", false);
//        xmlhttp.setRequestHeader("SOAPAction", "http://soor.com.kw/getMapPointsByArea");
//        xmlhttp.setRequestHeader("Content-Type", "text/xml");
//        xmlhttp.send(xmlQuery);
//        var xmldoc1 = new ActiveXObject("Microsoft.XMLDOM");
//        xmldoc1.loadXML(xmlhttp.responseXML.xml);
//        var len = xmldoc1.documentElement.childNodes[0].childNodes[0].childNodes[0].childNodes.length;
//        var xmlStr = "";
//        for (var i = 0; i < len; i++) {
//            xmlStr = xmlStr + xmldoc1.documentElement.childNodes[0].childNodes[0].childNodes[0].childNodes[i].nodeValue;
//        }
//        if (xmlStr.search(/<MapPoints>/) > -1) {
//            //   alert(xmlStr);
//            parseXml(xmlStr);
//        }
//        else {
//            // alert("Location does not exist");
//        }
//    }
//    else if (document.implementation && document.implementation.createDocument) {
//        var parser = new DOMParser();
//        var xmldoc = parser.parseFromString(xmlQuery, "text/xml");
//        xmlhttp = new XMLHttpRequest();
//        xmlhttp.onreadystatechange = state_Change;
//        xmlhttp.open("POST", strDomain + "soormapService/mapservice.asmx", false);
//        xmlhttp.setRequestHeader("SOAPAction", "http://soor.com.kw/getMapPointsByArea");
//        xmlhttp.setRequestHeader("Content-Type", "text/xml");
//        xmlhttp.send(xmlQuery);
//        var xmlStr = xmlhttp.responseText;
//        if (xmlStr.search(/&lt;MapPoints&gt;/) > -1) {
//            //alert(xmlStr);
//            parseXml(xmlStr);
//        }
//        else {
//            //alert("Location does not exist");
//        }
//    }
//    else {
//        alert('Your browser cannot handle this script');
//    }
    var mapHTML = "";
    var xmlQuery = "<soap:Envelope xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xmlns:xsd='http://www.w3.org/2001/XMLSchema' xmlns:soap='http://schemas.xmlsoap.org/soap/envelope/'>";
    xmlQuery += "<soap:Body>";
    xmlQuery += "<getMapDetails xmlns='http://soor.com.kw/'>";
    if (mapId.length == 0) {
        xmlQuery += "<mapID></mapID>";
    }
    else {
        xmlQuery += "<mapID>" + mapId + "</mapID>";
    }
    if (lang.length == 0) {
        xmlQuery += "<lang></lang>";
    }
    else {
        xmlQuery += "<lang>" + lang + "</lang>";
    }
    xmlQuery += "</getMapDetails></soap:Body></soap:Envelope>";
    if (window.ActiveXObject) {
        var xmldoc = new ActiveXObject("Microsoft.XMLDOM");
        xmldoc.loadXML(xmlQuery);
        xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
        xmlhttp.onreadystatechange = state_Change;
        xmlhttp.open("POST", strDomain + "soormapService/mapservice.asmx", false);
        xmlhttp.setRequestHeader("SOAPAction", "http://soor.com.kw/getMapDetails");
        xmlhttp.setRequestHeader("Content-Type", "text/xml");
        xmlhttp.send(xmlQuery);
        var xmldoc1 = new ActiveXObject("Microsoft.XMLDOM");
        xmldoc1.loadXML(xmlhttp.responseXML.xml);
        var len = xmldoc1.documentElement.childNodes[0].childNodes[0].childNodes[0].childNodes.length;
        var xmlStr = "";
        for (var i = 0; i < len; i++) {
            xmlStr = xmlStr + xmldoc1.documentElement.childNodes[0].childNodes[0].childNodes[0].childNodes[i].nodeValue;
        }
        if (xmlStr.search(/<MapPoints>/) > -1) {
            //alert(xmlStr);
            parseXml(xmlStr);
        }
        else {
            // alert("Location does not exist");
        }
    }
    else if (document.implementation && document.implementation.createDocument) {
        var parser = new DOMParser();
        var xmldoc = parser.parseFromString(xmlQuery, "text/xml");
        xmlhttp = new XMLHttpRequest();
        xmlhttp.onreadystatechange = state_Change;
        xmlhttp.open("POST", strDomain + "soormapService/mapservice.asmx", false);
        xmlhttp.setRequestHeader("SOAPAction", "http://soor.com.kw/getMapDetails");
        xmlhttp.setRequestHeader("Content-Type", "text/xml");
        xmlhttp.send(xmlQuery);
        var xmlStr = xmlhttp.responseText;
        if (xmlStr.search(/&lt;MapPoints&gt;/) > -1) {
            //alert(xmlStr);
            parseXml(xmlStr);
        }
        else {
            //alert("Location does not exist");
        }
    }
    else {
        alert('Your browser cannot handle this script');
    }
}

function getMapByArea2(lang, mapId) {
    map.clearOverlays();
//    paramValue = 'areaID=' + document.getElementById("ddlArea").value;
    
    var mapHTML = "";
    var xmlQuery = "<soap:Envelope xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xmlns:xsd='http://www.w3.org/2001/XMLSchema' xmlns:soap='http://schemas.xmlsoap.org/soap/envelope/'>";
    xmlQuery += "<soap:Body>";
    xmlQuery += "<getMapDetails xmlns='http://soor.com.kw/'>";
    if (mapId.length == 0) {
        xmlQuery += "<mapID></mapID>";
    }
    else {
        xmlQuery += "<mapID>" + mapId + "</mapID>";
    }
    if (lang.length == 0) {
        xmlQuery += "<lang></lang>";
    }
    else {
        xmlQuery += "<lang>" + lang + "</lang>";
    }
    xmlQuery += "</getMapDetails></soap:Body></soap:Envelope>";
    if (window.ActiveXObject) {
        var xmldoc = new ActiveXObject("Microsoft.XMLDOM");
        xmldoc.loadXML(xmlQuery);
        xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
        xmlhttp.onreadystatechange = state_Change;
        xmlhttp.open("POST", strDomain + "soormapService/mapservice.asmx", false);
        xmlhttp.setRequestHeader("SOAPAction", "http://soor.com.kw/getMapDetails");
        xmlhttp.setRequestHeader("Content-Type", "text/xml");
        xmlhttp.send(xmlQuery);
        var xmldoc1 = new ActiveXObject("Microsoft.XMLDOM");
        xmldoc1.loadXML(xmlhttp.responseXML.xml);
        var len = xmldoc1.documentElement.childNodes[0].childNodes[0].childNodes[0].childNodes.length;
        var xmlStr = "";
        for (var i = 0; i < len; i++) {
            xmlStr = xmlStr + xmldoc1.documentElement.childNodes[0].childNodes[0].childNodes[0].childNodes[i].nodeValue;
        }
        if (xmlStr.search(/<MapPoints>/) > -1) {
            //alert(xmlStr);
            parseXml(xmlStr);
        }
        else {
            // alert("Location does not exist");
        }
    }
    else if (document.implementation && document.implementation.createDocument) {
        var parser = new DOMParser();
        var xmldoc = parser.parseFromString(xmlQuery, "text/xml");
        xmlhttp = new XMLHttpRequest();
        xmlhttp.onreadystatechange = state_Change;
        xmlhttp.open("POST", strDomain + "soormapService/mapservice.asmx", false);
        xmlhttp.setRequestHeader("SOAPAction", "http://soor.com.kw/getMapDetails");
        xmlhttp.setRequestHeader("Content-Type", "text/xml");
        xmlhttp.send(xmlQuery);
        var xmlStr = xmlhttp.responseText;
        if (xmlStr.search(/&lt;MapPoints&gt;/) > -1) {
            //alert(xmlStr);
            parseXml(xmlStr);
        }
        else {
            //alert("Location does not exist");
        }
    }
    else {
        alert('Your browser cannot handle this script');
    }

}

function getMapByService(lang, sID) {
    map.clearOverlays();
    paramValue = 'sID=' + sID;
    var xmlQuery = "<soap:Envelope xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xmlns:xsd='http://www.w3.org/2001/XMLSchema' xmlns:soap='http://schemas.xmlsoap.org/soap/envelope/'>";
    xmlQuery += "<soap:Body>";
    xmlQuery += "<getMapPointsByServ xmlns='http://soor.com.kw/'>";
    if (lang.length == 0) {
        xmlQuery += "<ServID></ServID>";
    }
    else {
        xmlQuery += "<ServID>" + sID + "</ServID>";
    }
    if (lang.length == 0) {
        xmlQuery += "<lang></lang>";
    }
    else {
        xmlQuery += "<lang>" + lang + "</lang>";
    }
    xmlQuery += "</getMapPointsByServ></soap:Body></soap:Envelope>";
    if (window.ActiveXObject) {
        var xmldoc = new ActiveXObject("Microsoft.XMLDOM");
        xmldoc.loadXML(xmlQuery);
        xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
        xmlhttp.onreadystatechange = state_Change;
        xmlhttp.open("POST", strDomain + "soormapService/mapservice.asmx", false);
        xmlhttp.setRequestHeader("SOAPAction", "http://soor.com.kw/getMapPointsByServ");
        xmlhttp.setRequestHeader("Content-Type", "text/xml");
        xmlhttp.send(xmlQuery);
        var xmldoc1 = new ActiveXObject("Microsoft.XMLDOM");
        xmldoc1.loadXML(xmlhttp.responseXML.xml);
        var len = xmldoc1.documentElement.childNodes[0].childNodes[0].childNodes[0].childNodes.length;
        var xmlStr = "";
        for (var i = 0; i < len; i++) {
            xmlStr = xmlStr + xmldoc1.documentElement.childNodes[0].childNodes[0].childNodes[0].childNodes[i].nodeValue;
        }
        if (xmlStr.search(/<MapPoints>/) > -1) {
            //   alert(xmlStr);
            parseXml(xmlStr);
        }
        else {
            // alert("Location does not exist");
        }
    }
    else if (document.implementation && document.implementation.createDocument) {
        var parser = new DOMParser();
        var xmldoc = parser.parseFromString(xmlQuery, "text/xml");
        xmlhttp = new XMLHttpRequest();
        xmlhttp.onreadystatechange = state_Change;
        xmlhttp.open("POST", strDomain + "soormapService/mapservice.asmx", false);
        xmlhttp.setRequestHeader("SOAPAction", "http://soor.com.kw/getMapPointsByServ");
        xmlhttp.setRequestHeader("Content-Type", "text/xml");
        xmlhttp.send(xmlQuery);
        var xmlStr = xmlhttp.responseText;
        if (xmlStr.search(/&lt;MapPoints&gt;/) > -1) {
            //alert(xmlStr);
            parseXml(xmlStr);
        }
        else {
            //alert("Location does not exist");
        }
    }
    else {
        alert('Your browser cannot handle this script');
    }
}

function parseXml(xmlstr) {
    if (window.ActiveXObject) {
        var xmldoc = new ActiveXObject("Microsoft.XMLDOM");
        xmldoc.loadXML(xmlstr);
        var len = xmldoc.documentElement.childNodes.length;
        var lat, icon, longt, desc, mname;
        for (var i = 0; i < len; i++) {
            id = xmldoc.documentElement.childNodes[i].getAttribute("id");
            name = xmldoc.documentElement.childNodes[i].getAttribute("desc");
            sid = xmldoc.documentElement.childNodes[i].getAttribute("sid");
            lat = xmldoc.documentElement.childNodes[i].getAttribute("lat");
            longt = xmldoc.documentElement.childNodes[i].getAttribute("long");
            map.addOverlay(createMarker(new GLatLng(lat, longt), id, sid, name));
            if(i == 0)
            {
             map.panTo(new GLatLng(lat, longt));
            }
        }
         
    }
    else if (document.implementation && document.implementation.createDocument) {
        var parser = new DOMParser();
        var xmldoc = parser.parseFromString(xmlstr, "text/xml");
        var newXml = "";
        var len1 = xmldoc.documentElement.childNodes[0].childNodes[0].childNodes[0].childNodes.length;
        for (var i = 0; i < len1; i++) {
            newXml = newXml + xmldoc.documentElement.childNodes[0].childNodes[0].childNodes[0].childNodes[i].nodeValue;
        }
        var xmldoc1 = parser.parseFromString(newXml, "text/xml");
        var len = xmldoc1.documentElement.childNodes.length;
        var lat, icon, longt, desc, mname;
        for (var i = 0; i < len; i++) {
            id = xmldoc1.documentElement.childNodes[i].getAttribute("id");
            name = xmldoc1.documentElement.childNodes[i].getAttribute("desc");
            sid = xmldoc1.documentElement.childNodes[i].getAttribute("sid");
            lat = xmldoc1.documentElement.childNodes[i].getAttribute("lat");
            longt = xmldoc1.documentElement.childNodes[i].getAttribute("long");
            map.addOverlay(createMarker(new GLatLng(lat, longt), id, sid, name));
            if(i == 0)
            {
              map.panTo(new GLatLng(lat, longt));
            }
        }
       
    }
    else {
        alert('Your browser cannot handle this script');
    }
}

//
function buildServHTML(mapId, lang, serv) {
    var mapHTML1 = "";
    var xmlQuery = "<soap:Envelope xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xmlns:xsd='http://www.w3.org/2001/XMLSchema' xmlns:soap='http://schemas.xmlsoap.org/soap/envelope/'>";
    xmlQuery += "<soap:Body>";
    xmlQuery += "<getServiceByMapID xmlns='http://soor.com.kw/'>";
    if (mapId.length == 0) {
        xmlQuery += "<mapID></mapID>";
    }
    else {
        xmlQuery += "<mapID>" + mapId + "</mapID>";
    }
    if (serv.length == 0) {
        xmlQuery += "<servType></servType>";
    }
    else {
        xmlQuery += "<servType>" + serv + "</servType>";
    }
    if (lang.length == 0) {
        xmlQuery += "<lang></lang>";
    }
    else {
        xmlQuery += "<lang>" + lang + "</lang>";
    }
    xmlQuery += "</getServiceByMapID></soap:Body></soap:Envelope>";
    if (window.ActiveXObject) {
        var xmldoc = new ActiveXObject("Microsoft.XMLDOM");
        xmldoc.loadXML(xmlQuery);
        xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
        xmlhttp.onreadystatechange = state_Change;
        xmlhttp.open("POST", strDomain + "soormapService/mapservice.asmx", false);
        xmlhttp.setRequestHeader("SOAPAction", "http://soor.com.kw/getServiceByMapID");
        xmlhttp.setRequestHeader("Content-Type", "text/xml");
        xmlhttp.send(xmlQuery);
        var xmldoc1 = new ActiveXObject("Microsoft.XMLDOM");
        xmldoc1.loadXML(xmlhttp.responseXML.xml);
        var len = xmldoc1.documentElement.childNodes[0].childNodes[0].childNodes[0].childNodes.length;
        var xmlStr = "";
        for (var i = 0; i < len; i++) {
            xmlStr = xmlStr + xmldoc1.documentElement.childNodes[0].childNodes[0].childNodes[0].childNodes[i].nodeValue;
        }
        if (xmlStr.search(/<Services>/) > -1) {
            // alert(xmlStr);
            if (xmlStr.search(/<Service/) > -1) {
                mapHTML1 = buildSHTML(xmlStr, lang);
            }
        }
        else {
            // alert("Location does not exist");
        }
    }
    else if (document.implementation && document.implementation.createDocument) {
        var parser = new DOMParser();
        var xmldoc = parser.parseFromString(xmlQuery, "text/xml");
        xmlhttp = new XMLHttpRequest();
        xmlhttp.onreadystatechange = state_Change;
        xmlhttp.open("POST", strDomain + "soormapService/mapservice.asmx", false);
        xmlhttp.setRequestHeader("SOAPAction", "http://soor.com.kw/getServiceByMapID");
        xmlhttp.setRequestHeader("Content-Type", "text/xml");
        xmlhttp.send(xmlQuery);
        var xmlStr = xmlhttp.responseText;
        if (xmlStr.search(/&lt;Services&gt;/) > -1) {
            if (xmlStr.search(/&lt;Service/) > -1) {
       
                mapHTML1 = buildSHTML(xmlStr, lang);
            }
        }
        else {
            //alert("Location does not exist");
        }
    }
    else {
        alert('Your browser cannot handle this script');
    }


    return mapHTML1;
}

function buildSHTML(xmlstr, lang) {
    var mapHTML = "";
    if (window.ActiveXObject) {
        var xmldoc = new ActiveXObject("Microsoft.XMLDOM");
        xmldoc.loadXML(xmlstr);
        var len = xmldoc.documentElement.childNodes.length;
        var lat, icon, longt, desc, mname;
        for (var i = 0; i < len; i++) {
            mapHTML += xmldoc.documentElement.childNodes[i].getAttribute("name") + "<br/>";
        }

    }
    else if (document.implementation && document.implementation.createDocument) {
        var parser = new DOMParser();
        var xmldoc = parser.parseFromString(xmlstr, "text/xml");
        var newXml = "";
        var len1 = xmldoc.documentElement.childNodes[0].childNodes[0].childNodes[0].childNodes.length;
        for (var i = 0; i < len1; i++) {
            newXml = newXml + xmldoc.documentElement.childNodes[0].childNodes[0].childNodes[0].childNodes[i].nodeValue;
        }
        var xmldoc1 = parser.parseFromString(newXml, "text/xml");
        var len = xmldoc1.documentElement.childNodes.length;
        var lat, icon, longt, desc, mname;

        for (var i = 0; i < len; i++) {
            mapHTML += xmldoc1.documentElement.childNodes[i].getAttribute("name") + "<br/>";
        }

    }
    else {
        alert('Your browser cannot handle this script');
    }

    return mapHTML;

}
function buildHTML(mapId, lang) {
    var mapHTML = "";
    var xmlQuery = "<soap:Envelope xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xmlns:xsd='http://www.w3.org/2001/XMLSchema' xmlns:soap='http://schemas.xmlsoap.org/soap/envelope/'>";
    xmlQuery += "<soap:Body>";
    xmlQuery += "<getMapDetails xmlns='http://soor.com.kw/'>";
    if (mapId.length == 0) {
        xmlQuery += "<mapID></mapID>";
    }
    else {
        xmlQuery += "<mapID>" + mapId + "</mapID>";
    }
    if (lang.length == 0) {
        xmlQuery += "<lang></lang>";
    }
    else {
        xmlQuery += "<lang>" + lang + "</lang>";
    }
    xmlQuery += "</getMapDetails></soap:Body></soap:Envelope>";
    if (window.ActiveXObject) {
        var xmldoc = new ActiveXObject("Microsoft.XMLDOM");
        xmldoc.loadXML(xmlQuery);
        xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
        xmlhttp.onreadystatechange = state_Change;
        xmlhttp.open("POST", strDomain + "soormapService/mapservice.asmx", false);
        xmlhttp.setRequestHeader("SOAPAction", "http://soor.com.kw/getMapDetails");
        xmlhttp.setRequestHeader("Content-Type", "text/xml");
        xmlhttp.send(xmlQuery);
        var xmldoc1 = new ActiveXObject("Microsoft.XMLDOM");
        xmldoc1.loadXML(xmlhttp.responseXML.xml);
        var len = xmldoc1.documentElement.childNodes[0].childNodes[0].childNodes[0].childNodes.length;
        var xmlStr = "";
        for (var i = 0; i < len; i++) {
            xmlStr = xmlStr + xmldoc1.documentElement.childNodes[0].childNodes[0].childNodes[0].childNodes[i].nodeValue;
        }
        if (xmlStr.search(/<MapPoints>/) > -1) {
            //alert(xmlStr);
            mapHTML = buildHTML2(xmlStr, lang);
        }
        else {
            // alert("Location does not exist");
        }
    }
    else if (document.implementation && document.implementation.createDocument) {
        var parser = new DOMParser();
        var xmldoc = parser.parseFromString(xmlQuery, "text/xml");
        xmlhttp = new XMLHttpRequest();
        xmlhttp.onreadystatechange = state_Change;
        xmlhttp.open("POST", strDomain + "soormapService/mapservice.asmx", false);
        xmlhttp.setRequestHeader("SOAPAction", "http://soor.com.kw/getMapDetails");
        xmlhttp.setRequestHeader("Content-Type", "text/xml");
        xmlhttp.send(xmlQuery);
        var xmlStr = xmlhttp.responseText;
        if (xmlStr.search(/&lt;MapPoints&gt;/) > -1) {
            //alert(xmlStr);
            mapHTML = buildHTML2(xmlStr, lang);
        }
        else {
            //alert("Location does not exist");
        }
    }
    else {
        alert('Your browser cannot handle this script');
    }
    return mapHTML;
}

function buildHTML2(xmlstr, lang) {
    var mapHTML = "";
    if (window.ActiveXObject) {
        var xmldoc = new ActiveXObject("Microsoft.XMLDOM");
        xmldoc.loadXML(xmlstr);
        var len = xmldoc.documentElement.childNodes.length;
        var lat, icon, longt, desc, mname;
        for (var i = 0; i < len; i++) {

            id = xmldoc.documentElement.childNodes[i].getAttribute("id");
            sid = xmldoc.documentElement.childNodes[i].getAttribute("sid");
            name = xmldoc.documentElement.childNodes[i].getAttribute("name");
            address = xmldoc.documentElement.childNodes[i].getAttribute("desc");
            gov = xmldoc.documentElement.childNodes[i].getAttribute("gov");
            area = xmldoc.documentElement.childNodes[i].getAttribute("area");
        }

        if (lang == 'ar') {
            mapHTML = "<table width=\"350\" dir=\"rtl\" padding=\"3\">";
            mapHTML += "<tr>";
            mapHTML += "<td colspan=\"3\" style=\"font-family:Simplified Arabic\"><p align=\"right\"><strong>" + sid + " - " + name + "</strong><br/>";
            mapHTML += "<strong>" + address + "</strong></p></td>";
        }
        else {
            mapHTML = "<table width=\"350\" padding=\"3\" align=\"center\">";
            mapHTML += "<tr>";
            mapHTML += "<td colspan=\"3\"><p align=\"left\"><strong>" + sid + " - " + name + "</strong><br/>";
            mapHTML += "<strong>" + address + "</strong></p></td>";
        }
        mapHTML += "</tr>";
        mapHTML += "<tr>";
        if (lang == 'ar') {
            mapHTML += "<td align=\"right\" style=\"font-family:Simplified Arabic;font-size:11px;color:#666; \">منتجات الوقود</td>";
            mapHTML += "<td align=\"right\" style=\"font-family:Simplified Arabic;font-size:11px;color:#003467; \">خدمات إضافية</td>";
            mapHTML += "<td align=\"right\" style=\"font-family:Simplified Arabic;font-size:11px;color:#666; \">بطاقات التعبئة</td>";
        }
        else {
            mapHTML += "<td><p align=\"left\">Fuel Products</p></td>";
            mapHTML += "<td><p align=\"left\" style=\"color:#003467; \">Services</p></td>";
            mapHTML += "<td><p align=\"left\">Cards</p></td>";
        }
        mapHTML += "</tr>";
        mapHTML += "<tr>";
        if (lang == 'ar') {
            mapHTML += "<td valign=\"top\" ><p align=\"right\" style=\"font-family:Simplified Arabic;font-size:11px;color:#666; \">" + buildServHTML(id, lang, '0') + "<br/></p></td>";
            mapHTML += "<td valign=\"top\" ><p align=\"right\" style=\"font-family:Simplified Arabic;font-size:11px;color:#003467; \">" + buildServHTML(id, lang, '1') + "<br/></p></td>";
            mapHTML += "<td valign=\"top\" ><p align=\"right\" style=\"font-family:Simplified Arabic;font-size:11px;color:#666; \">" + buildServHTML(id, lang, '2') + "<br/></p></td>";
        }
        else {
            mapHTML += "<td valign=\"top\"><p align=\"left\">" + buildServHTML(id, lang, '0') + "<br/></p></td>";
            mapHTML += "<td valign=\"top\"><p align=\"left\" style=\"color:#003467; \">" + buildServHTML(id, lang, '1') + "<br/></p></td>";
            mapHTML += "<td valign=\"top\"><p align=\"left\">" + buildServHTML(id, lang, '2') + "<br/></p></td>";
        }

        mapHTML += "</tr>";
        mapHTML += "<tr><td>&nbsp;</td></tr>";
        mapHTML += "<tr><td>&nbsp;</td></tr>";
        mapHTML += "</table>";

    }
    else if (document.implementation && document.implementation.createDocument) {
        var parser = new DOMParser();
        var xmldoc = parser.parseFromString(xmlstr, "text/xml");
        var newXml = "";
        var len1 = xmldoc.documentElement.childNodes[0].childNodes[0].childNodes[0].childNodes.length;
        for (var i = 0; i < len1; i++) {
            newXml = newXml + xmldoc.documentElement.childNodes[0].childNodes[0].childNodes[0].childNodes[i].nodeValue;
        }
        var xmldoc1 = parser.parseFromString(newXml, "text/xml");
        var len = xmldoc1.documentElement.childNodes.length;
        var lat, icon, longt, desc, mname;
        for (var i = 0; i < len; i++) {
            id = xmldoc1.documentElement.childNodes[i].getAttribute("id");
            sid = xmldoc1.documentElement.childNodes[i].getAttribute("sid");
            name = xmldoc1.documentElement.childNodes[i].getAttribute("name");
            address = xmldoc1.documentElement.childNodes[i].getAttribute("desc");
            gov = xmldoc1.documentElement.childNodes[i].getAttribute("gov");
            area = xmldoc1.documentElement.childNodes[i].getAttribute("area");
        }

        if (lang == 'ar') {
            mapHTML = "<table width=\"350\" dir=\"rtl\" padding=\"3\">";
            mapHTML += "<tr>";
            mapHTML += "<td colspan=\"3\" style=\"font-family:Simplified Arabic\"><p align=\"right\"><strong>" + sid + " - " + name + "</strong><br/>";
            mapHTML += "<strong>" + address + "</strong></p></td>";
        }
        else {
            mapHTML = "<table width=\"350\" padding=\"3\">";
            mapHTML += "<tr>";
            mapHTML += "<td colspan=\"3\"><p align=\"left\"><strong>" + sid + " - " + name + "</strong><br/>";
            mapHTML += "<strong>" + address + "</strong></p></td>";
        }
        mapHTML += "</tr>";
        mapHTML += "<tr>";
        if (lang == 'ar') {
            mapHTML += "<td align=\"right\" style=\"font-family:Simplified Arabic;font-size:11px;color:#666; \">منتجات الوقود</td>";
            mapHTML += "<td align=\"right\" style=\"font-family:Simplified Arabic;font-size:11px;color:#666; \">خدمات إضافية</td>";
            mapHTML += "<td align=\"right\" style=\"font-family:Simplified Arabic;font-size:11px;color:#666; \">بطاقات التعبئة</td>";
        }
        else {
            mapHTML += "<td><p align=\"left\">Fuel Services</p></td>";
            mapHTML += "<td><p align=\"left\" style=\"color:#003467; \">Non-Fuel Services</p></td>";
            mapHTML += "<td><p align=\"left\">Cards</p></td>";
        }
        mapHTML += "</tr>";
        mapHTML += "<tr>";
        if (lang == 'ar') {
            mapHTML += "<td valign=\"top\"><p align=\"right\" style=\"font-family:Simplified Arabic;font-size:11px;color:#666; \">" + buildServHTML(id, lang, '0') + "<br/></p></td>";
            mapHTML += "<td valign=\"top\"><p align=\"right\" style=\"font-family:Simplified Arabic;font-size:11px;color:#003467; \">" + buildServHTML(id, lang, '1') + "<br/></p></td>";
            mapHTML += "<td valign=\"top\"><p align=\"right\" style=\"font-family:Simplified Arabic;font-size:11px;color:#666; \">" + buildServHTML(id, lang, '2') + "<br/></p></td>";
        }
        else {
            mapHTML += "<td valign=\"top\"><p align=\"left\">" + buildServHTML(id, lang, '0') + "<br/></p></td>";
            mapHTML += "<td valign=\"top\"><p align=\"left\" style=\"color:#003467; \">" + buildServHTML(id, lang, '1') + "<br/></p></td>";
            mapHTML += "<td valign=\"top\"><p align=\"left\">" + buildServHTML(id, lang, '2') + "<br/></p></td>";
        }

        mapHTML += "</tr>";
        mapHTML += "<tr><td>&nbsp;</td></tr>";
        mapHTML += "<tr><td>&nbsp;</td></tr>";
        mapHTML += "</table>";
    }
    else {
        alert('Your browser cannot handle this script');
    }

    return mapHTML;

}

function Load(id) {
    document.getElementById('t1').className = 'Invisible';
    document.getElementById('t2').className = 'Invisible';
    document.getElementById('t3').className = 'Invisible';
    document.getElementById('t' + id).className = 'Visible';


}
function showPopupMap() {
    var winURL = "map_bg.htm";
    if (langValue == 'ar') {
        winURL = "ar_map_bg.htm";
    }
    winURL += '?view=1&' + paramValue;
    window.open(winURL, 'SoorMap', 'menubar=0,resizable=0,width=800,height=1000');
}

function showPrint() {
    var winURL = "map_print.htm";
    if (langValue == 'ar') {
        winURL = "ar_map_print.htm";
    }
    winURL += '?view=2&' + paramValue;
    window.open(winURL, 'Print', 'menubar=0,resizable=0,width=800,height=500');
}


function MM_showHideLayers() { //v9.0
  var i,p,v,obj,args=MM_showHideLayers.arguments;
  for (i=0; i<(args.length-2); i+=3) 
  with (document) if (getElementById && ((obj=getElementById(args[i]))!=null)) { v=args[i+2];
    if (obj.style) { obj=obj.style; v=(v=='show')?'visible':(v=='hide')?'hidden':v; }
    obj.visibility=v; }
}
function MM_changeProp(objId,x,theProp,theValue) { //v9.0
  var obj = null; with (document){ if (getElementById)
  obj = getElementById(objId); }
  if (obj){
    if (theValue == true || theValue == false)
      eval("obj.style."+theProp+"="+theValue);
    else eval("obj.style."+theProp+"='"+theValue+"'");
  }
}
function MM_callJS(jsStr) { //v2.0
  return eval(jsStr)
}