16 Commits

Author SHA1 Message Date
788f4fa091 add favicon.ico 2021-10-26 22:05:06 +02:00
7341982716 add language auto-negotiation 2021-10-26 22:04:50 +02:00
c022aa318c update Dockerfile and nginx config 2021-10-22 23:19:22 +02:00
0fa012c95d add nginx.conf
default nginx.conf form standard docker container
2021-10-21 23:13:00 +02:00
7e7f7d59a0 using mapquest leaflet sdk 2021-10-18 12:44:04 +02:00
60c7e0ef09 Merge branch 'develop' into feature/mapquest 2021-10-18 11:27:24 +02:00
93c15d8640 add Dockerfile for simple local testing
usage:
docker build -t seisobs-webapp:dev .
docker run --name seisobs-map -d -p 8080:80 seisobs-webapp:dev
2021-10-18 11:27:01 +02:00
2e5e998d8a added mapquest baselayer option
uses API key registered to https://araidne.geophysik.ruhr-uni-bochum.de/map/
2021-10-18 10:58:32 +02:00
ecdeaecfde Merge branch 'develop' into feature/mapquest 2021-10-18 10:20:37 +02:00
137b4a2761 fixing broken TopPlus baselayer 2021-10-18 10:18:21 +02:00
5989af8ce1 Merge branch 'hotfix/r20211017.2' into develop 2021-10-17 15:47:16 +02:00
a659f47a87 hotfix-20211017.2: broken default basemap
fixed borken default basemap
decrease default minMag to 0.7
2021-10-17 15:46:39 +02:00
6576b0a2b5 load mapquest leaflet scripts w/ api key 2021-10-17 15:13:17 +02:00
b585e447f0 Merge branch 'hotfix/r20211017.1' into develop 2021-10-17 15:09:02 +02:00
723ec43eee Merge remote-tracking branch 'origin/develop' into develop 2021-10-17 13:32:41 +02:00
9c3564f9ab Merge branch 'release/r20211017' into develop 2021-10-17 13:28:50 +02:00
15 changed files with 256 additions and 32 deletions

1
.gitignore vendored
View File

@@ -47,6 +47,5 @@ www/geolocation.js
www/geolocationTable.js
www/stations.xml
www/index.html
www/favicon.ico
scripts/*.json
scripts/*.xml

12
Dockerfile Normal file
View File

@@ -0,0 +1,12 @@
FROM nginx:alpine
# set labels
LABEL org.opencontainers.image.authors="kasper.fischer@rub.de"
# copy nginx config files
COPY nginx/nginx.conf /etc/nginx/nginx.conf
COPY nginx/mime.types /etc/nginx/mime.types
COPY nginx/default.conf /etc/nginx/conf.d/default.conf
# copy webpage content
COPY www /usr/share/nginx/html

60
nginx/default.conf Normal file
View File

@@ -0,0 +1,60 @@
server {
listen 80;
listen [::]:80;
server_name localhost;
#charset koi8-r;
#access_log /var/log/nginx/host.access.log main;
set $first_language $http_accept_language;
if ($http_accept_language ~* '^(.+?),') {
set $first_language $1;
}
set $language_suffix 'en';
if ($first_language ~* 'de') {
set $language_suffix 'de';
}
location / {
root /usr/share/nginx/html;
index index.html.$language_suffix index.htm.$language_suffix index.html index.htm
try_files $uri.$language_suffix $uri $uri.html.$language_suffix $uri.html $uri.htm.$language_suffix $uri.htm;
}
#location / {
# root /usr/share/nginx/html;
# index index.html index.htm;
#}
#error_page 404 /404.html;
# redirect server error pages to the static page /50x.html
#
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
# proxy the PHP scripts to Apache listening on 127.0.0.1:80
#
#location ~ \.php$ {
# proxy_pass http://127.0.0.1;
#}
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
#
#location ~ \.php$ {
# root html;
# fastcgi_pass 127.0.0.1:9000;
# fastcgi_index index.php;
# fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
# include fastcgi_params;
#}
# deny access to .htaccess files, if Apache's document root
# concurs with nginx's one
#
#location ~ /\.ht {
# deny all;
#}
}

98
nginx/mime.types Normal file
View File

@@ -0,0 +1,98 @@
types {
text/html html htm shtml de en;
text/css css;
text/xml xml;
image/gif gif;
image/jpeg jpeg jpg;
application/javascript js;
application/atom+xml atom;
application/rss+xml rss;
text/mathml mml;
text/plain txt;
text/vnd.sun.j2me.app-descriptor jad;
text/vnd.wap.wml wml;
text/x-component htc;
image/png png;
image/svg+xml svg svgz;
image/tiff tif tiff;
image/vnd.wap.wbmp wbmp;
image/webp webp;
image/x-icon ico;
image/x-jng jng;
image/x-ms-bmp bmp;
font/woff woff;
font/woff2 woff2;
application/java-archive jar war ear;
application/json json;
application/mac-binhex40 hqx;
application/msword doc;
application/pdf pdf;
application/postscript ps eps ai;
application/rtf rtf;
application/vnd.apple.mpegurl m3u8;
application/vnd.google-earth.kml+xml kml;
application/vnd.google-earth.kmz kmz;
application/vnd.ms-excel xls;
application/vnd.ms-fontobject eot;
application/vnd.ms-powerpoint ppt;
application/vnd.oasis.opendocument.graphics odg;
application/vnd.oasis.opendocument.presentation odp;
application/vnd.oasis.opendocument.spreadsheet ods;
application/vnd.oasis.opendocument.text odt;
application/vnd.openxmlformats-officedocument.presentationml.presentation
pptx;
application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
xlsx;
application/vnd.openxmlformats-officedocument.wordprocessingml.document
docx;
application/vnd.wap.wmlc wmlc;
application/wasm wasm;
application/x-7z-compressed 7z;
application/x-cocoa cco;
application/x-java-archive-diff jardiff;
application/x-java-jnlp-file jnlp;
application/x-makeself run;
application/x-perl pl pm;
application/x-pilot prc pdb;
application/x-rar-compressed rar;
application/x-redhat-package-manager rpm;
application/x-sea sea;
application/x-shockwave-flash swf;
application/x-stuffit sit;
application/x-tcl tcl tk;
application/x-x509-ca-cert der pem crt;
application/x-xpinstall xpi;
application/xhtml+xml xhtml;
application/xspf+xml xspf;
application/zip zip;
application/octet-stream bin exe dll;
application/octet-stream deb;
application/octet-stream dmg;
application/octet-stream iso img;
application/octet-stream msi msp msm;
audio/midi mid midi kar;
audio/mpeg mp3;
audio/ogg ogg;
audio/x-m4a m4a;
audio/x-realaudio ra;
video/3gpp 3gpp 3gp;
video/mp2t ts;
video/mp4 mp4;
video/mpeg mpeg mpg;
video/quicktime mov;
video/webm webm;
video/x-flv flv;
video/x-m4v m4v;
video/x-mng mng;
video/x-ms-asf asx asf;
video/x-ms-wmv wmv;
video/x-msvideo avi;
}

32
nginx/nginx.conf Normal file
View File

@@ -0,0 +1,32 @@
user nginx;
worker_processes 1;
error_log /var/log/nginx/error.log warn;
pid /var/run/nginx.pid;
events {
worker_connections 1024;
}
http {
include /etc/nginx/mime.types;
default_type application/octet-stream;
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
access_log /var/log/nginx/access.log main;
sendfile on;
#tcp_nopush on;
keepalive_timeout 65;
#gzip on;
include /etc/nginx/conf.d/*.conf;
}

View File

@@ -19,7 +19,7 @@
You should have received a copy of the GNU General Public License along
with this program. If not, see http://www.gnu.org/licenses/.
Version r20211017.1 (2021-10-17)
Version r20211017.2 (2021-10-17)
*/
/* adding row(s) to a table and format date strings afterwards */

View File

@@ -19,7 +19,7 @@
You should have received a copy of the GNU General Public License along
with this program. If not, see http://www.gnu.org/licenses/.
Version r20211017.1 (2021-10-17)
Version r20211017.2 (2021-10-17)
*/
/* adding row(s) to a table and format date strings afterwards */

BIN
www/favicon.ico Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 318 B

View File

@@ -1,5 +1,5 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Transitional//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd'>
<!-- r20211017.1 (2021-10-17) -->
<!-- Version VVVVV -->
<html xmlns='http://www.w3.org/1999/xhtml' xml:lang='de' lang='de'>
<head>
<meta http-equiv="content-type" content="text/html;charset=UTF-8" />
@@ -35,7 +35,9 @@
<script src="https://cdnjs.cloudflare.com/ajax/libs/leaflet-dvf/0.3.1/leaflet-dvf.markers.min.js" integrity="sha512-R/iucaxFnDFUTdZRxUvxzc+sypDQhqnxInBmNjgGE0RaiMl/ektVB1wFS/L0xDZmLFPpEGR0Kw3GEBgtQNFHyg==" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/leaflet-providers/1.10.1/leaflet-providers.min.js" integrity="sha512-Ifxj89Ujg72gC/psKB9ystryRYiopmDud2EmNTKC9kz192aQwDKVK1FzWsyPc37tgU0UmRQlNnBM++ZnwIXJ9Q==" crossorigin="anonymous"></script>
<script src="https://cdn.jsdelivr.net/npm/leaflet.browser.print@1.0.5/dist/leaflet.browser.print.min.js" integrity="sha256-1MQvHEnVXSKwR+XIVswRSBla/B5ohkp5+HJtritIkgE=" crossorigin="anonymous"></script>
<script src="https://www.mapquestapi.com/sdk/leaflet/v2.2/mq-map.js?key=RPOPuz3lA2GGBtVpEU0ugxtVoGba53Dt"></script>
<!-- Map, Events & Stations -->
<script type="text/javascript" src="misc.js"></script>
<script type="text/javascript" src="geolocation.js"></script>

