summaryrefslogtreecommitdiff
path: root/contract.php
diff options
context:
space:
mode:
Diffstat (limited to 'contract.php')
-rw-r--r--contract.php111
1 files changed, 111 insertions, 0 deletions
diff --git a/contract.php b/contract.php
new file mode 100644
index 0000000..e180142
--- /dev/null
+++ b/contract.php
@@ -0,0 +1,111 @@
+<?php
+/*
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ */
+?>
+<?php
+/* vim: set ts=4 sw=4 et : */
+
+require_once __DIR__ . "/check_auth.php";
+require_once __DIR__ . "/../includes/common.php";
+require_once __DIR__ . "/lookup.php";
+require_once __DIR__ . "/lookup_more.php";
+
+(function () use ($mysqli) {
+ global $foerdID, $persID, $orgaID, $persXorga;
+
+ $sql = "
+SELECT
+ contracts.*,
+ contracts.contact AS APID,
+ Förderer.*,
+ Förderer.ID AS FoerdID,
+ Organisationen.Name AS Förderer,
+ Organisationen.ID AS OrgaID,
+ contracts.id AS ID,
+ ((150 * contracts.ss_months) + (150 * contracts.ls_months)) AS Summe,
+ CONCAT(IF(Förderer.`SEPA-Lastschrift erteilt`, 'SEPA|', ''), IF(SUM(Spenden.Betrag) > 0, SUM(Spenden.Betrag), 0)) AS Eingang,
+ IF(Förderer.`SEPA-Lastschrift erteilt`, 0, ((150 * contracts.ss_months) + (150 * contracts.ls_months)) - IF(SUM(Spenden.Betrag) > 0, SUM(Spenden.Betrag), 0)) AS Fehlbetrag
+FROM contracts
+LEFT JOIN Förderer ON contracts.patron = Förderer.ID
+LEFT JOIN Organisationen ON Förderer.Organisation = Organisationen.ID
+LEFT JOIN Spenden ON contracts.id = Spenden.contract
+WHERE contracts.id=?
+";
+ $stmt = $mysqli->prepare($sql);
+ $stmt->bind_param('i', $_GET['id']);
+ $stmt->execute();
+ $r = $stmt->get_result();
+ $l = $r->fetch_object();
+ $foerdID = $l->FoerdID;
+ $persID = $l->PersID;
+ $orgaID = $l->OrgaID;
+
+ $_title = 'Vertrag (ID ' . $_GET['id'] . ')' . ' zu: <span class="pii">' . $l->Förderer . '</span>';
+ include_once __DIR__ . "/header.php";
+?>
+
+<h1 style="display: inline-block;"><?=$_title?></h1>
+&nbsp;<button class="small" onclick="showNewNoteDialog({'foerdid': <?=$foerdID?>, 'orgaid': <?=$orgaID?>});"><i class="fas fa-sticky-note"></i> Notiz anlegen</button>
+&nbsp;<button class="small" style="background-color: red;" onclick="location.href='/db/main/delcontractc.php?id=<?=$l->ID?>';"><i class="fas fa-trash-alt"></i></sup> Datensatz löschen</button>
+
+<?php
+ $sql = "SELECT Personen.ID, Personen.Nachname, Personen.Vorname FROM Personen_Organisationen INNER JOIN Personen ON Personen_Organisationen.Person = Personen.ID WHERE Personen_Organisationen.Organisation = ? ORDER BY Personen.Nachname";
+ $stmt = $mysqli->prepare($sql);
+ $stmt->bind_param('i', $orgaID);
+ $stmt->bind_result($id, $nachname, $vorname);
+ $stmt->execute();
+ $persXorga = [];
+ while ($stmt->fetch()) {
+ $persXorga[$id] = $nachname . ", " . $vorname;
+ }
+ $stmt->reset();
+
+ $id = "contract";
+ $entrytable = "contracts";
+ $def = [
+ "Förderer",
+ [10, '_FoerdID', '_=3Förderer', '_=3legal|rechtsformen~Rechtsform', '_=3Zuständig|demo'],
+ "Vertrag",
+ [10, '=2call#string|callsByID', 'valid_from#isodate~gültig von', 'valid_to#isodate~gültig bis', '=2ls#number~Anzahl Leistungsstipendien', 'ls_months#number~Monate', '=2ss#number~Anzahl Sozialstipendien', 'ss_months#number~Monate'],
+ [10, '_APID', '=5contact|persXorga~Ansprechpartner', '_Summe', '_Eingang', '_=2Fehlbetrag'],
+ [10, '=9remark~Anmerkung', '+=1kontrolliert'],
+ ['*widmung'],
+ ];
+
+ include __DIR__ . '/autoform.php';
+})();
+
+(function () {
+ $title = "Spenden zum Vertrag";
+ $id = "donationsXcontract2";
+ $sql = "
+SELECT
+ Spenden.ID AS SpendenID,
+ Spenden.Person AS PersID,
+ Personen.Nachname,
+ Personen.Vorname,
+ Spenden.Organisation AS OrgaID,
+ Organisationen.Name AS Organisation,
+ Spenden.Betrag,
+ DATE(Spenden.Geldeingang) AS Geldeingang
+FROM Spenden
+LEFT JOIN Personen ON Spenden.Person = Personen.ID
+LEFT JOIN Organisationen ON Spenden.Organisation = Organisationen.ID
+WHERE Spenden.contract=" . $_GET['id'];
+
+ $thdef = ['SpendenID', 'PersID', 'Nachname', 'Vorname', 'OrgaID', 'Organisation', 'Betrag', 'Geldeingang'];
+ $order = '[[1, "desc"]]';
+ $ajax = $nospinner = true;
+ include __DIR__ . '/autotable.php';
+})();
+
+include_once __DIR__ . '/footer.php';