function initgooglemaps(csuaddress, csulocation) {

 var csugeocoder = new google.maps.Geocoder();  //initialize google's geocoding service

 if (csugeocoder) {

  //start geocoding
  csugeocoder.geocode( { 'address': csuaddress}, function(results, status) {

   //start insert a google map if geocoded values for address are found
   if (status == google.maps.GeocoderStatus.OK) {

    var csulatlng = results[0].geometry.location;  //geocoded latitude,longitude value
    var csuoptions = {
     zoom: 15,
     center: csulatlng,
     navigationControl: true,
     navigationControlOptions: {style: google.maps.NavigationControlStyle.ZOOM_PAN},
     mapTypeControl: true,
     mapTypeControlOptions: {style: google.maps.MapTypeControlStyle.DROPDOWN_MENU},
     mapTypeId: google.maps.MapTypeId.ROADMAP
    };
    var csumap = new google.maps.Map(document.getElementById("map_canvas"), csuoptions); //show google map in element map_canvas

    //create a marker for the address
    var csumarker = new google.maps.Marker({
     position: csulatlng, 
     map: csumap, 
     title:""
    });

    //create an info window for the marker
    var csuinfowindow = new google.maps.InfoWindow({
     content: '<div style="padding:0;margin:0;height:58px;max-width:241px;overflow:hidden;"><p style="padding:0;"><strong>' + csulocation + '</strong><br />' + csuaddress + '</p><p style="padding:8px 0 0 0;"><img src="/bilder/layout/arrow_grey_right.gif" title="" alt="Pfeil rechts" />&nbsp;<a href="http://maps.google.com/maps?daddr=' + encodeURI(csuaddress) + '&amp;ie=UTF8" target="_blank">Route berechnen</a></p></div>'
    });

    //show info window if user hovers over the marker
    google.maps.event.addListener(csumarker, 'mouseover', function() {
     csuinfowindow.open(csumap,csumarker);
    });

   } //end insert google map

   //show an error message if address is incorrect
   else if (status == google.maps.GeocoderStatus.ZERO_RESULTS) {
    alert("Fehler: Der Veranstaltungsort wurde nicht gefunden");
   }
   //show an error message if no address has been submitted
   else if (status == google.maps.GeocoderStatus.INVALID_REQUEST) {
    alert("Fehler: Es wurde kein Veranstaltungsort angegeben");
   }
   //show other geocoding errors
   else {
    alert(status);
   }

  }); //end geocoding

 }

} //end function
