]> git.openstreetmap.org Git - rails.git/blob - app/views/site/_potlatch.html.erb
Fix URL updating in Potlatch 1
[rails.git] / app / views / site / _potlatch.html.erb
1 <div id="map">
2   <div id="potlatch"><%= raw t 'site.edit.flash_player_required' %></div>
3 </div>
4
5 <%= javascript_include_tag 'swfobject.js' %>
6
7 <% session[:token] = @user.tokens.create.token unless session[:token] and UserToken.find_by_token(session[:token]) %>
8
9 <script type="text/javascript" defer="defer">
10   var changesaved=true;
11   var winie=false; if (document.all && window.print) { winie=true; }
12   
13   window.onbeforeunload=function() {
14     if (!changesaved) {
15       return '<%= escape_javascript(t('site.edit.potlatch_unsaved_changes')) %>';
16     }
17   }
18
19   function markChanged(a) { changesaved=a; }
20
21   function updatelinks(lon,lat,zoom,layers,minlon,minlat,maxlon,maxlat,object) {
22     updateLinks({ lon: lon, lat: lat }, zoom);
23
24     var hash = OSM.formatHash({ lon: lon, lat: lat, zoom: zoom });
25     if (hash !== location.hash) {
26       location.replace(hash);
27     }
28   }
29
30   function doSWF(lat,lon,sc) {
31     if (sc < 11) sc = 11;
32
33     var flashvars = {};
34     flashvars.winie = winie;
35     flashvars.scale = sc;
36     flashvars.token = '<%= session[:token] %>';
37     if (lat) { flashvars.lat = lat; }
38     if (lon) { flashvars.long = lon; }
39     <% if params['gpx']  %>flashvars.gpx = '<%= h(params['gpx']    ) %>';<% end %>
40     <% if params['way']  %>flashvars.way = '<%= h(params['way']    ) %>';<% end %>
41     <% if params['node'] %>flashvars.node = '<%= h(params['node']   ) %>';<% end %>
42     <% if params['tileurl'] %>flashvars.custombg = '<%= h(params['tileurl']) %>';<% end %>
43
44     var params = {};
45
46     var attributes = {};
47     attributes.id = "potlatch";
48     attributes.bgcolor = "#FFFFFF";
49
50     swfobject.embedSWF("<%= asset_path("/potlatch/potlatch.swf") %>", "potlatch", "100%", "100%", "6","<%= asset_path("expressInstall.swf") %>", flashvars, params, attributes);
51     // 700,600 for fixed size, 100%,100% for resizable
52   }
53
54   <% if @lat && @lon -%>
55   doSWF(<%= @lat %>,<%= @lon %>,16);
56   <% else -%>
57   var params = OSM.mapParams();
58   doSWF(params.lat, params.lon, params.zoom || 17);
59   <% end -%>
60
61   $(document).ready(function () {
62     $("body").on("click", "a.set_position", function () {
63       var data = $(this).data();
64
65       doSWF(data.lat, data.lon, data.zoom || 15);
66     });
67   });
68 </script>