Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function retrieveListItems() {
- var listName = "North East Events";
- var clientContext = new SP.ClientContext.get_current();
- var oList = clientContext.get_web().get_lists().getByTitle(listName);
- var website = clientContext.get_web();
- var camlQuery = new SP.CamlQuery();
- camlQuery.set_viewXml('<View><Query><Where><Geq><FieldRef Name=\'ID\'/>' +
- '<Value Type=\'Number\'>1</Value></Geq></Where></Query><RowLimit>50</RowLimit></View>');
- this.collListItem = oList.getItems(camlQuery);
- clientContext.load(website);
- clientContext.load(collListItem);
- clientContext.executeQueryAsync(Function.createDelegate(this, this.onQuerySucceeded), Function.createDelegate(this, this.onQueryFailed));
- }
- function onQuerySucceeded(sender, args) {
- var listItemInfo = '';
- var locations = [];
- var listItemEnumerator = collListItem.getEnumerator();
- while (listItemEnumerator.moveNext()) {
- var oListItem = listItemEnumerator.get_current();
- var eventName = oListItem.get_item('Title');
- var eventAddress = oListItem.get_item('WorkAddress');
- var eventURL = website.get_url() + '/' + 'Lists/North East Reports/DispForm.aspx?ID=' + oListItem.get_id();
- var newLocation = [eventName,eventAddress,eventURL];
- locations.push(newLocation);
- // console.log(locations);
- // listItemInfo +=
- //'\nID: ' + oListItem.get_id() +
- // '\nEvent Name: ' + eventName +//oListItem.get_item('Title') +
- // '\nAddress: ' + eventAddress +//oListItem.get_item('WorkAddress') +
- // '\nURL: ' + eventURL;//website.get_url() + '/' + 'Lists/North East Reports/DispForm.aspx?ID=' + oListItem.get_id();
- }
- //alert(listItemInfo.toString());
- //console.log('After Loop' + locations);
- return locations;
- }
- function onQueryFailed(sender, args) {
- alert('Request failed. ' + args.get_message() + '\n' + args.get_stackTrace());
- }
- locations = onQuerySucceeded();
- ///////////////////////////////// THIS IS WHERE I WOULD PUT MY ARRAY LIST TO GET THE MAP PINS //////////
- // var locations = [
- // ['Location 1 Name', 'New York, NY', 'Location 1 URL'],
- // ['Location 2 Name', 'Newark, NJ', 'Location 2 URL'],
- // ['Location 3 Name', 'Philadelphia, PA', 'Location 3 URL'],
- //];
- ////////////////////////////////////////////////////////////////////////////////////////////////////////////
- var geocoder;
- var map;
- var bounds = new google.maps.LatLngBounds();
- function initialize() {
- map = new google.maps.Map(
- document.getElementById("map_canvas"), {
- center: new google.maps.LatLng(37.4419, -122.1419),
- zoom: 13,
- mapTypeId: google.maps.MapTypeId.ROADMAP
- });
- geocoder = new google.maps.Geocoder();
- for (i = 0; i < locations.length; i++) {
- geocodeAddress(locations, i);
- }
- }
- google.maps.event.addDomListener(window, "load", initialize);
- function geocodeAddress(locations, i) {
- var title = locations[i][0];
- var address = locations[i][1];
- var url = locations[i][2];
- geocoder.geocode({
- 'address': locations[i][1]
- },
- function (results, status) {
- if (status == google.maps.GeocoderStatus.OK) {
- var marker = new google.maps.Marker({
- icon: 'http://maps.google.com/mapfiles/ms/icons/blue.png',
- map: map,
- position: results[0].geometry.location,
- title: title,
- animation: google.maps.Animation.DROP,
- address: address,
- url: url
- })
- infoWindow(marker, map, title, address, url);
- bounds.extend(marker.getPosition());
- map.fitBounds(bounds);
- } else {
- alert("geocode of " + address + " failed:" + status);
- }
- });
- }
- function infoWindow(marker, map, title, address, url) {
- google.maps.event.addListener(marker, 'click', function () {
- var html = "<div><h3>" + title + "</h3><p>" + address + "<br></div><a href='" + url + "'>View location</a></p></div>";
- iw = new google.maps.InfoWindow({
- content: html,
- maxWidth: 350
- });
- iw.open(map, marker);
- });
- }
- function createMarker(results) {
- var marker = new google.maps.Marker({
- icon: 'http://maps.google.com/mapfiles/ms/icons/blue.png',
- map: map,
- position: results[0].geometry.location,
- title: title,
- animation: google.maps.Animation.DROP,
- address: address,
- url: url
- })
- bounds.extend(marker.getPosition());
- map.fitBounds(bounds);
- infoWindow(marker, map, title, address, url);
- return marker;
- }
Add Comment
Please, Sign In to add comment