Solved

javascript

Posted on 2011-09-02
5
327 Views
Last Modified: 2012-05-12
Hey guys i need help to convert this javascript to c# code please, it is a google map that use xml

 
<script language="javascript" type="text/javascript">

    // Google Map API Javascript

    var map;
    var geocoder;
    var http_request = false;
    var lat = 0;
    var lng = 0;
    var startingLat = -25.65143;  // view of Pretoria
    var startingLng = 28.256836;  // view of Pretoria
    var startingZoom = 9;
    var maximumZoom = 15;

    function mapLoad() 
    {
        if (GBrowserIsCompatible()) {
            geocoder = new GClientGeocoder();
            map = new GMap2(document.getElementById('map'));
            map.addControl(new GSmallMapControl());
            map.addControl(new GMapTypeControl());
            map.enableScrollWheelZoom();
            map.setCenter(new GLatLng(startingLat, startingLng), startingZoom);
        }
    }

    function searchLocations() 
    {
        var ddArea = document.getElementById("<%=ddArea.ClientID%>"); 
        var area = ddArea.options[ddArea.selectedIndex].value;
        var searchString = area  + ', Pretoria, Gauteng';

        geocoder.getLatLng(searchString, function(latlng) 
        {
            if (!latlng) 
            {
                alert(searchString + ' - not found');
            } 
            else 
            {
                searchLocationsNear(latlng);
            }
        });
    }

    function searchLocationsNear(center) 
    {
        var ddArea = document.getElementById("<%=ddArea.ClientID%>"); 
        var area = ddArea.options[ddArea.selectedIndex].value;
        var searchUrl = 'SearchResponse.aspx?lat=' + center.lat() + '&lng=' + center.lng() + '&area=' + area;
        GDownloadUrl(searchUrl, function(data) 
        {
            var xml = GXml.parse(data);
            var sidebar = document.getElementById('sidebar');
            sidebar.innerHTML = '';
            map.clearOverlays();

            if (xml.documentElement == null) 
            {
                sidebar.innerHTML = 'No results found.  Please try widening your search area.';
                map.setCenter(new GLatLng(startingLat, startingLng), startingZoom);
                return;
            }

            var markers = xml.documentElement.getElementsByTagName('marker');

            if (markers.length == 0) 
            {
                sidebar.innerHTML = 'No results found.  Please try widening your search area.';
                map.setCenter(new GLatLng(startingLat, startingLng), startingZoom);
                return;
            }

            var bounds = new GLatLngBounds();
            for (var i = 0; i < markers.length; i++) 
            {
                var address = markers[i].getAttribute('address');
                var area = markers[i].getAttribute('area');
                var location = markers[i].getAttribute('location');
                var p_code = markers[i].getAttribute('p_code');
                var point = new GLatLng(parseFloat(markers[i].getAttribute('Latitude')), parseFloat(markers[i].getAttribute('Longitude')));

                var marker = createMarker(point, address, area, location, p_code);

                map.addOverlay(marker);
                var sidebarEntry = createSidebarEntry(marker, address, area, location);
                sidebar.appendChild(sidebarEntry);
                bounds.extend(point);
            }

            var pointCenter = bounds.getCenter();
            var iZoomLevel = map.getBoundsZoomLevel(bounds);
            if (iZoomLevel > maximumZoom) { iZoomLevel = maximumZoom; }
            map.setCenter(pointCenter, iZoomLevel);

        });
    }

    function createMarker(point, address, area, location, p_code) 
    {
        var marker = new GMarker(point);
        var html;
        if (location == null) 
        {
            html = '<br/>' + address + '<br/>' + area + '<br/>' + p_code;
        }
        else 
        {
            html = '<br/>' + address + '<br/>' + area + '<br/>' + location + '<br/>' + p_code;
        }
        GEvent.addListener(marker, 'click', function() 
        {
            marker.openInfoWindowHtml(html);
        });
        return marker;
    }

    function createSidebarEntry(marker, address, area, location) 
    {
        var div = document.createElement('div');
        var address;
        if (location == '' || location == null) 
        {
            address = address + '<br/>' + area;
        }
        else 
        {
            address = address + '<br/>' + area + '<br/>' + location;
        }
        var html =  address;
        div.innerHTML = html;
        div.style.cursor = 'pointer';
        div.style.marginBottom = '5px';
        GEvent.addDomListener(div, 'click', function() 
        {
            GEvent.trigger(marker, 'click');
        });
        GEvent.addDomListener(div, 'mouseover', function() 
        {
            div.style.backgroundColor = '#eee';
        });
        GEvent.addDomListener(div, 'mouseout', function() 
        {
            div.style.backgroundColor = '#fff';
        });
        return div;
    }

    </script>

Open in new window

0
Comment
Question by:JCWEBHOST
5 Comments
 
LVL 4

Expert Comment

by:mohammad827
ID: 36472332
Well unless you have GoogleMap API for .Net you can't do it
0
 
LVL 4

Accepted Solution

by:
mohammad827 earned 500 total points
ID: 36472365
Well check this out. Seems to be what you want http://www.codeguru.com/csharp/.net/net_asp/controls/article.php/c10539/
0
 
LVL 19

Expert Comment

by:Bardobrave
ID: 36472470
Why do you need to translate it?

You've set the question on ASP.NET section, so I supose you are building a web app. If you are using a web app the usua way to build and call google maps is through client code.
0
 
LVL 29

Expert Comment

by:Badotz
ID: 36472680
And, honestly, "convert this code for me" is not a question - it is a command.
0
 

Author Closing Comment

by:JCWEBHOST
ID: 36482774
thanks
0

Featured Post

What is SQL Server and how does it work?

The purpose of this paper is to provide you background on SQL Server. It’s your self-study guide for learning fundamentals. It includes both the history of SQL and its technical basics. Concepts and definitions will form the solid foundation of your future DBA expertise.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
ASP.NET MVC identity 6 27
Connection to multiple databases 13 19
Calculate number of nights between two dates 5 25
tableview is not updating 1 9
Introduction This article shows how to use the open source plupload control to upload multiple images. The images are resized on the client side before uploading and the upload is done in chunks. Background I had to provide a way for user…
International Data Corporation (IDC) prognosticates that before the current the year gets over disbursing on IT framework products to be sent in cloud environs will be $37.1B.
This Micro Tutorial will give you a basic overview how to record your screen with Microsoft Expression Encoder. This program is still free and open for the public to download. This will be demonstrated using Microsoft Expression Encoder 4.
Established in 1997, Technology Architects has become one of the most reputable technology solutions companies in the country. TA have been providing businesses with cost effective state-of-the-art solutions and unparalleled service that is designed…

809 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question