property :default_layer, [TrueClass, FalseClass], :default => false
action :create do
- file "create layer yaml definition" do
+ file "/srv/imagery/layers/#{site}/#{layer}.yml" do
owner "root"
group "root"
mode 0644
- if new_resource.overlay
- path "/srv/imagery/overlays/#{site}/#{layer}.yml"
- else
- path "/srv/imagery/layers/#{site}/#{layer}.yml"
- end
content YAML.dump(:name => layer,
:title => title || layer,
:url => "http://{s}.#{site}/layer/#{layer}/{z}/{x}/{y}.png",
:attribution => copyright,
:default => default_layer,
- :maxZoom => max_zoom)
+ :maxZoom => max_zoom,
+ :overlay => overlay)
end
- file "remove old layer yaml" do
- if new_resource.overlay
- path "/srv/imagery/layers/#{site}/#{layer}.yml" # remove layer if overlay
- else
- path "/srv/imagery/overlays/#{site}/#{layer}.yml" # remove overlay if layer
- end
+ file "remove old overlay yaml" do
+ path "/srv/imagery/overlays/#{site}/#{layer}.yml"
action :delete
end
function createMap(divName) {
// Create a map
- var map = L.map(divName);
+ var map = L.map(divName).fitBounds(<%= @bbox.to_json %>);
// Create a layer switcher
var layers = L.control.layers();
});
// Add <%= layer[:name] %> to layer switcher
+ <% if layer[:overlay] -%>
layers.addBaseLayer(<%= layer[:name] %>, <%= layer[:title].to_json %>);
+ <% else %>
+ layers.addOverlay(<%= layer[:name] %>, <%= layer[:title].to_json %>);
+ <% end -%>
<% if layer[:default] -%>
// Add <%= layer[:name] %> to map
<%= layer[:name] %>.addTo(map);
<% end -%>
<% end -%>
- <% @overlays.sort_by { |layer| layer[:name] }.each do |layer| -%>
- // Add <%= layer[:name] %> to layer switcher
- layers.addOverlay(L.tileLayer(<%= layer[:url].to_json %>, {
- attribution: <%= layer[:attribution].to_json %>,
- maxZoom: <%= layer[:maxZoom].to_json %>
- }), <%= layer[:title].to_json %>);
- <% end -%>
// Add the layer switch to the mao
layers.addTo(map);
- // Zoom to specified bounds
- map.fitBounds(<%= @bbox.to_json %>);
-
return map;
}