close ad
WARNING PC USERS: Do Not Install the DREAMWEAVER CC 2017 Update »
open ad
View Menu

Technical Support Forums

Free, outstanding support from WebAssist and your colleagues

rating

Is there a way to show an error message id address not found ?

Thread began 1/10/2011 1:38 pm by Dave Buchholz | Last modified 1/11/2011 11:45 am by Jason Byrnes | 1039 views | 3 replies |

Dave BuchholzBeta Tester

Is there a way to show an error message id address not found ?

I have a situation where I am working with a set of addresses already inserted into a database and whilst most work fine there are some that return a result like so when I view source:

<script type="text/javascript">
/*wagmp*/
function WAMapRef(mapObj) {
this.obj = mapObj;
this.directions = false;
this.icons = [];
this.markers = [];
this.addresses = [];
this.points = [];
this.getPointByAddress = getPointByAddressFunc;
this.addressFailed = true;
return this;
}

function WAMapPoint(theMarker, theAddress, theIcon) {
this.icon = theIcon;
this.marker = theMarker;
this.address = theAddress;
return this;
}

function getPointByAddressFunc(value,attname) {
if (!attname) attname = "street";
for (var x=0; x < this.addresses.length; x++) {
if (eval("this.addresses[x]."+attname) == value) {
return WAMapPoint(this.markers[x],this.addresses[x],this.icons[x]);
}
}
return false;
}

function getHTTPObject(){
if (window.ActiveXObject)
return new ActiveXObject("Microsoft.XMLHTTP");
else if (window.XMLHttpRequest)
return new XMLHttpRequest();
else {
return null;
}
}

function searchCache(searchStr, zip) {
var xmlDoc = null;
if (window.ActiveXObject) {//IE
xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
} else if(navigator.userAgent && navigator.userAgent.toLowerCase().indexOf('webkit') >= 0) { //webkit (Safari, Chrome)
var coordinates = '';
xmlDoc = getHTTPObject();
if(xmlDoc) {
xmlDoc.onreadystatechange = function() {
if(xmlDoc.readyState == 4) {
var x = xmlDoc.responseXML.getElementsByTagName("geocode_entry");
var geocode, id;
searchStr = searchStr.replace(/,/g, ''); //remove commas
for (i=0; i < x.length; i++) {
id = x[i].getAttribute("ID");
if (id == searchStr) {
coordinates = x[i].getElementsByTagName("geocode")[0].childNodes[0].nodeValue;
return coordinates;
}
}
}
};
xmlDoc.open("GET", "_promaps_cache/_promaps_geocache.xml", false);
xmlDoc.send(null);
}

return coordinates;
} else if (document.implementation.createDocument) {//gecko (Mozilla, Firefox, Opera)
xmlDoc=document.implementation.createDocument("","",null);
} else {
return '';
}
if (xmlDoc != null) {
xmlDoc.async=false;
try {
if(xmlDoc.load("_promaps_cache/_promaps_geocache.xml")) {
var x=xmlDoc.getElementsByTagName("geocode_entry");
var geocode, id;
searchStr = searchStr.replace(/,/g, ''); //remove commas
for (i=0; i < x.length; i++) {
id = x[i].getAttribute("ID");
if (id == searchStr) {
return x[i].getElementsByTagName("geocode")[0].childNodes[0].nodeValue;
}
}
}
}
catch(err) {
return '';
}
}
return '';
}

function addToCache(fullAddress,zip, geocode){
httpObject = getHTTPObject();
if (httpObject != null) {
httpObject.open("POST", "google_javascript/promaps_geocache_php.php", true);
httpObject.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
var entryId = fullAddress.replace(/,/g, '');
if (zip != '') {
fullAddress = fullAddress.replace(zip+',', '');
}
entryId = escape(entryId);
fullAddress = escape(fullAddress);
geocode = escape(geocode);
httpObject.send("sender=promapsforgoogle&action=add&entryId="+entryId+"&address="
+fullAddress+"&geocode="+geocode);
}
}


