update Mi 29. Apr 16:31:01 CEST 2020
This commit is contained in:
parent
d290b4fee1
commit
1e42f82ea6
@ -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
|
|
||||||
|
|||||||
@ -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;
|
||||||
|
|||||||
@ -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
|
||||||
|
|||||||
@ -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
|
||||||
|
|||||||
@ -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');
|
||||||
|
|||||||
@ -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
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -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
|
||||||
|
|
||||||
|
|||||||
@ -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
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user