<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array"/>
  <modified type="array">
    <modified>
      <diff>@@ -176,7 +176,8 @@
     &lt;script type=&quot;text/javascript&quot; language=&quot;javascript1.2&quot;&gt;
     // &lt;![CDATA[
 
-        var map = makeMap('map', 'http://tile.cloudmade.com/{$constants.CLOUDMADE_KEY|escape}/2/256/{literal}{Z}/{X}/{Y}{/literal}.png');
+        var map = makeMap('map', '{$provider|escape:&quot;javascript&quot;}');
+        map.setCenterZoom(new mm.Location({$latitude}, {$longitude}), {$zoom});
         
         // {literal}
         
@@ -326,42 +327,44 @@
             &lt;input class=&quot;mac-button&quot; type=&quot;submit&quot; name=&quot;action&quot; value=&quot;{$label}&quot; /&gt;
         &lt;/p&gt;
         
-        &lt;p&gt;
-            {if $language == &quot;de&quot;}
-                Kartenstil:
-            {elseif $language == &quot;nl&quot;}
-                Provider:
-            {elseif $language == &quot;es&quot;}
-                Provider:
-            {elseif $language == &quot;fr&quot;}
-                Provider:
-            {elseif $language == &quot;ja&quot;}
-                Provider:
-            {elseif $language == &quot;it&quot;}
-                Provider:
-            {else}
-                Provider:
-            {/if}
-            &lt;select name=&quot;provider&quot; onchange=&quot;setProvider(this.value);&quot;&gt;
-                {assign var=&quot;label&quot; value=&quot;Cloudmade: Fineline&quot;}
-                &lt;option label=&quot;{$label}&quot; value=&quot;http://tile.cloudmade.com/{$constants.CLOUDMADE_KEY|escape}/2/256/{literal}{Z}/{X}/{Y}{/literal}.png&quot; selected=&quot;selected&quot;&gt;{$label}&lt;/option&gt;
-                
-                {assign var=&quot;label&quot; value=&quot;OpenStreetMap&quot;}
-                &lt;option label=&quot;{$label}&quot; value=&quot;http://tile.openstreetmap.org/{literal}{Z}/{X}/{Y}{/literal}.png&quot;&gt;{$label}&lt;/option&gt;
-                
-                {assign var=&quot;label&quot; value=&quot;Cloudmade: No Name&quot;}
-                &lt;option label=&quot;{$label}&quot; value=&quot;http://tile.cloudmade.com/{$constants.CLOUDMADE_KEY|escape}/3/256/{literal}{Z}/{X}/{Y}{/literal}.png&quot;&gt;{$label}&lt;/option&gt;
-                
-                {assign var=&quot;label&quot; value=&quot;OpenStreetMap: Osmarender&quot;}
-                &lt;option label=&quot;{$label}&quot; value=&quot;http://tah.openstreetmap.org/Tiles/tile/{literal}{Z}/{X}/{Y}{/literal}.png&quot;&gt;{$label}&lt;/option&gt;
-                
-                {assign var=&quot;label&quot; value=&quot;OpenStreetMap: CycleMap&quot;}
-                &lt;option label=&quot;{$label}&quot; value=&quot;http://andy.sandbox.cloudmade.com/tiles/cycle/{literal}{Z}/{X}/{Y}{/literal}.png&quot;&gt;{$label}&lt;/option&gt;
-                
-                {assign var=&quot;label&quot; value=&quot;Cloudmade: Fresh&quot;}
-                &lt;option label=&quot;{$label}&quot; value=&quot;http://tile.cloudmade.com/{$constants.CLOUDMADE_KEY|escape}/997/256/{literal}{Z}/{X}/{Y}{/literal}.png&quot;&gt;{$label}&lt;/option&gt;
-            &lt;/select&gt;
-        &lt;/p&gt;
+        {if !$request.get.provider}
+            &lt;p&gt;
+                {if $language == &quot;de&quot;}
+                    Kartenstil:
+                {elseif $language == &quot;nl&quot;}
+                    Provider:
+                {elseif $language == &quot;es&quot;}
+                    Provider:
+                {elseif $language == &quot;fr&quot;}
+                    Provider:
+                {elseif $language == &quot;ja&quot;}
+                    Provider:
+                {elseif $language == &quot;it&quot;}
+                    Provider:
+                {else}
+                    Provider:
+                {/if}
+                &lt;select name=&quot;provider&quot; onchange=&quot;setProvider(this.value);&quot;&gt;
+                    {assign var=&quot;label&quot; value=&quot;Cloudmade: Fineline&quot;}
+                    &lt;option label=&quot;{$label}&quot; value=&quot;http://tile.cloudmade.com/{$constants.CLOUDMADE_KEY|escape}/2/256/{literal}{Z}/{X}/{Y}{/literal}.png&quot; selected=&quot;selected&quot;&gt;{$label}&lt;/option&gt;
+                    
+                    {assign var=&quot;label&quot; value=&quot;OpenStreetMap&quot;}
+                    &lt;option label=&quot;{$label}&quot; value=&quot;http://tile.openstreetmap.org/{literal}{Z}/{X}/{Y}{/literal}.png&quot;&gt;{$label}&lt;/option&gt;
+                    
+                    {assign var=&quot;label&quot; value=&quot;Cloudmade: No Name&quot;}
+                    &lt;option label=&quot;{$label}&quot; value=&quot;http://tile.cloudmade.com/{$constants.CLOUDMADE_KEY|escape}/3/256/{literal}{Z}/{X}/{Y}{/literal}.png&quot;&gt;{$label}&lt;/option&gt;
+                    
+                    {assign var=&quot;label&quot; value=&quot;OpenStreetMap: Osmarender&quot;}
+                    &lt;option label=&quot;{$label}&quot; value=&quot;http://tah.openstreetmap.org/Tiles/tile/{literal}{Z}/{X}/{Y}{/literal}.png&quot;&gt;{$label}&lt;/option&gt;
+                    
+                    {assign var=&quot;label&quot; value=&quot;OpenStreetMap: CycleMap&quot;}
+                    &lt;option label=&quot;{$label}&quot; value=&quot;http://andy.sandbox.cloudmade.com/tiles/cycle/{literal}{Z}/{X}/{Y}{/literal}.png&quot;&gt;{$label}&lt;/option&gt;
+                    
+                    {assign var=&quot;label&quot; value=&quot;Cloudmade: Fresh&quot;}
+                    &lt;option label=&quot;{$label}&quot; value=&quot;http://tile.cloudmade.com/{$constants.CLOUDMADE_KEY|escape}/997/256/{literal}{Z}/{X}/{Y}{/literal}.png&quot;&gt;{$label}&lt;/option&gt;
+                &lt;/select&gt;
+            &lt;/p&gt;
+        {/if}
     &lt;/form&gt;
 
     &lt;h2&gt;{strip}</diff>
      <filename>site/templates/index.html.tpl</filename>
    </modified>
    <modified>
      <diff>@@ -69,7 +69,6 @@ function makeMap(elementID, providerURL)
     map.addCallback('extentset', function(m, a) { return onMapChanged(m); });
     map.addCallback('panned',    function(m, a) { return onMapChanged(m); });
 
