//debugger
/*
	LIBRERIA CLIENT FOR FRAMEWORK SOLUTIONS
	AUTHOR: MCE, Silverio Del Orbe A.
		Everest Datos S.A. (Empresa de Asosoria en Sistema de  Informacion Y Comercio Electronico)
*/
// --- Estandar Variables
var m_strClass_Code;
var m_strClass_Name;
var m_strCity_Code;
var m_strCity_Name;
var m_strSearch_data;
var m_strNew_Page=0;
var m_strLanguage_Code = "es";
var m_strSearchType = "neg";
var m_strSearchAction = "";
//-----------Map Utils
var m_objMapCoordenates = new Array(); //--Maps
var obj_Map_div = document.getElementById("map_canvas")?document.getElementById("map_canvas"):null;
var obj_Map_Base = null;
var gdir;
/// Others declarations
var m_strBgColor = "";
var mblnIndicadorInicio = false;
var mstrDefFont = "10pt";
var m_Search_Seccions = new Array('getListingsData', 'getListingsData', 'sendFriend', 'SaveClickMap', 'SaveStatistics', 'SaveClickSection', 'SaveClickTelefono','SaveClickNewModel');
var g_objXmlHttp = null;
var gmarkers = [];
var customers = [];
var geocoder;
var l_strModule;
var viaqstr = false;
var initlat = 18.875103;
var initlong = -70.120239;
var findneg = true;
var Nombresitio;
var txt = "";
var markersPage = new Array();
var isMozilla = false;
var isPostBack = true;
var levelMap = "http://www.paginasamarillas.com.do/";
var letras = new Array('A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z');
if (window.XMLHttpRequest)
    g_objXmlHttp = new XMLHttpRequest();
else
    g_objXmlHttp = new ActiveXObject("Microsoft.XMLHTTP"); 
//------------------------------------------------------------
// HASTA AQUI LIBRERIAS DE FUNCIONES DE MENU DEL  STM319.js...23/08/2005
//-------------------------------------->>>>>>>>>>>>>>>>>>>>>>
function trim(str)
{
    try{
        return ((""+str).replace(/^\s*([\s\S]*\S+)\s*$|^\s*$/,'$1') );
   }catch(e){
		////alert(e.description)
		return;
	}
}
function replaceAll(pstrValue, pstrfind,pstrReplace){
    try{
	var strValueF = new String();
	strValueF=pstrValue;
	while (strValueF.indexOf(pstrfind)>-1)
		strValueF=strValueF.replace(pstrfind,pstrReplace);

	return  strValueF;
	}catch(e){
		////alert(e.description)
		return "";
	}

}
/*
    Para Sincronizar la paginas con Ajax
    param Method name by num 
*/

function PagesSincronizer(p_intSearch_Num, params) {
    PagesSincronizerGeneral (p_intSearch_Num, params, "");
}

function PagesSincronizerGeneral (p_intSearch_Num, params, level){
 try{
        if (!m_Search_Seccions[p_intSearch_Num])
            return;
             
	    l_strModule = "";
        if(!isPostBack)
        {
            l_strModule = queryStringValue("sid");
            isPostBack = true;
            if (l_strModule != "null" && l_strModule != "")
                viaqstr = true;
            else
                return;
        }

        //g_objXmlHttp.Async = false;
        g_objXmlHttp.open("POST", location.protocol + '//' + location.host + "/ajaxServices/paelAjaxServer.asmx/" + m_Search_Seccions[p_intSearch_Num], false); 
        g_objXmlHttp.setRequestHeader("Content-Type","Application/x-www-form-urlencoded; charset=UTF-8");
        var l_strParams = "";
        
        if (m_Search_Seccions[p_intSearch_Num] == "getListingsData")
        {
            l_strParams = "p_strCurrent_SID=" + encodeURIComponent(l_strModule);
		    l_strParams += "&p_strSearch_Criteria=" + m_strSearch_data;
		    l_strParams += "&p_strClass_Code=" + m_strClass_Code;
		    l_strParams += "&p_strClass_Name=" + m_strClass_Name;
		    l_strParams += "&p_strCity_Code=" + m_strCity_Code;
		    l_strParams += "&p_strCity_Name=" + m_strCity_Name;
		    l_strParams += "&p_strNew_Page=" + m_strNew_Page;
		    l_strParams += "&p_strSeachType=" + m_strSearchType;
            l_strParams += "&p_strSeachAction=" + m_strSearchAction;
        }
        else
        {
            l_strParams = params;
        }
        
		g_objXmlHttp.send(l_strParams);
		
		if (m_Search_Seccions[p_intSearch_Num] == "getListingsData")
        {
		    var objGeneralDiv = getElementDHTML("ui_obj_genral_division");
		    var objXMLDoc = getXMLDocument("");

            //TESTING
            
            var a = g_objXmlHttp.responseXML;  

		    if (isMozilla)
		    {
                objXMLDoc = g_objXmlHttp.responseXML; //parser.parseFromString(g_objXmlHttp.responseText,"text/xml");
            }
            else
            {
                objXMLDoc.loadXML(g_objXmlHttp.responseText);
            }
		    var objXSLDoc = getXMLDocument("http://www.paginasamarillas.com.do/Data/maps/adGPSStyle.xsl");
		    objGeneralDiv.visible = true;
		    
		    var objNodes;
		    if (isMozilla)
		        objNodes = objXMLDoc.getElementsByTagName("newDataTable");
		    else
		        objNodes = objXMLDoc.documentElement.selectNodes("//NewDataSet/newDataTable");
		    
		    prepareVariables(objNodes);
		    return ""; objXMLDoc.transformNode(objXSLDoc);         
		}
	}catch(e){ 
        alert(e+ "; sincroniza..."); 
        return;         
	}	
} // end of function 

function queryStringValue(findName){   
    var name = new String();   
    var value = new String();   
    var querystring = document.location.href;   
    if(querystring.indexOf("?")==-1){   
        return "null";   
    }   
    querystring = querystring.split("?");   
    querystring = querystring[1].split("&");   
    for(q=0;q<querystring.length;q++){   
        var pair = querystring[q].split("=");   
        name = pair[0].toLowerCase();   
        value = pair[1];   
        if(findName.toLowerCase() == name){   
            return value;   
        }   
    }   
}   

