Dateien nach "/" hochladen
This commit is contained in:
+148
@@ -0,0 +1,148 @@
|
||||
<?php
|
||||
|
||||
include "functions.php";
|
||||
include "header.php";
|
||||
include "headerline.php";
|
||||
include "nav.php";
|
||||
|
||||
|
||||
|
||||
?>
|
||||
<!-- Banner -->
|
||||
<section id="banner">
|
||||
<div class="content">
|
||||
|
||||
<?php
|
||||
if(checkKaffeelisteAdmin($conn, $mailadress)){
|
||||
|
||||
// Funktion zum Berechnen der Gesamtausgabe und Gesamtstriche pro Mitarbeiter
|
||||
function berechneGesamtausgabe($mitarbeiterID, $conn) {
|
||||
// Gesamtausgabe für Kaffeeverbrauch pro Mitarbeiter
|
||||
$sqlAusgabe = "SELECT SUM(Kosten) AS Gesamtausgabe FROM kl_Kaffeeverbrauch WHERE MitarbeiterID = ?";
|
||||
$stmtAusgabe = sqlsrv_query($conn, $sqlAusgabe, array($mitarbeiterID));
|
||||
$rowAusgabe = sqlsrv_fetch_array($stmtAusgabe, SQLSRV_FETCH_ASSOC);
|
||||
$gesamtausgabe = $rowAusgabe['Gesamtausgabe'];
|
||||
|
||||
return $gesamtausgabe;
|
||||
}
|
||||
|
||||
// Funktion zum Berechnen der Gesamtstriche pro Mitarbeiter
|
||||
function berechneGesamtstriche($mitarbeiterID, $conn) {
|
||||
// Gesamtstriche pro Mitarbeiter
|
||||
$sqlStriche = "SELECT SUM(AnzahlStriche) AS Gesamtstriche FROM kl_Kaffeeverbrauch WHERE MitarbeiterID = ?";
|
||||
$stmtStriche = sqlsrv_query($conn, $sqlStriche, array($mitarbeiterID));
|
||||
$rowStriche = sqlsrv_fetch_array($stmtStriche, SQLSRV_FETCH_ASSOC);
|
||||
$gesamtstriche = $rowStriche['Gesamtstriche'];
|
||||
|
||||
return $gesamtstriche;
|
||||
}
|
||||
// Funktion zum Berechnen der Gesamteinzahlungen pro Mitarbeiter
|
||||
function berechneGesamteinzahlungen($mitarbeiterID, $conn) {
|
||||
// Gesamteinzahlungen pro Mitarbeiter
|
||||
$sqlEinzahlungen = "SELECT SUM(Betrag) AS Gesamteinzahlungen FROM kl_Einzahlungen WHERE MitarbeiterID = ?";
|
||||
$stmtEinzahlungen = sqlsrv_query($conn, $sqlEinzahlungen, array($mitarbeiterID));
|
||||
$rowEinzahlungen = sqlsrv_fetch_array($stmtEinzahlungen, SQLSRV_FETCH_ASSOC);
|
||||
$gesamteinzahlungen = $rowEinzahlungen['Gesamteinzahlungen'];
|
||||
|
||||
return $gesamteinzahlungen;
|
||||
}
|
||||
|
||||
|
||||
// Mitglieder aus der Datenbank abrufen
|
||||
$sqlMitglieder = "SELECT MitarbeiterID, Name, Email FROM kl_Mitarbeiter WHERE aktiv = 1 ORDER BY Name";
|
||||
$stmtMitglieder = sqlsrv_query($conn, $sqlMitglieder);
|
||||
?>
|
||||
|
||||
<!DOCTYPE html>
|
||||
<html lang="de">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>Kaffeeliste - Aktive Mitarbeiter mit Gesamtstand</title>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<h2>Aktive Mitarbeiter mit Gesamtstand</h2>
|
||||
<br>
|
||||
<ul class="actions">
|
||||
<li>
|
||||
<form action="exportKaffeeliste.php" method="get">
|
||||
<button type="submit">Kaffeeliste exportieren</button>
|
||||
</form>
|
||||
</li>
|
||||
<li>
|
||||
<form action="letzteneintraege.php" method="get">
|
||||
<button type="submit">Letzten Einträge</button>
|
||||
</form>
|
||||
</li>
|
||||
<li>
|
||||
<form action="csvupload.php" method="get">
|
||||
<button type="submit">CSV Upload</button>
|
||||
</form>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<br>
|
||||
<table border="1" class="table table-striped table-bordered">
|
||||
<tr>
|
||||
<th>Name</th>
|
||||
<th>E-Mail</th>
|
||||
<th>Aktueller Stand</th>
|
||||
<th>Gesamtausgabe (€)</th>
|
||||
<th>Gesamtstriche</th>
|
||||
<th>Gesamteinzahlungen</th>
|
||||
|
||||
</tr>
|
||||
<?php
|
||||
|
||||
while ($row = sqlsrv_fetch_array($stmtMitglieder, SQLSRV_FETCH_ASSOC)) {
|
||||
$mitarbeiterID = $row['MitarbeiterID'];
|
||||
$name = $row['Name'];
|
||||
$email = $row['Email'];
|
||||
|
||||
$gesamtausgabe = berechneGesamtausgabe($mitarbeiterID, $conn);
|
||||
$gesamtstriche = berechneGesamtstriche($mitarbeiterID, $conn);
|
||||
|
||||
$gesamteinzahlungen = berechneGesamteinzahlungen($mitarbeiterID, $conn);
|
||||
|
||||
$differenztemp = $gesamteinzahlungen - $gesamtausgabe;
|
||||
$differenz = number_format($differenztemp, 2, ',', '.');
|
||||
$gesamtausgabe = number_format($gesamtausgabe, 2, ',', '.');
|
||||
$gesamteinzahlungen = number_format($gesamteinzahlungen, 2, ',', '.');
|
||||
$gesamtstriche = number_format($gesamtstriche, 0, ',', '.');
|
||||
|
||||
echo "<tr>";
|
||||
echo "<td><a href=teilnehmerauswertung.php?user_id=$mitarbeiterID>{$name}</a></td>";
|
||||
echo "<td>{$email}</td>";
|
||||
echo "<td>{$differenz} €</td>";
|
||||
echo "<td>{$gesamtausgabe} €</td>";
|
||||
echo "<td>{$gesamtstriche}</td>";
|
||||
echo "<td>{$gesamteinzahlungen} €</td>";
|
||||
|
||||
echo "</tr>";
|
||||
|
||||
}
|
||||
|
||||
?>
|
||||
</table>
|
||||
<br><br>
|
||||
|
||||
<form action="mailversenden.php" method="get">
|
||||
<button type="submit">Info-Mail versenden</button>
|
||||
</form>
|
||||
|
||||
|
||||
|
||||
|
||||
<?php
|
||||
}else{
|
||||
echo "<h2>Kein Zugriff</h2>";
|
||||
|
||||
}
|
||||
?>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
|
||||
|
||||
<?php include "footer.php"; ?>
|
||||
@@ -0,0 +1,238 @@
|
||||
<?php
|
||||
|
||||
include "functions.php";
|
||||
include "header.php";
|
||||
include "headerline.php";
|
||||
include "nav.php";
|
||||
|
||||
|
||||
|
||||
?>
|
||||
<!-- Banner -->
|
||||
<section id="banner">
|
||||
<div class="content">
|
||||
|
||||
<?php
|
||||
if(checkKaffeelisteAdmin($conn, $mailadress)){
|
||||
|
||||
// Funktion zum Berechnen der Gesamtausgabe und Gesamtstriche pro Mitarbeiter
|
||||
function berechneGesamtausgabe($mitarbeiterID, $conn) {
|
||||
// Gesamtausgabe für Kaffeeverbrauch pro Mitarbeiter
|
||||
$sqlAusgabe = "SELECT SUM(Kosten) AS Gesamtausgabe FROM kl_Kaffeeverbrauch WHERE MitarbeiterID = ?";
|
||||
$stmtAusgabe = sqlsrv_query($conn, $sqlAusgabe, array($mitarbeiterID));
|
||||
$rowAusgabe = sqlsrv_fetch_array($stmtAusgabe, SQLSRV_FETCH_ASSOC);
|
||||
$gesamtausgabe = $rowAusgabe['Gesamtausgabe'];
|
||||
|
||||
return $gesamtausgabe;
|
||||
}
|
||||
|
||||
// Funktion zum Berechnen der Gesamtstriche pro Mitarbeiter
|
||||
function berechneGesamtstriche($mitarbeiterID, $conn) {
|
||||
// Gesamtstriche pro Mitarbeiter
|
||||
$sqlStriche = "SELECT SUM(AnzahlStriche) AS Gesamtstriche FROM kl_Kaffeeverbrauch WHERE MitarbeiterID = ?";
|
||||
$stmtStriche = sqlsrv_query($conn, $sqlStriche, array($mitarbeiterID));
|
||||
$rowStriche = sqlsrv_fetch_array($stmtStriche, SQLSRV_FETCH_ASSOC);
|
||||
$gesamtstriche = $rowStriche['Gesamtstriche'];
|
||||
|
||||
return $gesamtstriche;
|
||||
}
|
||||
// Funktion zum Berechnen der Gesamteinzahlungen pro Mitarbeiter
|
||||
function berechneGesamteinzahlungen($mitarbeiterID, $conn) {
|
||||
// Gesamteinzahlungen pro Mitarbeiter
|
||||
$sqlEinzahlungen = "SELECT SUM(Betrag) AS Gesamteinzahlungen FROM kl_Einzahlungen WHERE MitarbeiterID = ?";
|
||||
$stmtEinzahlungen = sqlsrv_query($conn, $sqlEinzahlungen, array($mitarbeiterID));
|
||||
$rowEinzahlungen = sqlsrv_fetch_array($stmtEinzahlungen, SQLSRV_FETCH_ASSOC);
|
||||
$gesamteinzahlungen = $rowEinzahlungen['Gesamteinzahlungen'];
|
||||
|
||||
return $gesamteinzahlungen;
|
||||
}
|
||||
|
||||
|
||||
|
||||
// Funktion zum Löschen einer Einzahlung
|
||||
function loescheEinzahlung($einzahlungID, $conn) {
|
||||
try {
|
||||
$sql = "DELETE FROM kl_Einzahlungen WHERE EinzahlungsID = ?";
|
||||
$params = array($einzahlungID);
|
||||
|
||||
$stmt = sqlsrv_query($conn, $sql, $params);
|
||||
|
||||
if ($stmt === false) {
|
||||
throw new Exception(print_r(sqlsrv_errors(), true));
|
||||
}
|
||||
|
||||
return true; // Erfolgreich gelöscht
|
||||
} catch (Exception $e) {
|
||||
return $e->getMessage(); // Fehlermeldung zurückgeben
|
||||
}
|
||||
}
|
||||
|
||||
// Überprüfen, ob ein Löschvorgang angefordert wurde
|
||||
if ($_SERVER["REQUEST_METHOD"] == "POST" && isset($_POST["aktion"]) && $_POST["aktion"] == "loescheneinzahlung") {
|
||||
$einzahlungID = $_POST["einzahlungID"];
|
||||
|
||||
$ergebnis = loescheEinzahlung($einzahlungID, $conn);
|
||||
|
||||
if ($ergebnis === true) {
|
||||
echo "Einzahlung erfolgreich gelöscht.";
|
||||
} else {
|
||||
echo "Fehler: $ergebnis";
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
// SQL-Abfrage für die letzten 100 Einzahlungen
|
||||
$sqlEinzahlungen = "SELECT TOP 100 kl_Mitarbeiter.Name AS MitarbeiterName, kl_Einzahlungen.EinzahlungsID, kl_Einzahlungen.Betrag, kl_Einzahlungen.Datum
|
||||
FROM kl_Einzahlungen
|
||||
JOIN kl_Mitarbeiter ON kl_Einzahlungen.MitarbeiterID = kl_Mitarbeiter.MitarbeiterID
|
||||
ORDER BY kl_Einzahlungen.Datum DESC";
|
||||
|
||||
$stmtEinzahlungen = sqlsrv_query($conn, $sqlEinzahlungen);
|
||||
|
||||
?>
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>Letzte 100 Einzahlungen</title>
|
||||
</head>
|
||||
|
||||
|
||||
<h2>Letzte 100 Einzahlungen</h2>
|
||||
|
||||
<table border="1" class="table table-striped">
|
||||
<tr>
|
||||
<th>Name des Mitarbeiters</th>
|
||||
<th>Betrag</th>
|
||||
<th>Datum</th>
|
||||
<th>Aktion</th>
|
||||
</tr>
|
||||
<?php
|
||||
while ($row = sqlsrv_fetch_array($stmtEinzahlungen, SQLSRV_FETCH_ASSOC)) {
|
||||
$einzahlungID = $row['EinzahlungsID'];
|
||||
$mitarbeiterName = $row['MitarbeiterName'];
|
||||
$betrag = $row['Betrag'];
|
||||
$datum = $row['Datum']->format('Y-m-d H:i:s'); // Das Format kann angepasst werden
|
||||
$betrag = number_format($betrag, 2, ',', '.');
|
||||
echo "<tr>";
|
||||
echo "<td>{$mitarbeiterName}</td>";
|
||||
echo "<td>{$betrag}</td>";
|
||||
echo "<td>{$datum}</td>";
|
||||
echo "<td>";
|
||||
echo "<form method='post' action='{$_SERVER["PHP_SELF"]}'>";
|
||||
echo "<input type='hidden' name='aktion' value='loescheneinzahlung'>";
|
||||
echo "<input type='hidden' name='einzahlungID' value='{$einzahlungID}'>";
|
||||
echo "<button type='submit'>Löschen</button>";
|
||||
echo "</form>";
|
||||
echo "</td>";
|
||||
echo "</tr>";
|
||||
}
|
||||
?>
|
||||
</table>
|
||||
|
||||
<br><br>
|
||||
<?php
|
||||
// Funktion zum Löschen eines Strich-Eintrags
|
||||
function loescheStrichEintrag($strichID, $conn) {
|
||||
try {
|
||||
$sql = "DELETE FROM kl_Kaffeeverbrauch WHERE VerbrauchID = ?";
|
||||
$params = array($strichID);
|
||||
|
||||
$stmt = sqlsrv_query($conn, $sql, $params);
|
||||
|
||||
if ($stmt === false) {
|
||||
throw new Exception(print_r(sqlsrv_errors(), true));
|
||||
}
|
||||
|
||||
return true; // Erfolgreich gelöscht
|
||||
} catch (Exception $e) {
|
||||
return $e->getMessage(); // Fehlermeldung zurückgeben
|
||||
}
|
||||
}
|
||||
|
||||
// Überprüfen, ob ein Löschvorgang angefordert wurde
|
||||
if ($_SERVER["REQUEST_METHOD"] == "POST" && isset($_POST["aktion"]) && $_POST["aktion"] == "loeschen") {
|
||||
$strichID = $_POST["strichID"];
|
||||
|
||||
$ergebnis = loescheStrichEintrag($strichID, $conn);
|
||||
|
||||
if ($ergebnis === true) {
|
||||
echo "Strich-Eintrag erfolgreich gelöscht.";
|
||||
} else {
|
||||
echo "Fehler: $ergebnis";
|
||||
}
|
||||
}
|
||||
|
||||
// SQL-Abfrage für die letzten 100 Strich-Einträge
|
||||
$sqlStriche = "SELECT TOP 100 kl_Kaffeeverbrauch.VerbrauchID, kl_Mitarbeiter.Name AS MitarbeiterName, kl_Kaffeeverbrauch.AnzahlStriche, kl_Kaffeeverbrauch.Kosten, kl_Kaffeeverbrauch.Datum
|
||||
FROM kl_Kaffeeverbrauch
|
||||
JOIN kl_Mitarbeiter ON kl_Kaffeeverbrauch.MitarbeiterID = kl_Mitarbeiter.MitarbeiterID
|
||||
ORDER BY kl_Kaffeeverbrauch.Datum DESC";
|
||||
|
||||
$stmtStriche = sqlsrv_query($conn, $sqlStriche);
|
||||
|
||||
?>
|
||||
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>Letzte 100 Strich-Einträge</title>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<h2>Letzte 100 Strich-Einträge</h2>
|
||||
|
||||
<table border="1" class="table table-striped">
|
||||
<tr>
|
||||
<th>Name des Mitarbeiters</th>
|
||||
<th>Anzahlstriche</th>
|
||||
<th>Betrag</th>
|
||||
<th>Datum</th>
|
||||
<th>Aktion</th>
|
||||
</tr>
|
||||
<?php
|
||||
while ($row = sqlsrv_fetch_array($stmtStriche, SQLSRV_FETCH_ASSOC)) {
|
||||
$strichID = $row['VerbrauchID'];
|
||||
$mitarbeiterName = $row['MitarbeiterName'];
|
||||
$anzahlStriche = $row['AnzahlStriche'];
|
||||
$betrag = $row['Kosten'];
|
||||
$datum = $row['Datum']->format('Y-m-d H:i:s'); // Das Format kann angepasst werden
|
||||
$anzahlStriche = number_format($anzahlStriche, 0, ',', '.');
|
||||
$betrag = number_format($betrag, 0, ',', '.');
|
||||
echo "<tr>";
|
||||
echo "<td>{$mitarbeiterName}</td>";
|
||||
echo "<td>{$anzahlStriche}</td>";
|
||||
echo "<td>{$betrag}</td>";
|
||||
echo "<td>{$datum}</td>";
|
||||
echo "<td>";
|
||||
echo "<form method='post' action='{$_SERVER["PHP_SELF"]}'>";
|
||||
echo "<input type='hidden' name='aktion' value='loeschen'>";
|
||||
echo "<input type='hidden' name='strichID' value='{$strichID}'>";
|
||||
echo "<button type='submit'>Löschen</button>";
|
||||
echo "</form>";
|
||||
echo "</td>";
|
||||
echo "</tr>";
|
||||
}
|
||||
?>
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
|
||||
</body>
|
||||
</html>
|
||||
<?php
|
||||
}else{
|
||||
echo "<h2>Kein Zugriff</h2>";
|
||||
|
||||
}
|
||||
?>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
|
||||
|
||||
<?php include "footer.php"; ?>
|
||||
@@ -0,0 +1,50 @@
|
||||
<?php
|
||||
|
||||
include "functions.php";
|
||||
include "header.php";
|
||||
include "headerline.php";
|
||||
include "nav.php";
|
||||
|
||||
|
||||
?>
|
||||
|
||||
|
||||
|
||||
<!-- Banner -->
|
||||
<section id="banner">
|
||||
<div class="content">
|
||||
|
||||
<?php
|
||||
|
||||
if(checkKaffeelisteAccess($conn, $mailadress)){
|
||||
|
||||
echo "<h2>Kaffeeliste</h2>";
|
||||
echo "Hallo " . getUserName($conn,$mailadress) . "!<br><br>";
|
||||
|
||||
// MitarbeiterID anhand der E-Mail-Adresse abrufen
|
||||
// Mitglieder aus der Datenbank abrufen
|
||||
$sqlMitglieder = "SELECT MitarbeiterID, Name, Email FROM kl_Mitarbeiter WHERE aktiv = 1 ORDER BY Name";
|
||||
$stmtMitglieder = sqlsrv_query($conn, $sqlMitglieder);
|
||||
|
||||
|
||||
while ($row = sqlsrv_fetch_array($stmtMitglieder, SQLSRV_FETCH_ASSOC)) {
|
||||
$mitarbeiterID = $row['MitarbeiterID'];
|
||||
$name = $row['Name'];
|
||||
$email = $row['Email'];
|
||||
|
||||
echo "{$email};";
|
||||
|
||||
|
||||
}
|
||||
|
||||
}else{
|
||||
echo "<h2>Sie haben keine Zugang zu dieser Webseite</h2>";
|
||||
}
|
||||
?>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<?php include "footer.php";
|
||||
|
||||
?>
|
||||
@@ -0,0 +1,142 @@
|
||||
<?php
|
||||
|
||||
include "functions.php";
|
||||
include "header.php";
|
||||
include "headerline.php";
|
||||
include "nav.php";
|
||||
|
||||
|
||||
|
||||
?>
|
||||
|
||||
|
||||
<!-- Banner -->
|
||||
<section id="banner">
|
||||
<div class="content">
|
||||
|
||||
<?php
|
||||
use PHPMailer\PHPMailer\PHPMailer;
|
||||
use PHPMailer\PHPMailer\SMTP;
|
||||
use PHPMailer\PHPMailer\Exception;
|
||||
|
||||
require 'PHPMailer/src/Exception.php';
|
||||
require 'PHPMailer/src/PHPMailer.php';
|
||||
require 'PHPMailer/src/SMTP.php';
|
||||
|
||||
|
||||
// Funktion zum Berechnen des Gesamtstands
|
||||
function berechneGesamtstand($mitarbeiterID, $conn) {
|
||||
// Kosten aus Kaffeeverbrauch abrufen
|
||||
$sqlKosten = "SELECT SUM(Kosten) AS GesamtKosten FROM kl_Kaffeeverbrauch WHERE MitarbeiterID = ?";
|
||||
$paramsKosten = array($mitarbeiterID);
|
||||
$stmtKosten = sqlsrv_query($conn, $sqlKosten, $paramsKosten);
|
||||
|
||||
if ($stmtKosten === false) {
|
||||
die(print_r(sqlsrv_errors(), true));
|
||||
}
|
||||
|
||||
$rowKosten = sqlsrv_fetch_array($stmtKosten, SQLSRV_FETCH_ASSOC);
|
||||
$gesamtKosten = $rowKosten['GesamtKosten'];
|
||||
|
||||
// Einzahlungen abrufen
|
||||
$sqlEinzahlungen = "SELECT SUM(Betrag) AS GesamtEinzahlungen FROM kl_Einzahlungen WHERE MitarbeiterID = ?";
|
||||
$paramsEinzahlungen = array($mitarbeiterID);
|
||||
$stmtEinzahlungen = sqlsrv_query($conn, $sqlEinzahlungen, $paramsEinzahlungen);
|
||||
|
||||
if ($stmtEinzahlungen === false) {
|
||||
die(print_r(sqlsrv_errors(), true));
|
||||
}
|
||||
|
||||
$rowEinzahlungen = sqlsrv_fetch_array($stmtEinzahlungen, SQLSRV_FETCH_ASSOC);
|
||||
$gesamtEinzahlungen = $rowEinzahlungen['GesamtEinzahlungen'];
|
||||
|
||||
// Gesamtstand berechnen (Kosten - Einzahlungen)
|
||||
$gesamtstand = $gesamtKosten - $gesamtEinzahlungen;
|
||||
|
||||
return $gesamtstand;
|
||||
}
|
||||
|
||||
// SQL-Abfrage für alle Mitarbeiter
|
||||
$sqlMitarbeiter = "SELECT MitarbeiterID, Name, Email FROM kl_Mitarbeiter WHERE aktiv='1'";
|
||||
$stmtMitarbeiter = sqlsrv_query($conn, $sqlMitarbeiter);
|
||||
|
||||
// E-Mail-Versand für jeden Mitarbeiter
|
||||
while ($row = sqlsrv_fetch_array($stmtMitarbeiter, SQLSRV_FETCH_ASSOC)) {
|
||||
$mitarbeiterID = $row['MitarbeiterID'];
|
||||
$name = trim($row['Name']);
|
||||
$email = $row['Email'];
|
||||
// Gesamtstand berechnen
|
||||
$gesamtstand = berechneGesamtstand($mitarbeiterID, $conn);
|
||||
$stand = abs($gesamtstand);
|
||||
$body = "Hallo $name,<br><br>";
|
||||
|
||||
if($gesamtstand > 0){
|
||||
$body .= "hier ist dein aktueller negativer Kaffeekassenstand. <br>
|
||||
Bitte zahle folgenden Betrag in die Kaffeekasse ein: {$stand} Euro.<br>
|
||||
<br>Es kann nur noch per Paypal bezahlt werden.<br>
|
||||
Dein Link: https://www.paypal.me/kaffeekassesb3/{$stand}<br>
|
||||
<b>Bezahle immer über die Freunde-Funktion von Paypal. Ansonsten stellen wir 20% des eingezahlten Betrags als Gebühr in Rechnung.</b><br>
|
||||
";
|
||||
|
||||
}else{
|
||||
$body .= "hier ist dein aktuelles Guthaben in der Kaffeeliste: {$stand} Euro.<br>
|
||||
<br>";
|
||||
}
|
||||
|
||||
$body .= "
|
||||
Deinen aktuellen Stand findest du auch hier: <a href='https://kaffeeliste.arge.aok/'>https://kaffeeliste.arge.aok/</a><br>
|
||||
<br>
|
||||
<b>Hast du Fragen oder Probleme? Dann lies immer zu erst unsere <a href=https://kaffeeliste.arge.aok/faq.php>FAQs</a>. Danke! </b><br>
|
||||
<br>
|
||||
Vielen Dank!<br>
|
||||
Deine Kaffeekasse<br>
|
||||
<br>
|
||||
Dein Guthaben ist auf dem nächsten Ausdruck der Kaffeeliste einsehbar. Um die Umwelt zu schonen erfolgt ein neuer Ausdruck erst, wenn die Liste voll ist.<br>
|
||||
";
|
||||
|
||||
|
||||
|
||||
// PHPMailer initialisieren
|
||||
$mail = new PHPMailer(true);
|
||||
|
||||
try {
|
||||
//Server settings
|
||||
$mail->SMTPDebug = SMTP::DEBUG_OFF; // Disable debugging
|
||||
$mail->Timeout = 120;
|
||||
|
||||
$mail->isSMTP();
|
||||
$mail->Host = 'smtpv.aoknds.aok'; // SMTP server
|
||||
|
||||
## Hier wird absichtlich keine Authentifizierung genutzt.
|
||||
|
||||
|
||||
#$mail->SMTPAuth = true;
|
||||
#$mail->Username = ''; // SMTP username
|
||||
#$mail->Password = ''; // SMTP password
|
||||
#$mail->SMTPSecure = PHPMailer::ENCRYPTION_STARTTLS; // Enable TLS encryption; `PHPMailer::ENCRYPTION_SMTPS` also accepted
|
||||
#$mail->Port = 587; // TCP port to connect to
|
||||
|
||||
//Recipients
|
||||
$mail->setFrom('kaffeelistesb3@nds.aok.de', 'Kaffeeliste ARGE');
|
||||
$mail->addAddress($email, $name); // Add a recipient
|
||||
|
||||
// Content
|
||||
$mail->isHTML(true); // Set email format to HTML
|
||||
$mail->Subject = "Kaffeeliste ARGE - Dein Stand";
|
||||
$mail->Body = utf8_decode($body);
|
||||
|
||||
$mail->send();
|
||||
echo "E-Mail erfolgreich an $name gesendet.<br>";
|
||||
} catch (Exception $e) {
|
||||
echo "E-Mail konnte nicht gesendet werden. Fehler: {$mail->ErrorInfo}<br>";
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
?>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<?php include "footer.php"; ?>
|
||||
@@ -0,0 +1,262 @@
|
||||
<?php
|
||||
|
||||
|
||||
include "functions.php";
|
||||
include "header.php";
|
||||
include "headerline.php";
|
||||
include "nav.php";
|
||||
|
||||
|
||||
?>
|
||||
|
||||
<!-- Banner -->
|
||||
<section id="banner">
|
||||
<div class="content">
|
||||
|
||||
|
||||
<?php
|
||||
|
||||
if(checkKaffeelisteAdmin($conn, $mailadress)){
|
||||
|
||||
|
||||
// Funktion zum Anlegen, Bearbeiten und Deaktivieren von Mitgliedern
|
||||
function bearbeiteMitglied($aktion, $mitgliedID, $name, $email, $aktiv, $admin, $conn) {
|
||||
try {
|
||||
if ($aktion === 'anlegen') {
|
||||
$sql = "INSERT INTO kl_Mitarbeiter (Name, Email, aktiv, admin) VALUES (?, ?, ?, ?)";
|
||||
} elseif ($aktion === 'bearbeitenspeichern') {
|
||||
$sql = "UPDATE kl_Mitarbeiter SET Name = ?, Email = ?, aktiv = ?, admin = ? WHERE MitarbeiterID = ?";
|
||||
} elseif ($aktion === 'aktivieren') {
|
||||
$sql = "UPDATE kl_Mitarbeiter SET aktiv = 1 WHERE MitarbeiterID = ?";
|
||||
} elseif ($aktion === 'deaktivieren') {
|
||||
$sql = "UPDATE kl_Mitarbeiter SET aktiv = 0 WHERE MitarbeiterID = ?";
|
||||
} else {
|
||||
throw new Exception("Ungültige Aktion.");
|
||||
}
|
||||
|
||||
$params = array($name, $email, $aktiv, $admin);
|
||||
|
||||
// Füge die MitarbeiterID nur bei Bearbeitung hinzu
|
||||
if ($aktion === 'bearbeitenspeichern' ) {
|
||||
array_push($params, $mitgliedID);
|
||||
}elseif($aktion === 'aktivieren' || $aktion === 'deaktivieren'){
|
||||
$params = array($mitgliedID);
|
||||
}
|
||||
|
||||
$stmt = sqlsrv_query($conn, $sql, $params);
|
||||
|
||||
if ($stmt === false) {
|
||||
throw new Exception(print_r(sqlsrv_errors(), true));
|
||||
}
|
||||
|
||||
return true; // Erfolgreich
|
||||
} catch (Exception $e) {
|
||||
return $e->getMessage(); // Fehlermeldung zurückgeben
|
||||
}
|
||||
}?>
|
||||
|
||||
<!-- Formular für das Bearbeiten von Mitgliedern -->
|
||||
<?php
|
||||
if ($_SERVER["REQUEST_METHOD"] == "POST" && isset($_POST["aktion"]) && $_POST["aktion"] === 'bearbeiten') {
|
||||
$mitgliedID = $_POST["mitgliedID"];
|
||||
|
||||
// Informationen des ausgewählten Mitglieds abrufen
|
||||
$sqlEinzelmitglied = "SELECT * FROM kl_Mitarbeiter WHERE MitarbeiterID = ?";
|
||||
$stmtEinzelmitglied = sqlsrv_query($conn, $sqlEinzelmitglied, array($mitgliedID));
|
||||
$einzelmitglied = sqlsrv_fetch_array($stmtEinzelmitglied, SQLSRV_FETCH_ASSOC);
|
||||
?>
|
||||
<h3>Bearbeiten von <?php echo $einzelmitglied['Name']; ?></h3>
|
||||
<form method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]); ?>">
|
||||
<input type="hidden" name="aktion" value="bearbeitenspeichern">
|
||||
<input type="hidden" name="mitgliedID" value="<?php echo $mitgliedID; ?>">
|
||||
|
||||
<label for="name">Name:</label>
|
||||
<input type="text" name="name" id="name" value="<?php echo $einzelmitglied['Name']; ?>" required>
|
||||
|
||||
<label for="email">E-Mail:</label>
|
||||
<input type="email" name="email" id="email" value="<?php echo $einzelmitglied['Email']; ?>" required>
|
||||
<br>
|
||||
<div class="form-check">
|
||||
<input class="form-check-input" type="checkbox" name="aktiv" id="aktiv" <?php echo $einzelmitglied['aktiv'] ? 'checked' : ''; ?>>
|
||||
<label class="form-check-label" for="aktiv">Aktiv:</label>
|
||||
|
||||
</div>
|
||||
<div class="form-check">
|
||||
<input class="form-check-input" type="checkbox" name="admin" id="admin" <?php echo $einzelmitglied['admin'] ? 'checked' : ''; ?>>
|
||||
<label class="form-check-label" for="admin">Administrator:</label>
|
||||
|
||||
</div>
|
||||
<button type="submit">Speichern</button>
|
||||
</form>
|
||||
<?php
|
||||
}
|
||||
|
||||
// Verarbeitung des Formulars, wenn es gesendet wurde
|
||||
elseif ($_SERVER["REQUEST_METHOD"] == "POST") {
|
||||
$aktion = $_POST["aktion"];
|
||||
|
||||
if ($aktion === 'anlegen' || $aktion === 'bearbeitenspeichern') {
|
||||
$mitgliedID = isset($_POST["mitgliedID"]) ? $_POST["mitgliedID"] : null;
|
||||
$name = $_POST["name"];
|
||||
$email = $_POST["email"];
|
||||
$aktiv = isset($_POST["aktiv"]) ? 1 : 0;
|
||||
$admin = isset($_POST["admin"]) ? 1 : 0;
|
||||
|
||||
$ergebnis = bearbeiteMitglied($aktion, $mitgliedID, $name, $email, $aktiv, $admin, $conn);
|
||||
|
||||
if ($ergebnis === true) {
|
||||
echo "Aktion erfolgreich durchgeführt.";
|
||||
} else {
|
||||
echo "Fehler: $ergebnis";
|
||||
}
|
||||
} elseif ($aktion === 'aktivieren') {
|
||||
$mitgliedID = $_POST["mitgliedID"];
|
||||
|
||||
$ergebnis = bearbeiteMitglied('aktivieren', $mitgliedID, null, null, null, null, $conn);
|
||||
|
||||
if ($ergebnis === true) {
|
||||
echo "Mitglied erfolgreich aktiviert.";
|
||||
} else {
|
||||
echo "Fehler: $ergebnis";
|
||||
}
|
||||
} elseif ($aktion === 'deaktivieren') {
|
||||
$mitgliedID = $_POST["mitgliedID"];
|
||||
|
||||
$ergebnis = bearbeiteMitglied('deaktivieren', $mitgliedID, null, null, null, null, $conn);
|
||||
|
||||
if ($ergebnis === true) {
|
||||
echo "Mitglied erfolgreich deaktiviert.";
|
||||
} else {
|
||||
echo "Fehler: $ergebnis";
|
||||
}
|
||||
}
|
||||
}else{
|
||||
|
||||
|
||||
// Mitglieder aus der Datenbank abrufen
|
||||
$sqlMitglieder = "SELECT MitarbeiterID, Name, Email, aktiv, admin FROM kl_Mitarbeiter ORDER BY Name";
|
||||
$stmtMitglieder = sqlsrv_query($conn, $sqlMitglieder);
|
||||
?>
|
||||
|
||||
<!DOCTYPE html>
|
||||
<html lang="de">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>Kaffeeliste - Mitglieder verwalten</title>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<h2>Mitglieder verwalten</h2>
|
||||
|
||||
<!-- Formular für das Anlegen und Bearbeiten von Mitgliedern -->
|
||||
<form method="post" action="<?php # echo htmlspecialchars($_SERVER["PHP_SELF"]); ?>">
|
||||
<input type="hidden" name="aktion" id="aktion" value="anlegen">
|
||||
|
||||
<label for="name">Name:</label>
|
||||
<input type="text" name="name" id="name" required>
|
||||
|
||||
<label for="email">E-Mail:</label>
|
||||
<input type="email" name="email" id="email" required>
|
||||
<br>
|
||||
<div class="form-check">
|
||||
|
||||
<input class="form-check-input" type="checkbox" name="aktiv" id="aktiv" checked>
|
||||
<label class="form-check-label" for="aktiv">Aktiv</label>
|
||||
</div>
|
||||
<div class="form-check">
|
||||
|
||||
<input class="form-check-input" type="checkbox" name="admin" id="admin" >
|
||||
<label class="form-check-label" for="admin">Administrator</label>
|
||||
</div>
|
||||
<button type="submit">Mitglied anlegen</button>
|
||||
</form>
|
||||
|
||||
|
||||
<!-- Tabelle zur Anzeige und Bearbeitung von Mitgliedern -->
|
||||
<table class="table table-striped">
|
||||
<tr>
|
||||
<th>Mitglied ID</th>
|
||||
<th>Name</th>
|
||||
<th>E-Mail</th>
|
||||
<th>Aktiv</th>
|
||||
<th>Administrator</th>
|
||||
<th>Aktionen</th>
|
||||
</tr>
|
||||
<?php
|
||||
|
||||
while ($row = sqlsrv_fetch_array($stmtMitglieder, SQLSRV_FETCH_ASSOC)) {
|
||||
|
||||
echo '<tr >';
|
||||
echo "<td>{$row['MitarbeiterID']}</td>";
|
||||
echo "<td>{$row['Name']}</td>";
|
||||
echo "<td>{$row['Email']}</td>";
|
||||
echo "<td>{$row['aktiv']}</td>";
|
||||
echo "<td>{$row['admin']}</td>";
|
||||
echo "<td>";
|
||||
echo '<ul class="actions">
|
||||
<li>';
|
||||
|
||||
echo "<form method='post' action='{$_SERVER["PHP_SELF"]}'>";
|
||||
echo "<input type='hidden' name='aktion' value='bearbeiten'>";
|
||||
echo "<input type='hidden' name='mitgliedID' value='{$row['MitarbeiterID']}'>";
|
||||
echo "<button type='submit'>Bearbeiten</button>";
|
||||
echo "</form></li><li>";
|
||||
|
||||
|
||||
if ($row['aktiv'] == 1) {
|
||||
echo "<form method='post' action='{$_SERVER["PHP_SELF"]}'>";
|
||||
echo "<input type='hidden' name='aktion' value='deaktivieren'>";
|
||||
echo "<input type='hidden' name='mitgliedID' value='{$row['MitarbeiterID']}'>";
|
||||
echo "<button type='submit'>Deaktivieren</button>";
|
||||
echo "</form>";
|
||||
} else {
|
||||
echo "<form method='post' action='{$_SERVER["PHP_SELF"]}'>";
|
||||
echo "<input type='hidden' name='aktion' value='aktivieren'>";
|
||||
echo "<input type='hidden' name='mitgliedID' value='{$row['MitarbeiterID']}'>";
|
||||
echo "<button type='submit'>Aktivieren</button>";
|
||||
echo "</form>";
|
||||
}
|
||||
echo "</li></ul></td>";
|
||||
echo "</tr>";
|
||||
|
||||
}
|
||||
?>
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
|
||||
<?php
|
||||
}
|
||||
?>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
||||
|
||||
<?php
|
||||
|
||||
}else{
|
||||
echo "<h2>Sie haben keine Zugang zu dieser Webseite</h2>";
|
||||
}
|
||||
## Auskommentierung
|
||||
##<link rel="stylesheet" href="/DataTables/datatables.css" />
|
||||
|
||||
?>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
|
||||
|
||||
<script src="/DataTables/datatables.js"></script>
|
||||
|
||||
|
||||
<script>
|
||||
$(document).ready( function () {
|
||||
$('#myTable').DataTable();
|
||||
} );
|
||||
</script>
|
||||
|
||||
<?php include "footer.php"; ?>
|
||||
|
||||
Reference in New Issue
Block a user