20251213 - refactor + GUI update
@ -1,6 +1,11 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
require_once __DIR__ . '/includes/db_connect.php';
|
require_once __DIR__ . '/includes/db_connect.php';
|
||||||
|
$labels = ["Jan", "Feb", "Mrz", "Apr"];
|
||||||
|
$reiheA = [10, 20, 15, 30];
|
||||||
|
$reiheB = [5, 12, 18, 25];
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
?>
|
?>
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
@ -8,9 +13,47 @@ require_once __DIR__ . '/includes/db_connect.php';
|
|||||||
|
|
||||||
<head>
|
<head>
|
||||||
<link rel="stylesheet" href="style.css">
|
<link rel="stylesheet" href="style.css">
|
||||||
|
<script src="https://cdn.plot.ly/plotly-latest.min.js"></script>
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body>
|
<body>
|
||||||
<h1>Hello World!</h1>
|
<div class="header">
|
||||||
|
<h2 class="seitentitel">
|
||||||
|
Diagramme
|
||||||
|
</h2>
|
||||||
|
<a href="index.php"
|
||||||
|
class="konto_header"
|
||||||
|
id="konto_navigationRechts">
|
||||||
|
<img src="img\home.svg" alt="Home" class="menue">
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
<div id="chart" style="width:600px;height:300px;"></div>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
const labels = <?php echo json_encode($labels); ?>;
|
||||||
|
const reiheA = <?php echo json_encode($reiheA); ?>;
|
||||||
|
const reiheB = <?php echo json_encode($reiheB); ?>;
|
||||||
|
|
||||||
|
const data = [
|
||||||
|
{
|
||||||
|
x: labels,
|
||||||
|
y: reiheA,
|
||||||
|
type: "scatter",
|
||||||
|
mode: "lines",
|
||||||
|
name: "Reihe A"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
x: labels,
|
||||||
|
y: reiheB,
|
||||||
|
type: "scatter",
|
||||||
|
mode: "lines",
|
||||||
|
name: "Reihe B"
|
||||||
|
}
|
||||||
|
];
|
||||||
|
|
||||||
|
Plotly.newPlot("chart", data, {
|
||||||
|
margin: { t: 20 }
|
||||||
|
});
|
||||||
|
</script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
42
fix_edit.php
@ -8,7 +8,7 @@
|
|||||||
|
|
||||||
$kostenfix_id = $_POST['kostenfix_id'];
|
$kostenfix_id = $_POST['kostenfix_id'];
|
||||||
|
|
||||||
$stmt = $pdo->prepare("SELECT kf.id AS kostenfix_id,
|
$stmt = $pdo->query("SELECT kf.id AS kostenfix_id,
|
||||||
kf.beschreibung,
|
kf.beschreibung,
|
||||||
zt.id AS zahlungstag_id,
|
zt.id AS zahlungstag_id,
|
||||||
zm.id AS zahlungsmonate_id,
|
zm.id AS zahlungsmonate_id,
|
||||||
@ -18,15 +18,8 @@
|
|||||||
JOIN zahlungstag zt ON zt.id = kf.zahlungstag_id
|
JOIN zahlungstag zt ON zt.id = kf.zahlungstag_id
|
||||||
JOIN zahlungsmonate zm ON zm.id = kf.zahlungsmonate_id
|
JOIN zahlungsmonate zm ON zm.id = kf.zahlungsmonate_id
|
||||||
JOIN konto k ON k.id = kf.konto_id
|
JOIN konto k ON k.id = kf.konto_id
|
||||||
WHERE kf.id = :kostenfix_id;");
|
WHERE kf.id = $kostenfix_id;");
|
||||||
$stmt->execute(['kostenfix_id' => $kostenfix_id]);
|
$kostenfix = $stmt->fetch(PDO::FETCH_ASSOC);
|
||||||
$kostenfixFetchAll = $stmt->fetchAll(PDO::FETCH_ASSOC);
|
|
||||||
|
|
||||||
if(count($kostenfixFetchAll) > 1) {
|
|
||||||
//TODO FEHLERHANDLING
|
|
||||||
} else {
|
|
||||||
$kostenfix = $kostenfixFetchAll[0];
|
|
||||||
}
|
|
||||||
|
|
||||||
$stmt = $pdo->query("SELECT id, name
|
$stmt = $pdo->query("SELECT id, name
|
||||||
FROM zahlungsmonate
|
FROM zahlungsmonate
|
||||||
@ -54,7 +47,7 @@
|
|||||||
|
|
||||||
<body>
|
<body>
|
||||||
<form method="POST" action="forms/fixkosten.php">
|
<form method="POST" action="forms/fixkosten.php">
|
||||||
<input type="hidden" name="kostenfix_id" value="<?= htmlspecialchars($kostenfix_id) ?>">
|
<input type="hidden" name="kostenfix_id" value="<?= $kostenfix_id ?>">
|
||||||
|
|
||||||
<div class="header">
|
<div class="header">
|
||||||
<button class="header"
|
<button class="header"
|
||||||
@ -62,19 +55,20 @@
|
|||||||
name="fixkosten_submit"
|
name="fixkosten_submit"
|
||||||
value="speichern"
|
value="speichern"
|
||||||
type="submit">
|
type="submit">
|
||||||
<span>speichern</span>
|
<img src="img\speichern.svg" alt="speichern" class="menue">
|
||||||
</button>
|
</button>
|
||||||
<button class="header"
|
<button class="header"
|
||||||
id="navigationMitte"
|
id="navigationMitte"
|
||||||
name="fixkosten_submit"
|
name="fixkosten_submit"
|
||||||
value="löschen"
|
value="löschen"
|
||||||
type="submit">
|
type="submit">
|
||||||
<span>Eintrag löschen</span>
|
<img src="img\löschen.svg" alt="löschen" class="menue">
|
||||||
</button>
|
</button>
|
||||||
<a href="fixkosten.php"
|
<h2 class="seitentitel">
|
||||||
class="header"
|
Fixkosten ändern
|
||||||
id="navigationRechts">
|
</h2>
|
||||||
abbrechen
|
<a href="fixkosten.php" class="header" id="navigationRechts">
|
||||||
|
<img src="img\abbrechen.svg" alt="abbrechen" class="menue">
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@ -87,9 +81,9 @@
|
|||||||
<div class="umsatz_div" id="umsatz_rechts">
|
<div class="umsatz_div" id="umsatz_rechts">
|
||||||
<select name="zahlungsmonate_id" class="fix_select">
|
<select name="zahlungsmonate_id" class="fix_select">
|
||||||
<?php foreach ($zahlungsmonate as $y): ?>
|
<?php foreach ($zahlungsmonate as $y): ?>
|
||||||
<option value="<?= htmlspecialchars($y['id']) ?>"
|
<option value="<?= $y['id'] ?>"
|
||||||
<?= ((isset($data['zahlungsmonate_id']) && $y['id'] == $data['zahlungsmonate_id']) || $y['id'] == $kostenfix['zahlungsmonate_id']) ? 'selected' : '' ?>>
|
<?= ((isset($data['zahlungsmonate_id']) && $y['id'] == $data['zahlungsmonate_id']) || $y['id'] == $kostenfix['zahlungsmonate_id']) ? 'selected' : '' ?>>
|
||||||
<?= htmlspecialchars($y['name']) ?>
|
<?= $y['name'] ?>
|
||||||
</option>
|
</option>
|
||||||
<?php endforeach; ?>
|
<?php endforeach; ?>
|
||||||
</select>
|
</select>
|
||||||
@ -103,9 +97,9 @@
|
|||||||
<div class="umsatz_div" id="umsatz_rechts">
|
<div class="umsatz_div" id="umsatz_rechts">
|
||||||
<select name="zahlungstag_id" class="fix_select">
|
<select name="zahlungstag_id" class="fix_select">
|
||||||
<?php foreach ($zahlungstag as $y): ?>
|
<?php foreach ($zahlungstag as $y): ?>
|
||||||
<option value="<?= htmlspecialchars($y['id']) ?>"
|
<option value="<?= $y['id'] ?>"
|
||||||
<?= ((isset($data['zahlungstag_id']) && $y['id'] == $data['zahlungstag_id']) || $y['id'] == $kostenfix['zahlungstag_id']) ? 'selected' : '' ?>>
|
<?= ((isset($data['zahlungstag_id']) && $y['id'] == $data['zahlungstag_id']) || $y['id'] == $kostenfix['zahlungstag_id']) ? 'selected' : '' ?>>
|
||||||
<?= htmlspecialchars($y['name']) ?>
|
<?= $y['name'] ?>
|
||||||
</option>
|
</option>
|
||||||
<?php endforeach; ?>
|
<?php endforeach; ?>
|
||||||
</select>
|
</select>
|
||||||
@ -119,9 +113,9 @@
|
|||||||
<div class="umsatz_div" id="umsatz_rechts">
|
<div class="umsatz_div" id="umsatz_rechts">
|
||||||
<select name="konto_id" class="umsatz_select">
|
<select name="konto_id" class="umsatz_select">
|
||||||
<?php foreach ($konto as $y): ?>
|
<?php foreach ($konto as $y): ?>
|
||||||
<option value="<?= htmlspecialchars($y['id']) ?>"
|
<option value="<?= $y['id'] ?>"
|
||||||
<?= ((isset($data['konto_id']) && $y['id'] == $data['konto_id']) || $y['id'] == $kostenfix['konto_id']) ? 'selected' : '' ?>>
|
<?= ((isset($data['konto_id']) && $y['id'] == $data['konto_id']) || $y['id'] == $kostenfix['konto_id']) ? 'selected' : '' ?>>
|
||||||
<?= htmlspecialchars($y['bezeichnung']) ?>
|
<?= $y['bezeichnung'] ?>
|
||||||
</option>
|
</option>
|
||||||
<?php endforeach; ?>
|
<?php endforeach; ?>
|
||||||
</select>
|
</select>
|
||||||
@ -133,7 +127,7 @@
|
|||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="umsatz_div" id="umsatz_rechts">
|
<div class="umsatz_div" id="umsatz_rechts">
|
||||||
<input type="text" name="beschreibung" class="umsatz_text" value="<?= $data['beschreibung'] ?? $kostenfix['beschreibung']?>">
|
<input type="text" name="beschreibung" class="umsatz_text" value="<?= htmlspecialchars($data['beschreibung'] ?? $kostenfix['beschreibung'], ENT_QUOTES, 'UTF-8') ?>">
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="umsatz_div" id="umsatz_links">
|
<div class="umsatz_div" id="umsatz_links">
|
||||||
|
|||||||
25
fix_neu.php
@ -37,12 +37,13 @@
|
|||||||
name="fixkosten_submit"
|
name="fixkosten_submit"
|
||||||
value="hinzufügen"
|
value="hinzufügen"
|
||||||
type="submit">
|
type="submit">
|
||||||
<span>hinzufügen</span>
|
<img src="img\speichern.svg" alt="neue Fixkosten" class="menue">
|
||||||
</button>
|
</button>
|
||||||
<a href="fixkosten.php"
|
<h2 class="seitentitel">
|
||||||
class="header"
|
neue Fixkosten hinzufügen
|
||||||
id="navigationRechts">
|
</h2>
|
||||||
abbrechen
|
<a href="fixkosten.php" class="konto_header" id="konto_navigationRechts">
|
||||||
|
<img src="img\abbrechen.svg" alt="Abbrechen" class="menue">
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
<div class="inhalt">
|
<div class="inhalt">
|
||||||
@ -54,9 +55,9 @@
|
|||||||
<div class="umsatz_div" id="umsatz_rechts">
|
<div class="umsatz_div" id="umsatz_rechts">
|
||||||
<select name="zahlungsmonate_id" class="fix_select">
|
<select name="zahlungsmonate_id" class="fix_select">
|
||||||
<?php foreach ($zahlungsmonate as $y): ?>
|
<?php foreach ($zahlungsmonate as $y): ?>
|
||||||
<option value="<?= htmlspecialchars($y['id']) ?>"
|
<option value="<?= $y['id'] ?>"
|
||||||
<?= (isset($data['zahlungsmonate']) && $y['id'] == $data['zahlungsmonate']) ? 'selected' : '' ?>>
|
<?= (isset($data['zahlungsmonate']) && $y['id'] == $data['zahlungsmonate']) ? 'selected' : '' ?>>
|
||||||
<?= htmlspecialchars($y['name']) ?>
|
<?= $y['name'] ?>
|
||||||
</option>
|
</option>
|
||||||
<?php endforeach; ?>
|
<?php endforeach; ?>
|
||||||
</select>
|
</select>
|
||||||
@ -70,9 +71,9 @@
|
|||||||
<div class="umsatz_div" id="umsatz_rechts">
|
<div class="umsatz_div" id="umsatz_rechts">
|
||||||
<select name="zahlungstag_id" class="fix_select">
|
<select name="zahlungstag_id" class="fix_select">
|
||||||
<?php foreach ($zahlungstag as $y): ?>
|
<?php foreach ($zahlungstag as $y): ?>
|
||||||
<option value="<?= htmlspecialchars($y['id']) ?>"
|
<option value="<?= $y['id'] ?>"
|
||||||
<?= (isset($data['zahlungstag']) && $y['id'] == $data['zahlungstag']) ? 'selected' : '' ?>>
|
<?= (isset($data['zahlungstag']) && $y['id'] == $data['zahlungstag']) ? 'selected' : '' ?>>
|
||||||
<?= htmlspecialchars($y['name']) ?>
|
<?= $y['name'] ?>
|
||||||
</option>
|
</option>
|
||||||
<?php endforeach; ?>
|
<?php endforeach; ?>
|
||||||
</select>
|
</select>
|
||||||
@ -86,9 +87,9 @@
|
|||||||
<div class="umsatz_div" id="umsatz_rechts">
|
<div class="umsatz_div" id="umsatz_rechts">
|
||||||
<select name="konto_id" class="umsatz_select">
|
<select name="konto_id" class="umsatz_select">
|
||||||
<?php foreach ($konto as $y): ?>
|
<?php foreach ($konto as $y): ?>
|
||||||
<option value="<?= htmlspecialchars($y['id']) ?>"
|
<option value="<?= $y['id'] ?>"
|
||||||
<?= (isset($data['konto']) && $y['id'] == $data['konto']) ? 'selected' : '' ?>>
|
<?= (isset($data['konto']) && $y['id'] == $data['konto']) ? 'selected' : '' ?>>
|
||||||
<?= htmlspecialchars($y['bezeichnung']) ?>
|
<?= $y['bezeichnung'] ?>
|
||||||
</option>
|
</option>
|
||||||
<?php endforeach; ?>
|
<?php endforeach; ?>
|
||||||
</select>
|
</select>
|
||||||
@ -114,7 +115,7 @@
|
|||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="umsatz_div" id="umsatz_rechts">
|
<div class="umsatz_div" id="umsatz_rechts">
|
||||||
<input type="text" name="beschreibung" class="umsatz_text" value="<?= ($data['beschreibung']) ?? '' ?>">
|
<input type="text" name="beschreibung" class="umsatz_text" value="<?= htmlspecialchars($data['beschreibung'] ?? '', ENT_QUOTES, 'UTF-8') ?>">
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="umsatz_div" id="umsatz_links">
|
<div class="umsatz_div" id="umsatz_links">
|
||||||
|
|||||||
@ -10,7 +10,8 @@
|
|||||||
$monat_wert = -1;
|
$monat_wert = -1;
|
||||||
$temp_date_gesetzt = false;
|
$temp_date_gesetzt = false;
|
||||||
|
|
||||||
$stmt = $pdo->query("SELECT id, name
|
$stmt = $pdo->query("SELECT id,
|
||||||
|
name
|
||||||
FROM zahlungsmonate
|
FROM zahlungsmonate
|
||||||
ORDER BY id ASC;");
|
ORDER BY id ASC;");
|
||||||
$zahlungsmonate = $stmt->fetchAll(PDO::FETCH_ASSOC);
|
$zahlungsmonate = $stmt->fetchAll(PDO::FETCH_ASSOC);
|
||||||
@ -21,12 +22,14 @@
|
|||||||
FROM monat;");
|
FROM monat;");
|
||||||
$monat = $stmt->fetchAll(PDO::FETCH_ASSOC);
|
$monat = $stmt->fetchAll(PDO::FETCH_ASSOC);
|
||||||
|
|
||||||
$stmt = $pdo->query("SELECT id, name
|
$stmt = $pdo->query("SELECT id,
|
||||||
|
name
|
||||||
FROM zahlungstag
|
FROM zahlungstag
|
||||||
ORDER BY id ASC;");
|
ORDER BY id ASC;");
|
||||||
$zahlungstag = $stmt->fetchAll(PDO::FETCH_ASSOC);
|
$zahlungstag = $stmt->fetchAll(PDO::FETCH_ASSOC);
|
||||||
|
|
||||||
$stmt = $pdo->query("SELECT id, bezeichnung
|
$stmt = $pdo->query("SELECT id,
|
||||||
|
bezeichnung
|
||||||
FROM konto
|
FROM konto
|
||||||
ORDER BY id ASC;");
|
ORDER BY id ASC;");
|
||||||
$konto = $stmt->fetchAll(PDO::FETCH_ASSOC);
|
$konto = $stmt->fetchAll(PDO::FETCH_ASSOC);
|
||||||
@ -105,12 +108,13 @@
|
|||||||
name="fixkosten_submit"
|
name="fixkosten_submit"
|
||||||
value="zuKontobewegung"
|
value="zuKontobewegung"
|
||||||
type="submit">
|
type="submit">
|
||||||
<span>hinzufügen</span>
|
<img src="img\speichern.svg" alt="hinzufügen" class="menue">
|
||||||
</button>
|
</button>
|
||||||
<a href="fixkosten.php"
|
<h2 class="seitentitel">
|
||||||
class="header"
|
Fixkosten zu Kontobewegung
|
||||||
id="navigationRechts">
|
</h2>
|
||||||
abbrechen
|
<a href="fixkosten.php" class="konto_header" id="konto_navigationRechts">
|
||||||
|
<img src="img\abbrechen.svg" alt="Abbrechen" class="menue">
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
<div class="inhalt">
|
<div class="inhalt">
|
||||||
@ -122,7 +126,7 @@
|
|||||||
<div class="umsatz_div" id="umsatz_rechts">
|
<div class="umsatz_div" id="umsatz_rechts">
|
||||||
<select name="monat_id" class="fix_select" onchange="aktualisiereTabelle(this)">
|
<select name="monat_id" class="fix_select" onchange="aktualisiereTabelle(this)">
|
||||||
<?php foreach ($monat as $y): ?>
|
<?php foreach ($monat as $y): ?>
|
||||||
<option value="<?= htmlspecialchars($y['id']) ?>"
|
<option value="<?= $y['id'] ?>"
|
||||||
<?php
|
<?php
|
||||||
if($temp_date_gesetzt) {
|
if($temp_date_gesetzt) {
|
||||||
if($y['wert'] == $monat_wert) echo 'selected';
|
if($y['wert'] == $monat_wert) echo 'selected';
|
||||||
@ -130,7 +134,7 @@
|
|||||||
if($y['wert'] == date('m')) echo 'selected';
|
if($y['wert'] == date('m')) echo 'selected';
|
||||||
}
|
}
|
||||||
?>>
|
?>>
|
||||||
<?= htmlspecialchars($y['name']) ?>
|
<?= $y['name'] ?>
|
||||||
</option>
|
</option>
|
||||||
<?php endforeach; ?>
|
<?php endforeach; ?>
|
||||||
</select>
|
</select>
|
||||||
@ -144,8 +148,8 @@
|
|||||||
<div class="umsatz_div" id="umsatz_rechts">
|
<div class="umsatz_div" id="umsatz_rechts">
|
||||||
<select name="jahr" class="fix_select">
|
<select name="jahr" class="fix_select">
|
||||||
<?php foreach ($jahr as $y): ?>
|
<?php foreach ($jahr as $y): ?>
|
||||||
<option value="<?= htmlspecialchars($y['jahr']) ?>" <?php if($y['jahr'] == date('Y')) echo 'selected';?>>
|
<option value="<?= $y['jahr'] ?>" <?php if($y['jahr'] == date('Y')) echo 'selected';?>>
|
||||||
<?= htmlspecialchars($y['jahr']) ?>
|
<?= $y['jahr'] ?>
|
||||||
</option>
|
</option>
|
||||||
<?php endforeach; ?>
|
<?php endforeach; ?>
|
||||||
</select>
|
</select>
|
||||||
@ -169,7 +173,7 @@
|
|||||||
<td class="td_text">
|
<td class="td_text">
|
||||||
<?= htmlspecialchars($y['beschreibung']) ?>
|
<?= htmlspecialchars($y['beschreibung']) ?>
|
||||||
</td>
|
</td>
|
||||||
<td class="<?= $y['betrag'] < 0 ? 'td_zahl_neg' : 'td_zahl_pos' ?>">
|
<td class="< ?= $y['betrag'] < 0 ? 'td_zahl_neg' : 'td_zahl_pos' ?>">
|
||||||
<?= number_format($y['betrag'], 2, ",", ".") ?> €
|
<?= number_format($y['betrag'], 2, ",", ".") ?> €
|
||||||
</td>
|
</td>
|
||||||
<td class="td_text">
|
<td class="td_text">
|
||||||
|
|||||||
@ -31,20 +31,17 @@
|
|||||||
<body>
|
<body>
|
||||||
<form method="POST" action="forms/fixkostenZuKontobewegung.php">
|
<form method="POST" action="forms/fixkostenZuKontobewegung.php">
|
||||||
<div class="header">
|
<div class="header">
|
||||||
<a href="fix_neu.php"
|
<a href="fix_neu.php" class="konto_header" id="konto_navigationLinks">
|
||||||
class="header"
|
<img src="img\neueKontobewegung.svg" alt="neue Fixkosten" class="menue">
|
||||||
id="navigationLinks">
|
|
||||||
Neue Fixkosten
|
|
||||||
</a>
|
</a>
|
||||||
<a href="fix_zuKontobewegung.php"
|
<a href="fix_zuKontobewegung.php" class="konto_header" id="konto_navigationLinks1">
|
||||||
class="header"
|
<img src="img\fixkostenZuKontobewegung.svg" alt="Fixkosten zu Kontobewegung" class="menue">
|
||||||
id="navigationMitte">
|
|
||||||
zu Konto hinzufügen
|
|
||||||
</a>
|
</a>
|
||||||
<a href="index.php"
|
<h2 class="seitentitel">
|
||||||
class="header"
|
Fixkosten
|
||||||
id="navigationRechts">
|
</h2>
|
||||||
HOME
|
<a href="index.php" class="konto_header" id="konto_navigationRechts">
|
||||||
|
<img src="img\home.svg" alt="Home" class="menue">
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
</form>
|
</form>
|
||||||
@ -58,28 +55,23 @@
|
|||||||
<th id="th_konto">Konto</th>
|
<th id="th_konto">Konto</th>
|
||||||
</tr>
|
</tr>
|
||||||
<?php foreach ($kostenfix as $y): ?>
|
<?php foreach ($kostenfix as $y): ?>
|
||||||
<tr>
|
<tr onClick="ändereFixkosten(<?= $y['kostenfix_id'] ?>)">
|
||||||
<td class="td_text"
|
<td class="td_text">
|
||||||
onClick="ändereFixkosten(<?= htmlspecialchars($y['kostenfix_id']) ?>)">
|
<?= $y['zahlungsmonate'] ?>
|
||||||
<?= htmlspecialchars($y['zahlungsmonate']) ?>
|
|
||||||
</td>
|
</td>
|
||||||
<td class="td_text"
|
<td class="td_text">
|
||||||
onClick="ändereFixkosten(<?= htmlspecialchars($y['kostenfix_id']) ?>)">
|
<?= $y['zahlungstag'] ?>
|
||||||
<?= htmlspecialchars($y['zahlungstag']) ?>
|
|
||||||
</td>
|
</td>
|
||||||
<td class="td_text"
|
<td class="td_text">
|
||||||
onClick="ändereFixkosten(<?= htmlspecialchars($y['kostenfix_id']) ?>)">
|
<?= htmlspecialchars($y['beschreibung'], ENT_QUOTES, 'UTF-8') ?>
|
||||||
<?= htmlspecialchars($y['beschreibung']) ?>
|
|
||||||
</td>
|
</td>
|
||||||
<td class="<?php if($y['betrag'] < 0) echo 'td_zahl_neg';
|
<td class="<?php if($y['betrag'] < 0) echo 'td_zahl_neg';
|
||||||
elseif($y['betrag'] > 0) echo 'td_zahl_pos';
|
elseif($y['betrag'] > 0) echo 'td_zahl_pos';
|
||||||
else echo 'td_zahl_null'; ?>"
|
else echo 'td_zahl_null'; ?>">
|
||||||
onClick="ändereFixkosten(<?= htmlspecialchars($y['kostenfix_id']) ?>)">
|
|
||||||
<?= number_format($y['betrag'], 2, ",", ".") ?> €
|
<?= number_format($y['betrag'], 2, ",", ".") ?> €
|
||||||
</td>
|
</td>
|
||||||
<td class="td_text"
|
<td class="td_text">
|
||||||
onClick="ändereFixkosten(<?= htmlspecialchars($y['kostenfix_id']) ?>)">
|
<?= $y['konto'] ?>
|
||||||
<?= htmlspecialchars($y['konto']) ?>
|
|
||||||
</td>
|
</td>
|
||||||
|
|
||||||
<form id="hiddenFormÄndereFix" method="post" action="fix_edit.php">
|
<form id="hiddenFormÄndereFix" method="post" action="fix_edit.php">
|
||||||
|
|||||||
@ -174,7 +174,9 @@
|
|||||||
FROM monat
|
FROM monat
|
||||||
WHERE id = :monat_id;");
|
WHERE id = :monat_id;");
|
||||||
$stmt->execute([':monat_id' => $para_monat_id]);
|
$stmt->execute([':monat_id' => $para_monat_id]);
|
||||||
$monat_wert = $stmt->fetchAll(PDO::FETCH_ASSOC);
|
$row = $stmt->fetch(PDO::FETCH_ASSOC);
|
||||||
|
|
||||||
|
$monat_wert = $row ?: null;
|
||||||
|
|
||||||
$stmt = $para_pdo->prepare("INSERT INTO kontobewegung (konto_id, betrag, beschreibung, datum_ausgegeben, kostenfix_id, datum_fixkosten_uebernommen)
|
$stmt = $para_pdo->prepare("INSERT INTO kontobewegung (konto_id, betrag, beschreibung, datum_ausgegeben, kostenfix_id, datum_fixkosten_uebernommen)
|
||||||
SELECT kf.konto_id,
|
SELECT kf.konto_id,
|
||||||
@ -192,7 +194,7 @@
|
|||||||
WHERE kb_inner.kostenfix_id = kf.id
|
WHERE kb_inner.kostenfix_id = kf.id
|
||||||
AND EXTRACT(MONTH FROM kb_inner.datum_ausgegeben) = CAST(:monat_wert AS INT)
|
AND EXTRACT(MONTH FROM kb_inner.datum_ausgegeben) = CAST(:monat_wert AS INT)
|
||||||
AND EXTRACT(YEAR FROM kb_inner.datum_ausgegeben) = CAST(:jahr AS INT));");
|
AND EXTRACT(YEAR FROM kb_inner.datum_ausgegeben) = CAST(:jahr AS INT));");
|
||||||
$stmt->execute(['monat_wert' => $monat_wert[0]['wert'],
|
$stmt->execute(['monat_wert' => $monat_wert['wert'],
|
||||||
'jahr' => $para_jahr]);
|
'jahr' => $para_jahr]);
|
||||||
|
|
||||||
$para_pdo->commit();
|
$para_pdo->commit();
|
||||||
|
|||||||
@ -113,14 +113,13 @@
|
|||||||
JOIN konto k ON k.id = kb.konto_id
|
JOIN konto k ON k.id = kb.konto_id
|
||||||
WHERE kb.id = :kontobewegung_id;");
|
WHERE kb.id = :kontobewegung_id;");
|
||||||
$stmt->execute(['kontobewegung_id' => $para_kontobewegung_id]);
|
$stmt->execute(['kontobewegung_id' => $para_kontobewegung_id]);
|
||||||
$kontobewegung = $stmt->fetchAll(PDO::FETCH_ASSOC);
|
$row = $stmt->fetch(PDO::FETCH_ASSOC);
|
||||||
|
$kontobewegung = $row ?: null;
|
||||||
|
|
||||||
if(count($kontobewegung) > 1) throw new Exception('Mehr als eine Kontobewegung gefunden');
|
$konto_id_vorher = $kontobewegung['konto_id'];
|
||||||
|
$datum_abgebucht_vorher = $kontobewegung['datum_abgebucht'];
|
||||||
$konto_id_vorher = $kontobewegung[0]['konto_id'];
|
$kontostand_vorher_konto_vorher = $kontobewegung['kontostand'];
|
||||||
$datum_abgebucht_vorher = $kontobewegung[0]['datum_abgebucht'];
|
$betrag_vorher = $kontobewegung['betrag'];
|
||||||
$kontostand_vorher_konto_vorher = $kontobewegung[0]['kontostand'];
|
|
||||||
$betrag_vorher = $kontobewegung[0]['betrag'];
|
|
||||||
|
|
||||||
$stmt = $para_pdo->prepare("SELECT kontostand
|
$stmt = $para_pdo->prepare("SELECT kontostand
|
||||||
FROM konto
|
FROM konto
|
||||||
@ -196,14 +195,14 @@
|
|||||||
FROM kontobewegung
|
FROM kontobewegung
|
||||||
WHERE id = :kontobewegung_id;");
|
WHERE id = :kontobewegung_id;");
|
||||||
$stmt->execute(['kontobewegung_id' => $para_kontobewegung_id]);
|
$stmt->execute(['kontobewegung_id' => $para_kontobewegung_id]);
|
||||||
$kontobewegung = $stmt->fetchAll(PDO::FETCH_ASSOC);
|
$row = $stmt->fetch(PDO::FETCH_ASSOC);
|
||||||
|
|
||||||
|
$kontobewegung = $row ?: null;
|
||||||
|
|
||||||
try {
|
try {
|
||||||
if(count($kontobewegung) > 1) throw new Exception("Multiple Kontobewegungen gefunden");
|
$datum_abgebucht = $kontobewegung['datum_abgebucht'];
|
||||||
|
$betrag = $kontobewegung['betrag'];
|
||||||
$datum_abgebucht = $kontobewegung[0]['datum_abgebucht'];
|
$konto_id = $kontobewegung['konto_id'];
|
||||||
$betrag = $kontobewegung[0]['betrag'];
|
|
||||||
$konto_id = $kontobewegung[0]['konto_id'];
|
|
||||||
|
|
||||||
$para_pdo->beginTransaction();
|
$para_pdo->beginTransaction();
|
||||||
|
|
||||||
@ -250,10 +249,10 @@
|
|||||||
WHERE EXTRACT(MONTH FROM CAST(:datum_ausgegeben AS DATE)) = CAST(wert AS INT);");
|
WHERE EXTRACT(MONTH FROM CAST(:datum_ausgegeben AS DATE)) = CAST(wert AS INT);");
|
||||||
$stmt->execute(['datum_ausgegeben' => $para_datum_ausgegeben]);
|
$stmt->execute(['datum_ausgegeben' => $para_datum_ausgegeben]);
|
||||||
|
|
||||||
$monat = $stmt->fetchAll(PDO::FETCH_ASSOC)[0];
|
$row = $stmt->fetch(PDO::FETCH_ASSOC);
|
||||||
|
|
||||||
$monat_id = $monat['id'];
|
$monat_id = $row ? $row['id'] : -1;
|
||||||
$jahr = $monat['jahr'];
|
$jahr = $row ? $row['jahr'] : 2000;
|
||||||
|
|
||||||
$stmt = $para_pdo->prepare("SELECT betrag
|
$stmt = $para_pdo->prepare("SELECT betrag
|
||||||
FROM hist_restguthaben
|
FROM hist_restguthaben
|
||||||
@ -261,10 +260,12 @@
|
|||||||
AND jahr = :jahr;");
|
AND jahr = :jahr;");
|
||||||
$stmt->execute(['monat_id' => $monat_id,
|
$stmt->execute(['monat_id' => $monat_id,
|
||||||
'jahr' => $jahr]);
|
'jahr' => $jahr]);
|
||||||
$hist_restguthaben = $stmt->fetchAll(PDO::FETCH_ASSOC);
|
|
||||||
|
$row = $stmt->fetch(PDO::FETCH_ASSOC);
|
||||||
|
$hist_restguthaben = $row ?: null;
|
||||||
|
|
||||||
if(isset($hist_restguthaben)) {
|
if(isset($hist_restguthaben)) {
|
||||||
$betrag = $hist_restguthaben[0]['betrag'] + $para_betrag;
|
$betrag = $hist_restguthaben['betrag'] + $para_betrag;
|
||||||
|
|
||||||
$stmt = $para_pdo->prepare("UPDATE hist_restguthaben
|
$stmt = $para_pdo->prepare("UPDATE hist_restguthaben
|
||||||
SET betrag = :betrag
|
SET betrag = :betrag
|
||||||
|
|||||||
50
historie.php
@ -1,50 +0,0 @@
|
|||||||
<?php
|
|
||||||
require_once __DIR__ . '/includes/db_connect.php';
|
|
||||||
|
|
||||||
$stmt = $pdo->query("SELECT m.name,
|
|
||||||
hrg.jahr,
|
|
||||||
hrg.betrag
|
|
||||||
FROM hist_restguthaben hrg
|
|
||||||
JOIN monat m ON m.id = hrg.monat_id;");
|
|
||||||
$historie = $stmt->fetchAll(PDO::FETCH_ASSOC);
|
|
||||||
?>
|
|
||||||
<!DOCTYPE html>
|
|
||||||
<html>
|
|
||||||
|
|
||||||
<head>
|
|
||||||
<link rel="stylesheet" href="style.css">
|
|
||||||
</head>
|
|
||||||
|
|
||||||
<body>
|
|
||||||
<div class="header">
|
|
||||||
<a href="index.php"
|
|
||||||
class="konto_header"
|
|
||||||
id="konto_navigationRechts">
|
|
||||||
HOME
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
<div class="inhalt">
|
|
||||||
<table>
|
|
||||||
<tr>
|
|
||||||
<th id="th_gebucht">Jahr</th>
|
|
||||||
<th id="th_ausgegeben">Monat</th>
|
|
||||||
<th id="th_betrag">Betrag</th>
|
|
||||||
</tr>
|
|
||||||
<?php foreach ($historie as $y): ?>
|
|
||||||
<tr>
|
|
||||||
<td class="td_datum">
|
|
||||||
<?= htmlspecialchars($y['name']) ?? '' ?>
|
|
||||||
</td>
|
|
||||||
<td class="td_datum">
|
|
||||||
<?= htmlspecialchars($y['jahr']) ?? '' ?>
|
|
||||||
</td>
|
|
||||||
<td class="<?= $y['betrag'] < 0 ? 'td_zahl_neg' : 'td_zahl_pos' ?>">
|
|
||||||
<?= number_format($y['betrag'], 2, ",", ".") ?> €
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<?php endforeach; ?>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
</body>
|
|
||||||
|
|
||||||
</html>
|
|
||||||
19
img/abbrechen.svg
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
<?xml version="1.0" ?>
|
||||||
|
<svg enable-background="new 0 0 512 512" id="Layer_1" version="1.1" viewBox="0 0 512 512" xml:space="preserve" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<linearGradient gradientUnits="userSpaceOnUse" id="SVGID_1_" x1="0.0000038" x2="512" y1="256" y2="256">
|
||||||
|
<stop offset="0" style="stop-color:#14748A"/>
|
||||||
|
<stop offset="1" style="stop-color:#17859E"/>
|
||||||
|
</linearGradient>
|
||||||
|
<circle cx="256" cy="256" fill="url(#SVGID_1_)" r="256"/>
|
||||||
|
<linearGradient gradientUnits="userSpaceOnUse" id="SVGID_2_" x1="42.6666679" x2="469.3333435" y1="256.0005188" y2="256.0005188">
|
||||||
|
<stop offset="0" style="stop-color:#17859E"/>
|
||||||
|
<stop offset="1" style="stop-color:#14748A"/>
|
||||||
|
</linearGradient>
|
||||||
|
<path d="M256,469.3338623c-117.6314697,0-213.3333282-95.7018738-213.3333282-213.3333435 c0-117.6309204,95.7018585-213.333313,213.3333282-213.333313c117.636261,0,213.3333435,95.7024002,213.3333435,213.333313 C469.3333435,373.6319885,373.636261,469.3338623,256,469.3338623z" fill="url(#SVGID_2_)"/>
|
||||||
|
</g>
|
||||||
|
<path d="M313.7276001,144h-99.4075928L144,214.2714691v99.4085236L214.3200073,384h99.4075928L384,313.6799927 v-99.4085236L313.7276001,144z M314.0209351,306.9216003l-7.0705261,7.0704041l-42.9370728-42.9370728l-42.9364166,42.9370728 l-7.0710449-7.0704041l42.9370575-42.9370728l-42.9370575-42.9370575l7.0710449-7.0704041l42.9364166,42.9370575 l42.9370728-42.9370575l7.0705261,7.0704041l-42.9371948,42.9370575L314.0209351,306.9216003z" opacity="0.3"/>
|
||||||
|
<path d="M305.7276001,136h-99.4075928L136,206.2714691v99.4085236L206.3200073,376h99.4075928L376,305.6799927 v-99.4085236L305.7276001,136z M306.0209351,298.9216003l-7.0705261,7.0704041l-42.9370728-42.9370728l-42.9364166,42.9370728 l-7.0710449-7.0704041l42.9370575-42.9370728l-42.9370575-42.9370575l7.0710449-7.0704041l42.9364166,42.9370728 l42.9370728-42.9370728l7.0705261,7.0704041l-42.9371948,42.9370575L306.0209351,298.9216003z" fill="#FFFFFF"/>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 1.9 KiB |
4
img/diagramme.svg
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
<?xml version="1.0" ?><svg id="Layer_1" style="enable-background:new 0 0 512 512;" version="1.1" viewBox="0 0 512 512" xml:space="preserve" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><style type="text/css">
|
||||||
|
.st0{fill:#14748A;}
|
||||||
|
.st1{fill:#232323;}
|
||||||
|
</style><g id="XMLID_174_"><path class="st0" d="M41,315.8c-5.8,0-11.4-1.6-16.4-4.6L6,300v172.5h67.5V297.1l-11,10.2 C56.7,312.8,49,315.8,41,315.8z" id="XMLID_3390_"/><polygon class="st0" id="XMLID_183_" points="143.2,232.4 143.2,472.6 210.8,472.6 210.8,225.5 176.1,201.8 "/><path class="st0" d="M290.2,273.1c-6.4,0-12.6-1.9-17.9-5.5l-13.3-9.1v214h67.5V251.8L311,265.4 C305.2,270.4,297.8,273.1,290.2,273.1z" id="XMLID_182_"/><polygon class="st0" id="XMLID_175_" points="378.5,472.6 446,472.6 446,148 378.5,206.7 "/><path class="st1" d="M401.1,69.3L429,96.4L288.8,217.5l-105.1-71.8c-7.3-5-17.2-4.3-23.7,1.8l-121.6,113L6.1,240.9 v44.4l25.1,15.1c7.3,4.4,16.5,3.4,22.8-2.4l120.9-112.4l104.6,71.5c7.1,4.9,16.7,4.3,23.2-1.3l153.7-132.9l23,22.3L506,39.4 L401.1,69.3z" id="XMLID_498_"/></g></svg>
|
||||||
|
After Width: | Height: | Size: 1.1 KiB |
BIN
img/fixkosten.png.orig
Normal file
|
After Width: | Height: | Size: 586 KiB |
39
img/fixkosten.svg
Normal file
@ -0,0 +1,39 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<!-- Generator: Adobe Illustrator 17.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||||
|
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
||||||
|
<svg version="1.1" id="exchange-euro" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px"
|
||||||
|
y="0px" viewBox="0 0 99.997 99.9956" enable-background="new 0 0 99.997 99.9956" xml:space="preserve">
|
||||||
|
<circle id="exchange-euro-label" fill="#14748A" cx="49.998" cy="49.9978" r="49.9978"/>
|
||||||
|
<g id="exchange-euro-exchange-euro">
|
||||||
|
<g>
|
||||||
|
<path fill="#FFFFFF" d="M29.4746,69.2818c-5.1494-5.1533-7.9859-12.001-7.9859-19.2827c0-13.5025,10.0655-25.1089,23.4117-26.9991
|
||||||
|
l0.1333-0.0087h7.4467v1.9042h-7.3789C32.7207,26.6812,23.393,37.462,23.393,49.9991c0,6.7749,2.6382,13.144,7.4278,17.937
|
||||||
|
L29.4746,69.2818L29.4746,69.2818z"/>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
<path fill="#EB8619" d="M55.0303,77.0044H47.518v-1.9033h7.3775c12.3808-1.7861,21.7099-12.5683,21.7099-25.1045
|
||||||
|
c-0.0009-6.7754-2.6396-13.1445-7.4306-17.935l1.3486-1.3467c5.1485,5.1509,7.9854,11.998,7.9854,19.2817
|
||||||
|
c0,13.5039-10.0664,25.1074-23.4131,26.9981L55.0303,77.0044L55.0303,77.0044z"/>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
<polygon fill="#FFFFFF" points="46.3291,31.4405 44.9844,30.0957 51.1338,23.9449 44.9844,17.7955 46.3291,16.4488
|
||||||
|
53.1533,23.271 53.1533,24.6167 46.3291,31.4405 "/>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
<polygon fill="#EB8619" points="53.667,83.5455 46.8471,76.7261 46.8467,75.3804 53.667,68.5552 55.0127,69.9009 48.8662,76.0533
|
||||||
|
55.0127,82.2017 53.667,83.5455 "/>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
<path fill="#43C7D2" d="M51.664,64.1734c-4.9008,0-10.7431-2.4297-10.7431-14.0064c0-8.6928,3.5141-12.9179,10.7431-12.9179
|
||||||
|
c8.1524,0,9.4873,3.5297,9.6114,3.9321l-1.8174,0.5654c-0.0029,0.0005-1.0664-2.5942-7.794-2.5942
|
||||||
|
c-6.1128,0-8.8398,3.3965-8.8398,11.0146c0,8.1451,2.8916,12.1031,8.8398,12.1031c6.7491,0,7.7393-3.4815,7.7784-3.6319
|
||||||
|
l1.8515,0.4463C61.2461,59.2915,60.0107,64.1734,51.664,64.1734L51.664,64.1734z"/>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
<polygon fill="#43C7D2" points="53.8398,50.0303 37.5224,50.0303 37.5224,48.126 53.8398,48.126 53.8398,50.0303 "/>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
<polygon fill="#43C7D2" points="53.8398,54.3814 37.5224,54.3814 37.5224,52.479 53.8398,52.479 53.8398,54.3814 "/>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 2.2 KiB |
72
img/fixkostenZuKontobewegung.svg
Normal file
@ -0,0 +1,72 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
||||||
|
<!-- Creator: CorelDRAW X6 -->
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" width="100%" height="100%" version="1.1" style="shape-rendering:geometricPrecision; text-rendering:geometricPrecision; image-rendering:optimizeQuality; fill-rule:evenodd; clip-rule:evenodd"
|
||||||
|
viewBox="0 0 500 500"
|
||||||
|
xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||||
|
<defs>
|
||||||
|
<style type="text/css">
|
||||||
|
<![CDATA[
|
||||||
|
.fil4 {fill:#005792}
|
||||||
|
.fil5 {fill:url(#id0)}
|
||||||
|
.fil1 {fill:url(#id1)}
|
||||||
|
.fil8 {fill:url(#id2)}
|
||||||
|
.fil6 {fill:url(#id3)}
|
||||||
|
.fil9 {fill:url(#id4)}
|
||||||
|
.fil2 {fill:url(#id5)}
|
||||||
|
.fil10 {fill:url(#id6)}
|
||||||
|
.fil7 {fill:url(#id7)}
|
||||||
|
.fil3 {fill:url(#id8)}
|
||||||
|
]]>
|
||||||
|
</style>
|
||||||
|
<linearGradient id="id0" gradientUnits="userSpaceOnUse" x1="259.137" y1="392.265" x2="397.493" y2="392.265">
|
||||||
|
<stop offset="0" style="stop-color:#14748A"/>
|
||||||
|
<stop offset="0.619608" style="stop-color:#14748A"/>
|
||||||
|
<stop offset="1" style="stop-color:#14748A"/>
|
||||||
|
</linearGradient>
|
||||||
|
<linearGradient id="id1" gradientUnits="userSpaceOnUse" xlink:href="#id0" x1="357.629" y1="173.135" x2="287.729" y2="52.065">
|
||||||
|
</linearGradient>
|
||||||
|
<linearGradient id="id2" gradientUnits="userSpaceOnUse" xlink:href="#id0" x1="123.788" y1="191.355" x2="54.2" y2="311.885">
|
||||||
|
</linearGradient>
|
||||||
|
<linearGradient id="id3" gradientUnits="userSpaceOnUse" x1="427.72" y1="227.345" x2="419.434" y2="385.599">
|
||||||
|
<stop offset="0" style="stop-color:#14748A"/>
|
||||||
|
<stop offset="0.631373" style="stop-color:#14748A"/>
|
||||||
|
<stop offset="1" style="stop-color:#14748A"/>
|
||||||
|
</linearGradient>
|
||||||
|
<linearGradient id="id4" gradientUnits="userSpaceOnUse" xlink:href="#id3" x1="182.238" y1="420.247" x2="49.084" y2="333.783">
|
||||||
|
</linearGradient>
|
||||||
|
<linearGradient id="id5" gradientUnits="userSpaceOnUse" xlink:href="#id3" x1="131.354" y1="108.359" x2="270.144" y2="37.635">
|
||||||
|
</linearGradient>
|
||||||
|
<linearGradient id="id6" gradientUnits="userSpaceOnUse" x1="165.488" y1="331.016" x2="60.537" y2="331.016">
|
||||||
|
<stop offset="0" style="stop-color:#14748A"/>
|
||||||
|
<stop offset="1" style="stop-color:#14748A"/>
|
||||||
|
</linearGradient>
|
||||||
|
<linearGradient id="id7" gradientUnits="userSpaceOnUse" xlink:href="#id6" x1="359.246" y1="287.046" x2="410.884" y2="376.486">
|
||||||
|
</linearGradient>
|
||||||
|
<linearGradient id="id8" gradientUnits="userSpaceOnUse" xlink:href="#id6" x1="216.01" y1="138.562" x2="267.81" y2="48.842">
|
||||||
|
</linearGradient>
|
||||||
|
</defs>
|
||||||
|
<g id="Layer_x0020_1">
|
||||||
|
<metadata id="CorelCorpID_0Corel-Layer"/>
|
||||||
|
<g id="_1546748816">
|
||||||
|
<g>
|
||||||
|
<path id="path2742" class="fil1" d="M398 91l-18 8c-2,1 -5,0 -6,-2l-30 -47c-14,-22 -42,-19 -62,-7 -14,9 -26,27 -36,45 -1,2 -1,3 0,5l32 59c1,2 1,5 -1,6l-11 7c-2,1 -3,3 -3,6 1,2 3,3 5,3l89 3c1,0 3,-1 4,-3l43 -76c1,-2 1,-4 -1,-5 -1,-2 -3,-2 -5,-2z"/>
|
||||||
|
<path class="fil2" d="M246 88l-54 92c-2,3 -5,3 -7,2l-87 -50c-3,-2 -4,-5 -2,-7 10,-18 20,-36 31,-54 12,-21 28,-44 47,-43l139 6c-11,0 -22,4 -31,9 -14,9 -26,27 -36,45z"/>
|
||||||
|
<path class="fil3" d="M246 88l-54 92c-2,3 -5,3 -7,2l-3 -2c2,2 5,1 7,-1l54 -93c10,-18 22,-36 36,-45 7,-3 14,-6 21,-8l13 1c-11,0 -22,4 -31,9 -14,9 -26,27 -36,45z"/>
|
||||||
|
<path id="path2742_0" class="fil4" d="M398 91l-18 8c-2,1 -5,0 -6,-2l-30 -47c-14,-22 -42,-19 -62,-7 -13,8 -25,26 -35,43 10,-16 21,-32 34,-40 19,-12 47,-15 61,6l30 48c2,2 4,2 6,1l18 -7c2,-1 4,0 6,1 1,2 1,4 0,6l-41 74c0,0 0,-1 0,-1l43 -76c1,-2 1,-4 -1,-5 -1,-2 -3,-2 -5,-2zm-121 67c0,0 0,0 0,0l-11 7c-2,1 -2,2 -3,3 1,0 1,0 1,0l11 -7c1,-1 2,-2 2,-3z"/>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
<path id="path2742_1" class="fil5" d="M309 468l3 -19c0,-3 2,-4 4,-5l56 -2c26,-1 37,-27 37,-50 -1,-16 -11,-36 -21,-54 -1,-1 -2,-2 -4,-2l-68 -2c-2,0 -4,-2 -4,-5l-1 -13c0,-2 -1,-3 -3,-4 -2,-1 -4,0 -6,2l-46 76c-1,1 -1,3 0,5l44 75c1,2 3,3 5,2 2,0 4,-2 4,-4z"/>
|
||||||
|
<path class="fil6" d="M388 338l-53 -93c-1,-2 0,-5 2,-7l88 -50c2,-2 5,-1 6,2 10,17 21,35 31,53 13,21 24,47 14,63l-75 117c6,-9 8,-20 8,-31 -1,-16 -11,-36 -21,-54z"/>
|
||||||
|
<path class="fil7" d="M388 338l-53 -93c-1,-2 0,-5 2,-7l3 -1c-2,1 -3,4 -2,6l53 93c10,18 20,38 21,54 0,8 -1,15 -4,22l-7 11c6,-9 8,-20 8,-31 -1,-16 -11,-36 -21,-54z"/>
|
||||||
|
<path id="path2742_2" class="fil4" d="M309 468l3 -19c0,-3 2,-4 4,-5l56 -2c26,-1 37,-27 37,-50 -1,-16 -10,-35 -20,-52 9,16 18,34 18,49 1,23 -11,49 -36,50l-56 3c-3,0 -4,2 -5,4l-3 19c0,2 -1,4 -3,4 -2,1 -4,0 -5,-2l-43 -73c0,0 0,0 0,1l44 75c1,2 3,3 5,2 2,0 4,-2 4,-4zm3 -138c0,0 0,0 0,-1l-1 -13c0,-1 0,-2 -1,-3 0,0 0,0 0,1l0 13c0,1 1,2 2,3z"/>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
<path id="path2742_3" class="fil8" d="M33 197l15 12c2,2 3,4 2,6l-26 50c-12,23 5,45 25,56 14,8 36,9 57,9 2,0 3,-1 4,-2l35 -58c2,-2 5,-3 7,-1l11 6c2,1 4,0 6,-1 1,-2 2,-4 1,-6l-43 -78c0,-1 -2,-2 -4,-2l-87 0c-2,0 -4,2 -5,4 0,2 0,4 2,5z"/>
|
||||||
|
<path class="fil9" d="M106 330l107 1c3,0 5,2 5,5l0 101c0,3 -2,5 -5,5 -20,0 -41,0 -62,0 -25,1 -52,-2 -61,-19l-64 -124c5,10 14,17 23,22 14,8 36,9 57,9z"/>
|
||||||
|
<path class="fil10" d="M106 330l107 1c3,0 5,2 5,5l0 3c0,-2 -2,-4 -5,-4l-107 -1c-21,0 -43,-1 -57,-9 -6,-4 -13,-9 -17,-14l-6 -12c5,10 14,17 23,22 14,8 36,9 57,9z"/>
|
||||||
|
<path id="path2742_4" class="fil4" d="M33 197l15 12c2,2 3,4 2,6l-26 50c-12,23 5,45 25,56 14,8 35,9 55,9 -19,0 -39,-1 -52,-9 -20,-11 -37,-33 -25,-56l26 -50c1,-2 0,-4 -1,-6l-16 -12c-2,-1 -2,-3 -2,-5 1,-2 3,-4 5,-4l85 0c0,0 -1,0 -1,0l-87 0c-2,0 -4,2 -5,4 0,2 0,4 2,5zm118 71c0,0 1,1 1,1l11 6c1,0 3,1 4,0 0,0 0,0 -1,0l-11 -6c-1,-1 -3,-1 -4,-1z"/>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 5.3 KiB |
51
img/home.svg
Normal file
@ -0,0 +1,51 @@
|
|||||||
|
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||||
|
<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||||
|
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
||||||
|
<svg version="1.1" id="Capa_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
||||||
|
width="460.298px" height="460.297px" viewBox="0 0 460.298 460.297" style="enable-background:new 0 0 460.298 460.297;"
|
||||||
|
xml:space="preserve">
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<path fill="#14748A" d="M230.149,120.939L65.986,256.274c0,0.191-0.048,0.472-0.144,0.855c-0.094,0.38-0.144,0.656-0.144,0.852v137.041
|
||||||
|
c0,4.948,1.809,9.236,5.426,12.847c3.616,3.613,7.898,5.431,12.847,5.431h109.63V303.664h73.097v109.64h109.629
|
||||||
|
c4.948,0,9.236-1.814,12.847-5.435c3.617-3.607,5.432-7.898,5.432-12.847V257.981c0-0.76-0.104-1.334-0.288-1.707L230.149,120.939
|
||||||
|
z"/>
|
||||||
|
<path fill="#14748A" d="M457.122,225.438L394.6,173.476V56.989c0-2.663-0.856-4.853-2.574-6.567c-1.704-1.712-3.894-2.568-6.563-2.568h-54.816
|
||||||
|
c-2.666,0-4.855,0.856-6.57,2.568c-1.711,1.714-2.566,3.905-2.566,6.567v55.673l-69.662-58.245
|
||||||
|
c-6.084-4.949-13.318-7.423-21.694-7.423c-8.375,0-15.608,2.474-21.698,7.423L3.172,225.438c-1.903,1.52-2.946,3.566-3.14,6.136
|
||||||
|
c-0.193,2.568,0.472,4.811,1.997,6.713l17.701,21.128c1.525,1.712,3.521,2.759,5.996,3.142c2.285,0.192,4.57-0.476,6.855-1.998
|
||||||
|
L230.149,95.817l197.57,164.741c1.526,1.328,3.521,1.991,5.996,1.991h0.858c2.471-0.376,4.463-1.43,5.996-3.138l17.703-21.125
|
||||||
|
c1.522-1.906,2.189-4.145,1.991-6.716C460.068,229.007,459.021,226.961,457.122,225.438z"/>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 1.7 KiB |
1
img/löschen.svg
Normal file
@ -0,0 +1 @@
|
|||||||
|
<?xml version="1.0" ?><svg enable-background="new 0 0 512 512" id="Layer_1" version="1.1" viewBox="0 0 512 512" xml:space="preserve" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><g><g><linearGradient gradientUnits="userSpaceOnUse" id="SVGID_1_" x1="-0.0000027" x2="512" y1="256" y2="256"><stop offset="0" style="stop-color:#14748A"/><stop offset="1" style="stop-color:#17859E"/></linearGradient><circle cx="256" cy="256" fill="url(#SVGID_1_)" r="256"/><linearGradient gradientUnits="userSpaceOnUse" id="SVGID_2_" x1="42.6666641" x2="469.3333435" y1="256.0005188" y2="256.0005188"><stop offset="0" style="stop-color:#17859E"/><stop offset="1" style="stop-color:#14748A"/></linearGradient><path d="M256,469.3338623c-117.6314697,0-213.3333435-95.7023926-213.3333435-213.3333435 c0-117.6314545,95.7018661-213.333313,213.3333435-213.333313c117.636261,0,213.3333435,95.7018661,213.3333435,213.333313 C469.3333435,373.6314697,373.636261,469.3338623,256,469.3338623z" fill="url(#SVGID_2_)"/></g><path d="M381.4981384,174.610672h-45.6714783v-21.6021423c0-4.9701233-4.0287781-8.9983978-8.9989319-8.9983978 H201.1704559c-4.9700775,0-8.9992065,4.0282745-8.9992065,8.9983978v21.6021423h-45.6693878v9.9989319h20.962677 l22.7453766,183.5509186c1.1203766,9.0400085,8.801712,15.8288269,17.9104004,15.8288269h111.7570038 c9.1093445,0,16.7904053-6.7888184,17.9109497-15.8288269l22.7456055-183.5509186h20.9642639V174.610672z M221.0897064,351.9584045 l-9.9256592-129.5248108l9.9696655-0.7615967l9.9261322,129.5248108L221.0897064,351.9584045z M268.9985657,351.5776062h-9.9991455 V222.0527954h9.9991455V351.5776062z M306.9077454,351.9584045l-9.9701538-0.7615967l9.9264221-129.5248108l9.969574,0.7615967 L306.9077454,351.9584045z" opacity="0.3"/><path d="M373.4981384,166.610672h-45.6714783v-21.6021423c0-4.9701233-4.0287781-8.9983978-8.9989319-8.9983978 H193.1704559c-4.9700775,0-8.9992523,4.0282745-8.9992523,8.9983978v21.6021423h-45.669342v9.9989319h20.962677 l22.7455902,183.5509186c1.1200104,9.0400085,8.8014984,15.8288269,17.9101868,15.8288269h111.7570038 c9.1093445,0,16.7904053-6.7888184,17.9109497-15.8288269l22.7456055-183.5509186h20.9642639V166.610672z M213.0897064,343.9584045 l-9.9256592-129.5248108l9.9696655-0.7615967l9.9261322,129.5248108L213.0897064,343.9584045z M260.9985657,343.5776062h-9.9991455 V214.0527954h9.9991455V343.5776062z M298.9077454,343.9584045l-9.9700928-0.7615967l9.9263611-129.5248108l9.969574,0.7615967 L298.9077454,343.9584045z" fill="#FFFFFF"/></g></svg>
|
||||||
|
After Width: | Height: | Size: 2.5 KiB |
19
img/neueKontobewegung.svg
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
<?xml version="1.0" ?>
|
||||||
|
<svg enable-background="new 0 0 512 512" id="Layer_1" version="1.1" viewBox="0 0 512 512" xml:space="preserve" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<linearGradient gradientUnits="userSpaceOnUse" id="SVGID_1_" x1="0.0000038" x2="512" y1="256" y2="256">
|
||||||
|
<stop offset="0" style="stop-color:#14748A"/>
|
||||||
|
<stop offset="1" style="stop-color:#17859E"/>
|
||||||
|
</linearGradient>
|
||||||
|
<circle cx="256" cy="256" fill="url(#SVGID_1_)" r="256"/>
|
||||||
|
<linearGradient gradientUnits="userSpaceOnUse" id="SVGID_2_" x1="42.6666679" x2="469.3333435" y1="256.0005188" y2="256.0005188">
|
||||||
|
<stop offset="0" style="stop-color:#17859E"/>
|
||||||
|
<stop offset="1" style="stop-color:#14748A"/>
|
||||||
|
</linearGradient>
|
||||||
|
<path d="M256,469.3338623c-117.6309357,0-213.3333282-95.7023926-213.3333282-213.3333435 c0-117.6314545,95.7023926-213.333313,213.3333282-213.333313c117.636261,0,213.3333435,95.7018661,213.3333435,213.333313 C469.3333435,373.6314697,373.636261,469.3338623,256,469.3338623z" fill="url(#SVGID_2_)"/>
|
||||||
|
</g>
|
||||||
|
<polygon id="XMLID_109_" opacity="0.3" points="384,242.5413361 285.459198,242.5413361 285.459198,144 242.5424042,144 242.5424042,242.5413361 144,242.5413361 144,285.4581299 242.5424042,285.4581299 242.5424042,384 285.459198,384 285.459198,285.4581299 384,285.4581299 "/>
|
||||||
|
<polygon fill="#FFFFFF" id="XMLID_189_" points="376,234.5413361 277.459198,234.5413361 277.459198,136 234.5424042,136 234.5424042,234.5413361 136,234.5413361 136,277.4581299 234.5424042,277.4581299 234.5424042,376 277.459198,376 277.459198,277.4581299 376,277.4581299 "/>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 1.6 KiB |
1
img/neueKontobewegung.svg.orig
Normal file
@ -0,0 +1 @@
|
|||||||
|
<?xml version="1.0" ?><svg enable-background="new 0 0 512 512" id="Layer_1" version="1.1" viewBox="0 0 512 512" xml:space="preserve" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><g><g><linearGradient gradientUnits="userSpaceOnUse" id="SVGID_1_" x1="0.0000038" x2="512" y1="256" y2="256"><stop offset="0" style="stop-color:#33B49D"/><stop offset="1" style="stop-color:#00A185"/></linearGradient><circle cx="256" cy="256" fill="url(#SVGID_1_)" r="256"/><linearGradient gradientUnits="userSpaceOnUse" id="SVGID_2_" x1="42.6666679" x2="469.3333435" y1="256.0005188" y2="256.0005188"><stop offset="0" style="stop-color:#00A185"/><stop offset="1" style="stop-color:#33B49D"/></linearGradient><path d="M256,469.3338623c-117.6309357,0-213.3333282-95.7023926-213.3333282-213.3333435 c0-117.6314545,95.7023926-213.333313,213.3333282-213.333313c117.636261,0,213.3333435,95.7018661,213.3333435,213.333313 C469.3333435,373.6314697,373.636261,469.3338623,256,469.3338623z" fill="url(#SVGID_2_)"/></g><polygon id="XMLID_109_" opacity="0.3" points="384,242.5413361 285.459198,242.5413361 285.459198,144 242.5424042,144 242.5424042,242.5413361 144,242.5413361 144,285.4581299 242.5424042,285.4581299 242.5424042,384 285.459198,384 285.459198,285.4581299 384,285.4581299 "/><polygon fill="#FFFFFF" id="XMLID_189_" points="376,234.5413361 277.459198,234.5413361 277.459198,136 234.5424042,136 234.5424042,234.5413361 136,234.5413361 136,277.4581299 234.5424042,277.4581299 234.5424042,376 277.459198,376 277.459198,277.4581299 376,277.4581299 "/></g></svg>
|
||||||
|
After Width: | Height: | Size: 1.6 KiB |
3
img/speichern.svg
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
<?xml version="1.0" ?><svg id="Layer_1" style="enable-background:new 0 0 612 792;" version="1.1" viewBox="0 0 612 792" xml:space="preserve" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><style type="text/css">
|
||||||
|
.st0{clip-path:url(#SVGID_2_);fill:#14748A;}
|
||||||
|
</style><g><g><defs><rect height="512" id="SVGID_1_" width="512" x="50" y="140"/></defs><clipPath id="SVGID_2_"><use style="overflow:visible;" xlink:href="#SVGID_1_"/></clipPath><path class="st0" d="M562,619V254l0,0c-0.1-2.9-1.2-6.1-4.1-9L457.4,144.5c0,0-5.3-4.9-11.7-4.5l0,0H83c0,0-33,0-33,33v446 c0,0,0,33,33,33h446C529,652,562,652,562,619L562,619z M453,303c0,22-22,22-22,22H181c-22,0-22-22-22-22V198c0-22,22-22,22-22h250 c22,0,22,22,22,22V303L453,303z M526,594c0,22-22,22-22,22H108c-22,0-22-22-22-22V394c0-22,22-22,22-22h396c22,0,22,22,22,22V594 L526,594z M435,296v-91c0,0,0-15-15-15h-49c0,0-15,0-15,15v91c0,0,0,15,15,15h49C420,311,435,311,435,296L435,296z"/></g></g></svg>
|
||||||
|
After Width: | Height: | Size: 973 B |
69
index.php
@ -15,19 +15,17 @@
|
|||||||
ORDER BY k.id ASC;");
|
ORDER BY k.id ASC;");
|
||||||
$kontos = $stmt->fetchAll(PDO::FETCH_ASSOC);
|
$kontos = $stmt->fetchAll(PDO::FETCH_ASSOC);
|
||||||
|
|
||||||
$stmt = $pdo->prepare("SELECT SUM(betrag) AS restguthaben
|
$stmt = $pdo->query("SELECT SUM(kb.betrag) AS restguthaben,
|
||||||
FROM kontobewegung
|
m.name
|
||||||
WHERE (konto_id = :konto1 OR konto_id = :konto2)
|
FROM kontobewegung kb
|
||||||
AND EXTRACT(MONTH FROM datum_ausgegeben) = EXTRACT(MONTH FROM CURRENT_DATE);");
|
JOIN monat m ON CAST(m.wert AS INT) = EXTRACT(MONTH FROM CURRENT_DATE)
|
||||||
$stmt->execute(['konto1' => 1,
|
WHERE kb.konto_id IN (1, 2)
|
||||||
'konto2' => 2]);
|
AND EXTRACT(MONTH FROM kb.datum_ausgegeben) = EXTRACT(MONTH FROM CURRENT_DATE)
|
||||||
|
AND COALESCE(kb.bei_restguthaben_ignorieren, false) <> true
|
||||||
$restguthaben = ($stmt->fetchAll(PDO::FETCH_ASSOC))[0]['restguthaben'];
|
GROUP BY m.name;;");
|
||||||
|
$row = $stmt->fetch(PDO::FETCH_ASSOC);
|
||||||
$stmt = $pdo->query("SELECT name
|
$restguthaben = $row ? $row['restguthaben'] : -0;
|
||||||
FROM monat
|
$monat = $row ? $row['name'] : '';
|
||||||
WHERE CAST(wert AS INT) = EXTRACT(MONTH FROM CURRENT_DATE);");
|
|
||||||
$monat = $stmt->fetchAll(PDO::FETCH_ASSOC)[0]['name'];
|
|
||||||
?>
|
?>
|
||||||
|
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
@ -39,52 +37,41 @@
|
|||||||
|
|
||||||
<body>
|
<body>
|
||||||
<div class="header">
|
<div class="header">
|
||||||
<?php
|
<a href="kontobewegung_neu.php" class="konto_header" id="konto_navigationLinks">
|
||||||
if($system == 'test') {
|
<img src="img\neueKontobewegung.svg" alt="neue Kontobewegung" class="menue">
|
||||||
echo '<h2 class="restguthaben">Testsystem</h2>';
|
</a>
|
||||||
}
|
<a href="fixkosten.php" class="konto_header" id="konto_navigationLinks1">
|
||||||
?>
|
<img src="img\fixkosten.svg" alt="Fixkosten" class="menue">
|
||||||
<h2 class="restguthaben">
|
</a>
|
||||||
Restguthaben <?= htmlspecialchars($monat)?>: <?= htmlspecialchars($restguthaben ?? '0') ?> €
|
<h2 class="seitentitel">
|
||||||
|
Restguthaben <?= $monat?>: <?= number_format($restguthaben, 2, ",", ".") ?> €
|
||||||
</h2>
|
</h2>
|
||||||
|
<a href="diagramme.php" class="konto_header" id="konto_navigationRechts">
|
||||||
|
<img src="img\diagramme.svg" alt="Diagramme" class="menue">
|
||||||
|
</a>
|
||||||
</div>
|
</div>
|
||||||
<div class="inhalt">
|
<div class="inhalt">
|
||||||
<?php foreach ($kontos as $y): ?>
|
<?php foreach ($kontos as $y): ?>
|
||||||
<a href="konto.php?id=<?= htmlspecialchars($y['id']) ?>"
|
<a href="konto.php?id=<?= $y['id'] ?>" class="kontoübersicht" id="container" style="background-color:<?= $y['color'] ?>;">
|
||||||
class="kontoübersicht"
|
|
||||||
id="container"
|
|
||||||
style="background-color: <?= htmlspecialchars($y['color']) ?>;">
|
|
||||||
|
|
||||||
<div class="kontoübersicht" id="containerInnenLinks">
|
<div class="kontoübersicht" id="containerInnenLinks">
|
||||||
<p class="ausgabe" id="überschrift">
|
<p class="ausgabe" id="überschrift">
|
||||||
<?= htmlspecialchars($y['bezeichnung']) ?>
|
<?= $y['bezeichnung'] ?>
|
||||||
</p>
|
</p>
|
||||||
<p id="infotext">
|
<p id="infotext">
|
||||||
<?= htmlspecialchars($y['bankname']) ?> \
|
<?= $y['bankname'] ?> \
|
||||||
<?= htmlspecialchars($y['kontoinhaber']) ?>
|
<?= $y['kontoinhaber'] ?>
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="kontoübersicht" id="containerInnenRechts">
|
<div class="kontoübersicht" id="containerInnenRechts">
|
||||||
<p class="ausgabe" id="kontostand">
|
<p class="ausgabe" id="kontostand">
|
||||||
<?= number_format(htmlspecialchars($y['kontostand']), 2, ",", ".") ?> €
|
<?= number_format($y['kontostand'], 2, ",", ".") ?> €
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
</a>
|
</a>
|
||||||
<?php endforeach; ?>
|
<?php endforeach; ?>
|
||||||
<a href="kontobewegung_neu.php" class="navigation_index">
|
|
||||||
Neue Kontobewegung
|
|
||||||
</a>
|
|
||||||
<a href="fixkosten.php" class="navigation_index">
|
|
||||||
Fixkosten
|
|
||||||
</a>
|
|
||||||
<a href="diagramme.php" class="navigation_index">
|
|
||||||
Diagramme
|
|
||||||
</a>
|
|
||||||
<a href="historie.php" class="navigation_index">
|
|
||||||
Historie
|
|
||||||
</a>
|
|
||||||
</div>
|
</div>
|
||||||
|
<?= $system === 'test' ? '<div class="menue"><h2 class="seitentitel">Testsystem</h2></div>' : '' ?>
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
</html>
|
</html>
|
||||||
86
konto.php
@ -2,42 +2,39 @@
|
|||||||
require_once __DIR__ . '/includes/db_connect.php';
|
require_once __DIR__ . '/includes/db_connect.php';
|
||||||
$system = getenv('POSTGRES_SYSTEM') ?? 'test';
|
$system = getenv('POSTGRES_SYSTEM') ?? 'test';
|
||||||
|
|
||||||
$konto_id = $_GET['id'];
|
$G_konto_id = isset($_GET['id']) ? (int)$_GET['id'] : -1;
|
||||||
|
|
||||||
$stmt = $pdo->prepare("SELECT id,
|
$stmt = $pdo->query("SELECT id,
|
||||||
kontostand,
|
kontostand,
|
||||||
darstellungsfarbe AS backgroundcolor,
|
darstellungsfarbe AS backgroundcolor,
|
||||||
bezeichnung AS konto
|
bezeichnung AS konto,
|
||||||
|
(date_trunc('month', CURRENT_DATE::date) - interval '2 month')::date AS von,
|
||||||
|
(date_trunc('month', CURRENT_DATE::date) + interval '1 month' - interval '1 day')::date AS bis
|
||||||
FROM konto
|
FROM konto
|
||||||
WHERE id = :konto_id;");
|
WHERE id = $G_konto_id");
|
||||||
$stmt->execute(['konto_id' => $konto_id]);
|
$row = $stmt->fetch(PDO::FETCH_ASSOC);
|
||||||
$konto = $stmt->fetchAll(PDO::FETCH_ASSOC);
|
|
||||||
|
|
||||||
// Da nur ein Konto abgefragt wird, sind diese Werte in allen Ergebnissen gleich
|
$konto_id = $row ? $row['id'] : -1;
|
||||||
$konto_bezeichnung = $konto[0]['konto'];
|
$konto_bezeichnung = $row ? $row['konto'] : '';
|
||||||
$konto_kontostand = $konto[0]['kontostand'];
|
$konto_kontostand = $row ? $row['kontostand'] : -0;
|
||||||
$konto_backgroundColor = $konto[0]['backgroundcolor'];
|
$konto_backgroundColor = $row ? $row['backgroundcolor'] : '#ff0000';
|
||||||
|
|
||||||
|
$monat_aktuell_von = $row ? $row['von'] : '2000-01-01';
|
||||||
|
$monat_aktuell_bis = $row ? $row['bis'] : '2000-01-01';
|
||||||
|
|
||||||
$stmt = $pdo->query("SELECT (date_trunc('month', CURRENT_DATE::date) - interval '2 month')::date AS von,
|
$G_selectedRange = $_GET['range'] ?? $row['von'] . " to " . $row['bis'];
|
||||||
(date_trunc('month', CURRENT_DATE::date) + interval '1 month' - interval '1 day')::date AS bis;");
|
|
||||||
$monat_aktuell = $stmt->fetchAll(PDO::FETCH_ASSOC)[0];
|
|
||||||
|
|
||||||
$selectedRange = $_GET['range'] ?? $monat_aktuell['von'] . " to " . $monat_aktuell['bis'];
|
$stmt = $pdo->query("SELECT kb.id AS kontobewegung_id,
|
||||||
|
|
||||||
$stmt = $pdo->prepare("SELECT kb.id AS kontobewegung_id,
|
|
||||||
kb.betrag,
|
kb.betrag,
|
||||||
kb.beschreibung,
|
kb.beschreibung,
|
||||||
kb.datum_ausgegeben,
|
kb.datum_ausgegeben,
|
||||||
kb.datum_abgebucht,
|
kb.datum_abgebucht,
|
||||||
kb.kostenfix_id
|
kb.kostenfix_id
|
||||||
FROM kontobewegung kb
|
FROM kontobewegung kb
|
||||||
LEFT OUTER JOIN kostenfix kf ON kf.id = kb.kostenfix_id
|
WHERE kb.konto_id = $konto_id
|
||||||
WHERE kb.konto_id = :konto_id
|
AND kb.datum_ausgegeben BETWEEN '$monat_aktuell_von' AND '$monat_aktuell_bis'
|
||||||
AND kb.datum_ausgegeben BETWEEN :von AND :bis
|
ORDER BY kb.datum_ausgegeben DESC,
|
||||||
ORDER BY datum_ausgegeben DESC,
|
|
||||||
kb.id DESC;");
|
kb.id DESC;");
|
||||||
$stmt->execute(['konto_id' => $konto_id, 'von' => $monat_aktuell['von'], 'bis' => $monat_aktuell['bis']]);
|
|
||||||
$kontobewegung = $stmt->fetchAll(PDO::FETCH_ASSOC);
|
$kontobewegung = $stmt->fetchAll(PDO::FETCH_ASSOC);
|
||||||
?>
|
?>
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
@ -146,23 +143,14 @@
|
|||||||
|
|
||||||
<body>
|
<body>
|
||||||
<div class="header">
|
<div class="header">
|
||||||
<a href="kontobewegung_neu.php?id=<?= htmlspecialchars($konto_id) ?>"
|
<a href="kontobewegung_neu.php?id=<?= $konto_id ?>" class="konto_header" id="konto_navigationLinks">
|
||||||
class="konto_header"
|
<img src="img\neueKontobewegung.svg" alt="neue Kontobewegung" class="menue">
|
||||||
id="konto_navigationLinks">
|
|
||||||
Neue Kontobewegung
|
|
||||||
</a>
|
</a>
|
||||||
<?php
|
<h2 class="seitentitel">
|
||||||
if($system == 'test') {
|
<?= $konto_bezeichnung ?>: <?= number_format($konto_kontostand, 2, ",", ".") ?> €
|
||||||
echo '<h2 class="restguthaben">Testsystem</h2>';
|
|
||||||
}
|
|
||||||
?>
|
|
||||||
<h2 class="kontoübersicht" id="h2_kontoübersicht">
|
|
||||||
<?= htmlspecialchars($konto_bezeichnung) ?>: <?= htmlspecialchars(number_format($konto_kontostand, 2, ",", ".")) ?> €
|
|
||||||
</h2>
|
</h2>
|
||||||
<a href="index.php"
|
<a href="index.php" class="konto_header" id="konto_navigationRechts">
|
||||||
class="konto_header"
|
<img src="img\home.svg" alt="Home" class="menue">
|
||||||
id="konto_navigationRechts">
|
|
||||||
HOME
|
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
<div class="inhalt">
|
<div class="inhalt">
|
||||||
@ -171,10 +159,8 @@
|
|||||||
<tr>
|
<tr>
|
||||||
<th id="th_gebucht">gebucht</th>
|
<th id="th_gebucht">gebucht</th>
|
||||||
<th id="th_ausgegeben">
|
<th id="th_ausgegeben">
|
||||||
<!--ausgegeben-->
|
|
||||||
<div class="range-wrapper">
|
<div class="range-wrapper">
|
||||||
<input id="rangePicker" type="text" placeholder="ausgegben" value="<?= htmlspecialchars($selectedRange) ?>">
|
<input id="rangePicker" type="text" placeholder="ausgegben" value="<?= htmlspecialchars($G_selectedRange, ENT_QUOTES, 'UTF-8') ?>">
|
||||||
<!--button id="applyRange" type="button" onClick="datum(< ?= htmlspecialchars($konto_id) ?>)">Anwenden</button-->
|
|
||||||
</div>
|
</div>
|
||||||
</th>
|
</th>
|
||||||
<th id="th_beschreibung">Beschreibung</th>
|
<th id="th_beschreibung">Beschreibung</th>
|
||||||
@ -183,23 +169,20 @@
|
|||||||
</thead>
|
</thead>
|
||||||
<tbody id="tableBody">
|
<tbody id="tableBody">
|
||||||
<?php foreach ($kontobewegung as $y): ?>
|
<?php foreach ($kontobewegung as $y): ?>
|
||||||
<tr <?= $y['kostenfix_id'] ? 'class="konto_fixKosten"' : 'class="standard"' ?>>
|
<tr onClick="ändereUmsatz(<?= $y['kontobewegung_id'] ?>, <?= $konto_id ?>)"
|
||||||
<td class="td_datum"
|
<?= $y['kostenfix_id'] ? 'class="konto_fixKosten"' : 'class="standard"' ?>>
|
||||||
onClick="ändereUmsatz(<?= htmlspecialchars($y['kontobewegung_id']) ?>, <?= htmlspecialchars($konto_id) ?>)">
|
<td class="td_datum">
|
||||||
<?= empty($y['datum_abgebucht']) ? '' : htmlspecialchars($y['datum_abgebucht']) ?>
|
<?= empty($y['datum_abgebucht']) ? '' : $y['datum_abgebucht'] ?>
|
||||||
</td>
|
</td>
|
||||||
<td class="td_datum"
|
<td class="td_datum">
|
||||||
onClick="ändereUmsatz(<?= htmlspecialchars($y['kontobewegung_id']) ?>, <?= htmlspecialchars($konto_id) ?>)">
|
<?= $y['datum_ausgegeben'] ?>
|
||||||
<?= htmlspecialchars($y['datum_ausgegeben']) ?>
|
|
||||||
</td>
|
</td>
|
||||||
<td class="td_text"
|
<td class="td_text">
|
||||||
onClick="ändereUmsatz(<?= htmlspecialchars($y['kontobewegung_id']) ?>, <?= htmlspecialchars($konto_id) ?>)">
|
<?= htmlspecialchars($y['beschreibung'], ENT_QUOTES, 'UTF-8') ?>
|
||||||
<?= htmlspecialchars($y['beschreibung']) ?>
|
|
||||||
</td>
|
</td>
|
||||||
<td class="<?php if($y['betrag'] < 0) echo 'td_zahl_neg';
|
<td class="<?php if($y['betrag'] < 0) echo 'td_zahl_neg';
|
||||||
elseif($y['betrag'] > 0) echo 'td_zahl_pos';
|
elseif($y['betrag'] > 0) echo 'td_zahl_pos';
|
||||||
else echo 'td_zahl_null'; ?>"
|
else echo 'td_zahl_null'; ?>">
|
||||||
onClick="ändereUmsatz(<?= htmlspecialchars($y['kontobewegung_id']) ?>, <?= htmlspecialchars($konto_id) ?>)">
|
|
||||||
<?= number_format($y['betrag'], 2, ",", ".") ?> €
|
<?= number_format($y['betrag'], 2, ",", ".") ?> €
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
@ -213,6 +196,7 @@
|
|||||||
<input id="hiddenInputEditTyp" type="hidden" name="editTyp" value="edit">
|
<input id="hiddenInputEditTyp" type="hidden" name="editTyp" value="edit">
|
||||||
</form>
|
</form>
|
||||||
</div>
|
</div>
|
||||||
|
<?= $system === 'test' ? '<div class="menue"><h2 class="seitentitel">Testsystem</h2></div>' : '' ?>
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
</html>
|
</html>
|
||||||
@ -25,13 +25,7 @@
|
|||||||
FROM kontobewegung
|
FROM kontobewegung
|
||||||
WHERE id = :kontobewegung_id;");
|
WHERE id = :kontobewegung_id;");
|
||||||
$stmt->execute(['kontobewegung_id' => $kontobewegung_id]);
|
$stmt->execute(['kontobewegung_id' => $kontobewegung_id]);
|
||||||
$kontobewegungFetchAll = $stmt->fetchAll(PDO::FETCH_ASSOC);
|
$kontobewegung = $stmt->fetch(PDO::FETCH_ASSOC);
|
||||||
|
|
||||||
if(count($kontobewegungFetchAll) > 1) {
|
|
||||||
//TODO FEHLERHANDLING
|
|
||||||
} else {
|
|
||||||
$kontobewegung = $kontobewegungFetchAll[0];
|
|
||||||
}
|
|
||||||
?>
|
?>
|
||||||
|
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
@ -59,19 +53,20 @@
|
|||||||
name="kontobewegung_submit"
|
name="kontobewegung_submit"
|
||||||
value="speichern"
|
value="speichern"
|
||||||
type="submit">
|
type="submit">
|
||||||
<span>speichern</span>
|
<img src="img\speichern.svg" alt="speichern" class="menue">
|
||||||
</button>
|
</button>
|
||||||
<button class="header"
|
<button class="header"
|
||||||
id="navigationMitte"
|
id="navigationLinks"
|
||||||
name="kontobewegung_submit"
|
name="kontobewegung_submit"
|
||||||
value="löschen"
|
value="löschen"
|
||||||
type="submit">
|
type="submit">
|
||||||
<span>Eintrag löschen</span>
|
<img src="img\löschen.svg" alt="löschen" class="menue">
|
||||||
</button>
|
</button>
|
||||||
<a href="konto.php?id= <?= htmlspecialchars($konto_id) ?>"
|
<h2 class="seitentitel">
|
||||||
class="header"
|
Kontobewegung ändern
|
||||||
id="navigationRechts">
|
</h2>
|
||||||
abbrechen
|
<a href="konto.php?id= <?= htmlspecialchars($konto_id, ENT_QUOTES, 'UTF-8') ?>" class="header" id="navigationRechts">
|
||||||
|
<img src="img\abbrechen.svg" alt="abbrechen" class="menue">
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@ -112,9 +107,9 @@
|
|||||||
<div class="umsatz_div" id="umsatz_rechts">
|
<div class="umsatz_div" id="umsatz_rechts">
|
||||||
<select name="konto_id" class="umsatz_select">
|
<select name="konto_id" class="umsatz_select">
|
||||||
<?php foreach ($konto as $y): ?>
|
<?php foreach ($konto as $y): ?>
|
||||||
<option value="<?= htmlspecialchars($y['id']) ?>"
|
<option value="<?= $y['id'] ?>"
|
||||||
<?= isset($data['konto_id']) && $y['id'] == $data['konto_id'] || $y['id'] == $konto_id ? 'selected' : '' ?>>
|
<?= isset($data['konto_id']) && $y['id'] == $data['konto_id'] || $y['id'] == $konto_id ? 'selected' : '' ?>>
|
||||||
<?= htmlspecialchars($y['bezeichnung']) ?>
|
<?= htmlspecialchars($y['bezeichnung'], ENT_QUOTES, 'UTF-8') ?>
|
||||||
</option>
|
</option>
|
||||||
<?php endforeach; ?>
|
<?php endforeach; ?>
|
||||||
</select>
|
</select>
|
||||||
@ -129,7 +124,7 @@
|
|||||||
<input type="text"
|
<input type="text"
|
||||||
name="beschreibung"
|
name="beschreibung"
|
||||||
class="umsatz_text"
|
class="umsatz_text"
|
||||||
value="<?= $data['beschreibung'] ?? $kontobewegung['beschreibung'] ?>">
|
value="<?= htmlspecialchars($data['beschreibung'] ?? $kontobewegung['beschreibung'], ENT_QUOTES, 'UTF-8') ?>">
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="umsatz_div" id="umsatz_links">
|
<div class="umsatz_div" id="umsatz_links">
|
||||||
|
|||||||
@ -39,12 +39,13 @@
|
|||||||
name="kontobewegung_submit"
|
name="kontobewegung_submit"
|
||||||
value="hinzufügen"
|
value="hinzufügen"
|
||||||
type="submit">
|
type="submit">
|
||||||
<span>hinzufügen</span>
|
<img src="img\speichern.svg" alt="neue Kontobewegung" class="menue">
|
||||||
</button>
|
</button>
|
||||||
<a href="<?= $return ?>"
|
<h2 class="seitentitel">
|
||||||
class="header"
|
neue Kontobewegung hinzufügen
|
||||||
id="navigationRechts">
|
</h2>
|
||||||
abbrechen
|
<a href="<?= htmlspecialchars($return, ENT_QUOTES, 'UTF-8') ?>" class="konto_header" id="konto_navigationRechts">
|
||||||
|
<img src="img\abbrechen.svg" alt="Abbrechen" class="menue">
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
<div class="inhalt">
|
<div class="inhalt">
|
||||||
@ -65,9 +66,9 @@
|
|||||||
<div class="umsatz_div" id="umsatz_rechts">
|
<div class="umsatz_div" id="umsatz_rechts">
|
||||||
<select name="konto_id" class="umsatz_select">
|
<select name="konto_id" class="umsatz_select">
|
||||||
<?php foreach ($konto as $y): ?>
|
<?php foreach ($konto as $y): ?>
|
||||||
<option value="<?= htmlspecialchars($y['id']) ?>"
|
<option value="<?= $y['id'] ?>"
|
||||||
<?= ((isset($data['konto_id']) && $y['id'] == $data['konto_id']) || $y['id'] == $konto_id) ? 'selected' : '' ?>>
|
<?= ((isset($data['konto_id']) && $y['id'] == $data['konto_id']) || $y['id'] == $konto_id) ? 'selected' : '' ?>>
|
||||||
<?= htmlspecialchars($y['bezeichnung']) ?>
|
<?= htmlspecialchars($y['bezeichnung'], ENT_QUOTES, 'UTF-8') ?>
|
||||||
</option>
|
</option>
|
||||||
<?php endforeach; ?>
|
<?php endforeach; ?>
|
||||||
</select>
|
</select>
|
||||||
@ -82,7 +83,9 @@
|
|||||||
<select name="gegenkonto_id" class="umsatz_select">
|
<select name="gegenkonto_id" class="umsatz_select">
|
||||||
<option value="" disabled selected>Überweisung auf</option>
|
<option value="" disabled selected>Überweisung auf</option>
|
||||||
<?php foreach ($konto as $y): ?>
|
<?php foreach ($konto as $y): ?>
|
||||||
<option value="<?=$y['id']?>" <?php if(isset($data['gegenkonto_id'])) { if($y['id'] == $data['gegenkonto_id']) { echo 'selected';}} ?>><?=$y['bezeichnung']?></option>
|
<option value="<?=$y['id']?>" <?php if(isset($data['gegenkonto_id'])) { if($y['id'] == $data['gegenkonto_id']) { echo 'selected';}} ?>>
|
||||||
|
<?= htmlspecialchars($y['bezeichnung'], ENT_QUOTES, 'UTF-8')?>
|
||||||
|
</option>
|
||||||
<?php endforeach; ?>
|
<?php endforeach; ?>
|
||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
@ -93,7 +96,7 @@
|
|||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="umsatz_div" id="umsatz_rechts">
|
<div class="umsatz_div" id="umsatz_rechts">
|
||||||
<input type="text" name="beschreibung" class="umsatz_text" value="<?= $data['beschreibung'] ?? ''?>">
|
<input type="text" name="beschreibung" class="umsatz_text" value="<?= htmlspecialchars($data['beschreibung'] ?? '', ENT_QUOTES, 'UTF-8')?>">
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="umsatz_div" id="umsatz_links">
|
<div class="umsatz_div" id="umsatz_links">
|
||||||
|
|||||||
88
style.css
@ -32,6 +32,11 @@ table {
|
|||||||
width: 100%;
|
width: 100%;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
h2 {
|
||||||
|
font-size: 2.2rem;
|
||||||
|
color: #14748A;
|
||||||
|
}
|
||||||
|
|
||||||
th {
|
th {
|
||||||
border: 1px solid black;
|
border: 1px solid black;
|
||||||
border-collapse: collapse;
|
border-collapse: collapse;
|
||||||
@ -90,19 +95,19 @@ div.header{
|
|||||||
position: fixed;
|
position: fixed;
|
||||||
top: 0;
|
top: 0;
|
||||||
left: 0;
|
left: 0;
|
||||||
width: 97%;
|
width: 100%;
|
||||||
height: 60px;
|
height: 70px;
|
||||||
background-color: #fff;
|
background-color: rgb(210, 210, 210);
|
||||||
display: flex;
|
display: flex;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
justify-content: space-between;
|
justify-content: space-between;
|
||||||
padding: 0 20px;
|
|
||||||
border-bottom: 1px solid #ccc;
|
|
||||||
z-index: 1000;
|
z-index: 1000;
|
||||||
|
padding-top: 20px;
|
||||||
|
padding-bottom: 20px;
|
||||||
}
|
}
|
||||||
|
|
||||||
div.inhalt {
|
div.inhalt {
|
||||||
margin-top: 60px;
|
margin-top: 110px;
|
||||||
height: calc(100vh - 80px);
|
height: calc(100vh - 80px);
|
||||||
overflow-y: auto;
|
overflow-y: auto;
|
||||||
}
|
}
|
||||||
@ -145,7 +150,7 @@ input.umsatz_number {
|
|||||||
|
|
||||||
button.header {
|
button.header {
|
||||||
text-align: center;
|
text-align: center;
|
||||||
background-color: white;
|
background-color: rgb(210, 210, 210);
|
||||||
border-style: none;
|
border-style: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -154,9 +159,46 @@ button.header {
|
|||||||
}
|
}
|
||||||
|
|
||||||
#navigationRechts {
|
#navigationRechts {
|
||||||
|
margin-right: 60px;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.menue {
|
||||||
|
position: fixed;
|
||||||
|
bottom: 50px;
|
||||||
|
left: 0;
|
||||||
|
width: 100%;
|
||||||
|
z-index: 1000;
|
||||||
|
}
|
||||||
|
|
||||||
|
#konto_navigationLinks {
|
||||||
|
margin-left: 20px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#konto_navigationRechts {
|
||||||
margin-right: 20px;
|
margin-right: 20px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#konto_navigationRechts1 {
|
||||||
|
margin-right: 60px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#konto_navigationLinks1 {
|
||||||
|
margin-left: 40px;
|
||||||
|
}
|
||||||
|
|
||||||
|
img.menue {
|
||||||
|
width: 60px;
|
||||||
|
height: 60px;
|
||||||
|
}
|
||||||
|
|
||||||
|
h2.seitentitel {
|
||||||
|
width: 100%;
|
||||||
|
border-style: none;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
}
|
||||||
|
|
||||||
/****************************************/
|
/****************************************/
|
||||||
/* Index */
|
/* Index */
|
||||||
/****************************************/
|
/****************************************/
|
||||||
@ -164,15 +206,15 @@ button.header {
|
|||||||
a.navigation_index {
|
a.navigation_index {
|
||||||
border-style: solid;
|
border-style: solid;
|
||||||
height: 60px;
|
height: 60px;
|
||||||
width: 60%;
|
width: 25%;
|
||||||
float: left;
|
float: left;
|
||||||
border-radius: 15px;
|
border-radius: 15px;
|
||||||
margin-right: 20px;
|
margin-right: 20px;
|
||||||
margin-top: 50px;
|
margin-top: 50px;
|
||||||
margin-left: 20%;
|
margin-left: 45px;
|
||||||
padding-bottom: 15px;
|
padding-bottom: 15px;
|
||||||
padding-top: 15px;
|
padding-top: 15px;
|
||||||
background-color: white;
|
background-color: rgb(210, 210, 210);
|
||||||
font-size: 2.5rem;
|
font-size: 2.5rem;
|
||||||
display: flex;
|
display: flex;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
@ -225,15 +267,6 @@ p.ausgabe {
|
|||||||
text-align: right;
|
text-align: right;
|
||||||
}
|
}
|
||||||
|
|
||||||
h2.restguthaben {
|
|
||||||
width: 100%;
|
|
||||||
/*margin-left: 50%;*/
|
|
||||||
border-style: none;
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
justify-content: center;
|
|
||||||
}
|
|
||||||
|
|
||||||
/****************************************/
|
/****************************************/
|
||||||
/* Konto */
|
/* Konto */
|
||||||
/****************************************/
|
/****************************************/
|
||||||
@ -241,15 +274,6 @@ h2.restguthaben {
|
|||||||
display: none;
|
display: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
h2.kontoübersicht {
|
|
||||||
width: 50%;
|
|
||||||
/*margin-left: 50%;*/
|
|
||||||
border-style: none;
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
justify-content: center;
|
|
||||||
}
|
|
||||||
|
|
||||||
td.td_text {
|
td.td_text {
|
||||||
padding-left: 20px;
|
padding-left: 20px;
|
||||||
}
|
}
|
||||||
@ -289,14 +313,6 @@ td.td_datum {
|
|||||||
vertical-align: middle;
|
vertical-align: middle;
|
||||||
}
|
}
|
||||||
|
|
||||||
#konto_navigationLinks {
|
|
||||||
margin-left: 20px;
|
|
||||||
}
|
|
||||||
|
|
||||||
#konto_navigationRechts {
|
|
||||||
margin-right: 20px;
|
|
||||||
}
|
|
||||||
|
|
||||||
#rangePicker {
|
#rangePicker {
|
||||||
width: 90%;
|
width: 90%;
|
||||||
background-color: rgb(185, 185, 185);
|
background-color: rgb(185, 185, 185);
|
||||||
|
|||||||