/*
Valores de Ambiente
*/
function setGeneralData(p_name,p_class_code,p_class_name,p_city_code,p_city_name, p_page_num,p_search_type,p_search_action,p_lang_Code){
    try{
        
        m_strSearch_data = p_name==""?"":p_name; //getElementValue("__calle")
        m_strClass_Code = p_class_code==""?getElementValue("__class_code"):p_class_code;
        m_strClass_Name = p_class_name==""?getElementValue("__class_name"):p_class_name;
        m_strCity_Code = p_city_code==""?getElementValue("__class_code"):p_city_code;
        m_strCity_Name = p_city_name==""?getElementValue("__class_name"):p_city_name;
        m_strNew_Page= p_page_num==""?getElementValue("__class_name"):p_page_num;
        m_strLanguage_Code = p_lang_Code==""?getElementValue("__lang_code"):p_lang_Code;
        m_strSearchType = p_search_type==""?getElementValue("__search_type"):p_search_type;
        m_strSearchAction = p_search_action==""?getElementValue("__search_action"):p_search_action;
    
        return PagesSincronizerGeneral(1, null, levelMap);
    }catch(e){
        alert(e.description);
    }
    return "";
}

function LoadDataByName(p_field_name, p_field_value)
{
     if (p_field_name == "Clasificado_code")//---    
        return setGeneralData("",p_field_value,"","","","","","","");
     else if (p_field_name == "City_code")
            return setGeneralData("","","",p_field_value,"","","","","");   
                       
      return "";
}
function maxWindow() 
{ 
        window.moveTo(0,0); 
        if (document.all) 
                top.window.resizeTo(screen.availWidth,screen.availHeight) 
        else 
                if (document.layers||document.getElementById) 
                        if (top.window.outerHeight<screen.availHeight||top.window.outerWidth<screen.availWidth) 
                        { 
                                top.window.outerHeight = screen.availHeight; 
                                top.window.outerWidth = screen.availWidth; 
                        } 
        return; 
} 
function getSelectName(pstrPrefijo){
	var objSELs = document.all.tags("SELECT");
	var strName  = new String();
	var strResult = "";
	for (i = 0 ; i < objSELs.length; i++){
		strName = objSELs(i).name;
		if (pstrPrefijo +"_" == strName.substr(0,4)){
			strResult =strName; 	
			break;
		}
	}
	return strResult;
}
function removeAll(pobjSelect,pintIndex){
	try{
		for (i=pobjSelect.length-1;i>pintIndex;i--)
			pobjSelect.remove(i);
	}catch(e){
		alert("0000111" +e.description);
	}
}
function PagesSincronizer2(){
	try{
		var objXmlHttp = new ActiveXObject("Microsoft.XMLHTTP"); 
        var objXmlDoc = new ActiveXObject("Microsoft.XMLDOM"); 
        var strUser = "";
            strModule = "";
        if (getElementDHTML("__UserIdentify")!=null)
			strUser = getElementDHTML("__UserIdentify").value;
        if (getElementDHTML("__ActualModule")!= null)
			strModule = getElementDHTML("__ActualModule").value;
		if (strModule == "" || strUser == "" )
			return;
        objXmlDoc.async = false; 
        objXmlHttp.open("POST","BusinessRule.asmx/getNewDocumentInfo",false); 
        objXmlHttp.setRequestHeader("Content-Type","Application/x-www-form-urlencoded"); 
		objXmlHttp.send("pstrType=__ONLYNEW&pstrModule=" + strModule+ "&pstrUserID="+strUser ); 
		objXmlDoc.loadXML(objXmlHttp.responseText); 
		if (objXmlDoc==null || objXmlDoc.documentElement==null){
			return;
		}
		
		objNodes = objXmlDoc.documentElement.selectNodes("/string"); 
		if (objNodes!=null && objNodes.length>0 && objNodes.item(0)!=null && objNodes.item(0).text!=""){
			window.open("blankpage.htm","_scsWindow001","titlebar=no,fullscreen=no,height=0,width=0,status=no,toolbar=no,menubar=no,location=no,top=1500,left=1500,scrollbars=no,resizable=false",false);
			var objVentana = window.open("blankpage.htm","_scsWindow001","titlebar=no,fullscreen=yes,height=10,width=10,status=no,toolbar=no,menubar=no,location=no,top=1000,left=1000,scrollbars=no,resizable=no",false);
			//fullscreen=yes,
			moveWindowSpecial(objVentana);
			objVentana.active = true;
			moveWindowSpecial(objVentana);
			objVentana.active= true;
			var objBody = objVentana.document.all.tags("body");
			if (objBody!=null  && objBody(0)!=null)
				objBody(0).innerHTML = objNodes.item(0).text;
		}
	} catch(e){
		alert("Problemas de sincronizacion");
	}
}
function moveWindowSpecial(pobjWindow){
	try{
		pobjWindow.moveTo(screen.availWidth,screen.availHeight); 
		for (i=0;i<200;i++){
			pobjWindow.resizeTo(i,i); 
			pobjWindow.moveTo(screen.availWidth-(i+200),screen.availHeight-(i+200)); 
		}
	}catch(e){
		//alert(e.description)
	}
}
function visibleObject(pstrObject,pstrGroup, pobjSender){
  try{
	var strVisible ="hidden";
	if (pobjSender.checked)
		strVisible = "visible";
	var objTarget = document.all.tags(pstrObject);
	var objVisible = new Object();
	objVisible["visible"] = "hidden";
	objVisible["hidden"] = "visible";
	var strObjName ="";
	var strObjID ="";
	var strGroupValue = new String();
	var blnCumple = false;
	strGroupValue =pstrGroup;
	var intLen = strGroupValue.length; 
	for (i=0;i<objTarget.length;i++){
		strObjName = objTarget(i).name; 
		strObjID = objTarget(i).id;
		blnCumple = (strObjName != null && strObjName.substr(0,intLen) == strGroupValue);
		blnCumple = blnCumple || (strObjID != null && strObjID.substr(0,intLen) == strGroupValue);
		if (blnCumple)
			objTarget(i).style.visibility = strVisible; 
	}
	if (pstrObject == "input"){
		visibleObject("P",pstrGroup,pobjSender);
	}
  }catch(e){
	//alert(e.description);
  }
}
function changeOrder(pstrColumnName,pstrDirection,pstrPage){
	try{
		var strParams = getInputValues("");
		strParams += "&__orderColumn="+pstrColumnName;
		strParams += "&__orderDirection="+pstrDirection;
		window.navigate(pstrPage + "?" +strParams );
	}catch(e){
	}
}
function getInputValues(pstrExclude){
	try{
	var objInputs = null; document.all.tags("input");
	var astrTagname = new Array();
	astrTagname[0]="INPUT"; astrTagname[1]="SELECT";
	var strResult ="";
	var strLocalExclude = new String(pstrExclude);
	var strAdd ="";
	for (var J = 0;J<2;J++){
		objInputs = document.all.tags(astrTagname[J]);
		for (var i = 0;i<objInputs.length;i++){
			if (objInputs(i).value != "") //&& strLocalExclude.indexOf(objInputs(i).name)<0
				strResult += strAdd + objInputs(i).name +"=" + objInputs(i).value;  
			strAdd ="&";
		}
	}
	return strResult; 
    }catch(e){
		////alert(e.description)
	}
}
/* PARA AGREGAR ITEM A UNA LISTA */
function addItem(pstrListName, pstrFieldValue)
{
	try{
		objSelect = getElementDHTML(pstrListName).options;
		var objOption;
		if (getElementDHTML(pstrFieldValue).value=="")
			return;
		objOption = document.createElement("OPTION");
		objSelect.add(objOption);
		objOption.innerText = getElementDHTML(pstrFieldValue).value;
		objOption.value = getElementDHTML(pstrFieldValue).value;
		objOption.selected = true;
		getElementDHTML(pstrFieldValue).value = "";
	}catch(e){
		////alert(e.description)
	}
}
function getElementDHTML(p_strName){
    var objElement;
    if (document.all) {
        objElement = document.all[p_strName]; 
     }else 
        if (document.layers) {
                objElement = document.layers[p_strName]; 
        }else 
            if (document.getElementById) {
                objElement = document.getElementById(p_strName); 
            }
    return objElement;
}
function getElementValue(p_strName){
    var objElement = getElementDHTML(p_strName);
    if (objElement) {
        return objElement.value;
     }else 
        return "";
}
function getXMLDocument(p_fileName)
{
  var objXmlDoc;
  try{
  // code for IE
  if (window.ActiveXObject)
  {
    objXmlDoc = new ActiveXObject("Microsoft.XMLDOM");
  }
  // code for Mozilla, Firefox, Opera, etc.
  else if (document.implementation  && document.implementation.createDocument)
  {
    objXmlDoc = document.implementation.createDocument("","",null);
    isMozilla = true;
   }
  else
  {
    alert('Your browser cannot handle this script');
  }
    objXmlDoc.async = false;
    //if (p_fileName !="")
        //objXmlDoc.load(p_fileName);
   }catch(e){}
    return(objXmlDoc);
}

