Cleaner implementation of keys

This commit is contained in:
Petr Sloup 2016-06-29 20:17:58 +02:00
parent a9443edfc6
commit 1307b29ff9
4 changed files with 27 additions and 26 deletions

View file

@ -4,8 +4,8 @@
<meta charset="UTF-8">
<title>{{name}} - TileServer GL</title>
{{#is_vector}}
<link rel="stylesheet" type="text/css" href="/mapbox-gl.css{{&access_key_query}}" />
<script src="/mapbox-gl.js{{&access_key_query}}"></script>
<link rel="stylesheet" type="text/css" href="/mapbox-gl.css{{&key_query}}" />
<script src="/mapbox-gl.js{{&key_query}}"></script>
<style>
body {background:#000;color:#ccc;}
#map {position:absolute;top:0;left:0;right:250px;bottom:0;}
@ -16,9 +16,9 @@
</style>
{{/is_vector}}
{{^is_vector}}
<link rel="stylesheet" type="text/css" href="/mapbox.css{{&access_key_query}}" />
<script src="/mapbox.js{{&access_key_query}}"></script>
<script src="/leaflet-hash.js{{&access_key_query}}"></script>
<link rel="stylesheet" type="text/css" href="/mapbox.css{{&key_query}}" />
<script src="/mapbox.js{{&key_query}}"></script>
<script src="/leaflet-hash.js{{&key_query}}"></script>
<style>
body { margin:0; padding:0; }
#map { position:absolute; top:0; bottom:0; width:100%; }
@ -97,7 +97,7 @@
}
};
xhttp.responseType = 'json';
xhttp.open('GET', '/data/{{id}}.json{{&access_key_query}}', true);
xhttp.open('GET', '/data/{{id}}.json{{&key_query}}', true);
xhttp.send();
var propertyList = document.getElementById('propertyList');
@ -116,7 +116,7 @@
<h1 style="display:none;">{{name}}</h1>
<div id='map'></div>
<script>
var map = L.mapbox.map('map', '/data/{{id}}.json{{&access_key_query}}', { zoomControl: false });
var map = L.mapbox.map('map', '/data/{{id}}.json{{&key_query}}', { zoomControl: false });
new L.Control.Zoom({ position: 'topright' }).addTo(map);
setTimeout(function() {
new L.Hash(map);

View file

@ -3,7 +3,7 @@
<head>
<meta charset="UTF-8">
<title>TileServerGL</title>
<link rel="stylesheet" type="text/css" href="/index.css{{&access_key_query}}" />
<link rel="stylesheet" type="text/css" href="/index.css{{&key_query}}" />
</head>
<body>
<section>
@ -13,28 +13,28 @@
{{#each styles}}
<div class="item">
{{#if thumbnail}}
<img src="/styles/{{@key}}/rendered/{{thumbnail}}{{&../access_key_query}}" alt="{{name}} preview" />
<img src="/styles/{{@key}}/rendered/{{thumbnail}}{{&../key_query}}" alt="{{name}} preview" />
{{else}}
<div class="sample-img"></div>
{{/if}}
<h3>{{name}}</h3>
<p>Id: {{@key}}
{{#if serving_rendered}}
| <a href="/styles/{{@key}}/rendered.json{{&../access_key_query}}">TileJSON</a>
| <a href="/styles/{{@key}}/rendered.json{{&../key_query}}">TileJSON</a>
{{#if wmts_link}}
| <a href="{{&wmts_link}}">WMTS Service</a>
{{/if}}
{{/if}}
</p>
{{#if serving_data}}
<a class="btn" href="/styles/{{@key}}/?key={{&../access_key}}&amp;vector{{viewer_hash}}">Vector view</a>
<a class="btn" href="/styles/{{@key}}/?{{&../key_query_part}}vector{{viewer_hash}}">Vector view</a>
{{/if}}
{{#if serving_rendered}}
<a class="btn" href="/styles/{{@key}}/?key={{&../access_key}}&amp;raster{{viewer_hash}}">Raster view</a>
<a class="btn" href="/styles/{{@key}}/?{{&../key_query_part}}raster{{viewer_hash}}">Raster view</a>
{{/if}}
{{#if serving_data}}
{{#if serving_rendered}}
<a class="btn" href="/styles/{{@key}}/{{&../access_key_query}}{{viewer_hash}}">Auto view</a>
<a class="btn" href="/styles/{{@key}}/{{&../key_query}}{{viewer_hash}}">Auto view</a>
{{/if}}
{{/if}}
</div>
@ -45,22 +45,22 @@
{{#each data}}
<div class="item">
{{#if thumbnail}}
<img src="/data/{{@key}}/{{thumbnail}}{{&../access_key_query}}" alt="{{name}} preview" />
<img src="/data/{{@key}}/{{thumbnail}}{{&../key_query}}" alt="{{name}} preview" />
{{else}}
<div class="sample-img"></div>
{{/if}}
<h3>{{name}}</h3>
<p>Id: {{@key}} |{{#if formatted_filesize}} {{formatted_filesize}} |{{/if}} {{#is_vector}}Vector{{/is_vector}}{{^is_vector}}Raster{{/is_vector}} data
| <a href="/data/{{@key}}.json{{&../access_key_query}}">TileJSON</a>
| <a href="/data/{{@key}}.json{{&../key_query}}">TileJSON</a>
{{#if wmts_link}}
| <a href="{{&wmts_link}}">WMTS Service</a>
{{/if}}
</p>
{{#is_vector}}
<a class="btn" href="/data/{{@key}}/{{&../access_key_query}}{{viewer_hash}}">X-Ray view</a>
<a class="btn" href="/data/{{@key}}/{{&../key_query}}{{viewer_hash}}">X-Ray view</a>
{{/is_vector}}
{{^is_vector}}
<a class="btn" href="/data/{{@key}}/{{&../access_key_query}}{{viewer_hash}}">Raster view</a>
<a class="btn" href="/data/{{@key}}/{{&../key_query}}{{viewer_hash}}">Raster view</a>
{{/is_vector}}
</div>
{{/each}}

View file

@ -3,11 +3,11 @@
<head>
<meta charset="UTF-8">
<title>{{name}} - TileServer GL</title>
<link rel="stylesheet" type="text/css" href="/mapbox-gl.css{{&access_key_query}}" />
<script src="/mapbox-gl.js{{&access_key_query}}"></script>
<link rel="stylesheet" type="text/css" href="/mapbox.css{{&access_key_query}}" />
<script src="/mapbox.js{{&access_key_query}}"></script>
<script src="/leaflet-hash.js{{&access_key_query}}"></script>
<link rel="stylesheet" type="text/css" href="/mapbox-gl.css{{&key_query}}" />
<script src="/mapbox-gl.js{{&key_query}}"></script>
<link rel="stylesheet" type="text/css" href="/mapbox.css{{&key_query}}" />
<script src="/mapbox.js{{&key_query}}"></script>
<script src="/leaflet-hash.js{{&key_query}}"></script>
<style>
body { margin:0; padding:0; }
#map { position:absolute; top:0; bottom:0; width:100%; }
@ -25,12 +25,12 @@
if (preference == 'vector') {
var map = new mapboxgl.Map({
container: 'map',
style: '/styles/{{id}}.json{{&access_key_query}}',
style: '/styles/{{id}}.json{{&key_query}}',
hash: true
});
map.addControl(new mapboxgl.Navigation());
} else {
var map = L.mapbox.map('map', '/styles/{{id}}/rendered.json{{&access_key_query}}', { zoomControl: false });
var map = L.mapbox.map('map', '/styles/{{id}}/rendered.json{{&key_query}}', { zoomControl: false });
new L.Control.Zoom({ position: 'topright' }).addTo(map);
setTimeout(function() {
new L.Hash(map);

View file

@ -172,8 +172,9 @@ module.exports = function(opts, callback) {
return res.status(404).send('Not found');
}
}
data['access_key'] = req.query.key;
data['access_key_query'] = req.query.key ? '?key=' + req.query.key : '';
data['key_query_part'] =
req.query.key ? 'key=' + req.query.key + '&amp;' : '';
data['key_query'] = req.query.key ? '?key=' + req.query.key : '';
return res.status(200).send(compiled(data));
});
});