function wagmp_map_2() {
if(GBrowserIsCompatible()) {
if(!document.getElementById('wagmp_map_2')) return false;
var map = new GMap2(document.getElementById('wagmp_map_2'));
wagmp_map_2_obj = new WAMapRef(map);
map.enableContinuousZoom();
map.enableDoubleClickZoom();
map.addControl(new GSmallMapControl());
map.addControl(new GScaleControl());
var geocoder = new GClientGeocoder();

var fromAddress = {
enabled: false,
street: '',
city: '',
state: '',
zip: '',
country: '',
full: ''
};

var icon_0 = new GIcon();
icon_0.image = 'google_javascript/images/traditionalflat_pacifica.png';
icon_0.shadow = 'google_javascript/images/traditionalflat_shadow.png';
icon_0.iconSize = new GSize(34,35);
icon_0.shadowSize = new GSize(34,35);
icon_0.iconAnchor = new GPoint(9,33);
icon_0.infoWindowAnchor = new GPoint(19,0);
icon_0.printImage = 'google_javascript/images/traditionalflat_pacifica.gif';
icon_0.mozPrintImage = 'google_javascript/images/traditionalflat_pacifica_mozprint.png';
icon_0.printShadow = 'google_javascript/images/traditionalflat_shadow.gif';
icon_0.transparent = 'google_javascript/images/traditionalflat_pacifica_transparent.png';

var address_0 = {
street: '80111',
city: 'Greenwood Village',
state: 'CO',
zip: '80111',
country: 'United States',
infowindow: 'custom',
infowindowtext: '<span style="font: 12px Verdana, Arial, Helvetica, sans-serif; color: black;"><strong>Address:</strong><br />Floyd\\'s Barbershop<br />5322 DTC Blvd., STE. 300<br />Greenwood Village <br />CO 80111</span>',
full: '80111, Greenwood Village, CO, 80111, United States',
isdefault: true,
addressType: 'address',
loop: '',
latitude: '',
longitude: '',
markerStyle: 'Google Traditional (flat)',
markerColor: 'Pacifica'
};

if (address_0.addressType == "coordinates") {
var cacheReturn = '';
} else {
var cacheReturn = searchCache(address_0.full, address_0.zip);
}
if (cacheReturn != "" || (address_0.addressType == "coordinates")) {
if(address_0.addressType == "coordinates") {
var latitude = address_0.latitude;
var longitude = address_0.longitude;
} else {
var latitude = cacheReturn.substring(1,cacheReturn.indexOf(",")-1);
var longitude = cacheReturn.substring(cacheReturn.indexOf(",")+1,(cacheReturn.length)-1);
}
var point = new GLatLng(latitude, longitude);
if (point && !isNaN(latitude)) {
wagmp_map_2_obj.addressFailed = false;
var marker_0 = new GMarker(point, icon_0);
GEvent.addListener(marker_0, 'click', function() {
marker_0.openInfoWindowHtml(address_0.infowindowtext);
});
if(!fromAddress.enabled || 'address_0' != 'address_0') {
if('address_0' == 'address_0')
map.setCenter(point, 13);
map.addOverlay(marker_0);
if('address_0' == 'address_0')
marker_0.openInfoWindowHtml(address_0.infowindowtext);
}
wagmp_map_2_obj.markers.push(marker_0);
wagmp_map_2_obj.addresses.push(address_0);
wagmp_map_2_obj.icons.push(icon_0);
wagmp_map_2_obj.points.push(point);
} else {
if (wagmp_map_2_obj.addressFailed) {
map.setCenter(new GLatLng(30, -98), 3);
}
wagmp_map_2_obj.addressFailed = true;
}
} else if (address_0.addressType == "address") {
geocoder.getLatLng (
address_0.full,
function(point) {
if(point) {
this.addressFailed = false;
addToCache(address_0.full, '', point);
var marker_0 = new GMarker(point, icon_0);
GEvent.addListener(marker_0, 'click', function() {
marker_0.openInfoWindowHtml(address_0.infowindowtext);
});
if(!fromAddress.enabled || 'address_0' != 'address_0') {
if('address_0' == 'address_0')
map.setCenter(point, 13);
map.addOverlay(marker_0);
if('address_0' == 'address_0')
marker_0.openInfoWindowHtml(address_0.infowindowtext);
}
wagmp_map_2_obj.markers.push(marker_0);
wagmp_map_2_obj.addresses.push(address_0);
wagmp_map_2_obj.icons.push(icon_0);
wagmp_map_2_obj.points.push(point);

} else {
var noZipAddress = address_0.full.replace((address_0.zip+','), '');
geocoder.getLatLng (noZipAddress,
function(point) {
if(point) {
wagmp_map_2_obj.addressFailed = false;
addToCache(address_0.full, address_0.zip, point);
var marker_0 = new GMarker(point, icon_0);
GEvent.addListener(marker_0, 'click', function() {
marker_0.openInfoWindowHtml(address_0.infowindowtext);
});
if (!fromAddress.enabled || 'address_0' != 'address_0') {
if('address_0' == 'address_0')
map.setCenter(point, 13);
map.addOverlay(marker_0);
if('address_0' == 'address_0')
marker_0.openInfoWindowHtml(address_0.infowindowtext);
}
wagmp_map_2_obj.markers.push(marker_0);
wagmp_map_2_obj.addresses.push(address_0);
wagmp_map_2_obj.icons.push(icon_0);
wagmp_map_2_obj.points.push(point);

} else {
if (wagmp_map_2_obj.addressFailed) {
map.setCenter(new GLatLng(30, -98), 3);
}
wagmp_map_2_obj.addressFailed = true;
}
}
);
}
}
);
}


}
}</script>



Is there an inbuilt method that I can access to show an error message when the address fails ?

Thanks

Sign in to reply to this post

Jason ByrnesWebAssist

if you look in the code, you will see:
if (wagmp_map_2_obj.addressFailed) {
map.setCenter(new GLatLng(30, -98), 3);
}


this sets the map to default to palo alto when the address lookup fails.


you could also add an alert to this so show failure:
if (wagmp_map_2_obj.addressFailed) {
alert('lookup of '+address_0.full+' failed');
map.setCenter(new GLatLng(30, -98), 3);
}

Sign in to reply to this post

Dave BuchholzBeta Tester

Jason,

thanks I'll test and put a test case online for you to look at if I don't get anywhere with your suggestion.

Sign in to reply to this post

Jason ByrnesWebAssist

you're welcome Dave.

Sign in to reply to this post

Build websites with a little help from your friends

Your friends over here at WebAssist! These Dreamweaver extensions will assist you in building unlimited, custom websites.

Build websites from already-built web applications

These out-of-the-box solutions provide you proven, tested applications that can be up and running now.  Build a store, a gallery, or a web-based email solution.

Want your website pre-built and hosted?

Close Windowclose

Rate your experience or provide feedback on this page

Account or customer service questions?
Please user our contact form.

Need technical support?
Please visit support to ask a question

Content

rating

Layout

rating

Ease of use

rating

security code refresh image

We do not respond to comments submitted from this page directly, but we do read and analyze any feedback and will use it to help make your experience better in the future.

Close Windowclose

We were unable to retrieve the attached file

Close Windowclose

Attach and remove files

add attachmentAdd attachment
Close Windowclose

Enter the URL you would like to link to in your post

Close Windowclose

This is how you use right click RTF editing

Enable right click RTF editing option allows you to add html markup into your tutorial such as images, bulleted lists, files and more...

-- click to close --

Uploading file...