function displayResult()
{
    xml=loadXMLDoc("cdcatalog.xml");
    xsl=loadXMLDoc("cdcatalog.xsl");
    // code for IE
    if (window.ActiveXObject)
    {
        ex=xml.transformNode(xsl);
        document.getElementById("example").innerHTML=ex;
    }
  // code for Mozilla, Firefox, Opera, etc.
    else if (document.implementation
    && document.implementation.createDocument)
  {
    xsltProcessor=new XSLTProcessor();
    xsltProcessor.importStylesheet(xsl);
    resultDocument = xsltProcessor.transformToFragment(xml,document);
    document.getElementById("example").appendChild(resultDocument);
  }
}
function getNodeValue(pobjNode,pstrField){
	try{
	    var node;
	    if (isMozilla)
	    {
	        node = pobjNode.getElementsByTagName(pstrField);
	        node = node[0];
	    }
	    else
	    {
	        node = pobjNode.selectSingleNode(pstrField);
	    }
	    if (node.firstChild !=null)
		    return node.firstChild.nodeValue;
	    else
		    return "";
	} catch(e){
		return "";	
	}
}
function setNodeValue(pobjNode,pstrField,pstrValue){
	try{
		if (pobjNode.selectSingleNode(pstrField).firstChild !=null)
			pobjNode.selectSingleNode(pstrField).firstChild.nodeValue=pstrValue;
		return true;
	} catch(e){
		return false;	
	}
}
function prepareVariables(p_objNodes)
{
    if (p_objNodes==null)
        return;
    var lng = p_objNodes.length;
    if (isMozilla)
        lng = lng/2;
    for (i=0;i<lng;i++){
         m_objMapCoordenates[i] = new Array();      
         m_objMapCoordenates[i][0] = getNodeValue(p_objNodes[i], "SUBSCR_ID");
         m_objMapCoordenates[i][1] = getNodeValue(p_objNodes[i], "LATITUD");
         m_objMapCoordenates[i][2] = getNodeValue(p_objNodes[i], "LONGITUD");
         m_objMapCoordenates[i][3] = getNodeValue(p_objNodes[i], "NOMBRE");
         m_objMapCoordenates[i][4] = getNodeValue(p_objNodes[i], "M");
         m_objMapCoordenates[i][5] = getNodeValue(p_objNodes[i], "CLASIF_ID");
         m_objMapCoordenates[i][6] = getNodeValue(p_objNodes[i], "CLASIFICADO");
         m_objMapCoordenates[i][7] = getNodeValue(p_objNodes[i], "DIRECCION");
         m_objMapCoordenates[i][8] = getNodeValue(p_objNodes[i], "CIUDAD");
         m_objMapCoordenates[i][9] = getNodeValue(p_objNodes[i], "CITYNAME");
         m_objMapCoordenates[i][10] = getNodeValue(p_objNodes[i], "TELCODE");
         m_objMapCoordenates[i][11] = getNodeValue(p_objNodes[i], "TELEFONO");
         m_objMapCoordenates[i][12] = getNodeValue(p_objNodes[i], "EMAIL");
         m_objMapCoordenates[i][13] = getNodeValue(p_objNodes[i], "WEB");
         m_objMapCoordenates[i][14] = getNodeValue(p_objNodes[i], "ORDEN");  
         m_objMapCoordenates[i][15] = getNodeValue(p_objNodes[i], "IMAP");
         m_objMapCoordenates[i][16] = getNodeValue(p_objNodes[i], "FOT1");
         m_objMapCoordenates[i][17] = getNodeValue(p_objNodes[i], "FOT2");
         m_objMapCoordenates[i][18] = getNodeValue(p_objNodes[i], "FOT3");
         m_objMapCoordenates[i][19] = getNodeValue(p_objNodes[i], "MMAP");
         m_objMapCoordenates[i][20] = getNodeValue(p_objNodes[i], "mapa");
    }
    return;
}

function LoadLocalData(p_field_name,p_field_value){
    if (obj_Map_Base != null)
    {
        removePoint();
        LoadDataByName(p_field_name,p_field_value); // Default Coordenates 
        LoadBounds();
        if (m_objMapCoordenates && m_objMapCoordenates.length>0)
            obj_Map_Base.setCenter(new google.maps.LatLng(m_objMapCoordenates[0][1], m_objMapCoordenates[0][2]), 16);
        }
}       

