Display filesizes of the mbtiles
This commit is contained in:
parent
10caaa1e8b
commit
5d940066d9
3 changed files with 18 additions and 4 deletions
|
@ -47,7 +47,7 @@
|
||||||
<div class="sample-img"></div>
|
<div class="sample-img"></div>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
<h3>{{name}}</h3>
|
<h3>{{name}}</h3>
|
||||||
<p>Id: {{@key}} | {{#is_vector}}Vector{{/is_vector}}{{^is_vector}}Raster{{/is_vector}} data | <a href="/data/{{@key}}.json">TileJSON</a></p>
|
<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">TileJSON</a></p>
|
||||||
{{#is_vector}}
|
{{#is_vector}}
|
||||||
<a class="btn" href="/data/{{@key}}/{{viewer_hash}}">X-Ray viewer</a>
|
<a class="btn" href="/data/{{@key}}/{{viewer_hash}}">X-Ray viewer</a>
|
||||||
{{/is_vector}}
|
{{/is_vector}}
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
'use strict';
|
'use strict';
|
||||||
|
|
||||||
var crypto = require('crypto'),
|
var crypto = require('crypto'),
|
||||||
|
fs = require('fs'),
|
||||||
path = require('path');
|
path = require('path');
|
||||||
|
|
||||||
var clone = require('clone'),
|
var clone = require('clone'),
|
||||||
|
@ -12,15 +13,14 @@ var utils = require('./utils');
|
||||||
module.exports = function(options, repo, params, id) {
|
module.exports = function(options, repo, params, id) {
|
||||||
var app = express().disable('x-powered-by');
|
var app = express().disable('x-powered-by');
|
||||||
|
|
||||||
var mbtilesFile = params.mbtiles;
|
var mbtilesFile = path.join(options.paths.mbtiles, params.mbtiles);
|
||||||
var tileJSON = {
|
var tileJSON = {
|
||||||
'tiles': params.domains || options.domains
|
'tiles': params.domains || options.domains
|
||||||
};
|
};
|
||||||
|
|
||||||
repo[id] = tileJSON;
|
repo[id] = tileJSON;
|
||||||
|
|
||||||
var source = new mbtiles(path.join(options.paths.mbtiles, mbtilesFile),
|
var source = new mbtiles(mbtilesFile, function(err) {
|
||||||
function(err) {
|
|
||||||
source.getInfo(function(err, info) {
|
source.getInfo(function(err, info) {
|
||||||
tileJSON['name'] = id;
|
tileJSON['name'] = id;
|
||||||
tileJSON['format'] = 'pbf';
|
tileJSON['format'] = 'pbf';
|
||||||
|
@ -29,6 +29,7 @@ module.exports = function(options, repo, params, id) {
|
||||||
|
|
||||||
tileJSON['tilejson'] = '2.0.0';
|
tileJSON['tilejson'] = '2.0.0';
|
||||||
tileJSON['basename'] = id;
|
tileJSON['basename'] = id;
|
||||||
|
tileJSON['filesize'] = fs.statSync(mbtilesFile)['size'];
|
||||||
|
|
||||||
Object.assign(tileJSON, params.tilejson || {});
|
Object.assign(tileJSON, params.tilejson || {});
|
||||||
utils.fixTileJSONCenter(tileJSON);
|
utils.fixTileJSONCenter(tileJSON);
|
||||||
|
|
|
@ -214,6 +214,19 @@ module.exports = function(opts, callback) {
|
||||||
Math.floor(centerPx[1] / 256) + '.' + data_.format;
|
Math.floor(centerPx[1] / 256) + '.' + data_.format;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if (data_.filesize) {
|
||||||
|
var suffix = 'kB';
|
||||||
|
var size = parseInt(data_.filesize, 10) / 1024;
|
||||||
|
if (size > 1024) {
|
||||||
|
suffix = 'MB';
|
||||||
|
size /= 1024;
|
||||||
|
}
|
||||||
|
if (size > 1024) {
|
||||||
|
suffix = 'GB';
|
||||||
|
size /= 1024;
|
||||||
|
}
|
||||||
|
data_.formatted_filesize = size.toFixed(2) + ' ' + suffix;
|
||||||
|
}
|
||||||
});
|
});
|
||||||
return {
|
return {
|
||||||
styles: styles,
|
styles: styles,
|
||||||
|
|
Loading…
Reference in a new issue