update Di 3. Mär 23:01:01 CET 2020
This commit is contained in:
parent
398b35e12e
commit
c4dc15ccdd
@ -1,5 +1,9 @@
|
|||||||
module.exports = function(app, sql, uuidv4, app_cfg, passport, auth, waip, udp) {
|
module.exports = function(app, sql, uuidv4, app_cfg, passport, auth, waip, udp) {
|
||||||
|
|
||||||
|
/* ########################### */
|
||||||
|
/* ##### Statische Seiten #### */
|
||||||
|
/* ########################### */
|
||||||
|
|
||||||
// Startseite
|
// Startseite
|
||||||
app.get('/', function(req, res) {
|
app.get('/', function(req, res) {
|
||||||
sql.db_list_wachen(function(data) {
|
sql.db_list_wachen(function(data) {
|
||||||
@ -21,6 +25,103 @@ module.exports = function(app, sql, uuidv4, app_cfg, passport, auth, waip, udp)
|
|||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
|
// Ueber die Anwendung
|
||||||
|
app.get('/about', function(req, res) {
|
||||||
|
res.render('about', {
|
||||||
|
public: app_cfg.public,
|
||||||
|
title: 'Über',
|
||||||
|
user: req.user
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
// Impressum
|
||||||
|
app.get('/impressum', function(req, res) {
|
||||||
|
res.render('imprint', {
|
||||||
|
public: app_cfg.public,
|
||||||
|
title: 'Impressum',
|
||||||
|
user: req.user
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
// Datenschutzerklaerung
|
||||||
|
app.get('/datenschutz', function(req, res) {
|
||||||
|
res.render('privacy', {
|
||||||
|
public: app_cfg.public,
|
||||||
|
title: 'Datenschutzerklärung',
|
||||||
|
user: req.user
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
/* ##################### */
|
||||||
|
/* ####### Login ####### */
|
||||||
|
/* ##################### */
|
||||||
|
|
||||||
|
// Loginseite
|
||||||
|
app.get('/login', function(req, res) {
|
||||||
|
res.render('login', {
|
||||||
|
public: app_cfg.public,
|
||||||
|
title: 'Login',
|
||||||
|
user: req.user,
|
||||||
|
error: req.flash('error')
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
// Login-Formular verarbeiten
|
||||||
|
app.post('/login', passport.authenticate('local', {
|
||||||
|
failureRedirect: '/login',
|
||||||
|
failureFlash: 'Login fehlgeschlagen! Bitte prüfen Sie Benutzername und Passwort.'
|
||||||
|
}), function(req, res) {
|
||||||
|
if(req.body.rememberme){
|
||||||
|
// der Benutzer muss sich fuer 5 Jahre nicht anmelden
|
||||||
|
req.session.cookie.maxAge = 5 * 365 * 24 * 60 * 60 * 1000;
|
||||||
|
};
|
||||||
|
res.redirect('/');
|
||||||
|
});
|
||||||
|
|
||||||
|
// Login mit IP verarbeiten
|
||||||
|
app.post('/login_ip', passport.authenticate('ip', {
|
||||||
|
failureRedirect: '/login',
|
||||||
|
failureFlash: 'Login mittels IP-Adresse fehlgeschlagen!'
|
||||||
|
}), function(req, res) {
|
||||||
|
// der Benutzer muss sich fuer 5 Jahre nicht anmelden
|
||||||
|
req.session.cookie.maxAge = 5 * 365 * 24 * 60 * 60 * 1000;
|
||||||
|
res.redirect('/');
|
||||||
|
});
|
||||||
|
|
||||||
|
// Logout verarbeiten
|
||||||
|
app.post('/logout', function(req, res) {
|
||||||
|
req.session.destroy(function(err) {
|
||||||
|
res.redirect('/');
|
||||||
|
})
|
||||||
|
});
|
||||||
|
|
||||||
|
/* ######################### */
|
||||||
|
/* ##### Einstellungen ##### */
|
||||||
|
/* ######################### */
|
||||||
|
|
||||||
|
// Einstellungen anzeigen
|
||||||
|
app.get('/config', auth.ensureAuthenticated, function(req, res) {
|
||||||
|
sql.db_get_userconfig(req.user.id, function(data) {
|
||||||
|
res.render('user/user_config', {
|
||||||
|
public: app_cfg.public,
|
||||||
|
title: 'Einstellungen',
|
||||||
|
user: req.user,
|
||||||
|
reset_counter: data
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
// Einstellungen speichern
|
||||||
|
app.post('/config', auth.ensureAuthenticated, function(req, res) {
|
||||||
|
sql.db_set_userconfig(req.user.id, req.body.set_reset_counter, function(data) {
|
||||||
|
res.redirect('/config');
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
/* ##################### */
|
||||||
|
/* ##### Wachalarm ##### */
|
||||||
|
/* ##################### */
|
||||||
|
|
||||||
// /waip nach /waip/0 umleiten
|
// /waip nach /waip/0 umleiten
|
||||||
app.get('/waip', function(req, res) {
|
app.get('/waip', function(req, res) {
|
||||||
res.redirect('/waip/0');
|
res.redirect('/waip/0');
|
||||||
@ -47,6 +148,10 @@ module.exports = function(app, sql, uuidv4, app_cfg, passport, auth, waip, udp)
|
|||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
|
/* ######################## */
|
||||||
|
/* ##### Rueckmeldung ##### */
|
||||||
|
/* ######################## */
|
||||||
|
|
||||||
// Rueckmeldungs-Aufruf ohne waip_uuid eblehnen
|
// Rueckmeldungs-Aufruf ohne waip_uuid eblehnen
|
||||||
app.get('/rmld', function(req, res, next) {
|
app.get('/rmld', function(req, res, next) {
|
||||||
var err = new Error('Rückmeldungen sind nur mit gültiger Einsatz-ID erlaubt!');
|
var err = new Error('Rückmeldungen sind nur mit gültiger Einsatz-ID erlaubt!');
|
||||||
@ -69,7 +174,8 @@ module.exports = function(app, sql, uuidv4, app_cfg, passport, auth, waip, udp)
|
|||||||
title: 'Einsatz-Rückmeldung',
|
title: 'Einsatz-Rückmeldung',
|
||||||
user: req.user,
|
user: req.user,
|
||||||
einsatzdaten: einsatzdaten,
|
einsatzdaten: einsatzdaten,
|
||||||
modaldata: req.query.modal
|
error: req.flash("errorMessage"),
|
||||||
|
success: req.flash("successMessage")
|
||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
var err = new Error('Der angefragte Einsatz ist nicht - oder nicht mehr - vorhanden!');
|
var err = new Error('Der angefragte Einsatz ist nicht - oder nicht mehr - vorhanden!');
|
||||||
@ -85,81 +191,21 @@ module.exports = function(app, sql, uuidv4, app_cfg, passport, auth, waip, udp)
|
|||||||
var rmld_uuid = req.params.rmld_uuid;
|
var rmld_uuid = req.params.rmld_uuid;
|
||||||
sql.db_save_rmld(req.body, function(result){
|
sql.db_save_rmld(req.body, function(result){
|
||||||
if (result) {
|
if (result) {
|
||||||
var string = encodeURIComponent(result);
|
req.flash('successMessage', 'Rückmeldung erfolgreich gesendet, auf zum Einsatz!');
|
||||||
res.redirect('/rmld/' + waip_uuid + '/' + rmld_uuid + '/?modal=' + string);
|
res.redirect('/rmld/' + waip_uuid + '/' + rmld_uuid );
|
||||||
waip.reuckmeldung_verteilen_by_uuid(req.params.rmld_uuid);
|
waip.reuckmeldung_verteilen_by_uuid(req.params.rmld_uuid);
|
||||||
} else {
|
} else {
|
||||||
var err = new Error('Fehler beim senden der Rückmeldung!');
|
req.flash('errorMessage', 'Fehler beim Senden der Rückmeldung!');
|
||||||
err.status = 501;
|
res.redirect('/rmld/' + waip_uuid + '/' + rmld_uuid );
|
||||||
next(err);
|
|
||||||
};
|
};
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
// get /config
|
/* ########################## */
|
||||||
app.get('/config', auth.ensureAuthenticated, function(req, res) {
|
/* ##### Administration ##### */
|
||||||
sql.db_get_userconfig(req.user.id, function(data) {
|
/* ########################## */
|
||||||
res.render('user/user_config', {
|
|
||||||
public: app_cfg.public,
|
|
||||||
title: 'Einstellungen',
|
|
||||||
user: req.user,
|
|
||||||
reset_counter: data
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
app.post('/config', auth.ensureAuthenticated, function(req, res) {
|
// verbundene Clients anzeigen
|
||||||
sql.db_set_userconfig(req.user.id, req.body.set_reset_counter, function(data) {
|
|
||||||
res.redirect('/config');
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
// get /about
|
|
||||||
app.get('/about', function(req, res) {
|
|
||||||
res.render('about', {
|
|
||||||
public: app_cfg.public,
|
|
||||||
title: 'Über',
|
|
||||||
user: req.user
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
// get /uhr
|
|
||||||
app.get('/test_clock', function(req, res) {
|
|
||||||
res.render('tests/test_clock', {
|
|
||||||
public: app_cfg.public,
|
|
||||||
title: 'Test Uhr',
|
|
||||||
user: req.user
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
// get /test_wachalarm
|
|
||||||
app.get('/test_wachalarm', function(req, res) {
|
|
||||||
res.render('tests/test_wachalarm', {
|
|
||||||
public: app_cfg.public,
|
|
||||||
title: 'Test Wachalarm',
|
|
||||||
user: req.user
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
// get /test_rueckmeldung
|
|
||||||
app.get('/test_rueckmeldung', function(req, res) {
|
|
||||||
res.render('tests/test_rueckmeldung', {
|
|
||||||
public: app_cfg.public,
|
|
||||||
title: 'Test Einsatz-Rückmeldung',
|
|
||||||
user: req.user
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
// get /test_dashboard
|
|
||||||
app.get('/test_dashboard', function(req, res) {
|
|
||||||
res.render('tests/test_dashboard', {
|
|
||||||
public: app_cfg.public,
|
|
||||||
title: 'Test Dashboard',
|
|
||||||
user: req.user
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
// get /show_active_user
|
|
||||||
app.get('/adm_show_clients', auth.ensureAdmin, function(req, res) {
|
app.get('/adm_show_clients', auth.ensureAdmin, function(req, res) {
|
||||||
sql.db_get_active_clients(function(data) {
|
sql.db_get_active_clients(function(data) {
|
||||||
res.render('admin/adm_show_clients', {
|
res.render('admin/adm_show_clients', {
|
||||||
@ -171,7 +217,8 @@ module.exports = function(app, sql, uuidv4, app_cfg, passport, auth, waip, udp)
|
|||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
// get /adm_show_missions
|
// laufende Einsaetze anzeigen
|
||||||
|
// TODO: eventuell unter Dashboard oder Startseite anzeigen
|
||||||
app.get('/adm_show_missions', auth.ensureAdmin, function(req, res) {
|
app.get('/adm_show_missions', auth.ensureAdmin, function(req, res) {
|
||||||
sql.db_get_active_waips(function(data) {
|
sql.db_get_active_waips(function(data) {
|
||||||
res.render('admin/adm_show_missions', {
|
res.render('admin/adm_show_missions', {
|
||||||
@ -183,7 +230,7 @@ module.exports = function(app, sql, uuidv4, app_cfg, passport, auth, waip, udp)
|
|||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
// get /show_log
|
// Logdatei
|
||||||
app.get('/adm_show_log', auth.ensureAdmin, function(req, res) {
|
app.get('/adm_show_log', auth.ensureAdmin, function(req, res) {
|
||||||
sql.db_get_log(function(data) {
|
sql.db_get_log(function(data) {
|
||||||
res.render('admin/adm_show_log', {
|
res.render('admin/adm_show_log', {
|
||||||
@ -195,7 +242,7 @@ module.exports = function(app, sql, uuidv4, app_cfg, passport, auth, waip, udp)
|
|||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
// get /test_alert
|
// direkten Alarm ausloesen
|
||||||
app.get('/adm_run_alert', auth.ensureAdmin, function(req, res) {
|
app.get('/adm_run_alert', auth.ensureAdmin, function(req, res) {
|
||||||
res.render('admin/adm_run_alert', {
|
res.render('admin/adm_run_alert', {
|
||||||
public: app_cfg.public,
|
public: app_cfg.public,
|
||||||
@ -209,7 +256,7 @@ module.exports = function(app, sql, uuidv4, app_cfg, passport, auth, waip, udp)
|
|||||||
res.redirect('/adm_run_alert');
|
res.redirect('/adm_run_alert');
|
||||||
});
|
});
|
||||||
|
|
||||||
// get /edit_users
|
// Benutzer editieren
|
||||||
app.get('/adm_edit_users', auth.ensureAdmin, function(req, res) {
|
app.get('/adm_edit_users', auth.ensureAdmin, function(req, res) {
|
||||||
sql.db_get_users(function(data) {
|
sql.db_get_users(function(data) {
|
||||||
res.render('admin/adm_edit_users', {
|
res.render('admin/adm_edit_users', {
|
||||||
@ -217,8 +264,8 @@ module.exports = function(app, sql, uuidv4, app_cfg, passport, auth, waip, udp)
|
|||||||
title: 'Benutzer und Rechte verwalten',
|
title: 'Benutzer und Rechte verwalten',
|
||||||
user: req.user,
|
user: req.user,
|
||||||
users: data,
|
users: data,
|
||||||
error: req.flash("errorMessage"),
|
error: req.flash('errorMessage'),
|
||||||
success: req.flash("successMessage")
|
success: req.flash('successMessage')
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
@ -241,58 +288,51 @@ module.exports = function(app, sql, uuidv4, app_cfg, passport, auth, waip, udp)
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
// get /login
|
/* ###################### */
|
||||||
app.get('/login', function(req, res) {
|
/* ##### Testseiten ##### */
|
||||||
res.render('login', {
|
/* ###################### */
|
||||||
|
|
||||||
|
// Wachalarm-Uhr testen
|
||||||
|
app.get('/test_clock', function(req, res) {
|
||||||
|
res.render('tests/test_clock', {
|
||||||
public: app_cfg.public,
|
public: app_cfg.public,
|
||||||
title: 'Login',
|
title: 'Test Uhr',
|
||||||
user: req.user
|
user: req.user
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
// get /impressum
|
// Alarmmonitor testen
|
||||||
app.get('/impressum', function(req, res) {
|
app.get('/test_wachalarm', function(req, res) {
|
||||||
res.render('imprint', {
|
res.render('tests/test_wachalarm', {
|
||||||
public: app_cfg.public,
|
public: app_cfg.public,
|
||||||
title: 'Impressum',
|
title: 'Test Wachalarm',
|
||||||
user: req.user
|
user: req.user
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
// get /datenschutz
|
// Rueckmeldung testen
|
||||||
app.get('/datenschutz', function(req, res) {
|
app.get('/test_rueckmeldung', function(req, res) {
|
||||||
res.render('privacy', {
|
res.render('tests/test_rueckmeldung', {
|
||||||
public: app_cfg.public,
|
public: app_cfg.public,
|
||||||
title: 'Datenschutzerklärung',
|
title: 'Test Einsatz-Rückmeldung',
|
||||||
user: req.user
|
user: req.user
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
app.post('/login', passport.authenticate('local', {
|
// Dashboard testen
|
||||||
failureRedirect: '/login'
|
app.get('/test_dashboard', function(req, res) {
|
||||||
}), function(req, res) {
|
res.render('tests/test_dashboard', {
|
||||||
if(req.body.rememberme){
|
public: app_cfg.public,
|
||||||
// der Benutzer muss sich fuer 5 Jahre nicht anmelden
|
title: 'Test Dashboard',
|
||||||
req.session.cookie.maxAge = 5 * 365 * 24 * 60 * 60 * 1000;
|
user: req.user
|
||||||
};
|
});
|
||||||
res.redirect('/');
|
|
||||||
});
|
});
|
||||||
|
|
||||||
app.post('/login_ip', passport.authenticate('ip', {
|
/* ######################## */
|
||||||
failureRedirect: '/login'
|
/* ##### Fehlerseiten ##### */
|
||||||
}), function(req, res) {
|
/* ######################## */
|
||||||
// der Benutzer muss sich fuer 5 Jahre nicht anmelden
|
|
||||||
req.session.cookie.maxAge = 5 * 365 * 24 * 60 * 60 * 1000;
|
|
||||||
res.redirect('/');
|
|
||||||
});
|
|
||||||
|
|
||||||
app.post('/logout', function(req, res) {
|
// 404 abfangen und an error handler weiterleiten
|
||||||
req.session.destroy(function(err) {
|
|
||||||
res.redirect('/');
|
|
||||||
})
|
|
||||||
});
|
|
||||||
|
|
||||||
// catch 404 and forward to error handler
|
|
||||||
app.use(function(req, res, next) {
|
app.use(function(req, res, next) {
|
||||||
var err = new Error('Seite nicht gefunden!');
|
var err = new Error('Seite nicht gefunden!');
|
||||||
err.status = 404;
|
err.status = 404;
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user