/** Inicializa el mapa */            
function LoadMaps() {
    try{
        //LoadDataByName("City_code",'SD'); // Default Coordenates 
        if (findneg)
            setGeneralData("","","","","","","","","");
                        
        if (!obj_Map_Base)
            obj_Map_Base = new google.maps.Map2(document.getElementById("map_canvas"));
            // RD 18.526492,-69.895020
            var objBeginLatLng = new google.maps.LatLng(initlat,initlong);
            var zoom = 8;

            if (m_objMapCoordenates != null && m_objMapCoordenates.length > 0)
            {
                objBeginLatLng = new google.maps.LatLng(m_objMapCoordenates[0][1], m_objMapCoordenates[0][2]);
                zoom = 16;
            }
                    
            if (!findneg)
            {
                zoom = 16;
                removePoint();
                document.getElementById("listapuntos").innerHTML = "";
                var point = new GLatLng(initlat, initlong);
                obj_Map_Base.addOverlay(createMarker(point, i));
            }
                    
            obj_Map_Base.setCenter(objBeginLatLng,zoom);                   
            obj_Map_Base.addControl(new GLargeMapControl3D());
            obj_Map_Base.addControl(new GScaleControl());
            obj_Map_Base.setUIToDefault();
                  
            LoadBounds();
            if(viaqstr && l_strModule != "null" && l_strModule != "")
            {
                GEvent.trigger(gmarkers[0], 'click');
                viaqstr = false;
            }
        }
    catch(e){
        alert(e.Description);
    }
}
/** Inicializa el mapa */            
function LoadMapsNewLookAndFeel() {
    try{
        //LoadDataByName("City_code",'SD'); // Default Coordenates 
        if (findneg)
            setGeneralData("","","","","","","","","");
                        
        if (!obj_Map_Base)
            obj_Map_Base = new google.maps.Map2(document.getElementById("mapadiv"));
            // RD 18.526492,-69.895020
            var objBeginLatLng = new google.maps.LatLng(initlat,initlong);
            var zoom = 8;

            if (m_objMapCoordenates != null && m_objMapCoordenates.length > 0)
            {
                objBeginLatLng = new google.maps.LatLng(m_objMapCoordenates[0][1], m_objMapCoordenates[0][2]);
                zoom = 16;
            }
                    
            if (!findneg)
            {
                zoom = 16;
                removePoint();
                document.getElementById("listapuntos").innerHTML = "";
                var point = new GLatLng(initlat ,initlong);
                obj_Map_Base.addOverlay(createMarker(point, i));
            }
                    
            obj_Map_Base.setCenter(objBeginLatLng,zoom);                   
            obj_Map_Base.addControl(new GLargeMapControl3D());
            obj_Map_Base.addControl(new GScaleControl());
            obj_Map_Base.setUIToDefault();
                  
            LoadBounds();
            if(viaqstr && l_strModule != "null" && l_strModule != "")
            {
                GEvent.trigger(gmarkers[0], 'click');
                viaqstr = false;
            }
        }
    catch(e){
        //alert(e.Description);
    }
}  
/** Carga el mapa en una ubicacion especifica 
   - Funciona para cargar los sitios de interes */              
function LoadMaps2(lat, lon, nombre)
{
    initlat = lat;
    initlong = lon;
    findneg = false;
    m_objMapCoordenates = null;
    Nombresitio = nombre;
    LoadMaps();
   
    findneg = true;
}

/** Encuentra en el buscador de google Map el texto indicado 
    en el campo ctl00_SearchMain_txtNombre */
function googleFind()
{
    var searchType = document.getElementById("ctl00_MainContent_SearchBoxId_searchTypeHidden").value;
    
    if (searchType == 'calle')
    {
        var address = document.getElementById("ctl00_MainContent_SearchBoxId_busquedaTxt").value;
        try
        {
            if (address != null && address != '')
            {
                geocoder = new GClientGeocoder();
                geocoder.getLocations(address + " Republica Dominicana", addToMap);
            }

        }
        catch(e)
        {
        }
    }
    else if (searchType == 'categoria')
    {
        var categValue = document.getElementById("cbxClasificados").value;
        LoadLocalData('Clasificado_code',"'"+ categValue +"'"); 
        SaveClick('', 'click_class_mapa', "'" + categValue + "'");
    }
    else if (searchType == 'interes')
    {
        var cbx = document.getElementById("cbxSitios");
        if (cbx != null)
        {
            var sitioValue = cbx[cbx.selectedIndex].value;
            var sitioText = cbx.options[cbx.selectedIndex].text;
        
            var vector = new Array();
            vector = sitioValue.split(",");
            LoadMaps2(vector[0],vector[1], "'" + sitioText + "'");
        }
    }
    else if (searchType == 'entidadesFinancieras')
    {
        // Inicializando el span descriptivo para que no tenga html
        document.getElementById("listapuntos").innerHTML = "";
        var ciudades = document.getElementById("ciudadesEntidadesFinancieras");
        var sector = document.getElementById("sector");
        var entidades = document.getElementById("EntidadesFinancieras");
        var ciudadValue, sectorValue = '', entidadesValue;
        if (ciudades != null)
        {
            ciudadValue = ciudades[ciudades.selectedIndex].value;           
            //var ciudadText = ciudades.options[ciudades.selectedIndex].text;             
        }
        // Cuando existe sector normalizado, seria adaptarlo
//        if (sector != null)
//        {
//            sectorValue = sector[sector.selectedIndex].value;           
//            //var ciudadText = sector.options[sector.selectedIndex].text;             
//        }
        if (entidades != null)
        {
            entidadesValue = entidades[entidades.selectedIndex].value;           
            //var ciudadText = entidades.options[entidades.selectedIndex].text;             
        }
        var e; // variable de error
        try
        {
            getEntidades(entidadesValue, ciudadValue, sectorValue);
        }
        catch(e)
        {
            alert(e);
        }
    }
}

/** Agrega el mapa los puntos encontrados,
    Ademas crea un listado en la parte superior del 
    mapa con el listado de items encontrados */
function addToMap(response)
{   
    if (obj_Map_Base != null)
    {
        document.getElementById("listapuntos").innerHTML = "";
        txt = "";
        document.getElementById('listapuntostd').style.height = 1 + "px";
        removePoint();
        // Retrieve the object
        if (response.Placemark)
        {
            var cont = 0;
            for (var i = 0; i < response.Placemark.length; i++) {
                place = response.Placemark[i];
                var address = place.address;
                
                if (address.toUpperCase().indexOf('BANCO POPULAR') == -1 && address.toUpperCase().indexOf('LA SIRENA') == -1 && address.toUpperCase().indexOf('CAROL MORGAN') == -1)
                {
                    try{
                        if (response.Placemark[i].AddressDetails.Country.AdministrativeArea.Locality.DependentLocality.AddressLine)
                            addres = response.Placemark[i].AddressDetails.Country.AdministrativeArea.Locality.DependentLocality.AddressLine[0];
                    }catch(e){}
                        
                    if (address.indexOf(',', address.indexOf(',') + 1) != -1)
                        address = address.substring(0, address.indexOf(',', address.indexOf(',') + 1));
                    else
                        address = address.substring(0, address.indexOf(','));
                            
                    txt += fillTable(cont, "<a class=\"negro11menu\" style=\"text-decoration:underline;color:Black;\" href=\"javascript:obj_Map_Base.setCenter(new GLatLng(" + 
                    place.Point.coordinates[1].toString() + ", " + place.Point.coordinates[0].toString() + "), 18);\">" + address + "</a>", 5);
                    cont++;
                        
                    // Retrieve the latitude and longitude
                    point = new GLatLng(place.Point.coordinates[1],
                    place.Point.coordinates[0]);

                    // Center the map on this point
                    obj_Map_Base.setCenter(point, 18);
                }    
            }
            
            if (cont == 0)
                document.getElementById("listapuntos").innerHTML = "<a class=\"rojo10mapa\">La b&uacute;squeda no produjo resultados</a>";
            else 
                document.getElementById("listapuntos").innerHTML = openDiv("Resultados Encontrados", cont) + txt + "</table></div>";
        }
        else
        {
            var span = "<a class=\"rojo10mapa\">La b&uacute;squeda no produjo resultados</a>";
            document.getElementById("listapuntos").innerHTML = span;
        }
    }
}

