Newer
Older
* GMap Marker Loader
* GeoRSS markers.
* This doesn't work at the moment.
*/
/*global Drupal, GDownloadUrl, GXml */
Drupal.gmap.addHandler('gmap', function (elem) {
var obj = this;
var feed, i, j, marker, tmp;
if (obj.vars.feed) {
// Inject markers as soon as the icon loader is ready.
obj.bind('iconsready', function () {
for (i = 0; i < obj.vars.feed.length; i++) {
var getfn = function (markername) {
return function (data, responseCode) {
var xml = GXml.parse(data);
var offset = 0;
var items = xml.getElementsByTagName('item');
// Ugly.
var item = items[j].getElementsByTagName(name);
// Try again with prefix.
if (ns) {
}
else {
return false;
}
}
return item[0].firstChild.nodeValue;
}
else {
return false;
}
};
marker = {};
marker.opts = {};
marker.opts.title = f('title');
marker.text = f('description');
}
else {
marker.link = f('link');
}
// GeoRSS Simple
tmp = tmp.split(' ');
marker.latitude = tmp[0];
marker.longitude = tmp[1];
}
// GeoRSS GML
tmp = tmp.split(' ');
marker.latitude = tmp[0];
marker.longitude = tmp[1];
}
// Misc.
else {
marker.latitude = f('lat', 'geo') || f('latitude', 'geourl') || f('latitude', 'icbm');
marker.longitude = f('lon', 'geo') || f('longitude', 'geourl') || f('longitude', 'icbm');
}
marker.markername = markername;
marker.offset = offset;
offset++;
// Pass around the object, bindings can change it if necessary.
}
};
};
// This sucks, but jQuery and IE don't get along here.
GDownloadUrl(feed.url, getfn(feed.markername));
}