Index: lams_tool_gmap/web/includes/javascript/mapFunctions.js =================================================================== diff -u -r866dc94326b7624341331da05940cfe57a8d9ccd -r0ce24288a7982f962e62e74d254133cee8016f0a --- lams_tool_gmap/web/includes/javascript/mapFunctions.js (.../mapFunctions.js) (revision 866dc94326b7624341331da05940cfe57a8d9ccd) +++ lams_tool_gmap/web/includes/javascript/mapFunctions.js (.../mapFunctions.js) (revision 0ce24288a7982f962e62e74d254133cee8016f0a) @@ -1,6 +1,6 @@ // add a marker at the given point -function addMarker(point, infoMessage, uid, isSaved) +function addMarker(point, infoMessage, title, uid, isSaved) { map.closeInfoWindow(); var marker = new GMarker(point, {draggable: true}) @@ -24,6 +24,26 @@ updateMarkerInfoWindowHtml(marker); }); + GEvent.addListener(marker,'mouseover',function(){ + //marker[i].setImage(markerImage[3]); + //alert("hello"); + //document.getElementById("sidebar").getElementsByTagName("span")[markers.length].style.background ="blue"; + }); + + GEvent.addListener(marker,'mouseout',function() + { + //document.getElementById("sidebar").getElementsByTagName("span")[markers.length].style.background ="blue"; + + /*if(marker[i].visited){ + marker[i].setImage(markerImage[4]); + document.getElementById("sidebar").getElementsByTagName("span")[i].style.color ="gray"; + + }else{ + marker[i].setImage(markerImage[0]); + document.getElementById("sidebar").getElementsByTagName("span")[i].style.color ="black"; + */ + }); + if (infoMessage!=null) { marker.infoMessage = unescape(infoMessage); @@ -33,34 +53,52 @@ marker.infoMessage = ""; } + //marker.title = "Marker #" + markers.length; + marker.title = title; + + //sideBar(marker.infoMessage, markers.length); + + // set the state of the marker marker.editingOn = !isSaved; marker.uid = uid; if (isSaved){marker.state = "unchanged";} - else {marker.state="save";} + else {marker.state="unsaved";} - + marker.sideBarLinkPrefix = ""; + //marker.sideBarLinkSuffix = marker.title+"
" marker.removeLink = "Remove" ; - //marker.editLink = "Edit"; marker.editLink = "Edit"; - marker.saveLink = "Save"; marker.cancelLink = "Cancel"; - - //markerManager.addMarkers(marker, 5); - updateMarkerInfoWindowHtml(marker); markers[markers.length] = marker; + } // Add a new marker to the center of the map function addMarkerToCenter() { var bounds = map.getBounds(); var point = bounds.getCenter(); - addMarker(point, "", -1, false) + addMarker(point, "", "", -1, false); } +function refreshSideBar() +{ + var sideBarText = ""; + var i=0; + for (;i
"; + } + } + document.getElementById("sidebar").innerHTML = sideBarText; +} + + function test() { serialiseMarkers(); @@ -75,6 +113,7 @@ try{map.removeOverlay(markers[x]);} catch (e){} markers[x].state = "remove"; + refreshSideBar(); //serialiseMarkers(); } } @@ -88,9 +127,16 @@ function cancelEditMarkerInfo(x) { - markers[x].editingOn = false; - updateMarkerInfoWindowHtml(markers[x]); - openInfoWindow(x); + if (markers[x].state == "unsaved") + { + removeMarker(x); + } + else + { + markers[x].editingOn = false; + updateMarkerInfoWindowHtml(markers[x]); + openInfoWindow(x); + } } function updateMarkerInfoWindowHtml(markerIn) @@ -105,11 +151,11 @@ { markerIn.setImage(webAppUrl + "/images/blue_Marker.png"); } - else if (markerIn.state == "update") + else if (markerIn.state == "update" || markerIn.state == "save") { markerIn.setImage(webAppUrl + "/images/paleblue_Marker.png"); } - else + else if (markerIn.state == "unsaved") { markerIn.setImage(webAppUrl + "/images/red_Marker.png"); } @@ -124,8 +170,11 @@ //markerIn.inputForm += "contentFolderID='${sessionMap.contentFolderID}'>"; //markerIn.inputForm += ""; - markerIn.infoWindowTextarea = ""; - markerIn.inputForm = "New Info Window Text:
" + markerIn.infoWindowTextarea; + //markerIn.titleInput = "Title:
"; + markerIn.inputForm = "Title:

"; + markerIn.inputForm += "New Info Window Text:
"; + //markerIn.inputForm = "" + markerIn.infoWindowTextarea; markerIn.infoWindowHtml += markerIn.inputForm + markerIn.linksBar; } else @@ -176,23 +225,56 @@ map.setCenter(bounds.getCenter()); } +/* +function saveClick(x) +{ + var title=document.getElementById("markerTitle"); + if (title==null || trim(title) == "") + { + alert("Title is required."); + return false; + } + else + { + saveMarkerInfo(x); + } +} +*/ + function saveMarkerInfo(x) { if (markers[x] != null) { - var info=document.getElementById("infoWindow"); - markers[x].infoMessage = info.value; - markers[x].editingOn = false; - - // change the state to update if it is a pre-existing marker - if (markers[x].state == "unchanged") {markers[x].state = "update";} - - //markers[x].isSaved = persistMarker(markers[x], "createMarker"); - updateMarkerInfoWindowHtml(markers[x]); - + var title= trim(document.getElementById("markerTitle").value); + if (title==null || title == "") + { + alert("Title is required."); + return false; + } + else + { + + var info=document.getElementById("infoWindow").value; + markers[x].title = title; + markers[x].infoMessage = info; + markers[x].editingOn = false; + + // change the state to update if it is a pre-existing marker + if (markers[x].state == "unchanged") {markers[x].state = "update";} + else (markers[x].state ="save"); + + //markers[x].isSaved = persistMarker(markers[x], "createMarker"); + updateMarkerInfoWindowHtml(markers[x]); + refreshSideBar(); + } } } +function trim(x) +{ + return x.replace(/^\s+|\s+$/g, '') +} + /* function getAjaxObject() { @@ -255,13 +337,14 @@ for (;i'; xmlString += markerString;