/** Remueve todos los puntos marcados del mapa */
function removePoint(){
    try{
        m_objMapCoordenates =  new Array();
        obj_Map_Base.clearOverlays();
    }catch(e){alert(e.description)}
                
}

/** Crea una tabla con el menu de los items encontrados en la busqueda */
function fillTable(secuencia, text, columnas)
{
    var table = "";
    columnas--;
    if (secuencia == 0)
        table += "<tr><td style=\"vertical-align:top;\">"  + text + "</td>";
    else if (secuencia % columnas == 0)
        table +=  "<td style=\"vertical-align:top;\">" + text + "</td></tr>";
    else if (secuencia % columnas != 0)
        table += "<td style=\"vertical-align:top;\">" + text + "</td>";
    return table;
}

/** Crea un marcador para señalar una ubicacion en el mapa */
function createMarker(point, p_Num_id) {
              try{
              if (letras.length <= p_Num_id)
                return;
               // Create our "tiny" marker icon
              var blueIcon = new GIcon(G_DEFAULT_ICON);
              if (findneg)
                  blueIcon.image = "http://www.paginasamarillas.com.do/images/NuevoLookAndFeel/punteros-grises/Letras/" + letras[p_Num_id] + ".png";
              else
                  blueIcon.image = "http://www.paginasamarillas.com.do/images/NuevoLookAndFeel/punteros-grises/punteros-mapa.png";

            // Set up our GMarkerOptions object
              blueIcon.iconSize = new GSize(32, 31);
              blueIcon.shadowSize = new GSize(0, 0);

              if (p_Num_id < 0) {
                  markerOptions = { "icon": blueIcon, "labelText": "A", "labelOffset": new GSize(-6, -10), "title": Nombresitio };
              } else {
              markerOptions = { "icon": blueIcon, "labelText": "A", "labelOffset": new GSize(-6, -10), "title": m_objMapCoordenates[p_Num_id][3] };
              }
            
            
              var marker = new GMarker(point, markerOptions); 

              var message = ["This","is","the","secret","message"];
              marker.value = p_Num_id;
              var myHtml;
              
              var eval = findneg;
              GEvent.addListener(marker, "click", function() {
                if (eval)
                {
                    var advert = false;
                    var anuncios = "<tr><td colspan='2' align='center' height='0px'>";
                    var marca = "";
                    
                    var imgStrFirst = "<img src='http://ads.amarillas.com.do/FOT";
                    var imgStrMiddle = "s.jpg' border='0' onmouseover=\"this.style.cursor='pointer';\" onmouseout=\"this.style.cursor='pointer';\" onclick=\"javascript:viewFotMap('";
                    if (m_objMapCoordenates[p_Num_id][16] != null && m_objMapCoordenates[p_Num_id][16] != '')
                    {
                        advert = true;
                        anuncios +=  imgStrFirst + "1/" + m_objMapCoordenates[p_Num_id][16] + imgStrMiddle + "1','" + m_objMapCoordenates[p_Num_id][16] + "')\" />";
                    }
                    if (m_objMapCoordenates[p_Num_id][17] != null && m_objMapCoordenates[p_Num_id][17] != '')
                    {
                        advert = true;
                        var imgText = imgStrFirst + "2/" + m_objMapCoordenates[p_Num_id][17] + "-1" + imgStrMiddle + "2','" + m_objMapCoordenates[p_Num_id][17] + "-1')\"/>"; 
                        anuncios += imgText + "&nbsp;" + replaceAll(imgText, '-1', '-2');
                    }
                    if (m_objMapCoordenates[p_Num_id][18] != null && m_objMapCoordenates[p_Num_id][18] != '')
                    {
                        advert = true;
                        var imgText = imgStrFirst + "3/" +m_objMapCoordenates[p_Num_id][18] + "-1" + imgStrMiddle + "3','" + m_objMapCoordenates[p_Num_id][18] + "-1')\"/>"; 
                        anuncios += imgText + "&nbsp;" + replaceAll(imgText, '-1', '-2') + "&nbsp;" + replaceAll(imgText, '-1', '-3');
                    }
                    if (m_objMapCoordenates[p_Num_id][19] != null && m_objMapCoordenates[p_Num_id][19] != '')
                    {
                        advert = true;
                        marca = "<a href='http://" + m_objMapCoordenates[p_Num_id][13] +  "' target='_blank'><img id=img0" + p_Num_id + " src='http://ads.amarillas.com.do/MMAP/"  + m_objMapCoordenates[p_Num_id][19] + ".gif' border=0></a>";
                    }
                     if (m_objMapCoordenates[p_Num_id][15] != null && m_objMapCoordenates[p_Num_id][15] != '')
                    {
                        advert = true;
                        anuncios += "<tr><td colspan='2'><hr style='width:410px; border-style:solid; border-color:Black; border-width:1px;' />" + m_objMapCoordenates[p_Num_id][15] + "</td></tr>\n";
                    }
                    
                    anuncios += "</td></tr>";
                    
                    myHtml = "<table width='" + ((advert) ? "350" : "0") + "' height='0' border=0 class=negro11 ><tr><td colspan=2><strong>" + m_objMapCoordenates[p_Num_id ][3] + "</strong>";
                    myHtml += " ( Class:" + m_objMapCoordenates[p_Num_id][6] + ")</td></tr>\n";
                    myHtml += "<tr><td>" + m_objMapCoordenates[p_Num_id ][10] + "-" + m_objMapCoordenates[p_Num_id ][11] + "</td>\n";
                    myHtml +=  "<td rowspan=3>" + marca + "</td></tr>\n";
                    myHtml += "<tr><td>" + m_objMapCoordenates[p_Num_id][9] + ", " + m_objMapCoordenates[p_Num_id][7] + "</td></tr>\n";
                    myHtml += "<tr><td><a href='mailto:" + m_objMapCoordenates[p_Num_id][12] + "'>"+m_objMapCoordenates[p_Num_id][12]+"</a><br/><a href='http://" + m_objMapCoordenates[p_Num_id][13] + "'>" + m_objMapCoordenates[p_Num_id][13]+ "</a></td></tr>\n";
                    myHtml += anuncios;
                    myHtml += "</table>";
                    
                    document.getElementById("hdClienteMap").value = m_objMapCoordenates[p_Num_id ][3];
                    document.getElementById("hdQuerystringMap").value = m_objMapCoordenates[p_Num_id ][20];
                    
                    if (!viaqstr)
                    {
                        //LOG
                        SaveClick(m_objMapCoordenates[p_Num_id][0], 'click_marker', m_objMapCoordenates[p_Num_id][5]);
                    }
                }
                else
                {
                    myHtml = "<table width='0' height='0' border=0 class=negro11 ><tr><td colspan=2><strong>" + Nombresitio + "</strong></td></tr></table>";
                }
                obj_Map_Base.openInfoWindowHtml(point, myHtml);
                
              });
              
                gmarkers[p_Num_id] = marker;
                
                if (findneg)
                    txt += fillTable(p_Num_id, "<a class=\"negro11menu\" style=\"text-decoration:underline;color:black;\" href=\"javascript:GEvent.trigger(gmarkers[" + p_Num_id.toString() + "], 'click'); obj_Map_Base.setCenter(new google.maps.LatLng(" + point.y + ", " + point.x + "), 16);\"><font style=\"font-weight:bold;\">" + letras[p_Num_id] + "</font>&nbsp;-&nbsp;" + m_objMapCoordenates[p_Num_id][3] + "</a>", 5); //<img src=\"http://www.paginasamarillas.com.do/maps/files/images/rojo      .png\" border=\"0\"/>&nbsp;
              //}
              return marker;
              }catch(e){
                return null;
              }
}//

