Compare commits
53
Commits
user-rights
..
LIVE
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
d6232f6418 | ||
|
|
878b691ab1 | ||
|
|
caf62ea701 | ||
|
|
a7368eb18f | ||
|
|
38adea29cf | ||
|
|
82fe6e85d8 | ||
|
|
f6fbc8404c | ||
|
|
e45fecf6ff | ||
|
|
40c26e625b | ||
|
|
5dce558640 | ||
|
|
ffb6f38af0 | ||
|
|
3e54b917ca | ||
|
|
4756d0586f | ||
|
|
86a1eecd8d | ||
|
|
9dcf0ced19 | ||
|
|
c05f9f721c | ||
|
|
04c89fb676 | ||
|
|
5160bbc5a5 | ||
|
|
e9550b9a05 | ||
|
|
c5aabcf5d1 | ||
|
|
e13ac6c503 | ||
|
|
bcaaac8a19 | ||
|
|
e2ee377e35 | ||
|
|
57813e3309 | ||
|
|
9eb06a3a16 | ||
|
|
a920fe99a8 | ||
|
|
0776ae8dd0 | ||
|
|
21fa9145cb | ||
|
|
c350f4c776 | ||
|
|
fd5f3093c6 | ||
|
|
c47723ec00 | ||
|
|
737ea6e962 | ||
|
|
0e5cdcd725 | ||
|
|
739fda06e7 | ||
|
|
3d170a38d8 | ||
|
|
03febbc877 | ||
|
|
bdc41bbd48 | ||
|
|
1f3e8228d1 | ||
|
|
dccec7642b | ||
|
|
6f74a11a79 | ||
|
|
ea51b1808a | ||
|
|
2eacb68fd6 | ||
|
|
8c53e850c1 | ||
|
|
0d9b9e7b07 | ||
|
|
9b6060d39f | ||
|
|
01d6c69b3e | ||
|
|
7c94592b2c | ||
|
|
883a1fd76f | ||
|
|
dd08ec793a | ||
|
|
24799dffbe | ||
|
|
34f464f442 | ||
|
|
d1464d874f | ||
|
|
8f5a616dd8 |
No files matched your search
@@ -17,6 +17,7 @@ $serviceGroups = array (
|
||||
array (
|
||||
0 => 'home_info',
|
||||
1 => 'links',
|
||||
2 => 'vergabe'
|
||||
),
|
||||
),
|
||||
'Ausbildung' =>
|
||||
@@ -77,6 +78,12 @@ $services = array (
|
||||
'active' => true,
|
||||
'adminOnly' => false,
|
||||
),
|
||||
'vergabe' =>
|
||||
array (
|
||||
'name' => 'Vergabe',
|
||||
'active' => true,
|
||||
'adminOnly' => false,
|
||||
),
|
||||
'print_static' =>
|
||||
array (
|
||||
'name' => 'Berichte Drucken',
|
||||
|
||||
@@ -44,7 +44,7 @@ function db_connect() {
|
||||
]
|
||||
];
|
||||
|
||||
$enviroment = 'vpn';
|
||||
$enviroment = 'live';
|
||||
|
||||
mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
|
||||
|
||||
|
||||
@@ -0,0 +1,3 @@
|
||||
<?php
|
||||
|
||||
session_destroy();
|
||||
@@ -0,0 +1,60 @@
|
||||
<?php
|
||||
include_once __DIR__ . '/../controller/DatabaseController.php';
|
||||
include_once __DIR__ . '/../controller/RoutesController.php';
|
||||
|
||||
$conn = db_connect();
|
||||
$view = $_GET['view'] ?? 'show';
|
||||
$selectedService = $_GET['service'] ?? null;
|
||||
|
||||
// --- LOGIK: Überstunden-Eintrag (Abbau) speichern ---
|
||||
if ($_SERVER['REQUEST_METHOD'] === 'POST' && isset($_POST['add_entry'])) {
|
||||
$was = $_POST['was'];
|
||||
$wer = $_POST['wer'];
|
||||
$wann = $_POST['wann'];
|
||||
$rueckgabe = $_POST['rueckgabe'];
|
||||
|
||||
DatabaseInsert(
|
||||
"Vergabe",
|
||||
"WAS, WER, WANN, RUECKGABE",
|
||||
$was,
|
||||
$wer,
|
||||
$wann,
|
||||
$rueckgabe
|
||||
);
|
||||
|
||||
redirectToWebsite((new getSpecificData())->getReferer());
|
||||
exit;
|
||||
}
|
||||
?>
|
||||
|
||||
<div class="arbeitsberichte-wrapper">
|
||||
<div class="vergabe-form">
|
||||
<form method="POST" class="vergabe-grid">
|
||||
|
||||
<div class="form-group">
|
||||
<label>Wann ausgeliehen</label>
|
||||
<input type="date" name="wann" value="<?= date('Y-m-d') ?>" required>
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<label>Rückgabe</label>
|
||||
<input type="date" name="rueckgabe" value="<?= date('Y-m-d') ?>" required>
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<label>An wen</label>
|
||||
<input type="text" name="wer" placeholder="Name eingeben" required>
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<label>Was</label>
|
||||
<input type="text" name="was" placeholder="Gegenstand eingeben" required>
|
||||
</div>
|
||||
|
||||
<button type="submit" name="add_entry" class="btn-submit-vergabe">
|
||||
💾 Speichern
|
||||
</button>
|
||||
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
@@ -1070,4 +1070,151 @@ select {
|
||||
/* Dark Mode Pfeil */
|
||||
body.dark-mode select {
|
||||
background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg fill='%23ccc' height='20' viewBox='0 0 20 20' width='20' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5 7l5 5 5-5z'/%3E%3C/svg%3E");
|
||||
}
|
||||
|
||||
/* ===== Vergabe Formular ===== */
|
||||
.vergabe-form {
|
||||
background: var(--card-bg);
|
||||
border: 1px solid var(--card-border);
|
||||
border-left: 5px solid var(--btn-bg);
|
||||
border-radius: 10px;
|
||||
padding: 20px;
|
||||
margin-bottom: 25px;
|
||||
box-shadow: 0 4px 10px rgba(0, 0, 0, 0.05);
|
||||
}
|
||||
|
||||
/* Desktop-First Grid Layout */
|
||||
.vergabe-grid {
|
||||
display: grid;
|
||||
/* Nutzt minmax, damit die Datumsfelder auf kleineren Desktop-Monitoren nicht zerquetschen */
|
||||
grid-template-columns: minmax(140px, 1fr) minmax(140px, 1fr) 1.3fr 2fr auto;
|
||||
gap: 15px;
|
||||
align-items: end;
|
||||
}
|
||||
|
||||
.vergabe-grid .form-group {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.vergabe-grid input,
|
||||
.btn-submit-vergabe {
|
||||
width: 100%;
|
||||
/* Wichtig für Responsiveness */
|
||||
padding: 10px 16px;
|
||||
font-size: 15px;
|
||||
border-radius: 5px;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
body.dark-mode input[type="date"] {
|
||||
color-scheme: dark;
|
||||
}
|
||||
|
||||
/* Dedizierter Speicher-Button Style */
|
||||
.btn-submit-vergabe {
|
||||
background: var(--btn-add-bg);
|
||||
color: white;
|
||||
border: none;
|
||||
font-weight: 600;
|
||||
cursor: pointer;
|
||||
height: 43px;
|
||||
/* Gleicht die Höhe der Inputs inklusive Padding/Border perfekt aus */
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
transition: background-color 0.2s ease, transform 0.1s ease;
|
||||
}
|
||||
|
||||
.btn-submit-vergabe:hover {
|
||||
opacity: 0.9;
|
||||
transform: translateY(-1px);
|
||||
}
|
||||
|
||||
.btn-submit-vergabe:active {
|
||||
transform: scale(0.98);
|
||||
}
|
||||
|
||||
/* ===== Mobile Optimierung (Tablets & Smartphones) ===== */
|
||||
@media (max-width: 1024px) {
|
||||
.vergabe-grid {
|
||||
/* Schaltet auf Mobilgeräten in eine saubere 1-spaltige Liste um */
|
||||
grid-template-columns: 1fr;
|
||||
gap: 12px;
|
||||
/* Schafft vertikalen Abstand zwischen den Feldern */
|
||||
}
|
||||
|
||||
.btn-submit-vergabe {
|
||||
margin-top: 5px;
|
||||
height: 48px;
|
||||
/* Größere Touch-Fläche für Smartphones */
|
||||
font-size: 1rem;
|
||||
}
|
||||
}
|
||||
|
||||
/* ===== Globale Mobile Anpassungen ===== */
|
||||
@media (max-width: 768px) {
|
||||
|
||||
/* 1. Haupt-Layout untereinander brechen lassen */
|
||||
.main {
|
||||
flex-direction: column;
|
||||
height: calc(100vh - 60px);
|
||||
/* Behält die feste Gesamthöhe bei */
|
||||
overflow-y: auto;
|
||||
/* Erlaubt das Scrollen der gesamten Seite falls nötig */
|
||||
}
|
||||
|
||||
/* 2. Sidebar nimmt volle Breite ein und passt sich dem Inhalt an */
|
||||
.sidebar {
|
||||
width: 100%;
|
||||
height: auto;
|
||||
/* Keine feste Höhe mehr auf Mobile */
|
||||
border-right: none;
|
||||
border-bottom: 1px solid #333;
|
||||
/* Trennlinie nach unten statt nach rechts */
|
||||
overflow-y: visible;
|
||||
/* Scrollbar hier deaktivieren */
|
||||
}
|
||||
|
||||
/* 3. Inhaltsbereich nimmt den Rest des Platzes ein */
|
||||
.content {
|
||||
width: 100%;
|
||||
height: auto;
|
||||
overflow-y: visible;
|
||||
/* Verhindert doppelte Scrollbalken */
|
||||
padding: 15px 10px;
|
||||
}
|
||||
|
||||
/* 4. Das Vergabe-Formular bricht sauber in eine Spalte um */
|
||||
.vergabe-grid {
|
||||
grid-template-columns: 1fr !important;
|
||||
/* Erzwingt eine Spalte */
|
||||
gap: 12px;
|
||||
}
|
||||
|
||||
/* 5. Inputs und Buttons nehmen die volle Breite der Box ein */
|
||||
.vergabe-grid input,
|
||||
.btn-submit-vergabe,
|
||||
.vergabe-grid button {
|
||||
width: 100% !important;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
/* Optional: Header-Buttons (Logout / Light Mode) für Mobile optimieren, falls sie überlappen */
|
||||
#darkModeToggle,
|
||||
#logoutButton {
|
||||
position: static;
|
||||
/* Entfernt absolute Positionierung im mobilen Header */
|
||||
margin: 5px;
|
||||
padding: 6px 12px;
|
||||
font-size: 0.9rem;
|
||||
}
|
||||
|
||||
header {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
gap: 10px;
|
||||
padding: 10px;
|
||||
height: auto;
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user