-    map.setCenterZoom(new mm.Location(37.660, -122.168), 9);
     map.draw();
     
     return map;</diff>
      <filename>site/www/index.js</filename>
    </modified>
    <modified>
      <diff>@@ -6,6 +6,10 @@
     require_once 'data.php';
     
     list($user_id, $language) = read_userdata($_COOKIE['visitor'], $_SERVER['HTTP_ACCEPT_LANGUAGE']);
+    $provider = is_null($_GET['provider']) ? 'http://tile.cloudmade.com/'.CLOUDMADE_KEY.'/2/256/{Z}/{X}/{Y}.png' : $_GET['provider'];
+    $latitude = is_numeric($_GET['lat']) ? floatval($_GET['lat']) : 37.660;
+    $longitude = is_numeric($_GET['lon']) ? floatval($_GET['lon']) : -122.168;
+    $zoom = is_numeric($_GET['zoom']) ? intval($_GET['zoom']) : 9;
 
     /**** ... ****/
     
@@ -25,6 +29,11 @@
     $sm-&gt;assign('scans', $scans);
     $sm-&gt;assign('language', $language);
 
+    $sm-&gt;assign('provider', $provider);
+    $sm-&gt;assign('latitude', $latitude);
+    $sm-&gt;assign('longitude', $longitude);
+    $sm-&gt;assign('zoom', $zoom);
+
     header(&quot;Content-Type: text/html; charset=UTF-8&quot;);
     print $sm-&gt;fetch(&quot;index.html.tpl&quot;);
 </diff>
      <filename>site/www/index.php</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>1240a813f3f41b7bc39a36debba0ffc181561734</id>
    </parent>
  </parents>
  <author>
    <name>Michal Migurski</name>
    <email>migurski@or.pair.com</email>
  </author>
  <url>http://github.com/migurski/paperwalking/commit/59839d1cc1be40ff90c727ad61f6fb7620d98edb</url>
  <id>59839d1cc1be40ff90c727ad61f6fb7620d98edb</id>
  <committed-date>2009-11-04T23:24:14-08:00</committed-date>
  <authored-date>2009-11-04T23:24:14-08:00</authored-date>
  <message>Added in-URL provider, location, and zoom for direct links</message>
  <tree>e3d438ab965cdb724bea438d6195a05587a0ea63</tree>
  <committer>
    <name>Michal Migurski</name>
    <email>migurski@or.pair.com</email>
  </committer>
</commit>