View File

@@ -1,5 +1,5 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Transitional//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd'>
<!-- r20211017.1 (2021-10-17) -->
<!-- Version VVVVV -->
<html xmlns='http://www.w3.org/1999/xhtml' xml:lang='de' lang='de'>
<head>
<meta http-equiv="content-type" content="text/html;charset=UTF-8" />
@@ -35,7 +35,9 @@
<script src="https://cdnjs.cloudflare.com/ajax/libs/leaflet-dvf/0.3.1/leaflet-dvf.markers.min.js" integrity="sha512-R/iucaxFnDFUTdZRxUvxzc+sypDQhqnxInBmNjgGE0RaiMl/ektVB1wFS/L0xDZmLFPpEGR0Kw3GEBgtQNFHyg==" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/leaflet-providers/1.10.1/leaflet-providers.min.js" integrity="sha512-Ifxj89Ujg72gC/psKB9ystryRYiopmDud2EmNTKC9kz192aQwDKVK1FzWsyPc37tgU0UmRQlNnBM++ZnwIXJ9Q==" crossorigin="anonymous"></script>
<script src="https://cdn.jsdelivr.net/npm/leaflet.browser.print@1.0.5/dist/leaflet.browser.print.min.js" integrity="sha256-1MQvHEnVXSKwR+XIVswRSBla/B5ohkp5+HJtritIkgE=" crossorigin="anonymous"></script>
<script src="https://www.mapquestapi.com/sdk/leaflet/v2.2/mq-map.js?key=RPOPuz3lA2GGBtVpEU0ugxtVoGba53Dt"></script>
<!-- Map, Events & Stations -->
<script type="text/javascript" src="misc.js"></script>
<script type="text/javascript" src="geolocation.js"></script>
@@ -154,7 +156,9 @@
<p class="table-caption">Download as <a id="stations-csv-link" href="link" download="stations.csv">CSV file</a>.</p>
</div>
<!-- More -->
<div class="tab" id="moretab"><!--include virtual="more.html.de" --></div>
<div class="tab more_de" id="moretab">
<p>Loading text ...</p>
</div>
<!-- Info -->
<div class="tab" id="infotab">
<div id="infoaccordion">

View File

