Closes #62

parent 4b431646
......@@ -77,6 +77,10 @@
# Zeitmessung starten
$timer = array(array('Skript-Start', microtime(TRUE)));
# Wartungsmodus
$maintenanceMode = FALSE;
$maintenanceMessage = 'Aktuell wird ein Versionsupdate durchgeführt. Danke für Ihre Geduld!';
# ----------------------------------------
# E-Mail-Konfiguration
# ----------------------------------------
......
......@@ -17,6 +17,10 @@
$prog_name = "SecDoc Demosystem";
$prog_url = 'http://localhost/';
# Wartungsmodus
$maintenanceMode = FALSE;
$maintenanceMessage = 'Aktuell wird ein Versionsupdate durchgeführt. Danke für Ihre Geduld!';
# ----------------------------------------
# E-Mail-Konfiguration
# ----------------------------------------
......
......@@ -937,6 +937,11 @@ EOH;
returnError('Es konnte keine DB-Verbindung hergestellt werden! Versuchen Sie es später erneut.');
}
# Im Wartungs Fehler bei schreibenden Funktionen ausgeben
if($maintenanceMode && in_array($action, ['create', 'update', 'finish', 'delete', 'updatecomment', 'gendraftpdf', 'adddocument', 'updatedocument', 'deletedocument'])) {
returnError('Funktion steht im Wartungsmodus nicht zur Verfügung!');
}
# Gewünschte Aktion ausführen
switch($action) {
# Liest alle Verfahren aus, auf die $userId Zugriff hat
......@@ -1094,6 +1099,10 @@ EOH;
returnError('Kein Verfahren mit der angebenen ID konnte gefunden werden oder Sie haben keinen Zugriff darauf!');
}
if($maintenanceMode) {
$proc[0]['Editierbar'] = FALSE;
}
$output['count'] = 1;
$output['data'] = $proc;
$output['success'] = TRUE;
......@@ -1910,6 +1919,8 @@ EOH;
case 'loggedin': {
$output['success'] = TRUE;
$output['maintenance'] = $maintenanceMode;
if($maintenanceMode) $output['maintenanceMessage'] = $maintenanceMessage;
break;
}
......
......@@ -168,6 +168,11 @@ input.customError {
margin-left: 5px !important;
}
.mx-10 {
margin-left: 10px !important;
margin-right: 10px !important;
}
.pointer {
cursor: pointer !important;
}
......
......@@ -454,6 +454,10 @@ $('#logoutLabel').click(() => {
*/
$.getJSON(backendPath + '?action=loggedin' + (debug ? '&debug=true' : '')).done((data) => {
if(data.length !== 0 && data['success']) {
if(data['maintenance']) {
$('#maintenanceAlert').removeClass('hidden');
if(data['maintenanceMessage'] !== '') $('#maintenanceMessage').text(data['maintenanceMessage']);
}
loadSubpage();
}
else {
......
......@@ -84,6 +84,11 @@
<!-- Wizard container -->
<div class="wizard-container">
<div class="card wizard-card" data-color="blue" id="wizard">
<div class="alert alert-danger text-center mx-10 hidden" id="maintenanceAlert">
<h4>Wartungsmodus</h4>
<p>Diese SecDoc-Instanz befindet sich im Wartungsmodus und es sind nur lesende Zugriffe auf gespeicherte Dokumentationen möglich. Es können keine neuen Dokumentationen angelegt oder bestehende Dokumentationen editiert werden.</p>
<p id="maintenanceMessage"></p>
</div>
<form action="/" method="post">
<!-- You can switch " data-color="green" " with one of the next bright colors: "blue", "azure", "orange", "red" -->
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment