Bestehende Codebasis als Ausgangsstand aufgenommen. - .gitignore: Kundendaten (uploads_*), Smarty-Compile-Cache (templates_c), Laufzeit-Temp und Datenbank-Dumps ausgeschlossen; Verzeichnisstruktur ueber .gitkeep erhalten - .gitattributes: Zeilenenden normalisiert (LF im Repo), Binaerformate markiert - db-backup.php: MySQL-Zugangsdaten kommen jetzt wie im Rest der Anwendung aus der externen Konfiguration statt hartkodiert aus der Datei; Passwort wird ueber eine temporaere Optionsdatei statt per Kommandozeile uebergeben, Fehler von mysqldump/gzip werden gemeldet, Aufraeumen aelterer Backups berechnet Jahr und Monat konsistent Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
121 lines
4.6 KiB
PHP
121 lines
4.6 KiB
PHP
<?php
|
|
if($_GET["id"])
|
|
{
|
|
$qry = mysqli_query($dbconn,"SELECT * FROM partner WHERE id='".mysql_escape_string($_GET["id"])."' AND typ_id = 1");
|
|
$kdnres=mysqli_fetch_assoc($qry);
|
|
$smarty->assign("kunde",$kdnres);
|
|
if($kdnres["id"])
|
|
{
|
|
$qry = mysqli_query($dbconn,"SELECT id, datetime_new FROM partner WHERE updated_by='".$kdnres["id"]."'");
|
|
while($res=mysqli_fetch_assoc($qry))
|
|
{
|
|
$oldrecords[] = $res;
|
|
$qry = mysqli_query($dbconn,"SELECT id, datetime_new FROM partner WHERE updated_by='".$res["id"]."'");
|
|
}
|
|
$smarty->assign("oldrecords",$oldrecords);
|
|
|
|
$qry = mysqli_query($dbconn,"SELECT id, datetime_new FROM partner WHERE id='".$kdnres["updated_by"]."'");
|
|
while($res=mysqli_fetch_assoc($qry))
|
|
{
|
|
$newrecords[] = $res;
|
|
$qry = mysqli_query($dbconn,"SELECT id, datetime_new FROM partner WHERE id='".$res["updated_by"]."'");
|
|
}
|
|
$smarty->assign("newrecords",$newrecords);
|
|
|
|
$tmp = array();
|
|
$qry = mysqli_query($dbconn,"SELECT * FROM anrede");
|
|
while($res=mysqli_fetch_assoc($qry))
|
|
{
|
|
$tmp[$res["id"]] = $res["anrede"];
|
|
}
|
|
$smarty->assign("anr",$tmp);
|
|
|
|
$tmp = array();
|
|
$qry = mysqli_query($dbconn,"SELECT * FROM titel");
|
|
while($res=mysqli_fetch_assoc($qry))
|
|
{
|
|
$tmp[$res["id"]] = $res["titel"];
|
|
}
|
|
$smarty->assign("titel",$tmp);
|
|
|
|
|
|
|
|
$qry = mysqli_query($dbconn,"SELECT name,typ,tel.id,nr,ort,ortsteil,plz,vwahl, ort.id AS ort_id FROM tel LEFT JOIN teltyp ON typ_id = teltyp.id LEFT JOIN ort ON ort_id = ort.id WHERE partner_id='".mysql_escape_string($_GET["id"])."' AND tel.adresse_id = 0 ORDER BY typ_id ASC");
|
|
while($res=mysqli_fetch_assoc($qry))
|
|
{
|
|
$tels[] = $res;
|
|
}
|
|
$smarty->assign("telnrn",$tels);
|
|
|
|
|
|
$qry = mysqli_query($dbconn,"SELECT kontakt.id, kontakt, partner_id, typ FROM kontakt LEFT JOIN kontakttyp ON kontakttyp.id = kontakt.typ_id WHERE partner_id='".mysql_escape_string($_GET["id"])."' ORDER BY typ_id ASC");
|
|
while($res=mysqli_fetch_assoc($qry))
|
|
{
|
|
$contacts[] = $res;
|
|
}
|
|
$smarty->assign("contacts",$contacts);
|
|
|
|
$tmp = array();
|
|
$qry = mysqli_query($dbconn,"SELECT ktonr,iban,swift,blz,bank,partner_id,konto.id,inhaber
|
|
FROM konto JOIN bank ON konto.bank_id = bank.id WHERE partner_id='".mysql_escape_string($_GET["id"])."'")
|
|
or $err=error("Fehler beim auslesen der Konten:<br />". mysqli_error($dbconn));
|
|
while($res=mysqli_fetch_assoc($qry))
|
|
{
|
|
$tmp[] = $res;
|
|
}
|
|
$smarty->assign("kontos",$tmp);
|
|
|
|
|
|
$qry = mysqli_query($dbconn,"SELECT * FROM notiz WHERE partner_id='".mysql_escape_string($_GET["id"])."'");
|
|
while($res=mysqli_fetch_assoc($qry))
|
|
{
|
|
$res["file"] = search_file("./".UPLOADS_PATH."notes/","!^".$res["id"]."\.(.)+$!");
|
|
$notes[] = $res;
|
|
}
|
|
|
|
|
|
$qry = mysqli_query($dbconn,"SELECT COUNT(rechnr) AS nr_mahn, NOW() AS datetime FROM rechnung WHERE typ_id = 6 AND partner_id = '".mysql_escape_string($_GET["id"])."'") or $err=error("Fehler beim Auslesen der Daten:<br />".mysqli_error($dbconn));
|
|
$res=mysqli_fetch_assoc($qry);
|
|
if($res["nr_mahn"] > 0)
|
|
{
|
|
$mahn["notiz"] = "ACHTUNG! Es sind bereits ".$res["nr_mahn"]." Mahnungen für diesen Kunden vorhanden!!";
|
|
$mahn["color"] = "#f76";
|
|
$mahn["datetime"] = $res["datetime"];
|
|
$notes[] = $mahn;
|
|
}
|
|
$smarty->assign("notes",$notes);
|
|
$qry = mysqli_query($dbconn,"SELECT plz, ortsteil, tel.nr, ort.vwahl, ort, str, DATE_FORMAT(gebdat,'%d.%m.%Y') AS gebdat, DATE_FORMAT(gebdat2,'%d.%m.%Y') AS gebdat2, hnr, vname, nname, vname2, nname2, firma, adresse.id, land, anrede_id, titel_id, anrede2_id, titel2_id, adresstyp.typ, adresse.typ_id
|
|
FROM adresse JOIN
|
|
adresstyp ON adresstyp.id = adresse.typ_id
|
|
LEFT JOIN strasse ON str_id = strasse.id
|
|
LEFT JOIN ort ON ort_id = ort.id
|
|
LEFT JOIN land ON land_id = land.id
|
|
LEFT JOIN tel ON tel.adresse_id = adresse.id
|
|
WHERE adresse.partner_id='".mysql_escape_string($_GET["id"])."' AND adresse.typ_id != 5
|
|
ORDER BY typ_id ASC")or $err=error("Mysql-Fehler:<br />".mysqli_error($dbconn));
|
|
while($res=mysqli_fetch_assoc($qry))
|
|
{
|
|
$adressen[] = $res;
|
|
}
|
|
$smarty->assign("adressen",$adressen);
|
|
|
|
$qry = mysqli_query($dbconn,"SELECT id
|
|
FROM adresse WHERE adresse.partner_id='".mysql_escape_string($_GET["id"])."' AND adresse.typ_id = 5
|
|
ORDER BY typ_id ASC")or $err=error("Mysql-Fehler:<br />".mysqli_error($dbconn));
|
|
if(mysqli_fetch_array($qry))
|
|
$smarty->assign("kommadressen",1);
|
|
|
|
$tmp=array();
|
|
$qry = mysqli_query($dbconn,"SELECT typ, id FROM rechtyp");
|
|
while($res=mysqli_fetch_assoc($qry))
|
|
{
|
|
$tmp[] = $res;
|
|
}
|
|
$smarty->assign("rechtypen",$tmp);
|
|
|
|
|
|
}
|
|
}
|
|
$_SESSION["camefrom"] ="kundenshow&id=".$_GET["id"];
|
|
$smarty->display("kundenshow.tpl");
|
|
?>
|