@@ -19,7 +19,7 @@
You should have received a copy of the GNU General Public License along
with this program. If not, see https://www.gnu.org/licenses/.
Version r20211017.1 (2021-10-17)
Version VVVVV
*/
/* add station marker */
@@ -139,10 +139,14 @@ function initMapLink() {
**********************************************************************/
$(document).ready(function() {
// create a map in the "map" div, set the view to a given place and zoom
map = L.map('map', { zoomControl: false, worldCopyJump: true }).setView(config['map']['centerDefault'], config['map']['zoomDefault']);
// create baselayer
map = L.map('map', {
center: config['map']['centerDefault'],
zoom: config['map']['zoomDefault'],
zoomControl: false,
worldCopyJump: true
});
// change baselayer if mapquest is not requested
switch ( config['map']['baselayer'] ) {
case 'esrigray': // add ESRI Grayscale World Map (neither city nor road names)
L.tileLayer.provider('Esri.WorldGrayCanvas').addTo(map);
@@ -153,14 +157,18 @@ $(document).ready(function() {
case 'opentopo': // add OpenTopoMap tile layer
L.tileLayer.provider('OpenTopoMap').addTo(map);
break;
case 'osmde': // add OpenStreetMap.DE tile layer, default
L.tileLayer.provider('OpenStreetMap.DE').addTo(map);
break;
case 'mapnik': // add OpenStreetMap.Mapni tile layer
case 'mapnik': // add OpenStreetMap.Mapnik tile layer
L.tileLayer.provider('OpenStreetMap.Mapnik').addTo(map);
break;
case 'topplus': // add TopPlus tile layer (https://gdz.bkg.bund.de/index.php/default/webdienste/topplus-produkte/wmts-topplusopen-wmts-topplus-open.html)
L.tileLayer('https://sgx.geodatenzentrum.de/wmts_topplus_open/tile/1.0.0/web/default/WEBMERCATOR/{z}/{y}/{x}.png',
{attribution: '&copy; Bundesamt für Kartographie und Geodäsie ('+jahr+'), Datenquellen: <a href="http://sg.geodatenzentrum.de/web_public/Datenquellen_TopPlus_Open.pdf">Geodatenzentrum</a>'}).addTo(map);
break;
case 'mapquest':
MQ.mapLayer().addTo(map);
break;
default: // use OpenStreetMap.DE as default
L.tileLayer.provider(config['map']['baselayer']).addTo(map);
L.tileLayer.provider('OpenStreetMap.DE').addTo(map);
};
// add controls

View File

@@ -19,7 +19,7 @@
You should have received a copy of the GNU General Public License along
with this program. If not, see https://www.gnu.org/licenses/.
Version r20211017.1 (2021-10-17)
Version VVVVV
*/
/* add station marker */
@@ -139,11 +139,14 @@ function initMapLink() {
**********************************************************************/
$(document).ready(function() {
// create a map in the "map" div, set the view to a given place and zoom
map = L.map('map', { zoomControl: false, worldCopyJump: true }).setView(config['map']['centerDefault'], config['map']['zoomDefault']);
map = L.map('map', {
center: config['map']['centerDefault'],
zoom: config['map']['zoomDefault'],
zoomControl: false,
worldCopyJump: true
});
// create baselayer
// change baselayer if mapquest is not requested
switch ( config['map']['baselayer'] ) {
case 'esrigray': // add ESRI Grayscale World Map (neither city nor road names)
L.tileLayer.provider('Esri.WorldGrayCanvas').addTo(map);
@@ -154,15 +157,20 @@ $(document).ready(function() {
case 'opentopo': // add OpenTopoMap tile layer
L.tileLayer.provider('OpenTopoMap').addTo(map);
break;
case 'osmde': // add OpenStreetMap.DE tile layer, default
L.tileLayer.provider('OpenStreetMap.DE').addTo(map);
break;
case 'mapnik': // add OpenStreetMap.Mapni tile layer
case 'mapnik': // add OpenStreetMap.Mapnik tile layer
L.tileLayer.provider('OpenStreetMap.Mapnik').addTo(map);
break;
case 'topplus': // add TopPlus tile layer (https://gdz.bkg.bund.de/index.php/default/webdienste/topplus-produkte/wmts-topplusopen-wmts-topplus-open.html)
L.tileLayer('https://sgx.geodatenzentrum.de/wmts_topplus_open/tile/1.0.0/web/default/WEBMERCATOR/{z}/{y}/{x}.png',
{attribution: '&copy; Federal Agency for Cartography and Geodesy ('+jahr+'), Datasource: <a href="http://sg.geodatenzentrum.de/web_public/Datenquellen_TopPlus_Open.pdf">Geodatenzentrum</a>'}).addTo(map);
break;
case 'mapquest':
MQ.mapLayer().addTo(map);
break;
default: // use OpenStreetMap.DE as default
L.tileLayer.provider(config['map']['baselayer']).addTo(map);
L.tileLayer.provider('OpenStreetMap.DE').addTo(map);
};
// add controls
new L.Control.Zoom({ position: 'topright' }).addTo(map);
new L.control.scale({position: 'bottomright', imperial: false}).addTo(map);

View File

@@ -19,7 +19,7 @@
You should have received a copy of the GNU General Public License along
with this program. If not, see http://www.gnu.org/licenses/.
Version r20211017.1 (2021-10-17)
Version VVVVV
*/
/* calculate marker radius from magnitude
@@ -81,6 +81,7 @@ function parseQueryString() {
}
/* create global vars */
var jahr = new Date().getFullYear();
var map;
var openMarkerID;
var eventTable = {};
@@ -101,7 +102,7 @@ var config = {
markerOpacity: 0.4,
markerColor: 'blue',
markerColorH: 'red',
minMag: 1.2,
minMag: 0.7,
minMagDelta: 0.1,
typeWhitelist: ['earthquake', 'induced or triggered event', 'controlled explosion'],
// typeWhitelist: ['earthquake', 'induced or triggered event', 'controlled explosion', 'nuclear explosion'],

View File

@@ -19,7 +19,7 @@
You should have received a copy of the GNU General Public License along
with this program. If not, see http://www.gnu.org/licenses/.
Version r20211017.1 (2021-10-17)
Version r20211017.2 (2021-10-17)
*/
/* Load the stations using ajax */

View File

@@ -19,7 +19,7 @@
You should have received a copy of the GNU General Public License along
with this program. If not, see http://www.gnu.org/licenses/.
Version r20211017.1 (2021-10-17)
Version r20211017.2 (2021-10-17)
*/
/* Load the stations using ajax */