function runLatlongSearch (evt) {
   
    var img_x;
    var img_y;
    
    if(!evt && window.event){
        evt = window.event;    
    }
    
    if ('number' == typeof evt.offsetX) {          // MSIE
       img_x = evt.offsetX;
       img_y = evt.offsetY;
    } else {                    // Netscape, etc.
       img_x = evt.clientX ;//viewport
       img_y = evt.clientY;
       img_x = evt.pageX ;//viewport
       img_y = evt.pageY;
       
       //var coordinates = 'evt.pageX: ' + evt.pageX + ', innerWidth: ' + innerWidth;
       //alert (coordinates);
       Offset(evt, img_x,img_y);
    }
    GetLatLong(img_y, img_x);
}


function Offset (evt, x, y) {

    var el = evt.target ;
    var img_x = 0;
    var img_y = 0;
    
   do {
      img_x += el.offsetLeft;
      img_y += el.offsetTop;
      el = el.offsetParent;
    }
    while(el);
    
    GetLatLong( y-img_y , x-img_x);
}

function GetLatLong(img_y,img_x){

    var distance_long = (o_long - d_long);
    var increase_x = ( d_x - o_x );

    if ( (increase_x > 0 && o_long>0 && d_long<0)
        || (increase_x < 0 && o_long<0 && d_long>0)){
        //do conversion.
        distance_long = (-1)*((180 - Math.abs(o_long)) +(180 - Math.abs(d_long)));
    }

    var factor_lat = (o_lat - d_lat) / ( o_y - d_y);
    var factor_long = distance_long / (o_x -d_x);

    var diff_x = img_x - o_x;
    var diff_y = img_y - o_y;

    var distance_x = factor_long * diff_x;
    var distance_y = factor_lat * diff_y;

    var new_lat =  o_lat + distance_y;
    var new_long =  o_long + distance_x;


    if ( new_long > 180 ){
        //do conversion.
        new_long = (new_long - 360);
    }


    var myRadius =  Math.round(Math.abs(factor_lat*5000));
    if( myRadius > 30 ) {
        myRadius=30;
    }
    
    //Remove this check after 3.17.1 released.
    //This is checking new form is already in the right place or not.
    //if not take form[0]  
    if ( document.forms['hotelShoppingNavForm'] == null ){
        
        document.forms[0].longitude.value = new_long;
        document.forms[0].latitude.value = new_lat;
        document.forms[0].searchRadius.value = myRadius;
        document.forms[0].submit();   
    }else{
        document.forms['hotelShoppingNavForm'].longitude.value = new_long;
        document.forms['hotelShoppingNavForm'].latitude.value = new_lat;
        document.forms['hotelShoppingNavForm'].searchRadius.value = myRadius;
        document.forms['hotelShoppingNavForm'].submit();
    }
}

