﻿// JScript File
var xmlHttp;

var server = location.href.split('/')[2];


var is_ie = ( navigator.userAgent.indexOf('MSIE') >= 0) ? 1 : 0;
var is_ie5 = (navigator.appVersion.indexOf("MSIE 5.5")!=-1) ? 1 : 0;
var is_opera = ((navigator.userAgent.indexOf("Opera6")!=-1)||(navigator.userAgent.indexOf("Opera/6")!=-1)) ? 1 : 0;
//netscape, safari, mozilla behave the same???
var is_netscape = (navigator.userAgent.indexOf('Netscape') >= 0) ? 1 : 0; 

var targetDiv = null;
var dvAddress; var MouseEvent;

// function to create XMLHTTP object
function GetXmlHttpObject(handler) 
{
    var objXmlHttp = null;    //Holds the local xmlHTTP object instance

    //Depending on the browser, try to create the xmlHttp object
    if (is_ie){
        //The object to create depends on version of IE
        //If it isn't ie5, then default to the Msxml2.XMLHTTP object
        var strObjName = (is_ie5) ? 'Microsoft.XMLHTTP' : 'Msxml2.XMLHTTP';
        
        //Attempt to create the object
        try{
            objXmlHttp = new ActiveXObject(strObjName);
            objXmlHttp.onreadystatechange = handler;
        }
        catch(e){
        //Object creation errored
            alert('IE detected, but object could not be created. Verify that active scripting and activeX controls are enabled');
            return;
        }
    }
    else if (is_opera){
        //Opera has some issues with xmlHttp object functionality
        alert('Opera detected. The page may not behave as expected.');
        return;
    }
    else{
        // Mozilla | Netscape | Safari
        objXmlHttp = new XMLHttpRequest();
        objXmlHttp.onload = handler;
        objXmlHttp.onerror = handler;
    }
    
    //Return the instantiated object
    return objXmlHttp;
}

function stateChangeHandler()
{
    //readyState of 4 or 'complete' represents that data has been returned
    if (xmlHttp.readyState == 4 || xmlHttp.readyState == 'complete'){
        //Gather the results from the callback
        var str = xmlHttp.responseText;
 
        if(str != null && str != '')
        {
            if(str.indexOf("<img") == 0)
            {
                targetDiv.innerHTML = str;
            }
            else
            {
           
                DisplayAddress(str);
            }
        }
    }
} 

// XMLHttp send Post request
function xmlHttp_Post(xmlhttp, url,SD) 
{
	xmlhttp.open('POST', url, false);
	xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	xmlHttp.setRequestHeader("If-None-Match","some-random-string");
	xmlhttp.setRequestHeader("Pragma","no-cache");
    xmlhttp.setRequestHeader("Cache-control","no-cache,max-age=0");
	if(is_netscape)
	{
	    xmlhttp.expires = -1;
	}
	xmlhttp.send(SD);
} 

function SendRequest(URL, NameValuePair)
{
    xmlHttp = GetXmlHttpObject(stateChangeHandler);
    //Send the xmlHttp get to the specified url
    xmlHttp_Post(xmlHttp, URL,NameValuePair);
}


//
var pos_x;
var pos_y;
function TrackCordinate(e,div)
{ 
//    pos_x = e.offsetX?(e.offsetX):e.pageX - div.offsetLeft;
//    pos_y = e.offsetY?(e.offsetY):e.pageY - div.offsetTop;
 
   
    if(navigator.appName == 'Netscape')
        { 
            var pos=0;
            var posLeft=0;
            var DivCommLeft = div;
            pos_x = e.offsetX?(e.offsetX):e.pageX;
            while(DivCommLeft)
            {
                posLeft+=DivCommLeft.offsetLeft;
                DivCommLeft=DivCommLeft.offsetParent;
            }
            pos_x = parseInt(pos_x) - parseInt(posLeft);
           
          
            
            pos_y = e.offsetY?(e.offsetY):e.pageY;
         
            while(div)
            {
                pos+=div.offsetTop;
                div=div.offsetParent;
            }
            pos_y = parseInt(pos_y)-parseInt(pos);
             
             
          
             
        }
        else
        {
            pos_x = e.offsetX?(e.offsetX):e.pageX;
           
            pos_y = e.offsetY?(e.offsetY):e.pageY;
           
        }
}
var currentx, currenty;

function SaveCommunitiesMarker(community,Div)
{ 
    var url = "http://"+server+"/UserControl/ZKHomes-ProcessMapRequest.aspx?";
    
    if(community != null)
    {
        targetDiv = Div;
        
        var NameValuePair = "x=" + pos_x + "&y=" + pos_y + "&community=" + community;
        SendRequest(url,NameValuePair);
        //document.getElementById("disp").style.left = (pos_x-1) ;
        //document.getElementById("disp").style.top = (pos_y-15) ;
        //document.getElementById("disp").style.visibility = "visible" ;
    }
    else
    {
        alert('Community is null');
        return;
    }
}


function FetchCommunityAddress(CommunityID, divAdd, e,x,y)
{
    dvAddress = divAdd;
    MouseEvent = e;
    var url =  "http://"+server+"/UserControl/ZKHomes-ProcessMapRequest.aspx?cid=" + CommunityID ;
    
    currentx =x;
    currenty=y;
    SendRequest(url,'');

}

function DisplayAddress(html)
{
    var X; var Y;
  
	if (MouseEvent.pageX)
    {
      X = MouseEvent.pageX;
    }
    else if (MouseEvent.clientX)
    {
      //  alert( MouseEvent.x)
         X = MouseEvent.clientX + (document.documentElement.scrollLeft ?  document.documentElement.scrollLeft : document.body.scrollLeft);
        //X = MouseEvent.x //+ (document.documentElement.scrollLeft ?  document.documentElement.scrollLeft : document.body.scrollLeft);
        //X=currentx+20//+(document.documentElement.scrollLeft ?  document.documentElement.scrollLeft : document.body.scrollLeft);
    }
    
    if (MouseEvent.pageY)
    { 
        Y = MouseEvent.pageY;
    }
    else if (MouseEvent.clientY)
    {
        Y = MouseEvent.clientY+ (document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop);
        // Y=currenty+20//+(document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop);
    }    
 
X=X+10;
Y=Y+10;
    document.getElementById(dvAddress).innerHTML = '';
    document.getElementById(dvAddress).innerHTML = html;
    document.getElementById(dvAddress).style.left = X + 'px' ;
    document.getElementById(dvAddress).style.top = Y + 'px' ;
    
//    document.getElementById(dvAddress).style.left = currentx + 'px' ;
//    document.getElementById(dvAddress).style.top = currenty + 'px' ;

    document.getElementById(dvAddress).style.display = "block" ;
     
     
   
 	
}


var secs
var timerID = null
var timerRunning = false
var delay = 1000


function InitializeTimerMap()
{  
    // Set the length of the timer, in seconds
    secs = 5;
    StopTheClockMap()
    StartTheTimerMap()
}

function StopTheClockMap()
{
    if(timerRunning)
        clearTimeout(timerID)
    timerRunning = false
}

function StartTheTimerMap()
{
    if (secs==0)
    {
        StopTheClockMap()
       
        document.getElementById('dvAddress').style.display = 'none';
    }
    else
    {
        self.status = secs
        secs = secs - 1
        timerRunning = true
        timerID = self.setTimeout("StartTheTimerMap()", delay);
        document.getElementById('dvAddress').style.display = 'block';
    }
}


function HideAddress()
{
    document.getElementById(dvAddress).style.display = "none" ;
      //  currentx =0;
  //  currenty=0;
}

function LoadMapIcon(dvMap,html)
{
    document.getElementById(dvMap).innerHTML = str;
  
}
var pos_Mapx;
var pos_Mapy;
function TrackMapCordinate(e,div)
{
    
    pos_Mapx = e.offsetX?(e.offsetX):e.pageX - div.offsetLeft;
    pos_Mapy = e.offsetY?(e.offsetY):e.pageY - div.offsetTop;
     
     
        
}
var currentx, currenty;

function SaveCommunitiesMapMarker(community,Div)
{
   
    var url = "http://"+server+"/UserControl/ZKHomes-ProcessMapRequest.aspx?";
    if(community != null)
    {
        targetDiv = Div;
        
        var NameValuePair = "Mapx=" + pos_x + "&Mapy=" + pos_y + "&community_id=" + community;
        SendRequest(url,NameValuePair);
    }
    else
    {
        alert('Community is null');
        return;
    }
}