/** Guarda en la estadistica el click que se haga a uno de los clasificados o items */
function SaveClick(cust_id, source, class_code)
{
    var l_strParams = "cust_id=" + cust_id;
    l_strParams += "&source=" + source;
    l_strParams += "&class_code=" + class_code;
    PagesSincronizerGeneral(3, l_strParams, levelMap);
}

function onGDirectionsLoad(){ 
   //resumen de tiempo y distancia
   document.getElementById("getDistance").innerHTML =gdir.getSummaryHtml(); 
} 

/** Errores a desplegar */
function mostrarError(){
    if (gdir.getStatus().code == G_GEO_UNKNOWN_ADDRESS)
       alert("No se ha encontrado una ubicación geográfica que se corresponda con la dirección especificada.");
    else if (gdir.getStatus().code == G_GEO_SERVER_ERROR)
       alert("No se ha podido procesar correctamente la solicitud de ruta o de códigos geográficos, sin saberse el motivo exacto del fallo.");
    else if (gdir.getStatus().code == G_GEO_MISSING_QUERY)
       alert("Falta el parámetro HTTP q o no tiene valor alguno. En las solicitudes de códigos geográficos, esto significa que se ha especificado una dirección vacía.");
   else if (gdir.getStatus().code == G_GEO_BAD_KEY)
       alert("La clave proporcionada no es válida o no coincide con el dominio para el cual se ha indicado.");
    else if (gdir.getStatus().code == G_GEO_BAD_REQUEST)
       alert("No se ha podido analizar correctamente la solicitud de ruta.");
    else alert("Error desconocido.");
    
}

function obtenerRuta(desde, hasta) {
   var i;
   var tipo;
   //comprobar tipo trayecto seleccionado
   /*for (i=0;i<document.form_ruta.tipo.length;i++){ 
      if (document.form_ruta.tipo[i].checked){
      break; 
      }
   } */
   //tipo = document.form_ruta.tipo[i].value;
   tipo = 2;
   if(tipo==1){
      //a pie
      gdir.load("from: " + desde + " to: " + hasta,
{ "locale": "es", "travelMode" : G_TRAVEL_MODE_WALKING });
   }else{
      //conduccion
      gdir.load("from: " + desde + " to: " + hasta,
{ "locale": "es_DR", "travelMode" : G_TRAVEL_MODE_DRIVING });
    //gdir.loadFromWaypoints(["36.5937, -121.88","38.299, -122.2836"]); 
   }
   
} 

function viewFotMap(folder, image)
{
    var width = 315;
    var height = 493;
    
    displayWindow('windowfotmap', 'http://www.paginasamarillas.com.do/', width, height, 1);
    document.getElementById("divfotmap").style.width = width.toString() + "px";
    document.getElementById("divfotmap").style.height = height.toString() + "px";
    
    document.getElementById("divfotmap").style.background = "url('http://ads.amarillas.com.do/FOT" + folder + "/" + image +".jpg')";
}

/** Add 5 markers to the map at random locations **/
function LoadBounds(){
    if (m_objMapCoordenates == null || m_objMapCoordenates.length == 0)
        return;
        
    var bounds = obj_Map_Base.getBounds();
    var southWest = bounds.getSouthWest();
    var northEast = bounds.getNorthEast();
    var lngSpan = northEast.lng() - southWest.lng();
    var latSpan = northEast.lat() - southWest.lat();
    txt = "";
    var cont = 0;
    document.getElementById("listapuntos").innerHTML = "";
    document.getElementById('listapuntostd').style.height = 0 + "px";
    for (var i = 0; i < m_objMapCoordenates.length; i++) {
      try{
            var point = new GLatLng(m_objMapCoordenates[i][1] ,m_objMapCoordenates[i][2]);
            obj_Map_Base.addOverlay(createMarker(point, i));
            cont++;
        }catch(e){}
    }
    
    document.getElementById("listapuntos").innerHTML = openDiv("Negocios Encontrados", cont) + txt + "</table></div>";
}

/** Menu dinamico que contiene los items que fueron 
    encontrados en la busqueda */
function openDiv(frase, cont)
{
    var span = "<a class=\"azul10mapa\">" + frase + ":</a>";
    span += "<br/>";
    span += "<div id=\"resultados\" style=\" border-style:solid; border-width:1px; border-color:#BFBFBF; width:825px; height:37px; background-color:white; position:absolute;\" onmouseover=\"javascript:document.getElementById('resultados').style.zIndex = document.getElementById('resultados').style.zIndex + 1; document.getElementById('resultados').style.height = ((document.getElementById('tableresult').style.height >= 37) ? document.getElementById('tableresult').style.height : 37);\" onmouseout=\"javascript:document.getElementById('resultados').style.zIndex = document.getElementById('resultados').style.zIndex - 1;document.getElementById('resultados').style.height = 37 + 'px';\">";    
    span += "<table id=\"tableresult\" width=\"100%\" bgcolor=\"White\">"
    document.getElementById('listapuntostd').style.height = 35 + "px";
    return span;
}

