update Mi 29. Apr 16:31:01 CEST 2020

This commit is contained in:
Robert Richter 2020-04-29 16:31:01 +02:00
parent d290b4fee1
commit 1e42f82ea6
8 changed files with 19 additions and 26 deletions

View File

@ -19,10 +19,16 @@ const twit = require('twit');
const uuidv4 = require('uuid/v4'); const uuidv4 = require('uuid/v4');
const turf = require('@turf/turf'); const turf = require('@turf/turf');
// Basis-Konfiguration laden
var app_cfg = require('./server/app_cfg.js');
// Express-Einstellungen // Express-Einstellungen
app.set('views', path.join(__dirname, 'views')); app.set('views', path.join(__dirname, 'views'));
app.locals.basedir = app.get('views'); app.locals.basedir = app.get('views');
app.set('view engine', 'pug'); app.set('view engine', 'pug');
if (!app_cfg.global.development) {
app.set('view cache', true);
};
app.use(favicon(path.join(__dirname, 'public', 'favicon.ico'))); app.use(favicon(path.join(__dirname, 'public', 'favicon.ico')));
app.use(express.static(path.join(__dirname, 'public'))); app.use(express.static(path.join(__dirname, 'public')));
app.use(bodyParser.json()); app.use(bodyParser.json());
@ -31,7 +37,6 @@ app.use(bodyParser.urlencoded({
})); }));
// Scripte einbinden // Scripte einbinden
var app_cfg = require('./server/app_cfg.js');
var sql_cfg = require('./server/sql_cfg')(fs, bcrypt, app_cfg); var sql_cfg = require('./server/sql_cfg')(fs, bcrypt, app_cfg);
var sql = require('./server/sql_qry')(sql_cfg, uuidv4, turf, app_cfg); var sql = require('./server/sql_qry')(sql_cfg, uuidv4, turf, app_cfg);
var tw = require('./server/twitter')(twit, uuidv4, app_cfg); var tw = require('./server/twitter')(twit, uuidv4, app_cfg);
@ -66,5 +71,3 @@ http.createServer(function(req, res) {
res.end(); res.end();
}; };
}).listen(app_cfg.global.http_port); }).listen(app_cfg.global.http_port);
// TODO: auf HTTPS mit TLS1.2 umstellen, inkl. WSS

View File

@ -32,6 +32,4 @@ app_cfg.remote = {
jwt_secret: 'asdfwert1234567890#' jwt_secret: 'asdfwert1234567890#'
}; };
remoteapi: 'http://localhost:8078/api',
module.exports = app_cfg; module.exports = app_cfg;

View File

