	// Checks length of data entered into text fields and goes to next when maxLength has been reached
	// Source from ("http://www.w3schools.com/js/tryit.asp?filename=tryjs_autonext")
	function checkLen(x,y) {
		if (y.length==x.maxLength) {
			var next=x.tabIndex;
			if (next<document.getElementById("searchForm").length) {
				document.getElementById("searchForm").elements[next].focus();
			}
		}
	}

	// Add searchMarker to map. Also used to redraw it when it has been cleared in different search functions
	function searchMarkerInit() {

		GEvent.addListener(searchMarker, "dragstart", function() {
			map.closeInfoWindow();
		});
		GEvent.addListener(searchMarker, "dragend", function() {
			searchMarker.openInfoWindowHtml(searchMarker.getLatLng().toUrlValue(6));
		});
		GEvent.addListener(searchMarker, "click", function() {
			searchMarker.openInfoWindowHtml(searchMarker.getLatLng().toUrlValue(6));
		});
  
		map.addOverlay(searchMarker);
	}

	// Function to reformat data into allowed html code (instead of &gt; &lt; etc.)
	function reHTML(inputString) {
		var tempString = inputString;
		tempString = tempString.replace(/&lt;/g, "<");
		tempString = tempString.replace(/&gt;/g, ">");
		tempString = tempString.replace(/&quot;/g, "\"");
		tempString = tempString.replace(/&#39;/g, "'");
		tempString = tempString.replace(/&amp;/g, "&");

		return tempString;
	}

	// 'Simple math formula for determining distances that takes in Earth surface curvature from lat/long coordinates
	// Source from (http://www.meridianworlddata.com/Distance-Calculation.asp)
	function distanceTo(lat1,long1,lat2,long2) {
		var xDifference = 69.1 * (lat2 - lat1);
		var yDifference = 69.1 * (long2 - long1) * Math.cos(lat1/57.3);
		
		return Math.sqrt(xDifference * xDifference + yDifference * yDifference);
	}

	// perform search based off of user input
	function meetCriteriaSearch() {
		// clear off existing markers
		map.clearOverlays();

		searchMarkerInit();

		side_bar_html1 = "";
		var gmarkers = [];

		var userCounty = document.getElementById("county").value;
		var userState = document.getElementById("state").value.toUpperCase();
		var userZip = document.getElementById("zip").value;
		var userCountry = document.getElementById("country").value;
		var userMonth1 = document.getElementById("month1").value;
		var userDay1 = document.getElementById("day1").value;
		var userYear1 = document.getElementById("year1").value;
		var userMonth2 = document.getElementById("month2").value;
		var userDay2 = document.getElementById("day2").value;
		var userYear2 = document.getElementById("year2").value;

		var userDate1 = new Date();
		userDate1.setFullYear(userYear1,userMonth1 - 1, userDay1);
		var userDate2 = new Date();
		userDate2.setFullYear(userYear2,userMonth2 - 1, userDay2);

		for (var i = 0; i < meets.length; i++) {

			var address = meets[i][3];
			var county = meets[i][4];
			var state = meets[i][5];
			var zip = meets[i][6];
			var country = meets[i][7];
			var month = meets[i][8];
			var day = meets[i][9];
			var year = meets[i][10];

			var meetDate = new Date();
			meetDate.setFullYear(year, month - 1, day);

			// switch-like case system for user search parameters
			if (county != userCounty && userCounty != "")
				continue;
			if (userState != "" && state!= userState)
				continue;
			if (zip != userZip && userZip != "")
				continue;
			if (country != userCountry && userCountry != "")
				continue;

			// switch-like case system for incorrectly formatted first date search parameters
			if (userMonth1 == "" && userDay1 == "" && userYear1 != "") {
				alert("Insufficient First Date Information");
				break;
			}
			if (userMonth1 == "" && userDay1 != "" && userYear1 == "") {
				alert("Insufficient First Date Information");
				break;
			}
			if (userMonth1 == "" && userDay1 != "" && userYear1 != "") {
				alert("Insufficient First Date Information");
				break;
			}
			if (userMonth1 != "" && userDay1 == "" && userYear1 == "") {
				alert("Insufficient First Date Information");
				break;
			}
			if (userMonth1 != "" && userDay1 == "" && userYear1 != "") {
				alert("Insufficient First Date Information");
				break;
			}
			if (userMonth1 != "" && userDay1 != "" && userYear1 == "") {
				alert("Insufficient First Date Information");
				break;
			}

			// switch-like cases system for incorrectly formatted second date search parameters
			if (userMonth2 == "" && userDay2 == "" && userYear2 != "") {
				alert("Insufficient Second Date Information");
				break;
			}
			if (userMonth2 == "" && userDay2 != "" && userYear2 == "") {
				alert("Insufficient Second Date Information");
				break;
			}
			if (userMonth2 == "" && userDay2 != "" && userYear2 != "") {
				alert("Insufficient Second Date Information");
				break;
			}
			if (userMonth2 != "" && userDay2 == "" && userYear2 == "") {
				alert("Insufficient Second Date Information");
				break;
			}
			if (userMonth2 != "" && userDay2 == "" && userYear2 != "") {
				alert("Insufficient Second Date Information");
				break;
			}
			if (userMonth2 != "" && userDay2 != "" && userYear2 == "") {
				alert("Insufficient Second Date Information");
				break;
			}

			if (userMonth1 != "" && userDay1 != "" && userYear1 != "") {
				// for single day searches (using 1st set of 3 text boxes)
				if (userMonth2 == "" && userDay2 == "" && userYear2 == "") {
					if (userMonth1 != month || userDay1 != day || userYear1 != year)
						continue;
				}
				// date-range searches (using all 6 text boxes)
				else {
					// the "+ 1" is used to deal with a small problem that date objects create
					if (userDate1 > meetDate || userDate2 < meetDate)
						continue;
				}
			}


			// get acceptable marker's data
			var lat = parseFloat(meets[i][0]);
			var lng = parseFloat(meets[i][1]);
			var point = new GLatLng(lat,lng);
			var name = meets[i][2];
			// tab number and label tracker (keeps track of up to 6 labels)
			var tabnumber = 5;
			var tab0Label = meets[i][14];
			var tab0Text = meets[i][15];
			var tab1Label = meets[i][16];
			var tab1Text = meets[i][17];
			var tab2Label = meets[i][18];
			var tab2Text = meets[i][19];
			var tab3Label = meets[i][20];
			var tab3Text = meets[i][21];
			var tab4Label = meets[i][22];
			var tab4Text = meets[i][23];

			var organizerName = meets[i][11];
			var organizerComment = meets[i][12];
			var attendeesList = meets[i][24];
			var attendeesComments = meets[i][25];
			var tentativesList = meets[i][26];
			var tentativesComments = meets[i][27];
			var maybesList = meets[i][28];
			var maybesComments = meets[i][29];
			var id = meets[i][13];


	            // create the marker
	            var marker = createMeetMarker(point,name,county,state,zip,month,day,year,tabnumber,tab0Label,tab0Text,
				tab1Label,tab1Text,tab2Label,tab2Text,tab3Label,tab3Text,tab4Label,tab4Text,i,
				organizerName, organizerComment, attendeesList, attendeesComments, tentativesList, tentativesComments,
				maybesList, maybesComments, id);
	            map.addOverlay(marker);

		}
		document.getElementById("side_bar1").innerHTML = side_bar_html1;
	}



	// Search inside of the searchMarker's radius and with other criteria for meets (will not work if 0 or no value is put in the radius textfield)
	function meetRadiusSearch() {

		var searchMarkerLatLng = searchMarker.getLatLng();
		var searchMarkerLat = searchMarkerLatLng.lat();
		var searchMarkerLng = searchMarkerLatLng.lng();

		var searchRadius = document.getElementById("searchRadius").value;

		// case for blank search area or radius of 0 miles
		if (searchRadius == "" || searchRadius == 0)
			return;

		// clear off existing markers
		map.clearOverlays();

		// clear sidebar and current marker linkings
		side_bar_html1 = "";
		var gmarkers = [];

		// get all user search values into variables
		var userCounty = document.getElementById("county").value;
		var userState = document.getElementById("state").value.toUpperCase();
		var userZip = document.getElementById("zip").value;
		var userCountry = document.getElementById("country").value;
		var userMonth1 = document.getElementById("month1").value;
		var userDay1 = document.getElementById("day1").value;
		var userYear1 = document.getElementById("year1").value;
		var userMonth2 = document.getElementById("month2").value;
		var userDay2 = document.getElementById("day2").value;
		var userYear2 = document.getElementById("year2").value;

		// create date values from user search criteria
		var userDate1 = new Date();
		userDate1.setFullYear(userYear1,userMonth1 - 1, userDay1);
		var userDate2 = new Date();
		userDate2.setFullYear(userYear2,userMonth2 - 1, userDay2);

		// go through all meets in 'tempmeets' variable
		for (var i = 0; i < meets.length; i++) {

			// get individual meet's attributes
			var address = meets[i][3];
			var county = meets[i][4];
			var state = meets[i][5];
			var zip = meets[i][6];
			var country = meets[i][7];
			var month = meets[i][8];
			var day = meets[i][9];
			var year = meets[i][10];

			var lat = parseFloat(meets[i][0]);
			var lng = parseFloat(meets[i][1]);

			// get meet's date and create Date object with it
			var meetDate = new Date();
			meetDate.setFullYear(year, month - 1, day);

			// check if point is inside the user's specified search range
			if (searchRadius < distanceTo(searchMarkerLat,searchMarkerLng,lat,lng))
				continue;

			// switch-like case system for user search parameters
			if (county != userCounty && userCounty != "")
				continue;
			if (userState != "" && state!= userState)
				continue;
			if (zip != userZip && userZip != "")
				continue;
			if (country != userCountry && userCountry != "")
				continue;

			// switch-like case system for incorrectly formatted first date search parameters
			if (userMonth1 == "" && userDay1 == "" && userYear1 != "") {
				alert("Insufficient First Date Information");
				break;
			}
			if (userMonth1 == "" && userDay1 != "" && userYear1 == "") {
				alert("Insufficient First Date Information");
				break;
			}
			if (userMonth1 == "" && userDay1 != "" && userYear1 != "") {
				alert("Insufficient First Date Information");
				break;
			}
			if (userMonth1 != "" && userDay1 == "" && userYear1 == "") {
				alert("Insufficient First Date Information");
				break;
			}
			if (userMonth1 != "" && userDay1 == "" && userYear1 != "") {
				alert("Insufficient First Date Information");
				break;
			}
			if (userMonth1 != "" && userDay1 != "" && userYear1 == "") {
				alert("Insufficient First Date Information");
				break;
			}

			// switch-like cases system for incorrectly formatted second date search parameters
			if (userMonth2 == "" && userDay2 == "" && userYear2 != "") {
				alert("Insufficient Second Date Information");
				break;
			}
			if (userMonth2 == "" && userDay2 != "" && userYear2 == "") {
				alert("Insufficient Second Date Information");
				break;
			}
			if (userMonth2 == "" && userDay2 != "" && userYear2 != "") {
				alert("Insufficient Second Date Information");
				break;
			}
			if (userMonth2 != "" && userDay2 == "" && userYear2 == "") {
				alert("Insufficient Second Date Information");
				break;
			}
			if (userMonth2 != "" && userDay2 == "" && userYear2 != "") {
				alert("Insufficient Second Date Information");
				break;
			}
			if (userMonth2 != "" && userDay2 != "" && userYear2 == "") {
				alert("Insufficient Second Date Information");
				break;
			}

			if (userMonth1 != "" && userDay1 != "" && userYear1 != "") {
				// for single day searches (using 1st set of 3 text boxes)
				if (userMonth2 == "" && userDay2 == "" && userYear2 == "") {
					if (userMonth1 != month || userDay1 != day || userYear1 != year)
						continue;
				}
				// date-range searches (using all 6 text boxes)
				else {
					// the "+ 1" is used to deal with a small problem that date objects create [January being month '0']
					if (userDate1 > meetDate || userDate2 + 1 < meetDate)
						continue;
				}
			}

			// get acceptable marker's data + prepare for creation
			var point = new GLatLng(lat,lng);
			var name = meets[i][2];
			// tab number and label tracker (keeps track of up to 6 labels)
			var tabnumber = 5;
			var tab0Label = meets[i][14];
			var tab0Text = "<div class=\"bubble\">" + meets[i][15] + "</div>";
			var tab1Label = meets[i][16];
			var tab1Text = "<div class=\"bubble\">" + meets[i][17] + "</div>";
			var tab2Label = meets[i][18];
			var tab2Text = "<div class=\"bubble\">" + meets[i][19] + "</div>";
			var tab3Label = meets[i][20];
			var tab3Text = "<div class=\"bubble\">" + meets[i][21] + "</div>";
			var tab4Label = meets[i][22];
			var tab4Text = "<div class=\"bubble\">" + meets[i][23] + "</div>";

			var organizerName = meets[i][11];
			var organizerComment = meets[i][12];
			var attendeesList = meets[i][24];
			var attendeesComments = meets[i][25];
			var tentativesList = meets[i][26];
			var tentativesComments = meets[i][27];
			var maybesList = meets[i][28];
			var maybesComments = meets[i][29];
			var id = meets[i][13];

	            // create the marker + add to map
	            var marker = createMeetMarker(point,name,county,state,zip,month,day,year,tabnumber,tab0Label,tab0Text,
				tab1Label,tab1Text,tab2Label,tab2Text,tab3Label,tab3Text,tab4Label,tab4Text,i,
				organizerName, organizerComment, attendeesList, attendeesComments, tentativesList, tentativesComments,
				maybesList, maybesComments, id);
	            map.addOverlay(marker);
		}
		// insert the new sidebar html info for javascript links to markers
		document.getElementById("side_bar1").innerHTML = side_bar_html1;

		// redraw the searchMarker and its radius on map
		searchMarkerInit();
		searchCircleDraw();		
		
	}

	// Modified source code from ("http://groups.google.com/group/Google-Maps-API/browse_thread/thread/f7cc96a891c646c4")
	function searchCircleDraw() {

		// hide the current searchMarker's radius (a bit wasteful instead of clearing whole map and redrawing all markers)
		PolyCircle.hide();	

		var PGradius = document.getElementById("searchRadius").value;

		if (PGradius != "" && PGradius >= 0) {
			var searchMarkerLatLng = searchMarker.getLatLng();
			var searchMarkerLat = searchMarkerLatLng.lat();
			var searchMarkerLng = searchMarkerLatLng.lng()

			// define special variables for drawPolygon
			var PGcolor = '#0000ff';   // polygon color blue
			var PGwidth = 3;           // width pixels
			var PGtrans = 0.5;         // transparency 0 - 1
			var d2r = Math.PI/180;     // degrees to radians
			var r2d = 180/Math.PI;     // radians to degrees
			var PGsides = 36;          // number of sides of polygon
      	      				   // (use 36 for circle)
			var PGstart = 0;

			if (PGsides%2 == 1) {
				PGstart = (0.5 - 2/PGsides) * Math.PI;
			} else {
				PGstart = (0.5 - 1/PGsides) * Math.PI;
			};
			var PGlat = (PGradius/3963)*r2d;     // using 3963 miles as Earth's radius
			var PGlng = PGlat/Math.cos(searchMarkerLat*d2r);
			var PGpoints = [];
			for (var i=-1; i < PGsides; i++) {
				var theta = 2*i*Math.PI/PGsides + PGstart;
				PGx = searchMarkerLng + (PGlng * Math.cos(theta));
				PGy = searchMarkerLat + (PGlat * Math.sin(theta));
				PGpoints.push(new GPoint(PGx,PGy));
			};
			PolyCircle = new GPolyline(PGpoints,PGcolor,PGwidth,PGtrans);
			map.addOverlay(PolyCircle);
		}
	}


	function parseAttendanceTabText(organizerName, organizerComment, attendeesList, attendeesComments, tentativesList, tentativesComments,
		maybesList, maybesComments, id) {

		var attendanceText = '<div class="bubble"><form action="./MeetAttendance.php" method="post">' +
				'<input type="hidden" name="hidden_MeetID" id="hidden_MeetID" value="' + id + '">' +
				'<input type="submit" name="submit" id="submitButton" value="Edit Your Status">' +
				'</form><br/>';

		attendanceText += "<b>Organizer:</b> " + organizerName + "<br/>";
		attendanceText += "<b>Organizer Comment</b> " + organizerComment + "<br/>";
		attendanceText += "<table> <tr><th><u>List of Attendees</u><th><u>Comments</u><tr>";
		for (var i = 0; i < attendeesList.length; i++) {
			attendanceText += "<tr><td>" + attendeesList[i] + "<td>" + attendeesComments[i];
		}
		attendanceText += "</table><br/><table> <tr><th><u>List of Tentatives</u><th><u>Comments</u><tr>";
		for (var i = 0; i < tentativesList.length; i++) {
			attendanceText += "<tr><td>" + tentativesList[i] + "<td>" + tentativesComments[i];
		}
		attendanceText += "</table><br/><table> <tr><th><u>List of Maybes</u><th><u>Comments</u><tr>";
		for (var i = 0; i < maybesList.length; i++) {
			attendanceText += "<tr><td>" + maybesList[i] + "<td>" + maybesComments[i];
		}

		attendanceText += "</table></div>";
      
		return attendanceText;
	}

	// A function to create the marker and set up the event window
      function createMeetMarker(point,name,county,state,zip,month,day,year,tabnumber,tab0Label,tab0Text,
		tab1Label,tab1Text,tab2Label,tab2Text,tab3Label,tab3Text,tab4Label,tab4Text,i,
		organizerName, organizerComment, attendeesList, attendeesComments, tentativesList, tentativesComments,
		maybesList, maybesComments, id) {

		var marker;
		marker = new GMarker(point, carmarkeroption);

		var AttendanceTab = parseAttendanceTabText(organizerName, organizerComment, attendeesList, attendeesComments, tentativesList,
			tentativesComments, maybesList, maybesComments, id);

		GEvent.addListener(marker, "click", function() {

			var infoWindow;

         if (tabnumber == 1)
				infoWindow = [new GInfoWindowTab(tab0Label,tab0Text)];
			else if (tabnumber == 2)
				infoWindow = [new GInfoWindowTab(tab0Label,tab0Text), new GInfoWindowTab(tab1Label,AttendanceTab)];
			else if (tabnumber == 3)
				infoWindow = [new GInfoWindowTab(tab0Label,tab0Text), new GInfoWindowTab(tab1Label,AttendanceTab),
					new GInfoWindowTab(tab2Label,reHTML(tab2Text))];
			else if (tabnumber == 4)
				infoWindow = [new GInfoWindowTab(tab0Label,tab0Text), new GInfoWindowTab(tab1Label,AttendanceTab),
					new GInfoWindowTab(tab2Label,reHTML(tab2Text)), new GInfoWindowTab(tab3Label,tab3Text)];
			else if (tabnumber == 5)
				infoWindow = [new GInfoWindowTab(tab0Label,tab0Text), new GInfoWindowTab(tab1Label,AttendanceTab),
					new GInfoWindowTab(tab2Label,reHTML(tab2Text)), new GInfoWindowTab(tab3Label,tab3Text), 
					new GInfoWindowTab(tab4Label,tab4Text)];
	
			marker.openInfoWindowTabs(infoWindow);
		});
		// save the info we need to use later for the side_bar
		gmarkers[i] = marker;

		// add a line to the side_bar html
		if (i < 20) {
			side_bar_html1 += '<a href="javascript:myclick(' + i + ')">' + name + ' ' + month + '-' + day + '-' + year +'</a><br>';
		}
		i++;
		return marker;
      }

      // This function picks up the click and opens the corresponding info window
      function myclick(i) {
        GEvent.trigger(gmarkers[i], "click");
      }

	// search for members in a specific radius of the search marker
	function memberRadiusSearch() {
		var searchRadius = document.getElementById("searchRadius").value;
		var searchMarkerLatLng = searchMarker.getLatLng();
		var searchMarkerLat = searchMarkerLatLng.lat();
		var searchMarkerLng = searchMarkerLatLng.lng();
		// case for blank search area or radius of 0 miles
		if (searchRadius == "" || searchRadius == 0)
			return;

		// clear off existing markers
		map.clearOverlays();
		searchMarkerInit();
		searchCircleDraw();

		// go through list of all people
		for (var i = 0; i < people.length; i++) {
			var lat = parseFloat(people[i].getAttribute("lat"));
			var lng = parseFloat(people[i].getAttribute("lng"));

			// check if point is inside the user's specified search range
			if (searchRadius < distanceTo(searchMarkerLat,searchMarkerLng,lat,lng))
				continue;

			// get data for information window
			var mapid = parseFloat(people[i].getAttribute("mapid"));
			var title_map = people[i].getAttribute("title_map");
			var userid = parseFloat(people[i].getAttribute("userid"));
			var username = people[i].getAttribute("username");
			var text_map = people[i].getAttribute("text_map");
			var type = people[i].getAttribute("type");
			var pimage = people[i].getAttribute("pimage");

	            // create the marker
			addNewPoint(mapid,title_map,lng,lat,userid,username,text_map,type,pimage);
		}
		document.getElementById("side_bar1").innerHTML = "";
	}

	// get correct marker for a memberRadiusSearch
	function get_icon(type) {
		var color;
		if ((typeof(type)=="undefined") || (type==null)) { 
			color = "red";
		}
		else { 
		color = type;
		}
		var icon = new GIcon();

		icon.image = "http://www.mp3car.com/vbulletin/images/googlemapme/mm_20_"+ color +".png"; 

		icon.shadow = "http://www.mp3car.com/vbuletin/images/googlemapme/mm_20_shadow.png";
		icon.iconSize = new GSize(12, 20);
		icon.shadowSize = new GSize(22, 20);
		icon.iconAnchor = new GLatLng(20, 2);
		icon.infoWindowAnchor = new GLatLng(1, 5);
		return icon;
	}

	// add a new point for a memberRadiusSearch
	function addNewPoint(mapid,title_map,lng,lat,userid,username,text_map,type,pimage) {
		var point = new GLatLng(lat,lng);
		var icon = get_icon(type);
		var marker = new GMarker(point, icon);

		var content = "<b><u>" + username + "</u></b><br/>" + title_map;
				
		var content2 = "<img width=\"185\" border=\"0\" src=\""+pimage+"\"></a>";
			
		var infoTabs = [new GInfoWindowTab("Text", content), new GInfoWindowTab("Image", content2)];
		
		GEvent.addListener(marker,"click", function() {
			marker.openInfoWindowTabsHtml(infoTabs);
			document.getElementById('username').value= username;
			id = document.getElementById('username');
			id.innerHTML = username;
		});
		map.addOverlay(marker);
	}


	// perform search based off of user name in attendance, tentative, and maybe lists
	function myMeetSearch() {
		// clear off existing markers
		map.clearOverlays();

		searchMarkerInit();

		side_bar_html1 = "";
		var gmarkers = [];

// currently simplified to just find ALL meets with the person's name in the lists
/*		var userCounty = document.getElementById("county").value;
		var userState = document.getElementById("state").value.toUpperCase();
		var userZip = document.getElementById("zip").value;
		var userCountry = document.getElementById("country").value;
		var userMonth1 = document.getElementById("month1").value;
		var userDay1 = document.getElementById("day1").value;
		var userYear1 = document.getElementById("year1").value;
		var userMonth2 = document.getElementById("month2").value;
		var userDay2 = document.getElementById("day2").value;
		var userYear2 = document.getElementById("year2").value;

		var userDate1 = new Date();
		userDate1.setFullYear(userYear1,userMonth1 - 1, userDay1);
		var userDate2 = new Date();
		userDate2.setFullYear(userYear2,userMonth2 - 1, userDay2);
*/

// find way to get user's name
		var userName = document.getElementById("username").value;

		for (var i = 0; i < meets.length; i++) {

         var organizerName = meets[i][11]
			var attendeesList = meets[i][24];
			var tentativesList = meets[i][26];
			var maybesList = meets[i][28];

			if(attendeesList.indexOf(userName) == -1 && tentativesList.indexOf(userName) == -1 && maybesList.indexOf(userName) == -1)
				continue;

			var address = meets[i][3];
			var county = meets[i][4];
			var state = meets[i][5];
			var zip = meets[i][6];
			var country = meets[i][7];
			var month = meets[i][8];
			var day = meets[i][9];
			var year = meets[i][10];

			// get acceptable marker's data
			var lat = parseFloat(meets[i][0]);
			var lng = parseFloat(meets[i][1]);
			var point = new GLatLng(lat,lng);
			var name = meets[i][2];
			// tab number and label tracker (keeps track of up to 6 labels)
			var tabnumber = 5;
			var tab0Label = meets[i][14];
			var tab0Text = "<div class=\"bubble\">" + meets[i][15] + "</div>";
			var tab1Label = meets[i][16];
			var tab1Text = "<div class=\"bubble\">" + meets[i][17] + "</div>";
			var tab2Label = meets[i][18];
			var tab2Text = "<div class=\"bubble\">" + meets[i][19] + "</div>";
			var tab3Label = meets[i][20];
			var tab3Text = "<div class=\"bubble\">" + meets[i][21] + "</div>";
			var tab4Label = meets[i][22];
			var tab4Text = "<div class=\"bubble\">" + meets[i][23] + "</div>";

			var organizerComment = meets[i][12];
			var attendeesList = meets[i][24];
			var attendeesComments = meets[i][25];
			var tentativesList = meets[i][26];
			var tentativesComments = meets[i][27];
			var maybesList = meets[i][28];
			var maybesComments = meets[i][29];
			var id = meets[i][13];

	            // create the marker
	            var marker = createMeetMarker(point,name,county,state,zip,month,day,year,tabnumber,tab0Label,tab0Text,
				tab1Label,tab1Text,tab2Label,tab2Text,tab3Label,tab3Text,tab4Label,tab4Text,i,
				organizerName, organizerComment, attendeesList, attendeesComments, tentativesList, tentativesComments,
				maybesList, maybesComments, id);
	            map.addOverlay(marker);
		}
		document.getElementById("side_bar1").innerHTML = side_bar_html1;
	}

