Files
Kundenverwaltung/incs/saveNchange.php
T
adminandClaude Opus 5 e6eb55bc4b Initialer Commit: Kundenverwaltung (PHP/Smarty)
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>
2026-08-28 16:41:18 +02:00

882 lines
34 KiB
PHP
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<?php
// LOG
function saveLog($dbconn,$qrystr,$undoqry,$type)
{
$qry=mysqli_query($dbconn,"SELECT id FROM accesstype WHERE typ = '$type'") or $err=error("Fehler beim Eintragen der Aktion in die LOG:<br />".mysqli_error($dbconn));
$res=mysqli_fetch_array($qry);
$qry=mysqli_query($dbconn,"INSERT INTO log SET
typ_id= '$res[0]',
datetime=NOW(),
qry='".mysql_escape_string($qrystr)."',
undo_qry='".mysql_escape_string($undoqry)."',
user_id='".mysql_escape_string($_SESSION["user"])."'")
or $err=error("Fehler beim LOGGEN der Aktion:<br />".mysqli_error($dbconn));
return $err;
}
//##############################################
//########## ADRESSEN ######################
//##############################################
function saveAdress($dbconn)
{
$adressid=mysql_escape_string($_GET["adressid"]);
$land = mysql_escape_string(trim($_POST["land"]));
$ort = mysql_escape_string(trim($_POST["ort"]));
$plz = mysql_escape_string(trim($_POST["plz"]));
$oteil = mysql_escape_string(trim($_POST["oteil"]));
$str = mysql_escape_string(trim($_POST["str"]));
$hnr = mysql_escape_string(trim($_POST["hnr"]));
$firma = mysql_escape_string(trim($_POST["firma"]));
$vname = mysql_escape_string(trim($_POST["vname"]));
$nname = mysql_escape_string(trim($_POST["nname"]));
$vname2 = mysql_escape_string(trim($_POST["vname2"]));
$nname2 = mysql_escape_string(trim($_POST["nname2"]));
$anrede_id = mysql_escape_string(trim($_POST["anrede"]));
$titel_id = mysql_escape_string(trim($_POST["titel"]));
$anrede2_id = mysql_escape_string(trim($_POST["anrede2"]));
$titel2_id = mysql_escape_string(trim($_POST["titel2"]));
$typ_id = mysql_escape_string(trim($_POST["typ"]));
$kunde=mysql_escape_string($_GET["kunde"]);
$gebdat = mysql_escape_string(trim($_POST["gebdat"]));
$gebdat2 = mysql_escape_string(trim($_POST["gebdat2"]));
$zusatz = mysql_escape_string(trim($_POST["zusatz"]));
if(!strlen($gebdat))
$gebdat = "01.01.2100";
else if(strlen($gebdat) < 7)
$gebdat .= ".2099";
if(!strlen($gebdat2))
$gebdat2 = "01.01.2100";
else if(strlen($gebdat2) < 7)
$gebdat2 .= ".2099";
if($adressid && $_POST["overwrite"])
{
message("Adresse wird geändert...");
$act="ändern";
}
elseif($adressid && !$_POST["overwrite"])
{
message("Neue Adresse (update)...");
$act="update";
$qry=mysqli_query($dbconn,"SELECT updated_by FROM partner WHERE id = '$kunde'") or $err=error("Fehler testen auf aktualität:<br />".mysqli_error($dbconn));
$res=mysqli_fetch_assoc($qry);
if($res["updated_by"])
$err=error("Eine solche Adressänderung kann nur mit der aktuellsten Version des Kunden durchgeführt werden.<br />Bitte wechseln Sie zur aktuellsten Version und führen Sie die gewünschen Änderungen dort durch.");
}
else
{
message("Adresse wird angelegt...");
$act="anlegen";
}
if(!$err)
{
$qry=mysqli_query($dbconn,"SELECT id FROM land WHERE land = '$land'") or $err=error("Fehler beim suchen des Landes:<br />".mysqli_error($dbconn));
if($res=mysqli_fetch_array($qry))
$land_id = $res[0];
else
{
$qry=mysqli_query($dbconn,"INSERT INTO land SET land = '$land'") or $err=error("Fehler beim anlegen des Landes:<br />".mysqli_error($dbconn));
$land_id = mysqli_insert_id($dbconn);
if(!$err)
{
$err = saveLog($dbconn,"INSERT INTO land SET land = $land [hat ID $land_id (beim adresse $act)]","DELETE FROM land WHERE id = $land_id","anlegen");
}
}
if(!$err)
{
$qry=mysqli_query($dbconn,"SELECT id FROM ort WHERE land_id = '$land_id' AND ort = '$ort' AND plz = '$plz' AND ortsteil = '$oteil'") or $err=error("Fehler beim suchen des Ortes:<br />".mysqli_error($dbconn));
if($res=mysqli_fetch_array($qry))
$ort_id = $res[0];
else
{
$qry=mysqli_query($dbconn,"INSERT INTO ort SET land_id = '$land_id', ort = '$ort', plz = '$plz', ortsteil = '$oteil'") or $err=error("Fehler beim anlegen des Ortes:<br />".mysqli_error($dbconn));
$ort_id = mysqli_insert_id($dbconn);
if(!$err)
{
$err = saveLog($dbconn,"INSERT INTO ort SET land_id=$land_id,ort = $ort, plz=$plz, ortsteil=$oteil [hat ID $ort_id (beim adresse $act)]","DELETE FROM ort WHERE id = $ort_id","anlegen");
}
}
}
if(!$err)
{
$qry=mysqli_query($dbconn,"SELECT id FROM strasse WHERE ort_id = '$ort_id' AND str = '$str'") or $err=error("Fehler beim suchen der Straße:<br />".mysqli_error($dbconn));
if($res=mysqli_fetch_array($qry))
$str_id = $res[0];
else
{
$qry=mysqli_query($dbconn,"INSERT INTO strasse SET str = '$str', ort_id = '$ort_id'") or $err=error("Fehler beim anlegen der Straße:<br />".mysqli_error($dbconn));
$str_id = mysqli_insert_id($dbconn);
if(!$err)
{
$err = saveLog($dbconn,"INSERT INTO strasse SET str = $str, ort_id = $ort_id [hat ID $str_id (beim adresse $act)]","DELETE FROM strasse WHERE id = $str_id","anlegen");
}
}
}
if(!$err)
{
if($_GET["adressid"] && $_POST["overwrite"])
{
$qry=mysqli_query($dbconn,"SELECT str_id,typ_id, firma, titel_id,vname,nname,vname2,nname2,anrede_id,anrede2_id,titel2_id,hnr FROM adresse
WHERE id='$adressid'") or $err=error("Fehler beim ändern der Adresse:<br />".mysqli_error($dbconn));
$undores=mysqli_fetch_assoc($qry);
$qry=mysqli_query($dbconn,"UPDATE adresse SET
str_id='$str_id',
typ_id='$typ_id',
firma='$firma',
vname='$vname',
nname='$nname',
vname2='$vname2',
nname2='$nname2',
titel_id='$titel_id',
anrede_id='$anrede_id',
titel2_id='$titel2_id',
anrede2_id='$anrede2_id',
gebdat=STR_TO_DATE('$gebdat','%d.%m.%Y'),
gebdat2=STR_TO_DATE('$gebdat2','%d.%m.%Y'),
zusatz='$zusatz',
hnr='$hnr'
WHERE id='$adressid'") or $err=error("Fehler beim ändern der Adresse:<br />".mysqli_error($dbconn));
if(!$err)
{
$err = saveLog($dbconn,"UPDATE adresse SET str_id=$str_id,typ_id=$typ_id,firma=$firma,titel_id=$titel_id,titel_id2='$titel2_id',anrede_id2='$anrede2_id',vname=$vname,nname=$nname,vname2=$vname2,nname2=$nname2,anrede_id=$anrede_id,hnr=$hnr,zusatz='$zusatz' WHERE id=$adressid",
"UPDATE adresse SET str_id=".$undores["str_id"].",typ_id=".$undores["typ_id"].",typ2_id=".$undores["typ2_id"].",anrede2_id=".$undores["anrede2_id"].",firma=".$undores["firma"].",titel_id=".$undores["titel_id"].",vname=".$undores["vname"].",nname=".$undores["nname"].",vname2=".$undores["vname2"].",nname2=".$undores["nname2"].",anrede_id=".$undores["anrede_id"].",hnr=".$undores["hnr"].",zusatz=".$undores["zusatz"]." WHERE id=$adressid",
"ändern");
}
}
elseif($typ_id != 1 || !$_GET["adressid"])
{
$qry=mysqli_query($dbconn,"INSERT INTO adresse SET
str_id='$str_id',
typ_id='$typ_id',
firma='$firma',
vname='$vname',
nname='$nname',
vname2='$vname2',
nname2='$nname2',
titel_id='$titel_id',
anrede_id='$anrede_id',
titel2_id='$titel2_id',
anrede2_id='$anrede2_id',
gebdat=STR_TO_DATE('$gebdat','%d.%m.%Y'),
gebdat2=STR_TO_DATE('$gebdat2','%d.%m.%Y'),
zusatz='$zusatz',
hnr='$hnr',
partner_id='$kunde'") or $err=error("Fehler beim Anlegen der Adresse:<br />".mysqli_error($dbconn));
$adressid=mysqli_insert_id($dbconn);
if(!$err)
{
$err = saveLog($dbconn,"INSERT INTO adresse SET str_id=$str_id,typ_id=$typ_id,firma=$firma,titel_id=$titel_id,titel_id2='$titel2_id',anrede_id2='$anrede2_id',vname='$vname',nname='$nname',vname2='$vname2',nname2='$nname2',anrede_id='$anrede_id',hnr='$hnr',zusatz='$zusatz', partner_id=$kunde [Hat ID $adressid]",
"DELETE FROM adresse WHERE id=$adressid",
"anlegen");
}
}
else
{
$err=updateKunde($dbconn,$kunde);
}
}
}
if(!$err)
{
if($typ_id != 5 && $adressid)
{
mysqli_query($dbconn,"DELETE FROM tel WHERE adress_id = '$adressid'");
}
elseif($typ_id == 5 && $adressid)
{
$qry = mysqli_query($dbconn,"SELECT id FROM tel WHERE adress_id = '$adressid'");
if($res = mysql_fetch_assoc($qry))
$_GET["telid"] = $res["id"];
$_GET["adressid"] = $adressid;
$err = saveTel($dbconn);
}
}
return $err;
}
function dispAdressForm($dbconn,$smarty,$typ=1)
{
if(!$_GET["adressid"])
{
$smarty->assign("head","Neue Adresse anlegen");
$qry=mysqli_query($dbconn, "SELECT anrede_id, titel_id, firma, vname, nname, vname2, nname2
FROM adresse
WHERE adresse.partner_id ='".mysql_escape_string($_GET["kunde"])."' AND adresse.typ_id = 1") or $err=error("Fehler beim auslesen der Daten:<br />".mysqli_error($dbconn));
}
else
{
$smarty->assign("head","Adresse ändern");
$qry=mysqli_query($dbconn, "SELECT anrede_id, zusatz, titel_id, anrede2_id, titel2_id, DATE_FORMAT(gebdat,'%d.%m.%Y') AS gebdat, DATE_FORMAT(gebdat2,'%d.%m.%Y') AS gebdat2, firma, vname, nname, vname2, nname2,str, hnr, ort, ortsteil,plz, land, typ_id, partner_id FROM adresse
JOIN strasse ON strasse.id = adresse.str_id
JOIN ort ON strasse.ort_id = ort.id
JOIN land ON land.id = ort.land_id
WHERE adresse.id ='".mysql_escape_string($_GET["adressid"])."'") or $err=error("Fehler beim Auslesen der Daten:<br />".mysqli_error($dbconn));
}
$res=mysqli_fetch_assoc($qry);
$smarty->assign("kunde",$_GET["kunde"]);
$smarty->assign("firma",$res["firma"]);
$smarty->assign("titel",$res["titel_id"]);
$smarty->assign("anrede",$res["anrede_id"]);
$smarty->assign("titel2",$res["titel2_id"]);
$smarty->assign("anrede2",$res["anrede2_id"]);
$smarty->assign("vname",$res["vname"]);
$smarty->assign("nname",$res["nname"]);
$smarty->assign("vname2",$res["vname2"]);
$smarty->assign("nname2",$res["nname2"]);
$smarty->assign("ort",$res["ort"]);
$smarty->assign("plz",$res["plz"]);
$smarty->assign("hnr",$res["hnr"]);
$smarty->assign("land",$res["land"]);
$smarty->assign("str",$res["str"]);
$smarty->assign("oteil",$res["ortsteil"]);
$smarty->assign("typ",$res["typ_id"]);
$smarty->assign("zusatz",$res["zusatz"]);
$qry=mysqli_query($dbconn, "SELECT tel.id AS telid, ort, name, vwahl, ortsteil, land, plz, typ_id, partner_id, nr FROM tel
JOIN ort ON tel.ort_id = ort.id
JOIN land ON land.id = ort.land_id
WHERE tel.adresse_id ='".mysql_escape_string($_GET["adressid"])."'") or $err=error("Fehler beim Auslesen der Daten:<br />".mysqli_error($dbconn));
if($telres=mysqli_fetch_assoc($qry))
{
$smarty->assign("name",$telres["name"]);
$smarty->assign("ort",$telres["ort"]);
$smarty->assign("plz",$telres["plz"]);
$smarty->assign("nr",$telres["nr"]);
$smarty->assign("vwahl",$telres["vwahl"]);
$smarty->assign("land",$telres["land"]);
$smarty->assign("oteil",$telres["ortsteil"]);
$smarty->assign("teltyp",$telres["typ_id"]);
$_GET["kunde"] = $telres["partner_id"];
$smarty->assign("telid",$telres["telid"]);
}
if($res["gebdat"] != "01.01.2100")
{
if(substr($res["gebdat"],6,4) != "2099")
$smarty->assign("gebdat",$res["gebdat"]);
else
$smarty->assign("gebdat",substr($res["gebdat"],0,5));
}
if($res["gebdat2"] != "01.01.2100")
{
if(substr($res["gebdat2"],6,4) != "2099")
$smarty->assign("gebdat2",$res["gebdat2"]);
else
$smarty->assign("gebdat2",substr($res["gebdat2"],0,5));
}
$smarty->assign("adressid",$_GET["adressid"]);
$_GET["kunde"] = $res["partner_id"];
$qry=mysqli_query($dbconn, "SELECT id,anrede FROM anrede WHERE id < 4");
while($res=mysqli_fetch_assoc($qry))
{
$anrids[] = $res["id"];
$anrnames[] = $res["anrede"];
}
$smarty->assign("anrids",$anrids);
$smarty->assign("anrs",$anrnames);
$qry=mysqli_query($dbconn, "SELECT id,titel FROM titel");
while($res=mysqli_fetch_assoc($qry))
{
$titelids[] = $res["id"];
$titelnames[] = $res["titel"];
}
$smarty->assign("titelids",$titelids);
$smarty->assign("titels",$titelnames);
$qry=mysqli_query($dbconn, "SELECT id,typ FROM adresstyp WHERE id != 1");
while($res=mysqli_fetch_assoc($qry))
{
$typids[] = $res["id"];
$typnames[] = $res["typ"];
}
$smarty->assign("typids",$typids);
$smarty->assign("typs",$typnames);
if($typ == 1)
$smarty->assign("frmact","kundenchange");
elseif($typ == 2)
$smarty->assign("frmact","lieferchange");
$smarty->display("newadress.tpl");
}
//##############################################
//########## TEL.NRN. ######################
//##############################################
function saveTel($dbconn)
{
$telid = mysql_escape_string($_GET["telid"]);
$adressid = mysql_escape_string($_GET["adressid"]);
$land = mysql_escape_string(trim($_POST["land"]));
$ort = mysql_escape_string(trim($_POST["ort"]));
$plz = mysql_escape_string(trim($_POST["plz"]));
$oteil = mysql_escape_string(trim($_POST["oteil"]));
$name = mysql_escape_string(trim($_POST["name"]));
$typ_id = mysql_escape_string(trim($_POST["typ"]));
$nr = mysql_escape_string(trim($_POST["nr"]));
$vwahl = mysql_escape_string(trim($_POST["vwahl"]));
$kunde=mysql_escape_string($_GET["kunde"]);
if(!$telid)
{
message("Telefonnummer wird angelegt...");
$act = "anlegen";
}
else
{
message("Telefonnummer wird geändert...");
$act="ändern";
}
$qry=mysqli_query($dbconn,"SELECT id FROM land WHERE land = '$land'") or $err=error("Fehler beim suchen des Landes:<br />".mysqli_error($dbconn));
if($res=mysqli_fetch_array($qry))
$land_id = $res[0];
else
{
$qry=mysqli_query($dbconn,"INSERT INTO land SET land = '$land'") or $err=error("Fehler beim anlegen des Landes:<br />".mysqli_error($dbconn));
$land_id = mysqli_insert_id($dbconn);
if(!$err)
{
$err = saveLog($dbconn,"INSERT INTO land SET land = $land [hat ID $land_id (beim telefon $act)]",
"DELETE FROM land WHERE id = $land_id",
"anlegen");
}
}
if(!$err)
{
$qry=mysqli_query($dbconn,"SELECT id FROM ort WHERE land_id = '$land_id' AND ort = '$ort' AND plz = '$plz' AND ortsteil = '$oteil'") or $err=error("Fehler beim suchen des Ortes:<br />".mysqli_error($dbconn));
if($res=mysqli_fetch_array($qry))
$ort_id = $res[0];
else
{
$qry=mysqli_query($dbconn,"INSERT INTO ort SET land_id = '$land_id', ort = '$ort', plz = '$plz', ortsteil = '$oteil'") or $err=error("Fehler beim anlegen des Ortes:<br />".mysqli_error($dbconn));
$ort_id = mysqli_insert_id($dbconn);
if(!$err)
{
$err = saveLog($dbconn,"INSERT INTO ort SET land_id=$land_id,ort = $ort, plz=$plz, ortsteil=$oteil [hat ID $ort_id (beim telefon $act)]",
"DELETE FROM ort WHERE id = $ort_id",
"anlegen");
}
}
}
if(!$err)
{
$qry=mysqli_query($dbconn,"SELECT vwahl FROM ort WHERE id = '$ort_id'") or $err=error("Fehler beim ermitteln der Daten für die LOG:<br />".mysqli_error($dbconn));
$undores=mysqli_fetch_assoc($qry);
$qry=mysqli_query($dbconn,"UPDATE ort SET vwahl = '$vwahl' WHERE id = '$ort_id'") or $err=error("Fehler beim anlegen der Vorwahl:<br />".mysqli_error($dbconn));
if(!$err)
{
$err = saveLog($dbconn,"UPDATE ort SET vwahl = $vwahl WHERE id = $ort_id [(beim telefon $act)]",
"UPDATE ort SET vwahl = ".$undores["vwahl"]." WHERE id = $ort_id",
"ändern");
}
if($telid)
{
$qry=mysqli_query($dbconn,"SELECT ort_id,typ_id,name,adresse_id='$adressid',nr FROM tel WHERE id = '$telid'") or $err=error("Fehler beim ermitteln der Daten für die LOG:<br />".mysqli_error($dbconn));
$undores=mysqli_fetch_assoc($qry);
$qry=mysqli_query($dbconn,"UPDATE tel SET
ort_id='$ort_id',
typ_id='$typ_id',
name='$name',
adresse_id='$adressid',
nr='$nr'
WHERE id='$telid'") or $err=error("Fehler beim ändern der Telefonnummer:<br />".mysqli_error($dbconn));
if(!$err)
{
$err = saveLog($dbconn,"UPDATE tel SET ort_id=$ort_id, typ_id=$typ_id, name=$name, adresse_id='$adressid', nr=$nr WHERE id=$telid",
"UPDATE tel SET ort_id=".$undores["ort_id"].", typ_id=".$undores["typ_id"].", name=".$undores["name"].",adresse_id='".$undores["adresse_id"]."', nr=".$undores["nr"]." WHERE id=$telid",
"ändern");
}
}
else
{
$qry=mysqli_query($dbconn,"INSERT INTO tel SET
ort_id='$ort_id',
typ_id='$typ_id',
name='$name',
adresse_id='$adressid',
nr='$nr',
partner_id='$kunde'") or $err=error("Fehler beim Anlegen der Telefonnummer:<br />".mysqli_error($dbconn));
$telid=mysqli_insert_id($dbconn);
if(!$err)
{
$err = saveLog($dbconn,"INSERT INTO tel SET ort_id=$ort_id, typ_id=$typ_id, name=$name, adresse_id='$adressid', nr=$nr, partner_id = $kunde [hat ID $telid]",
"DELETE FROM tel WHERE id=$telid",
"anlegen");
}
}
}
return $err;
}
function dispTelForm($dbconn,$smarty,$typ=1)
{
if(!$_GET["telid"])
{
$smarty->assign("head","Neue Telefonnummer anlegen");
$qry=mysqli_query($dbconn, "SELECT ort, vname, nname, vwahl, ortsteil, land, plz
FROM adresse JOIN strasse ON strasse.id = adresse.str_id JOIN ort ON ort.id = strasse.ort_id JOIN land ON land.id = ort.land_id
WHERE adresse.partner_id ='".mysql_escape_string($_GET["kunde"])."' AND adresse.typ_id = 1") or $err=error("Fehler beim auslesen der Daten:<br />".mysqli_error($dbconn));
}
else
{
$smarty->assign("head","Telefonnummer ändern");
$qry=mysqli_query($dbconn, "SELECT ort, name, vwahl, ortsteil, land, plz, typ_id, partner_id, nr FROM tel
JOIN ort ON tel.ort_id = ort.id
JOIN land ON land.id = ort.land_id
WHERE tel.id ='".mysql_escape_string($_GET["telid"])."'") or $err=error("Fehler beim Auslesen der Daten:<br />".mysqli_error($dbconn));
}
$res=mysqli_fetch_assoc($qry);
if($res["vname"] || $res["nname"])
$res["name"] = $res["vname"]." ".$res["nname"];
$smarty->assign("kunde",$_GET["kunde"]);
$smarty->assign("name",$res["name"]);
$smarty->assign("ort",$res["ort"]);
$smarty->assign("plz",$res["plz"]);
$smarty->assign("nr",$res["nr"]);
$smarty->assign("vwahl",$res["vwahl"]);
$smarty->assign("land",$res["land"]);
$smarty->assign("oteil",$res["ortsteil"]);
$smarty->assign("typ",$res["typ_id"]);
$_GET["kunde"] = $res["partner_id"];
$smarty->assign("telid",$_GET["telid"]);
$qry=mysqli_query($dbconn, "SELECT id,typ FROM teltyp");
while($res=mysqli_fetch_assoc($qry))
{
$typids[] = $res["id"];
$typnames[] = $res["typ"];
}
$smarty->assign("typids",$typids);
$smarty->assign("typs",$typnames);
if($typ == 1)
$smarty->assign("frmact","kundenchange");
elseif($typ == 2)
$smarty->assign("frmact","lieferchange");
$smarty->display("newtel.tpl");
}
//##############################################
//########## KONTAKTE ######################
//##############################################
function saveKontakt($dbconn)
{
$kontaktid = mysql_escape_string($_GET["kontaktid"]);
$kontakt = trim($_POST["kontakt"]);
$typ_id = mysql_escape_string(trim($_POST["typ"]));
$kunde = mysql_escape_string($_GET["kunde"]);
if($kontaktid)
{
message("Kontaktadresse wird geändert...");
$qry=mysqli_query($dbconn,"SELECT kontakt, typ_id FROM kontakt WHERE id = '$kontaktid'") or $err=error("Fehler beim ermitteln der Daten für die LOG:<br />".mysqli_error($dbconn));
$undores=mysqli_fetch_assoc($qry);
$qry=mysqli_query($dbconn,"UPDATE kontakt SET
kontakt='$kontakt',
typ_id='$typ_id'
WHERE id='$kontaktid'") or $err=error("Fehler beim ändern der Kontaktadresse:<br />".mysqli_error($dbconn));
if(!$err)
{
$err = saveLog($dbconn,"UPDATE kontakt SET kontakt='$kontakt',typ_id='$typ_id', WHERE id='$kontaktid'",
"UPDATE kontakt SET kontakt='".$undores["kontakt"]."',typ_id='".$undores["typ_id"]."', WHERE id='".$kontaktid."'",
"ändern");
}
}
else
{
message("Kontaktadresse wird angelegt...");
$qry=mysqli_query($dbconn,"INSERT INTO kontakt SET
kontakt='$kontakt',
typ_id='$typ_id',
partner_id='$kunde'") or $err=error("Fehler beim Anlegen der Kontaktadresse:<br />".mysqli_error($dbconn));
$kontaktid=mysqli_insert_id($dbconn);
if(!$err)
{
$err = saveLog($dbconn,"INSERT INTO kontakt SET kontakt='$kontakt', typ_id='$typ_id', partner_id='$kunde' [Hat ID $kontaktid]",
"DELETE FROM kontakt WHERE id='".$kontaktid."'",
"anlegen");
}
}
return $err;
}
function dispKontaktForm($dbconn,$smarty,$typ=1)
{
if(!$_GET["kontaktid"])
{
$smarty->assign("head","Neue Kontaktadresse anlegen");
$res = array();
}
else
{
$smarty->assign("head","Kontaktadresse ändern");
$qry=mysqli_query($dbconn, "SELECT kontakt, typ_id, partner_id FROM kontakt
WHERE id ='".mysql_escape_string($_GET["kontaktid"])."'") or $err=error("Fehler beim Auslesen der Daten:<br />".mysqli_error($dbconn));
$res=mysqli_fetch_assoc($qry);
}
$smarty->assign("kunde",$_GET["kunde"]);
$smarty->assign("kontakt",$res["kontakt"]);
$smarty->assign("typ",$res["typ_id"]);
$_GET["kunde"] = $res["partner_id"];
$smarty->assign("kontaktid",$_GET["kontaktid"]);
$qry=mysqli_query($dbconn, "SELECT id,typ FROM kontakttyp");
while($res=mysqli_fetch_assoc($qry))
{
$typids[] = $res["id"];
$typnames[] = $res["typ"];
}
$smarty->assign("typids",$typids);
$smarty->assign("typs",$typnames);
if($typ == 1)
$smarty->assign("frmact","kundenchange");
elseif($typ == 2)
$smarty->assign("frmact","lieferchange");
$smarty->display("newkontakt.tpl");
}
//##############################################
//########## NOTIZEN ######################
//##############################################
function saveNotiz($dbconn)
{
$notizid = mysql_escape_string($_GET["notizid"]);
$notiz = trim($_POST["notiz"]);
$color = mysql_escape_string(trim($_POST["color"]));
$kunde = mysql_escape_string($_GET["kunde"]);
if($notizid)
{
message("Notiz wird geändert...");
$qry=mysqli_query($dbconn,"SELECT notiz, color, datetime FROM notiz WHERE id='$notizid'") or $err=error("Fehler beimerfassen der Daten für die LOG:<br />".mysqli_error($dbconn));
$undores=mysqli_fetch_assoc($qry);
$qry=mysqli_query($dbconn,"UPDATE notiz SET
notiz='$notiz',
color='$color',
datetime=NOW()
WHERE id='$notizid'") or $err=error("Fehler beim ändern der Notiz:<br />".mysqli_error($dbconn));
if(!$err)
{
$err = saveLog($dbconn,"UPDATE notiz SET notiz='$notiz',color='$color', datetime=NOW() WHERE id='$notizid'",
"UPDATE notiz SET notiz='".$undores["notiz"]."',color='".$undores["color"]."', datetime='".$undores["datetime"]."' WHERE id='$notizid'",
"ändern");
}
}
else
{
message("Notiz wird angelegt...");
$qry=mysqli_query($dbconn,"INSERT INTO notiz SET
notiz='$notiz',
color='$color',
datetime=NOW(),
partner_id='$kunde'") or $err=error("Fehler beim Anlegen der Notiz:<br />".mysqli_error($dbconn));
$notizid=mysqli_insert_id($dbconn);
if(!$err)
{
$err = saveLog($dbconn,"INSERT INTO notiz SET notiz='$notiz',color='$color', datetime=NOW(), partner_id='$kunde' [Hat ID $notizid]",
"DELETE FROM notiz WHERE id='$notizid'",
"anlegen");
}
}
if($_FILES['notefile']['tmp_name'])
{
//echo "Dateiname: ./".UPLOADS_PATH."notes/".$notizid.".".pathinfo($_FILES["notefile"]["name"],PATHINFO_EXTENSION);
if(!is_dir("./".UPLOADS_PATH."notes/"))
$err = error("Pfad zum speichern existiert nicht");
del_files("./".UPLOADS_PATH."notes/","!^".$notizid."\..*$!");
if(!move_uploaded_file($_FILES['notefile']['tmp_name'], "./".UPLOADS_PATH."notes/".$notizid.".".pathinfo($_FILES["notefile"]["name"],PATHINFO_EXTENSION)))
$err = error("Hochgeladene Datei konnte leider nicht gespeichert werden.");
}
return $err;
}
function dispNotizForm($dbconn,$smarty,$typ=1)
{
if(!$_GET["notizid"])
{
$smarty->assign("head","Neue Notiz anlegen");
$res = array();
}
else
{
$smarty->assign("head","Notiz ändern");
$qry=mysqli_query($dbconn, "SELECT notiz, color, partner_id FROM notiz
WHERE id ='".mysql_escape_string($_GET["notizid"])."'") or $err=error("Fehler beim Auslesen der Daten:<br />".mysqli_error($dbconn));
$res=mysqli_fetch_assoc($qry);
}
$smarty->assign("kunde",$_GET["kunde"]);
$smarty->assign("notiz",$res["notiz"]);
$smarty->assign("color",$res["color"]);
$_GET["kunde"] = $res["partner_id"];
$smarty->assign("notizid",$_GET["notizid"]);
$smarty->assign("colors",array("#fff"=>"<div class='colorbox' style='background-color: #fff;'></div>",
"#afa"=>"<div class='colorbox' style='background-color: #bfb;'></div>",
"#ee0"=>"<div class='colorbox' style='background-color: #ee0;'></div>",
"#fa0"=>"<div class='colorbox' style='background-color: #fa0;'></div>",
"#faa"=>"<div class='colorbox' style='background-color: #faa;'></div>",
"#faf"=>"<div class='colorbox' style='background-color: #faf;'></div>",
"#bbf"=>"<div class='colorbox' style='background-color: #bbf;'></div>",
"#aff"=>"<div class='colorbox' style='background-color: #0ff;'></div>",
"#ccc"=>"<div class='colorbox' style='background-color: #ddd;'></div>"));
if($typ == 1)
$smarty->assign("frmact","kundenchange");
elseif($typ == 2)
$smarty->assign("frmact","lieferchange");
$smarty->display("newnotiz.tpl");
}
//##############################################
//########## PARTNER ######################
//##############################################
function savePart($dbconn,$typ=1)
{
$typ_id = 1;
$kunde=mysql_escape_string($_GET["kunde"]);
message("Partner wird angelegt...");
$act="anlegen";
$qry=mysqli_query($dbconn,"INSERT INTO partner SET datetime_new = NOW(), user_id = '".mysql_escape_string($_SESSION["user"])."', typ_id = $typ, zahlziel_id = 1") or $err=error("Fehler beim anlegen des Parnters:<br />".mysqli_error($dbconn));
$partner_id = mysqli_insert_id($dbconn);
if(!$err)
{
$err = saveLog($dbconn,"INSERT INTO partner SET datetime_new = NOW(), user_id = '".mysql_escape_string($_SESSION["user"])."', typ_id = $typ [Hat ID $partner_id]","DELETE FROM partner WHERE id = $partner_id","anlegen");
}
$_GET["kunde"] = $partner_id;
if(!$err)
{
$_POST["typ"] = 1;
$err=saveAdress($dbconn);
}
if(!$err)
{
$_POST["land"] = mysql_escape_string(trim($_POST["telland"]));
$_POST["ort"] = mysql_escape_string(trim($_POST["telort"]));
$_POST["plz"] = mysql_escape_string(trim($_POST["telplz"]));
$_POST["oteil"] = mysql_escape_string(trim($_POST["teloteil"]));
$_POST["typ"] = $_POST["teltyp"];
if($_POST["nr"])
$err=saveTel($dbconn);
}
return array($err,$partner_id);
}
function dispPartForm($dbconn,$smarty,$typ=1)
{
if($typ == 1)
$typname= "Kunden";
elseif($typ == 2)
$typname = "Zulieferer";
$smarty->assign("head","Neuen $typname anlegen");
$qry=mysqli_query($dbconn, "SELECT id,anrede FROM anrede WHERE id < 4");
while($res=mysqli_fetch_assoc($qry))
{
$anrids[] = $res["id"];
$anrnames[] = $res["anrede"];
}
$smarty->assign("anrids",$anrids);
$smarty->assign("anrs",$anrnames);
$qry=mysqli_query($dbconn, "SELECT id,titel FROM titel");
while($res=mysqli_fetch_assoc($qry))
{
$titelids[] = $res["id"];
$titelnames[] = $res["titel"];
}
$smarty->assign("titelids",$titelids);
$smarty->assign("titels",$titelnames);
$qry=mysqli_query($dbconn, "SELECT id,typ FROM teltyp");
while($res=mysqli_fetch_assoc($qry))
{
$typids[] = $res["id"];
$typnames[] = $res["typ"];
}
$smarty->assign("typids",$typids);
$smarty->assign("typs",$typnames);
$smarty->assign("partyp",$typ);
if($typ == 1)
$smarty->assign("frmact","kundenadd");
elseif($typ == 2)
$smarty->assign("frmact","lieferadd");
$smarty->display("newpar.tpl");
}
function updateKunde($dbconn,$oldkunde)
{
$land = mysql_escape_string(trim($_POST["land"]));
$ort = mysql_escape_string(trim($_POST["ort"]));
$plz = mysql_escape_string(trim($_POST["plz"]));
$oteil = mysql_escape_string(trim($_POST["oteil"]));
$str = mysql_escape_string(trim($_POST["str"]));
$hnr = mysql_escape_string(trim($_POST["hnr"]));
$firma = mysql_escape_string(trim($_POST["firma"]));
$vname = mysql_escape_string(trim($_POST["vname"]));
$nname = mysql_escape_string(trim($_POST["nname"]));
$vname2 = mysql_escape_string(trim($_POST["vname2"]));
$nname2 = mysql_escape_string(trim($_POST["nname2"]));
$anrede_id = mysql_escape_string(trim($_POST["anrede"]));
$titel_id = mysql_escape_string(trim($_POST["titel"]));
$typ_id = 1;
$kunde=mysql_escape_string($_GET["kunde"]);
message("Update von Kunde wird angelegt...");
$act="anlegen";
$qry=mysqli_query($dbconn,"INSERT INTO partner SET datetime_new = NOW(), user_id = '".mysql_escape_string($_SESSION["user"])."', typ_id = 1, zahlziel_id = 1") or $err=error("Fehler beim anlegen des Kunden:<br />".mysqli_error($dbconn));
$partner_id = mysqli_insert_id($dbconn);
if(!$err)
{
$err = saveLog($dbconn,"INSERT INTO partner SET datetime_new = NOW(), user_id = '".mysql_escape_string($_SESSION["user"])."', typ_id = 1 [Hat ID $partner_id]","DELETE FROM partner WHERE id = $partner_id","anlegen");
}
$_GET["kunde"] = $partner_id;
$qry=mysqli_query($dbconn,"SELECT datetime_lastchange, user_id, updated_by FROM partner WHERE id = '$oldkunde'") or $err=error("Fehler beim abrufen der infos für die LOG:<br />".mysqli_error($dbconn));
$undores = mysqli_fetch_assoc($qry);
$qry=mysqli_query($dbconn,"UPDATE partner SET datetime_lastchange = NOW(), user_id = '".mysql_escape_string($_SESSION["user"])."', updated_by = '$partner_id' WHERE id = '$oldkunde'") or $err=error("Fehler beim update des alten Kunden:<br />".mysqli_error($dbconn));
if(!$err)
{
$err = saveLog($dbconn,
"UPDATE partner SET datetime_lastchange = NOW(), user_id = '".mysql_escape_string($_SESSION["user"])."', updated_by = '$partner_id' WHERE id = '$oldkunde'",
"UPDATE partner SET datetime_lastchange = ".$undores["datetime_lastchange"].", user_id = '".$undores["user_id"]."', updated_by = '".$undores["partner_id"]."' WHERE id = '$oldkunde'",
"ändern");
}
if(!$err)
{
$_POST["typ"] = 1;
$_GET["adressid"] = 0;
$err=saveAdress($dbconn);
}
return $err;
}
//##############################################
//########## KONTOS ######################
//##############################################
function saveKonto($dbconn)
{
$kontoid = mysql_escape_string($_GET["kontoid"]);
$bank = mysql_escape_string(trim($_POST["bank"]));
$blz = mysql_escape_string(trim($_POST["blz"]));
$ktonr = mysql_escape_string(trim($_POST["ktonr"]));
$iban = mysql_escape_string(trim($_POST["iban"]));
$swift = mysql_escape_string(trim($_POST["swift"]));
$inhaber = mysql_escape_string(trim($_POST["inhaber"]));
$kunde=mysql_escape_string($_GET["kunde"]);
if(!$kontoid)
{
message("Konto wird angelegt...");
$act = "anlegen";
}
else
{
message("Konto wird geändert...");
$act="ändern";
}
$qry=mysqli_query($dbconn,"SELECT id FROM bank WHERE bank = '$bank' AND blz = '$blz'") or $err=error("Fehler beim suchen der Bank:<br />".mysqli_error($dbconn));
if($res=mysqli_fetch_array($qry))
$bank_id = $res[0];
else
{
$qry=mysqli_query($dbconn,"INSERT INTO bank SET bank = '$bank', blz = '$blz'") or $err=error("Fehler beim anlegen der Bank:<br />".mysqli_error($dbconn));
$bank_id = mysqli_insert_id($dbconn);
if(!$err)
{
$err = saveLog($dbconn,"INSERT INTO bank SET bank = '$bank', blz = '$blz' [hat ID $bank_id (beim konto $act)]",
"DELETE FROM bank WHERE id = $bankk_id",
"anlegen");
}
}
if(!$err)
{
if($kontoid)
{
$qry=mysqli_query($dbconn,"SELECT bank_id, ktonr, iban, swift, inhaber FROM konto WHERE id = '$kontoid'") or $err=error("Fehler beim ermitteln der Daten für die LOG:<br />".mysqli_error($dbconn));
$undores=mysqli_fetch_assoc($qry);
$qry=mysqli_query($dbconn,"UPDATE konto SET
bank_id='$bank_id',
inhaber='$inhaber',
iban='$iban',
swift='$swift',
ktonr='$ktonr'
WHERE id='$kontoid'") or $err=error("Fehler beim ändern des Kontos:<br />".mysqli_error($dbconn));
if(!$err)
{
$err = saveLog($dbconn,"UPDATE konto SET bank_id='$bank_id', inhaber='$inhaber', iban='$iban', swift='$swift', ktonr='$ktonr' WHERE id='$kontoid'",
"UPDATE konto SET bank_id=".$undores["bank_id"].", ktonr=".$undores["ktonr"].", inhaber=".$undores["inhaber"].", iban=".$undores["iban"].", swift=".$undores["swift"]." WHERE id=$telid",
"ändern");
}
}
else
{
$qry=mysqli_query($dbconn,"INSERT INTO konto SET
bank_id='$bank_id',
inhaber='$inhaber',
iban='$iban',
swift='$swift',
ktonr='$ktonr',
partner_id='$kunde'") or $err=error("Fehler beim Anlegen des Kontos:<br />".mysqli_error($dbconn));
$kontoid=mysqli_insert_id($dbconn);
if(!$err)
{
$err = saveLog($dbconn,"INSERT INTO konto SET bank_id='$bank_id', inhaber='$inhaber', iban='$iban', swift='$swift', ktonr='$ktonr' WHERE id='$kontoid'",
"DELETE FROM konto WHERE id=$kontoid",
"anlegen");
}
}
}
return $err;
}
function dispKontoForm($dbconn,$smarty,$typ=1)
{
if(!$_GET["kontoid"])
{
$smarty->assign("head","Neues Konto anlegen");
$qry=mysqli_query($dbconn, "SELECT vname, nname, firma, partner_id FROM adresse
WHERE partner_id ='".mysql_escape_string($_GET["kunde"])."' AND typ_id = 1") or $err=error("Fehler beim auslesen der Daten:<br />".mysqli_error($dbconn));
}
else
{
$smarty->assign("head","Konto ändern");
$qry=mysqli_query($dbconn, "SELECT ktonr, iban, swift, blz, bank, inhaber, partner_id FROM konto
JOIN bank ON konto.bank_id = bank.id
WHERE konto.id ='".mysql_escape_string($_GET["kontoid"])."'") or $err=error("Fehler beim Auslesen der Daten:<br />".mysqli_error($dbconn));
}
$res=mysqli_fetch_assoc($qry);
if($res["vname"] || $res["nname"])
$res["inhaber"] = $res["vname"]." ".$res["nname"];
if($res["firma"])
$res["inhaber"] = $res["firma"];
$smarty->assign("iban",$_GET["iban"]);
$smarty->assign("swift",$res["swift"]);
$smarty->assign("ktonr",$res["ktonr"]);
$smarty->assign("bank",$res["bank"]);
$smarty->assign("blz",$res["blz"]);
$smarty->assign("inhaber",$res["inhaber"]);
$_GET["kunde"] = $res["partner_id"];
$smarty->assign("kunde",$_GET["kunde"]);
$smarty->assign("kontoid",$_GET["kontoid"]);
if($typ == 1)
$smarty->assign("frmact","kundenchange");
elseif($typ == 2)
$smarty->assign("frmact","lieferchange");
$smarty->display("newkonto.tpl");
}
?>