Skip to content

Commit 700a3ca

Browse files
committed
supporting print mapzoom and tileswitch function
1 parent 64eb314 commit 700a3ca

File tree

1 file changed

+45
-0
lines changed

1 file changed

+45
-0
lines changed

assets/javascripts/app.js

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -843,6 +843,51 @@ var App = (function ($, publ) {
843843
$("#geom").val(JSON.stringify(geojson.features[0]));
844844
};
845845

846+
publ.getScale = function () {
847+
var resolution = map.getView().getResolution();
848+
var units = map.getView().getProjection().getUnits();
849+
var dpi = 25.4 / 0.28;
850+
var mpu = ol.proj.METERS_PER_UNIT[units];
851+
var inchesPerMeter = 39.37;
852+
return resolution * (mpu * inchesPerMeter * dpi);
853+
};
854+
855+
publ.getBasemapUrl = function () {
856+
var layers = map.getLayers();
857+
if (layers.getLength() === 0) {
858+
console.error("There is no baselayer available!");
859+
return;
860+
}
861+
862+
var index = 0;
863+
var cookie = parseInt(
864+
getCookie("_redmine_gtt_basemap")
865+
);
866+
867+
if (cookie) {
868+
var lid = 0;
869+
// Check if layer ID exists in available layers
870+
layers.forEach(function(layer){
871+
if (cookie === layer.get("lid")) {
872+
lid = cookie;
873+
}
874+
});
875+
876+
// Get selected layer index
877+
layers.forEach(function(layer,idx){
878+
if (lid === layer.get("lid")) {
879+
index = idx;
880+
}
881+
});
882+
}
883+
884+
// Get layer url
885+
var layer = layers.getArray()[index];
886+
var url = layer.getSource().getUrls()[0];
887+
//console.log(url);
888+
return url;
889+
};
890+
846891
function getCookie(cname) {
847892
var name = cname + "=";
848893
var ca = document.cookie.split(';');

0 commit comments

Comments
 (0)