?
Solved

javascript

Posted on 2011-09-02
5
Medium Priority
?
352 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 1500 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 Kind of Coding Program is Right for You?

There are many ways to learn to code these days. From coding bootcamps like Flatiron School to online courses to totally free beginner resources. The best way to learn to code depends on many factors, but the most important one is you. See what course is best for you.

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Performance in games development is paramount: every microsecond counts to be able to do everything in less than 33ms (aiming at 16ms). C# foreach statement is one of the worst performance killers, and here I explain why.
An ASP.NET Web Form User Control is not newly introduced in ASP.NET. In fact, it was an old technology yet still playing a role to generate web content, especially when we want to use it to have a better and easy way to control part of the web conte…
Watch the video to know how one can repair corrupt Exchange OST file effortlessly and convert OST emails to MS Outlook PST file format by using Kernel for OST to PST converter tool. It can convert OST to MSG, MBOX, EML to access them. It can migrate…
Watch the video of Kernel Migrator for SharePoint, which demonstrate the process easily of migration from SharePoint to SharePoint, OneDrive for Business & Google Drive servers, Public Folder to SharePoint, File Server to SharePoint. The tool has va…

569 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