<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>M and L Adventures &#187; Web Development</title>
	<atom:link href="http://www.mandladventures.com/category/web-development/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.mandladventures.com</link>
	<description>Leading you on the technical adventure</description>
	<lastBuildDate>Thu, 28 Jul 2011 21:45:14 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Google Adds YouTube-style Embedded Maps</title>
		<link>http://www.mandladventures.com/2007/08/29/google-adds-youtube-style-embedded-maps/</link>
		<comments>http://www.mandladventures.com/2007/08/29/google-adds-youtube-style-embedded-maps/#comments</comments>
		<pubDate>Wed, 29 Aug 2007 11:52:41 +0000</pubDate>
		<dc:creator>Matt</dc:creator>
				<category><![CDATA[Google]]></category>
		<category><![CDATA[Web Development]]></category>

		<guid isPermaLink="false">http://www.mandladventures.com/2007/08/29/google-adds-youtube-style-embedded-maps/</guid>
		<description><![CDATA[Google has finally provided the long awaited feature to easily embed maps into existing web pages. Before this feature was added, users had to have to make use of the Google Maps API which involved extensive amounts of JavaScript to embed a map on a site. Adding advanced features such as a Get Directions form [...]
Related post
<strong>Related Posts:</storng><ul>s:<ol>
<li><a href='http://www.mandladventures.com/2006/05/04/google-maps-api/' rel='bookmark' title='Google Maps API Tutorial'>Google Maps API Tutorial</a></li>
<li><a href='http://www.mandladventures.com/2007/05/07/google-calendar-on-your-site/' rel='bookmark' title='Google Calendar on your Site'>Google Calendar on your Site</a></li>
<li><a href='http://www.mandladventures.com/2006/05/02/google-sketchup/' rel='bookmark' title='Google SketchUp'>Google SketchUp</a></li>
</ul>]]></description>
			<content:encoded><![CDATA[<p>Google has finally provided the long awaited feature to <strong>easily</strong> embed maps into existing web pages. Before this feature was added, users had to have to make use of the Google Maps API which involved extensive amounts of JavaScript to embed a map on a site. Adding advanced features such as a Get Directions form or custom icons required even more JavaScript. </p>
<p>Therefore, over a year ago I created an <a href="http://www.mandladventures.com/2006/05/04/google-maps-api/">extensive tutorial</a> to ease the process for the average website creator to add a nice Google Map to their own site. This post brought quite a bit of traffic to my blog and propelled my site to be the <a href="http://www.mandladventures.com/2006/06/10/1-on-google/">#1 search result</a> on Google for the search term &#8220;<a href="http://www.google.com/search?q=google%20map%20directions%20tutorial&#038;hl=en">Google map directions tutorial</a>.&#8221;</p>
<p>I&#8217;m sure this new embed feature from Google will cut down on the number of people using my tutorial, but I&#8217;m still glad to see Google release this new feature. Who knows, I may have to write another tutorial detailing how to get the most out of the embed feature. You&#8217;ll just have to wait and see.</p>
<p>Some people may still require the Google Maps API, but I&#8217;m not sure why they would. They would have to be doing some really complex map stuff to not be able to accomplish the same feats with embed functionality.</p>
<p>Below I&#8217;ve included a map I quickly created to show of this new feature.</p>
<p><center><iframe width="425" height="350" frameborder="no" scrolling="no" marginheight="0" marginwidth="0" src="http://maps.google.com/maps/ms?msa=0&#038;msid=114867979332952971419.000438dec7b66379a5c42&#038;ll=37.811954,-122.416534&#038;spn=0.020689,0.040169&#038;om=1&#038;output=embed&#038;s=AARTsJoLOQDuOomtEPnAyb7KbMK4rE9_hg"></iframe><br/><a href="http://maps.google.com/maps/ms?msa=0&#038;msid=114867979332952971419.000438dec7b66379a5c42&#038;ll=37.811954,-122.416534&#038;spn=0.020689,0.040169&#038;om=1&#038;source=embed" style="color:#0000FF;text-align:left;font-size:small">View Larger Map</a>.</center></p>
<p>Before I forget, you can read more about this on <a href="http://google-latlong.blogspot.com/2007/08/youtube-style-embeddable-maps_21.html">Google Lat Long Blog</a>.</p>
<p>Related post<p><strong>Related Posts:</storng></p><ul>s:<ol>
<li><a href='http://www.mandladventures.com/2006/05/04/google-maps-api/' rel='bookmark' title='Google Maps API Tutorial'>Google Maps API Tutorial</a></li>
<li><a href='http://www.mandladventures.com/2007/05/07/google-calendar-on-your-site/' rel='bookmark' title='Google Calendar on your Site'>Google Calendar on your Site</a></li>
<li><a href='http://www.mandladventures.com/2006/05/02/google-sketchup/' rel='bookmark' title='Google SketchUp'>Google SketchUp</a></li>
</ul>]]></content:encoded>
			<wfw:commentRss>http://www.mandladventures.com/2007/08/29/google-adds-youtube-style-embedded-maps/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>AJAX Security Considerations&#8230;</title>
		<link>http://www.mandladventures.com/2007/08/10/ajax-security-considerations/</link>
		<comments>http://www.mandladventures.com/2007/08/10/ajax-security-considerations/#comments</comments>
		<pubDate>Fri, 10 Aug 2007 12:19:50 +0000</pubDate>
		<dc:creator>Matt</dc:creator>
				<category><![CDATA[Security]]></category>
		<category><![CDATA[Web Development]]></category>

		<guid isPermaLink="false">http://www.mandladventures.com/?p=244</guid>
		<description><![CDATA[As many of my blog readers know AJAX is a very popular web development technology right now. AJAX offers web developers the ability to provide desktop application like functionality in web applications. Without AJAX many of the tools I use every day such as GMail, Google Reader, and Google Maps just wouldn&#8217;t be near as [...]
Related post
<strong>Related Posts:</storng><ul>s:<ol>
<li><a href='http://www.mandladventures.com/2007/04/21/securing-your-wireless-network/' rel='bookmark' title='Wireless Network Security Tips'>Wireless Network Security Tips</a></li>
</ul>]]></description>
			<content:encoded><![CDATA[<p>As many of my blog readers know <a href="http://en.wikipedia.org/wiki/Ajax_(programming)">AJAX</a> is a very popular web development technology right now. AJAX offers web developers the ability to provide desktop application like functionality in web applications. Without AJAX many of the tools I use every day such as <a href="https://mail.google.com">GMail</a>, <a href="http://www.google.com/reader/">Google Reader</a>, and <a href="http://maps.google.com/">Google Maps</a> just wouldn&#8217;t be near as fun or easy to use. Don&#8217;t worry, I do occasionally use non-Google sites that make heavy use of AJAX, I just can&#8217;t think of them right now.</p>
<p>However, as recently reported by security researches from <a href="http://www.spidynamics.com/">SPI Dynamics</a> at the <a href="http://www.blackhat.com/html/bh-usa-07/bh-usa-07-speakers.html#Sullivan">Blackhat USA 2007 security conference</a>, the benefits of AJAX don&#8217;t come without significant security risks.</p>
<p>One of the main problems with AJAX is that a lot of traditional server side code is now executed on the client side. This provides would be hackers with a ton of insight on how your application functions. Once equipped with these details it is much easier for hackers to trick web applications into doing things they&#8217;re not designed to do.</p>
<p>The presenters at Blackhat showed the audience how a mock AJAX travel site could be tricked into selling tickets cheaper and also tricked into blocking ticket sales for the same airplane. I think these two examples show exactly how important it is for web developers to secure AJAX.</p>
<p>My recommendation on this subject is to not stop developing with AJAX but to take the time and effort to learn about the security problems associated with this web development technique and the ways to avoid the common pitfalls&#8211;doing so will make the web a safer place for each of us.</p>
<p>Just so you know where to start more about AJAX security, <a href="http://www.darknet.org.uk/2006/04/ajax-is-your-application-secure-enough/">Darknet</a> offers some good insight on securing AJAX by explaining some of the common ways to attack AJAX applications.</p>
<p>[via <a href="http://arstechnica.com/news.ars/post/20070802-security-experts-warn-developers-about-the-risks-of-premature-ajax-ulation.html">Ars Technica</a>]</p>
<p>Related post<p><strong>Related Posts:</storng></p><ul>s:<ol>
<li><a href='http://www.mandladventures.com/2007/04/21/securing-your-wireless-network/' rel='bookmark' title='Wireless Network Security Tips'>Wireless Network Security Tips</a></li>
</ul>]]></content:encoded>
			<wfw:commentRss>http://www.mandladventures.com/2007/08/10/ajax-security-considerations/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Google Maps API Tutorial</title>
		<link>http://www.mandladventures.com/2006/05/04/google-maps-api/</link>
		<comments>http://www.mandladventures.com/2006/05/04/google-maps-api/#comments</comments>
		<pubDate>Thu, 04 May 2006 14:35:58 +0000</pubDate>
		<dc:creator>Matt</dc:creator>
				<category><![CDATA[Google]]></category>
		<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[Web Development]]></category>

		<guid isPermaLink="false">http://www.mandladventures.com/?p=41</guid>
		<description><![CDATA[Before you go through all the complexities of this tutorial, I recommend that you check out a recent Google Maps development I&#8217;ve posted about. I think you&#8217;ll find it quite helpful! In response to a post on the Godbit forum, I created this brief Google Maps API tutorial. I believe every Church website, and every [...]
Related post
<strong>Related Posts:</storng><ul>s:<ol>
<li><a href='http://www.mandladventures.com/2007/08/29/google-adds-youtube-style-embedded-maps/' rel='bookmark' title='Google Adds YouTube-style Embedded Maps'>Google Adds YouTube-style Embedded Maps</a></li>
<li><a href='http://www.mandladventures.com/2007/05/07/google-calendar-on-your-site/' rel='bookmark' title='Google Calendar on your Site'>Google Calendar on your Site</a></li>
<li><a href='http://www.mandladventures.com/2006/05/02/google-sketchup/' rel='bookmark' title='Google SketchUp'>Google SketchUp</a></li>
</ul>]]></description>
			<content:encoded><![CDATA[<p class="alert">Before you go through all the complexities of this tutorial, I recommend that you check out a recent <a href="http://www.mandladventures.com/2007/08/29/google-adds-youtube-style-embedded-maps/">Google Maps development</a> I&#8217;ve posted about. I think you&#8217;ll find it quite helpful!</p>
<p>In response to a post on the <a title="Godbit Forum " href="http://godbit.com/forum/viewtopic.php?id=603">Godbit forum</a>, I created this brief Google Maps API tutorial. I believe every Church website, and every business for that matter, should provide a map and directions. The Google API lets us take that concept to a new level.<br />
<strong>After completion of this tutorial you should be able to:</strong></p>
<ul>
<li>Have your own interactive map (I guess that&#8217;s a given since that is what this tutorial is about)</li>
<lil>Set the default zoom level</li>
<li>Locate your geo coordinates</li>
<li>Center your map on those coordinates</li>
<li>Place a marker on those coordinates</li>
<li>Have a custom pop-up with a form to get To Here and From Here Directions</li>
<li>Know where to go to learn more</li>
</ul>
<p>Want to see an <a title="Map Example" href="http://www.mandladventures.com/tutorials/map_tutorial/map.htm">example</a> before we start? <br />
You can also see this on a site I created at <a title="Vance Auto Sales Location Map Example" href="http://vanceauto.com/location_hours.php">Vance Auto Sales</a>.<br />
<span id="more-41"></span></p>
<p><small><em>Special Note</em>: Google upgraded their API on April 3, 2006. I modified this code before writing this tutorial to use the new API, so all the new version 2 features should be available if you want to add some in. Also, Google does not provide any kind of routing features in the API. So when a user types in the address to get directions, a real Google Map opens in a new window with directions to or from our location.</small></p>
<p><center><iframe src="http://rcm.amazon.com/e/cm?t=mandladv-20&#038;o=1&#038;p=13&#038;l=st1&#038;mode=books&#038;search=Google%20Maps&#038;fc1=000000&#038;lt1=&#038;lc1=3366FF&#038;bg1=FFFFFF&#038;f=ifr" marginwidth="0" marginheight="0" width="468" height="60" border="0" frameborder="0" style="border:none;" scrolling="no"></iframe></center></p>
<p><strong>Step 1-Sign up for a API Key</strong><br />
Before you can place a map on your own site you need to sign up for a <a title="Sign Up for a Google Maps API Key" href="http://www.google.com/apis/maps/signup.html">Google API Key</a>.</p>
<p>To sign up, you&#8217;ll need to provide the URL of the site that will be using the key. The easiest thing to do is provide the top-level directory that will use the key (rather than the absolute address of the page that will be using the map). Doing this ensures that you&#8217;re map will work on any page of your site. For example: I provided <a title="M and L Adventures Top Level Domain" href="http://www.mandladventures.com/">http://www.mandladventures.com/</a> <br />
Leave the page with the key in it open, so you can copy and paste the key in later steps. Remember, if you&#8217;re testing this on a localhost server, and then uploading it to a production server you&#8217;ll need two separate API keys.</p>
<p><strong>Step 2-Locate Your Geo Coordinates</strong><br />
Google doesn&#8217;t provide a geocoding service at this time, so you&#8217;ll find that on your own.<br />
<a title="find the latitude &#038; longitude of any US address - for free" href="http://geocoder.us/">Geocoder.us</a> is what I used. <br />
Simply enter the address you want to find the coordinates for, and write down the latitude and longitude geocoder.us provides. <br />
Geocoder.us is only for United States addresses. If you live somewhere else, search for <a title="Free Geocoders Search results" href="http://www.google.com/search?q=free+geocoder">free geocoders</a>.</p>
<p><strong>Step 3-Create an XML file</strong><br />
This XML file will store all the points you want to mark on the map. This file also provides the text that will appear when the marker is selected. In our example, we only create one marker. If you want more than one marker on the map, add more instances of the of marker in the XML code below.</p>
<pre>
&lt;markers&gt;
  &lt;marker lat=&#34;35.827818&#34; lng=&#34;-86.072576&#34; html=&#34;&amp;lt;b&amp;#47;&amp;gt;First Baptist Church&amp;lt;&amp;#47;b&amp;#47;&amp;gt; &amp;lt;br &amp;#47;&amp;gt; 405 West Main Street, &amp;lt;br &amp;#47;&amp;gt; Woodbury, TN 37190&#34; label=&#34;FBC&#34;&#47;&gt;
&lt;&#47;markers&gt;
</pre>
<p>Change lat=&#8221;35.827818&#8243; to your address&#8217;s latitude. <br />
Change lng=&#8221;-86.072576&#8243; to your address&#8217;s longitude. </p>
<p>Replace &#8220;First Baptist Church&#8221; with the title of your location.<br />
Change 405 West Main Street, &amp;lt;br /&amp;gt; Woodbury, TN 37190 to your address. <br />
Change the label=&#8221;FBC&#8221; to whatever you want. <br />
Save the file as map.xml, and upload it to the same directory where your map page will be. You can change the directory, but you will have to change all the references to map.xml in step 7&#8242;s code to point to a your directory.</p>
<p><em>Remember</em>: XML requires all HTML characters to be escaped.<br />
For your convenience, I included a list of commonly escapeed characters below:</p>
<pre class="normaltext">
&lt; = &amp;lt;
&gt; = &amp;gt;
/ = &amp;#47;
] = &amp;#93;
[ = &amp;#91;
&quot; = &amp;#34;
' = &amp;#39;
</pre>
<p><strong>Step 4-Call the API with your key</strong><br />
Insert the following code in the head section of your web page, placing your API key between key= and &#8221;</p>
<pre>
&lt;script src=&#34;http:&#47;&#47;maps.google.com&#47;maps?file=api&amp;v=2&amp;key=ABQIAAAAbTgUqmDVtw6KNosttYwutxR-kQiDMsqewHdPfI0JvuxAHQRqVhQsEF-filcfK_gQIlIUCIcFhtJH0Q&#34; type=&#34;text&#47;javascript&#34;&gt;&lt;&#47;script&gt;

</pre>
<p><strong>Step 5-Add an onunload event to the body tag</strong></p>
<pre>
&lt;body onunload=&#34;GUnload()&#34;&gt;
</pre>
<p><strong>Step 6-Place the div to contain the map</strong></p>
<pre>
     &lt;div id=&#34;map&#34; style=&#34;width: 550px; height: 450px; border: 1px solid #000000;&#34;&gt;&lt;&#47;div&gt;

	 &lt;!--What to display if JavaScript is disabled in the user&#39;s browser--&gt;
    &lt;noscript&gt;&lt;strong&gt;JavaScript must be enabled in order for you to use Google Maps.&lt;&#47;strong&gt;&lt;br &#47;&gt;
      However, it seems JavaScript is either disabled or not supported by your browser. &lt;br &#47;&gt;
      To view Google Maps, enable JavaScript by changing your browser options, and then
      try again.&lt;br &#47;&gt;&lt;br &#47;&gt;
    &lt;&#47;noscript&gt;
</pre>
<p>Insert this div, where you want to the map to appear.<br />
Change the sytle to fit your needs.</p>
<p><strong>Step 7-Insert the final bit of code</strong><br />
Insert this right before the /body and /html tags at the end of your web page that contains the map.</p>
<pre>
&lt;script type=&#34;text&#47;javascript&#34;&gt;
    &#47;&#47;&lt;!&#91;CDATA&#91;

	&#47;&#47;the original code had a GMapSidebar to pick the markers from, I eliminated the GMapSidebar,
	&#47;&#47;but deleting the code that referenced the bar corrupted the rest of the code
	&#47;&#47;so just ignore references to GMapSidebar, unless you&#39;re really with JavaScript
    if (GBrowserIsCompatible()) {
      &#47;&#47; this variable will collect the html which will eventually be placed in the GMapSidebar
      var GMapSidebar_html = &#34;&#34;;

      &#47;&#47; arrays to hold copies of the markers and html used by the GMapSidebar
      &#47;&#47; because the function closure trick doesnt work there
      var gmarkers = &#91;&#93;;
      var htmls = &#91;&#93;;
      var i = 0;
      &#47;&#47; arrays to hold variants of the info window html with get direction forms open
      var to_htmls = &#91;&#93;;
      var from_htmls = &#91;&#93;;

      &#47;&#47; A function to create the marker and set up the event window
      function createMarker(point,name,html) {
        var marker = new GMarker(point);

        &#47;&#47; The info window version with the &#34;to here&#34; form open (The Directions Form part.)
        to_htmls&#91;i&#93; = html + &#39;&lt;br&gt;Directions: &lt;b&gt;To here&lt;&#47;b&gt; - &lt;a href=&#34;javascript:fromhere(&#39; + i + &#39;)&#34;&gt;From here&lt;&#47;a&gt;&#39; +
           &#39;&lt;br&gt;Start address:&lt;form action=&#34;http:&#47;&#47;maps.google.com&#47;maps&#34; method=&#34;get&#34; target=&#34;_blank&#34;&gt;&#39; +
           &#39;&lt;input type=&#34;text&#34; size=40 maxlength=40 name=&#34;saddr&#34; id=&#34;saddr&#34; value=&#34;&#34; &#47;&gt;&lt;br&gt;&#39; +
           &#39;&lt;input value=&#34;Get Directions&#34; TYPE=&#34;submit&#34;&gt;&#39; +
           &#39;&lt;input type=&#34;hidden&#34; name=&#34;daddr&#34; value=&#34;&#39; + point.lat() + &#39;,&#39; + point.lng() +
                  &#47;&#47; &#34;(&#34; + name + &#34;)&#34; +
           &#39;&#34;&#47;&gt;&#39;;
        &#47;&#47; The info window version with the &#34;to here&#34; form open
        from_htmls&#91;i&#93; = html + &#39;&lt;br&gt;Directions: &lt;a href=&#34;javascript:tohere(&#39; + i + &#39;)&#34;&gt;To here&lt;&#47;a&gt; - &lt;b&gt;From here&lt;&#47;b&gt;&#39; +
           &#39;&lt;br&gt;End address:&lt;form action=&#34;http:&#47;&#47;maps.google.com&#47;maps&#34; method=&#34;get&#34;&#34; target=&#34;_blank&#34;&gt;&#39; +
           &#39;&lt;input type=&#34;text&#34; size=40 maxlength=40 name=&#34;daddr&#34; id=&#34;daddr&#34; value=&#34;&#34; &#47;&gt;&lt;br&gt;&#39; +
           &#39;&lt;input value=&#34;Get Directions&#34; type=&#34;SUBMIT&#34;&gt;&#39; +
           &#39;&lt;input type=&#34;hidden&#34; name=&#34;saddr&#34; value=&#34;&#39; + point.lat() + &#39;,&#39; + point.lng() +
                  &#47;&#47; &#34;(&#34; + name + &#34;)&#34; +
           &#39;&#34;&#47;&gt;&#39;;
        &#47;&#47; The inactive version of the direction info
        html = html + &#39;&lt;br&gt;Directions: &lt;a href=&#34;javascript:tohere(&#39;+i+&#39;)&#34;&gt;To here&lt;&#47;a&gt; - &lt;a href=&#34;javascript:fromhere(&#39;+i+&#39;)&#34;&gt;From here&lt;&#47;a&gt;&#39;;

        GEvent.addListener(marker, &#34;click&#34;, function() {
          marker.openInfoWindowHtml(html);
        });
        &#47;&#47; save the info we need to use later for the GMapSidebar
        gmarkers&#91;i&#93; = marker;
        htmls&#91;i&#93; = html;
        &#47;&#47; add a line to the GMapSidebar html
        GMapSidebar_html += &#39;&lt;a href=&#34;javascript:myclick(&#39; + i + &#39;)&#34;&gt;&#39; + name + &#39;&lt;&#47;a&gt;&lt;br&gt;&#39;;
        i++;
        return marker;
      }

      &#47;&#47; This function picks up the click and opens the corresponding info window
      function myclick(i) {
        gmarkers&#91;i&#93;.openInfoWindowHtml(htmls&#91;i&#93;);
      }

      &#47;&#47; functions that open the directions forms
      function tohere(i) {
        gmarkers&#91;i&#93;.openInfoWindowHtml(to_htmls&#91;i&#93;);
      }
      function fromhere(i) {
        gmarkers&#91;i&#93;.openInfoWindowHtml(from_htmls&#91;i&#93;);
      }

&#47;&#47;*******************************************************************
&#47;&#47;Edit these options to CONFIGURE THE MAP
      &#47;&#47; create the map
      var map = new GMap2(document.getElementById(&#34;map&#34;));
	  &#47;&#47;GLargeMapControl adds large zoom and pan controls on the left,
	  &#47;&#47;you can change it by picking from two of the options described below
	  &#47;&#47;there is a GSmallMapControl for a smaller pan&#47;zoom control
	  &#47;&#47;also there is GSmallZoomControl - a small zoom control (no panning controls)
      map.addControl(new GLargeMapControl());

	  &#47;&#47;this adds the Map, Satellite, and Hybrid buttons, delete line if you don&#39;t want it
      map.addControl(new GMapTypeControl());

	  &#47;&#47;this adds a scale to the bottom left of the map, delete line if you don&#39;t want it
	  map.addControl(new GScaleControl());

	  &#47;&#47;type in the Geo Coordinates and default zoom level below. (Latitude, Longitude), Zoom level);
	  &#47;&#47;these Coordinates set the center of the map, they do not place the marker.
	  &#47;&#47;that is done in the map.xml file. If you want a marker to be centered, type
	  &#47;&#47;the same coordinates here that are used for that marker in the map.xml file
	  &#47;&#47;0 is zoomed all the way out.
      map.setCenter(new GLatLng(35.827818,-86.072576), 12);
&#47;&#47;*******************************************************************

      &#47;&#47; Read the data from map.xml
      var request = GXmlHttp.create();
      request.open(&#34;GET&#34;, &#34;map.xml&#34;, true);
      request.onreadystatechange = function() {
        if (request.readyState == 4) {
          var xmlDoc = request.responseXML;
          &#47;&#47; obtain the array of markers and loop through it
          var markers = xmlDoc.documentElement.getElementsByTagName(&#34;marker&#34;);

          for (var i = 0; i &lt; markers.length; i++) {
            &#47;&#47; obtain the attribues of each marker
            var lat = parseFloat(markers&#91;i&#93;.getAttribute(&#34;lat&#34;));
            var lng = parseFloat(markers&#91;i&#93;.getAttribute(&#34;lng&#34;));
            var point = new GLatLng(lat,lng);
            var html = markers&#91;i&#93;.getAttribute(&#34;html&#34;);
            var label = markers&#91;i&#93;.getAttribute(&#34;label&#34;);
            &#47;&#47; create the marker
            var marker = createMarker(point,label,html);
            map.addOverlay(marker);
          }
          &#47;&#47; put the assembled GMapSidebar_html contents into the GMapSidebar div
          document.getElementById(&#34;GMapSidebar&#34;).innerHTML = GMapSidebar_html;
        }
      }
      request.send(null);
    }

    else {
      alert(&#34;Sorry, the Google Maps API is not compatible with this browser&#34;);
    }

    &#47;&#47; This Javascript is based on code provided by the
    &#47;&#47; Blackpool Community Church Javascript Team
    &#47;&#47; http:&#47;&#47;www.commchurch.freeserve.co.uk&#47;
    &#47;&#47; http:&#47;&#47;www.econym.demon.co.uk&#47;googlemaps&#47;
	&#47;&#47;slight modifications by Matt from http:&#47;&#47;www.mandladventures.com&#47;

    &#47;&#47;&#93;&#93;&gt;
    &lt;&#47;script&gt;
</pre>
<p><strong>Step 8-Configure the map</strong><br />
Edit this section of the code above.</p>
<pre>
&#47;&#47;*******************************************************************
&#47;&#47;Edit these options to CONFIGURE THE MAP
      &#47;&#47; create the map
      var map = new GMap2(document.getElementById(&#34;map&#34;));
	  &#47;&#47;GLargeMapControl adds large zoom and pan controls on the left,
	  &#47;&#47;you can change it by picking to of the options described below
	  &#47;&#47;there is a GSmallMapControl for a smaller pan&#47;zoom control
	  &#47;&#47;also there is GSmallZoomControl - a small zoom control (no panning controls)
      map.addControl(new GLargeMapControl());

	  &#47;&#47;this adds the Map, Satellite, and Hybrid buttons, delete line if you don&#39;t want it
      map.addControl(new GMapTypeControl());

	  &#47;&#47;this adds a scale to the bottom left of the map, delete line if you don&#39;t want it
	  map.addControl(new GScaleControl());

	  &#47;&#47;type in the Geo Coordinates and default zoom level below. (Latitude, Longitude), Zoom level);
	  &#47;&#47;these Coordinates set the center of the map, they do not place the marker.
	  &#47;&#47;that is done in the map.xml file. If you want a marker to be centered, type
	  &#47;&#47;the same coordinates here that are used for that marker in the map.xml file
	  &#47;&#47;0 is zoomed all the way out.
      map.setCenter(new GLatLng(35.827818,-86.072576), 12);
&#47;&#47;*******************************************************************
</pre>
<p>Set the default map center point, and the zoom level.<br />
Change 35.827818 to your latitude<br />
Change -86.072576 to your longitude.<br />
Change 12 to your desired zoom level. 0 is zoomed all the way out.<br />
To delete a control, remove the line of code. <br />
You can change the types of controls used on the map.<br />
For example, some controls can be smaller or bigger, which is useful if you have a small map. I included the alternative control names in the source code comments. For example change GLargeMapControl to GSmallMapControl.</p>
<p><strong>Step 9-Tutorial Complete</strong><br />
Enjoy!</p>
<p><a title="Tutorial Source Code" href="http://www.mandladventures.com/tutorials/map_tutorial/Google_Maps.zip"><img align="left" class="noborder" title="Download Source Code" src="http://www.mandladventures.com/wp-content/uploads/2006/06/package.gif" /></a><br />
<a title="Tutorial Source Code" href="http://www.mandladventures.com/tutorials/map_tutorial/Google_Maps.zip">Download the Source Code</a> used in this tutorial.</p>
<div class="clearer"></div>
<p><strong>To learn more check out these resources:</strong></p>
<ul>
<li>
<a title="Google API Documentation" href="http://www.google.com/apis/maps/documentation/">Google Maps API Version 2 Documentation</a>
	</li>
<li>
<a title="The tutorials" href="http://www.econym.demon.co.uk/googlemaps/index.htm">Good set of Tutorials</a>
        </li>
<li>
<a title="Google Maps API Group" href="http://groups.google.com/group/Google-Maps-API/">Google Maps API Group</a>
        </li>
<li>
<a title="Google Mapki!" href="http://mapki.com/wiki/Main_Page">Google Mapki!</a>
       </li>
</ul>
<p><strong>Big Thanks goes to:</strong></p>
<ul>
<li>
 <a title="Mike Williams" href="http://www.econym.demon.co.uk/">Mike Williams</a> for writing the <a title="The tutorials"  href="http://www.econym.demon.co.uk/googlemaps/index.htm">tutorials</a> I based my code off of</li>
<li>
<a title="Google" href="http://www.google.com/">Google</a> for releasing the API
</li>
<p><center><script type="text/javascript"><!--
  amazon_ad_tag = "mandladv-20";  amazon_ad_width = "468";  amazon_ad_height = "60";  amazon_ad_include = "google+maps";  amazon_ad_categories = "adefg";//--></script><br />
<script type="text/javascript" src="http://www.assoc-amazon.com/s/ads.js"></script></center></p>
<p>Related post<p><strong>Related Posts:</storng></p><ul>s:<ol>
<li><a href='http://www.mandladventures.com/2007/08/29/google-adds-youtube-style-embedded-maps/' rel='bookmark' title='Google Adds YouTube-style Embedded Maps'>Google Adds YouTube-style Embedded Maps</a></li>
<li><a href='http://www.mandladventures.com/2007/05/07/google-calendar-on-your-site/' rel='bookmark' title='Google Calendar on your Site'>Google Calendar on your Site</a></li>
<li><a href='http://www.mandladventures.com/2006/05/02/google-sketchup/' rel='bookmark' title='Google SketchUp'>Google SketchUp</a></li>
</ul>]]></content:encoded>
			<wfw:commentRss>http://www.mandladventures.com/2006/05/04/google-maps-api/feed/</wfw:commentRss>
		<slash:comments>58</slash:comments>
		</item>
	</channel>
</rss>