/** Custom function for fetchng tiles from OSM server */
function TileToQuadKey ( x, y, zoom){ 
        var quad = ""; 
        for (var i = zoom; i > 0; i--){
            var mask = 1 << (i - 1); 
            var cell = 0; 
            if ((x & mask) != 0) 
                cell++; 
            if ((y & mask) != 0) 
                cell += 2; 
            quad += cell; 
        } 
        return quad; 
}

/** Enviar un item encontrado por correo */
function sendMail(from, to, subject, fromName, message, toName, cliente, querystring)
{
    var l_strParams = "from=" + from;
    l_strParams += "&to=" + to;
    l_strParams += "&subject=" + subject;
    l_strParams += "&fromName=" + fromName;
    l_strParams += "&message=" + message;
    l_strParams += "&toName=" + toName;
    l_strParams += "&cliente=" + cliente;
    l_strParams += "&querystring=" + encodeURIComponent(querystring);
    
    PagesSincronizerGeneral(2, l_strParams, levelMap);
}
/**********************************************************************************************
***********************************************************************************************
**********************************************************************************************/
/*
* Para agregar un elemento al map de entidades financieras (Para fines de Marcas)
*/
function addEntMapElement2(p_int_Position, p_str_Nombre, p_float_Longitud, p_float_Latitud, p_str_Advert_id, p_str_adv_url, p_str_Address, p_str_address_city, p_str_nombre_Banco, p_mmap,p_icon) {

    m_objMapEntidadesCoord[p_int_Position - 1] = new Array();
    m_objMapEntidadesCoord[p_int_Position - 1][0] = p_str_Nombre;
    m_objMapEntidadesCoord[p_int_Position - 1][1] = p_float_Longitud;
    m_objMapEntidadesCoord[p_int_Position - 1][2] = p_float_Latitud;
    m_objMapEntidadesCoord[p_int_Position - 1][3] = p_str_Advert_id;
    m_objMapEntidadesCoord[p_int_Position - 1][4] = p_str_adv_url;
    m_objMapEntidadesCoord[p_int_Position - 1][5] = p_str_Address;
    m_objMapEntidadesCoord[p_int_Position - 1][6] = p_str_address_city;
    m_objMapEntidadesCoord[p_int_Position - 1][7] = p_str_nombre_Banco;
    m_objMapEntidadesCoord[p_int_Position - 1][8] = p_mmap;
    m_objMapEntidadesCoord[p_int_Position - 1][9] = p_icon;
    
    return;
    // Como llamarla....
    /*<!-addMapElement(<xsl:value-of select="position()"/> - 1,'<xsl:value-of select="Nombre"/>',<xsl:value-of select="Longitud"/>,<xsl:value-of select="Latitud"/>,'<xsl:value-of select="@ID"/>','<xsl:call-template name="is_advert_listing_template"/>','<xsl:value-of select="Direccion"/>,<xsl:value-of select="Ciudad"/>','<xsl:value-of select="Telefonos/@ID"/>';*/
}
/** localiza los punto contenidos en el arreglo de entidades financieras */
function localizarPuntoEntMapPage()
{
    if (obj_Map_Base != null) {
        obj_Map_Base.clearOverlays();
        markersPage = new Array();
        LoadEntFinBoundsMapPage(null);
        if (markersPage.length > 0)
            AutoPositionAndZoomPage();
        else
            obj_Map_Base.setZoom(8);
        //map.setCenter(new GLatLng(latitud,longitud),12);  
        //GEvent.trigger(markers[p_Num_id-1], 'click');
     }
}
/* Cargar los puntos en el mapa de las entidades financieras
   Obtenidos del arreglo m_objMapCoordenates
*/
function LoadEntFinBoundsMapPage(lastIcon) {
    if (m_objMapEntidadesCoord == null || m_objMapEntidadesCoord.length == 0) {
        alert('No existen entidades financieras en esta localidad.');
        return;
    }
    txt = "";
    var num = 1;
    var lastIconToAdd = null;
    
    for (var i = 0; i < m_objMapEntidadesCoord.length ; i++) {
        try {
            var point = new GLatLng(m_objMapEntidadesCoord[i][2], m_objMapEntidadesCoord[i][1]);
            var marker = createEntFinMarkerMapPage(point, i, m_objMapEntidadesCoord[i][9])

            if (lastIcon != i)
                obj_Map_Base.addOverlay(marker);
            else
                lastIconToAdd = marker;
                
            num++;
            
        } catch (e) { }

    }

    if (lastIconToAdd != null)
        obj_Map_Base.addOverlay(lastIconToAdd);
    
    is_AutoZoomMap = true;
}

/* Crear el punto de localizacion de Entidades Financieras un item */
function createEntFinMarkerMapPage(point, p_Num_id,num) {
    try {
        var nombre = m_objMapEntidadesCoord[p_Num_id][0];
        var codHTML = buildHtml2(m_objMapEntidadesCoord[p_Num_id]);
        var icono = m_objMapEntidadesCoord[p_Num_id][9];
        // Create an icon
        var baseIcon = new GIcon();
        baseIcon.iconSize = new GSize(30,36);
        baseIcon.iconAnchor = new GPoint(16, 11);
        baseIcon.shadowSize = new GSize(0, 0);
        baseIcon.image = 'http://www.paginasamarillas.com.do/images/new/Mapa/Marker/'+ num + '.png';
        if (icono == 'cajeros')
        {
            markerOptions = { "icon": baseIcon, "title": 'CAJERO ' + nombre};            
        }
        else if (icono == 'bancos')
        {
            markerOptions = { "icon": baseIcon, "title": 'SUCURSAL ' + nombre};
        }
        else
        {
            markerOptions = { "icon": baseIcon, "title": 'SUCURSAL ' +nombre};
        }
        
        
        var marker = new GMarker(point,markerOptions)
        marker.value = p_Num_id;        
        
        // Go to town page if icon is clicked
        GEvent.addListener(marker, "click", function() {
             obj_Map_Base.openInfoWindowHtml(point, codHTML);
             if (obj_Map_Base.getZoom() < 15)
                obj_Map_Base.setCenter(point,15);
        });
         
        markersPage[p_Num_id] = marker;
        return marker;
    } catch (e) {
        return null;
    }

}