@ -385,6 +385,7 @@ module.exports = function(app, sql, uuidv4, app_cfg, passport, auth, waip, udp)
// error handler // error handler
app.use(function(err, req, res, next) { app.use(function(err, req, res, next) {
// set locals, only providing error in development // set locals, only providing error in development
// TODO: Development Modus abfangen
res.locals.message = err.message; res.locals.message = err.message;
res.locals.error = req.app.get('env') === 'development' ? err : {}; res.locals.error = req.app.get('env') === 'development' ? err : {};
// render the error page // render the error page

View File

@ -534,7 +534,7 @@ module.exports = function (db, uuidv4, turf, app_cfg) {
}; };
function db_get_active_waips(callback) { function db_get_active_waips(callback) {
db.all(`select we.uuid, we.einsatzart, we.stichwort, we.ort, we.ortsteil, db.all(`select we.uuid, we.einsatzart, we.stichwort, we.ort, we.ortsteil, we.wgs84_area,
GROUP_concat(DISTINCT substr( wa.nr_wache, 0, 3 )) a, GROUP_concat(DISTINCT substr( wa.nr_wache, 0, 3 )) a,
GROUP_concat(DISTINCT substr( wa.nr_wache, 0, 5 )) b, GROUP_concat(DISTINCT substr( wa.nr_wache, 0, 5 )) b,
GROUP_concat(DISTINCT wa.nr_wache) c GROUP_concat(DISTINCT wa.nr_wache) c

View File

@ -91,8 +91,7 @@ module.exports = function (io, sql, tw, async, app_cfg) {
if (rmld_obj) { if (rmld_obj) {
// Rückmeldung an Clients/Räume senden // Rückmeldung an Clients/Räume senden
socket_rooms.forEach(function (rooms) { socket_rooms.forEach(function (rooms) {
var nsp_waip = io.of('/waip'); io.of('/waip').to(rooms.room).emit('io.response', rmld_obj);
nsp_waip.to(rooms.room).emit('io.response', rmld_obj);
sql.db_log('RMLD', 'Rückmeldung ' + rmld_uuid + ' für den Einsatz mit der ID ' + waip_id + ' an Wache ' + rooms.room + ' gesendet.'); sql.db_log('RMLD', 'Rückmeldung ' + rmld_uuid + ' für den Einsatz mit der ID ' + waip_id + ' an Wache ' + rooms.room + ' gesendet.');
sql.db_log('DEBUG', 'Rückmeldung JSON: ' + JSON.stringify(rmld_obj)); sql.db_log('DEBUG', 'Rückmeldung JSON: ' + JSON.stringify(rmld_obj));
}); });
@ -236,18 +235,7 @@ module.exports = function (io, sql, tw, async, app_cfg) {
sql.db_get_sockets_to_standby(function (socket_ids) { sql.db_get_sockets_to_standby(function (socket_ids) {
if (socket_ids) { if (socket_ids) {
socket_ids.forEach(function (row) { socket_ids.forEach(function (row) {
//var socket = io.sockets.connected[row.socket_id]; var socket = io.of('/waip').connected[row.socket_id];
var nsp_waip = io.of('/waip');
console.log(JSON.stringify(row));
console.log(nsp_waip.connected[row.socket_id]);
var socket = nsp_waip.connected[row.socket_id];
//nsp_waip.to(rooms.room).emit('io.response', rmld_obj);
//io.of('/waip').to(row.socket_id).emit('io.standby', null);
//io.of('/waip').to(row.socket_id).emit('io.stopaudio', null);
socket.emit('io.standby', null); socket.emit('io.standby', null);
socket.emit('io.stopaudio', null); socket.emit('io.stopaudio', null);
sql.db_log('WAIP', 'Standby an Socket ' + socket.id + ' gesendet'); sql.db_log('WAIP', 'Standby an Socket ' + socket.id + ' gesendet');

View File

@ -307,5 +307,6 @@ style(type='text/css').
h3.list-group-item.flex-fill 0 FK h3.list-group-item.flex-fill 0 FK
h3.list-group-item.list-group-item-light.flex-fill.text-dark 0 AGT h3.list-group-item.list-group-item-light.flex-fill.text-dark 0 AGT
//button#rueckmeldung.btn.btn-danger.btn-lg.btn-block.ion-md-paper-plane(type='button') Rückmeldung senden //button#rueckmeldung.btn.btn-danger.btn-lg.btn-block.ion-md-paper-plane(type='button') Rückmeldung senden
// TODO: zeitstrahl der den Ablauf anzeigt

View File

@ -8,7 +8,7 @@ block content
.card.bg-dark .card.bg-dark
.card-body.text-center.text-muted .card-body.text-center.text-muted
h3 - wählen Sie ein Dashboard - h3 - wählen Sie ein Dashboard -
each val in dataSet each val, index in dataSet
.col-12.col-xl-6.d-flex.align-self-stretch.p-3 .col-12.col-xl-6.d-flex.align-self-stretch.p-3
.card.w-100 .card.w-100
.card-header .card-header
@ -24,9 +24,11 @@ block content
default default
h5.font-weight-bold.ion-md-information-circle= ' ' + val.einsatzart + ' - ' + val.stichwort h5.font-weight-bold.ion-md-information-circle= ' ' + val.einsatzart + ' - ' + val.stichwort
.card-body.d-flex.justify-content-between .card-body.d-flex.justify-content-between
.h-100.rounded( id='map' + val.uuid )
if val.ortsteil if val.ortsteil
a= val.ort + ', ' + val.ortsteil a= val.ort + ', ' + val.ortsteil
else else
p= val.ort p= val.ort
.card-footer.text-right .card-footer.text-right
a.btn.btn-primary.mx-2.ion-md-arrow-round-forward(href='/dbrd/' + val.uuid, role='button') Dashboard aufrufen a.btn.btn-primary.mx-2.ion-md-arrow-round-forward(href='/dbrd/' + val.uuid, role='button') Dashboard aufrufen

View File

@ -29,15 +29,15 @@ block content
a.text-muted Sie sind Administrator und haben somit vollständigen Zugriff auf #[a(href="/waip/0") alle] Wachalarme a.text-muted Sie sind Administrator und haben somit vollständigen Zugriff auf #[a(href="/waip/0") alle] Wachalarme
else else
a(href="/waip/" + val)= val a(href="/waip/" + val)= val
.col-12.col-xl-6.d-flex.align-self-stretch.p-3 .col-12.d-flex.align-self-stretch.p-3
.card.border-success.w-100.h-100 .card.border-success.w-100.h-100
.card-header .card-header
h1.text-success Alle Wachalarme h1.text-success Alle Wachalarme
.card-body .card-body
p.text-muted Zeigt Wachalarme aller Wachen an. p.text-muted Zeigt Wachalarme aller Wachen an.
.card-footer.text-right .card-footer.text-right
a.btn.btn-info.ion-md-arrow-round-forward(href='/waip/0', role='button') alle anzeigen a.btn.btn-success.ion-md-arrow-round-forward(href='/waip/0', role='button') alle anzeigen
.col-12.col-xl-6.d-flex.align-self-stretch.p-3 .col-12.col-xl-4.d-flex.align-self-stretch.p-3
.card.w-100.h-100 .card.w-100.h-100
.card-header .card-header
h1.text-info Alarmmonitor Wache h1.text-info Alarmmonitor Wache
@ -51,7 +51,7 @@ block content
each item in list_wachen each item in list_wachen
if item.typ == 'wache' if item.typ == 'wache'
a.dropdown-item(href='/waip/'+ item.nr)= item.name a.dropdown-item(href='/waip/'+ item.nr)= item.name
.col-12.col-xl-6.d-flex.align-self-stretch.p-3 .col-12.col-xl-4.d-flex.align-self-stretch.p-3
.card.w-100.h-100 .card.w-100.h-100
.card-header .card-header
h1.text-info Alarmmonitor Träger h1.text-info Alarmmonitor Träger
@ -65,7 +65,7 @@ block content
each item in list_wachen each item in list_wachen
if item.typ == 'traeger' if item.typ == 'traeger'
a.dropdown-item(href='/waip/'+ item.nr)= item.name a.dropdown-item(href='/waip/'+ item.nr)= item.name
.col-12.col-xl-6.d-flex.align-self-stretch.p-3 .col-12.col-xl-4.d-flex.align-self-stretch.p-3
.card.w-100.h-100 .card.w-100.h-100
.card-header .card-header
h1.text-info Alarmmonitor Kreis h1.text-info Alarmmonitor Kreis