/** Construye el Html de la informacion del marcador */
function buildHtml2(variables) {
    var nombre = variables[0];
    var advert_id = variables[3];
    var dir = variables[5];
    var tel = variables[7]; // En las entidades financieras esta variable almacena el nombre del banco
    var mmap = variables[8];
    var icon = variables[9];
    var codHTML = "";

    // With Image
    if (mmap == 1) {
        codHTML += "<table border='0' cellpadding='0' cellspacing='0'>";
        if (icon != 0) {
            codHTML += "<tr>";
            codHTML += "<td style='padding-right:6px;'>";
            codHTML += "<img src='http://ads.amarillas.com.do/MarcaRegistrada/" + icon + ".gif' alt='' height='25' />";
            codHTML += "</td>";
        }
        codHTML += "<td class='textMapa'>";
        // Si es una busqueda de entidades financieras, se coloca el banco y el lugar de la sucursal o cajero
        if (icon == 'cajeros' || icon == 'bancos') {
            if (icon == 'cajeros')
                codHTML += "<b>Cajero Automático " + tel + "</b><br />";
            else {
                codHTML += "<b>Banco: " + tel + "</b><br />";
                codHTML += "<b>Teléfono: " + variables[8] + "</b><br />";
            }
            codHTML += "<b>Lugar: " + nombre + "</b><br />";
        }
        else {
            codHTML += "<b>" + nombre + "</b><br />";
            codHTML += tel + "<br />";
        }
        codHTML += dir + "<br />";
        codHTML += "</td>";
        codHTML += "</tr>";
        codHTML += "</table>";
    }
    else   // Without Image
    {
        codHTML += "<table border='0' cellpadding='0' cellspacing='0'>";
        codHTML += "<tr>";
        codHTML += "<td class='textMapa'>";
        if (icon == 'cajeros' || icon == 'bancos') {
            if (icon == 'cajeros')
                codHTML += "<b>Cajero Automático " + tel + "</b><br />";
            else {
                codHTML += "<b>Banco: " + tel + "</b><br />";
                codHTML += "<b>Teléfono: " + variables[8] + "</b><br />";
            }
            codHTML += "<b>Lugar: " + nombre + "</b><br />";
        }
        else {
            codHTML += "<b>" + nombre + "</b><br />";
            codHTML += tel + "<br />";
        }
        codHTML += dir + "<br />";
        codHTML += "</td>";
        codHTML += "</tr>";
        codHTML += "</table>";
    }

    return codHTML;
}
function getEntidades(entidad_id,ciudad,sector)
{
    var g_objXmlHttp = null;

        if (window.XMLHttpRequest)
            g_objXmlHttp = new XMLHttpRequest();
        else
            g_objXmlHttp = new ActiveXObject("Microsoft.XMLHTTP");

        var url = "http://www.paginasamarillas.com.do/ajaxServices/paelAJAXServer.asmx/getEntidadesFinancierasXml"; ///Puerto Rico
        // Inicializando el arreglo de coordenadas
        m_objMapEntidadesCoord = new Array();
        g_objXmlHttp.open("POST", url, false);
        g_objXmlHttp.setRequestHeader("Content-Type", "Application/x-www-form-urlencoded; charset=UTF-8");

        g_objXmlHttp.send('entidad_ID='+entidad_id+'&ciudadValue='+ciudad+'&sector='+sector);       
        
        var objXMLDoc = g_objXmlHttp.responseXML;//Text;
        var objXSLDoc = getXMLDocumentByUrl("http://www.paginasamarillas.com.do/Data/Entidades_Financieras/entidadesFinancierasParser.xslt");
        transformAjaxXsl(objXMLDoc, objXSLDoc, "div_obj_full_result_map_2");        
        localizarPuntoEntMapPage();        
            //---------------------------------------------------------------
            //prepareVariables(objXMLDoc.selectNodes());
            //removePoint();
}

function AutoPositionAndZoomPage() {
    try {
        canSearch = false;

        var bounds = new GLatLngBounds();
        for (var i = 0; i < markersPage.length; i++) {
            try {
                if (markersPage[i] != null && !markersPage[i].isHidden()) {
                    var point = markersPage[i].getPoint(); //.getPoint();
                    bounds.extend(point);
                }
            }
            catch (ex) { }

        }
        obj_Map_Base.setZoom(obj_Map_Base.getBoundsZoomLevel(bounds));
        obj_Map_Base.setCenter(bounds.getCenter());
    }
    catch (ex) {alert(ex); }
}

function getXMLDocumentByUrl(p_fileName)
{
  var objXmlDoc;
    try {
        // code for IE
        if (window.ActiveXObject) {
            objXmlDoc = new ActiveXObject("Microsoft.XMLDOM");
        }
        // code for Mozilla, Firefox, Opera, etc.
        else if (document.implementation && document.implementation.createDocument) {
            objXmlDoc = document.implementation.createDocument("", "doc", null);
            isMozilla = true;
        }
        else {
            alert('Your browser cannot handle this script');
        }

        objXmlDoc.async = false;
        if (p_fileName != "") {
            objXmlDoc.load(p_fileName);
            
        }
    } catch(e) {
        objXmlDoc = LoadXSLDocument(p_fileName);
    }
    return (objXmlDoc);
}
function LoadXSLDocument(p_strFileName) {
    try {
        var obj_xmlhttp = new window.XMLHttpRequest();
        obj_xmlhttp.open("GET", p_strFileName, false);
        obj_xmlhttp.setRequestHeader("Content-Type", "text/xml; charset=UTF-8"); // or "text/xml"
        obj_xmlhttp.send("");
        var obj_xmlDoc = obj_xmlhttp.responseXML;
        if (obj_xmlDoc == null && window.DOMParser) {
            var parser = new DOMParser();
            obj_xmlDoc = parser.parseFromString(obj_xmlhttp.responseText, "text/xml");
        }
        return obj_xmlDoc;
    } catch(e) {
        alert(e + " HttpGet Load.....");
        return null;
    }
}
function transformAjaxXsl(p_objXml, p_objXsl, p_htmlDestineObject) {
    // code for IE
    try {
        var scriptDocument = '';
        if (window.ActiveXObject) {
            scriptDocument = p_objXml.transformNode(p_objXsl);                        
        }
        // code for Mozilla, Firefox, Opera, etc.
        else if (document.implementation && document.implementation.createDocument) {
            
            var xsltProcessor = new XSLTProcessor();
            xsltProcessor.importStylesheet(p_objXsl);            
            var resultDocument = xsltProcessor.transformToFragment(p_objXml, document);  
            document.getElementById(p_htmlDestineObject).innerHTML = "";
                        
            document.getElementById(p_htmlDestineObject).appendChild(resultDocument);  
            
            scriptDocument = document.getElementById(p_htmlDestineObject).innerHTML;
   
        }
        
        eval(scriptDocument);        
    } catch (e) {alert(e);}
    return "";
}

