--- a/fhiiqm/inc/vertragtab_ins.inc.php Fri Jan 17 08:50:55 2014 +0100
+++ b/fhiiqm/inc/vertragtab_ins.inc.php Wed Aug 06 09:42:40 2014 +0200
@@ -1,175 +1,182 @@
-<?php
-
-/**
- * @author Bettina Schwarzer, Fritz-Haber-Institut
- * @copyright 06/2011
- *
- * INSERT Vertragsdaten in n:m-Tabellen fuer INSERT und UPDATE Vertragsdaten
- */
-
- // Loeschen der alten Bearbeiter, Hinzufuegen der neuen
- $retb = true;
- $sql = "DELETE FROM Vertrag_Bearbeiter WHERE contract_ID = $cid";
- $retd = $dbc -> execute($sql);
- if ($retd)
- {
- if (is_array($vtr['cpers']))
- {
- foreach ($vtr['cpers'] as $pers)
- {
- if ($pers != -1)
- {
- $sql = "INSERT INTO Vertrag_Bearbeiter VALUES($cid, $pers)";
- // echo "INSERT Bearbeiter: $sql<br><br>\n";
- $retb = $dbc -> execute($sql);
- }
- }
- }
-
- }
-
- // Partner
- $retp = true;
- if ($vtr['partid'] != -1)
- {
- // Loeschen alter Partner, INSERT neuer
- $sql = "DELETE FROM Vertrag_Partner WHERE contract_ID = $cid";
- $retdp = $dbc -> execute($sql);
- if ($retdp)
- {
- $sql = "INSERT INTO Vertrag_Partner VALUES($cid," . $vtr['partid'] .")";
- $retp = $dbc -> execute($sql);
- if (!$retp) echo "error INSERT Vertrag_Partner: " . $dbc -> error . " <br />\n";
- }
- $pid = $vtr['partid'];
- }
- if ($vtr['partner'])
- {
- // Test, ob Eintrag schon vorhanden
- $sql = "SELECT part_ID, part_firma FROM Partner WHERE part_firma = '" . ltrim($vtr['partner']) . "'";
- if ($res = $dbc -> queryObjectArray($sql))
- {
- foreach ($res as $row)
- $pid = $row->part_ID;
- }
- else
- {
- // INSERT in Partner, ID INSERT in Vertrag_Partner
- $sql = "INSERT INTO Partner (part_firma) VALUES (LEFT(TRIM('" . $vtr['partner'] . "'),50))";
- $retp = $dbc -> execute($sql);
- // echo "Partner INSERT: $sql<br />\n";
- if ($retp) $pid = $dbc -> insertId();
- }
- if ($pid)
- {
- // Loeschen alter Partner, INSERT neuer
- $sql = "DELETE FROM Vertrag_Partner WHERE contract_ID = $cid";
- $retdp = $dbc -> execute($sql);
- if ($retdp)
- {
- $sql = "INSERT INTO Vertrag_Partner VALUES($cid,$pid)";
- $retp = $dbc -> execute($sql);
- if (!$retp) echo "error INSERT Vertrag_Partner: " . $dbc -> error . " <br />\n";
- }
- }
- }
-
- // Produkt
- $retd = true;
- if ($vtr['prodid'] > 0 || $vtr['prodid'] = -1) // nur Produkte, keine Gruppen, Bereiche
- {
- // Loeschen altes Produkt, INSERT neues
- $sql = "DELETE FROM Produkt_Vertrag WHERE contract_ID = $cid";
- $retdd = $dbc -> execute($sql);
- if ($retdd && $vtr['prodid'] > 0)
- {
- //INSERT in Produkt_Vertrag
- $sql = "INSERT INTO Produkt_Vertrag VALUES(".$vtr['prodid'].",$cid)";
- $retd = $dbc -> execute($sql);
- if (!$retd) echo "error INSERT Produkt_Vertrag: " . $dbc -> error . " <br />\n";
- }
-
- }
-
- // Kosten
- $retk = true;
- if ($vtr['kost'] && ($vtr['bjahr'] || $vtr['bdat'])) // Kosten fuer mindestens Startjahr
- {
- if ($vtr['bdat'])
- {
- $jahr = new DateTime($vtr['bdat']);
- $bjahr = $jahr->format('Y');
- }
- else $bjahr = $vtr['bjahr'];
-
- // alle bisherigen Angaben loeschen
- $sql = "DELETE FROM Vertrag_Kosten WHERE contract_ID = $cid";
- $retdk = $dbc -> execute($sql);
- if ($retdk)
- {
- $j=0;
- if ($vtr['ejahr'] || $vtr['edat'])
- {
- if ($vtr['ejahr']) $ejahr = $vtr['ejahr'];
- else
- {
- $jahr = new DateTime($vtr['edat']);
- $ejahr = $jahr->format('Y');
- }
- }
- elseif ($vtr["cautoend"] && !$vtr['ejahr'] && !$vtr['edat']) // automatische Vertragsverlaengerung und kein Endjahr angegeben
- $ejahr = date("Y");
- else
- $ejahr = null;
-// if ($vtr['ejahr']) // Endjahr angegeben
- if ($ejahr) // Endjahr angegeben
- {
- for ($i=(int)$bjahr; $i< (int)$ejahr +1; $i++)
- {
- if ($vtr['kost'][$j])
- {
-// $kost = str_replace(',','.',$vtr['kost'][$j]);
- $kost = dbformat_wert($vtr['kost'][$j]);
- $sql = "INSERT INTO Vertrag_Kosten (contract_ID,k_year,kosten) VALUES($cid,$i,$kost)";
- $retk = $dbc -> execute($sql);
- }
- $j++;
- }
- }
- else // nur fuer Startjahr
- {
- if ($vtr['kost'][0])
- {
-// $kost = str_replace(',','.',$vtr['kost'][0]);
- $kost = dbformat_wert($vtr['kost'][0]);
- $sql = "INSERT INTO Vertrag_Kosten (contract_ID,k_year,kosten) VALUES($cid,".(int)$bjahr.",$kost)";
- $retk = $dbc -> execute($sql);
- }
- }
- if (!$retk) echo "error INSERT Vertrag_Kosten: " . $dbc -> error . "<br />$sql<br />\n";
- }
- }
-
- // Vertragfile und Schlagwort
- $retl = true;
- if (is_array($vtr['cfname']) && count($vtr['cfname']) > 0)
- {
- // alle bisherigen Dokumente loeschen
- $sql = "DELETE FROM Vertrag_File WHERE contract_ID = $cid";
- $retdl = $dbc -> execute($sql);
- if ($retdl)
- {
- foreach ($vtr['cfname'] as $key => $value)
- {
- if ($value)
- {
- if (!$vtr['swort'][$key] || $vtr['swort'][$key]<"!") $sw = "NULL"; else $sw = "'".$vtr['swort'][$key]."'";
- if (substr($value,0,$len) != $cid . "_") $file = $cid . "_".$value; else $file = $value;
- $sql = "INSERT INTO Vertrag_File (contract_ID,cf_filename,cf_schlagwort) VALUES ($cid,'$file',$sw)";
- $retl = $retl && $dbc -> execute($sql);
- }
- }
- if (!$retl) echo "error INSERT Vertrag_File: " . $dbc -> error . "<br />$sql<br />\n";
- }
- }
+<?php
+
+/**
+ * @author Bettina Schwarzer, Fritz-Haber-Institut
+ * @copyright 06/2011
+ *
+ * INSERT Vertragsdaten in n:m-Tabellen fuer INSERT und UPDATE Vertragsdaten
+ */
+
+ // Loeschen der alten Bearbeiter, Hinzufuegen der neuen
+ $retb = true;
+ $sql = "DELETE FROM Vertrag_Bearbeiter WHERE contract_ID = $cid";
+ $retd = $dbc -> execute($sql);
+ if ($retd)
+ {
+ if (is_array($vtr['cpers']))
+ {
+ foreach ($vtr['cpers'] as $pers)
+ {
+ if ($pers != -1)
+ {
+ $sql = "INSERT INTO Vertrag_Bearbeiter VALUES($cid, $pers)";
+ // echo "INSERT Bearbeiter: $sql<br><br>\n";
+ $retb = $dbc -> execute($sql);
+ }
+ }
+ }
+
+ }
+
+ // Partner
+ $retp = true;
+ if ($vtr['partid'] != -1)
+ {
+ // Loeschen alter Partner, INSERT neuer
+ $sql = "DELETE FROM Vertrag_Partner WHERE contract_ID = $cid";
+ $retdp = $dbc -> execute($sql);
+ if ($retdp)
+ {
+ $sql = "INSERT INTO Vertrag_Partner VALUES($cid," . $vtr['partid'] .")";
+ $retp = $dbc -> execute($sql);
+ if (!$retp) echo "error INSERT Vertrag_Partner: " . $dbc -> error . " <br />\n";
+ }
+ $pid = $vtr['partid'];
+ }
+ else
+ {
+ // Loeschen alter Partner, INSERT neuer
+ $sql = "DELETE FROM Vertrag_Partner WHERE contract_ID = $cid";
+ $retdp = $dbc -> execute($sql);
+ if ($retdp) $retp=1;
+ }
+ if ($vtr['partner'])
+ {
+ // Test, ob Eintrag schon vorhanden
+ $sql = "SELECT part_ID, part_firma FROM Partner WHERE part_firma = '" . ltrim($vtr['partner']) . "'";
+ if ($res = $dbc -> queryObjectArray($sql))
+ {
+ foreach ($res as $row)
+ $pid = $row->part_ID;
+ }
+ else
+ {
+ // INSERT in Partner, ID INSERT in Vertrag_Partner
+ $sql = "INSERT INTO Partner (part_firma) VALUES (LEFT(TRIM('" . $vtr['partner'] . "'),50))";
+ $retp = $dbc -> execute($sql);
+ // echo "Partner INSERT: $sql<br />\n";
+ if ($retp) $pid = $dbc -> insertId();
+ }
+ if ($pid)
+ {
+ // Loeschen alter Partner, INSERT neuer
+ $sql = "DELETE FROM Vertrag_Partner WHERE contract_ID = $cid";
+ $retdp = $dbc -> execute($sql);
+ if ($retdp)
+ {
+ $sql = "INSERT INTO Vertrag_Partner VALUES($cid,$pid)";
+ $retp = $dbc -> execute($sql);
+ if (!$retp) echo "error INSERT Vertrag_Partner: " . $dbc -> error . " <br />\n";
+ }
+ }
+ }
+
+ // Produkt
+ $retd = true;
+ if ($vtr['prodid'] > 0 || $vtr['prodid'] = -1) // nur Produkte, keine Gruppen, Bereiche
+ {
+ // Loeschen altes Produkt, INSERT neues
+ $sql = "DELETE FROM Produkt_Vertrag WHERE contract_ID = $cid";
+ $retdd = $dbc -> execute($sql);
+ if ($retdd && $vtr['prodid'] > 0)
+ {
+ //INSERT in Produkt_Vertrag
+ $sql = "INSERT INTO Produkt_Vertrag VALUES(".$vtr['prodid'].",$cid)";
+ $retd = $dbc -> execute($sql);
+ if (!$retd) echo "error INSERT Produkt_Vertrag: " . $dbc -> error . " <br />\n";
+ }
+
+ }
+
+ // Kosten
+ $retk = true;
+ if ($vtr['kost'] && ($vtr['bjahr'] || $vtr['bdat'])) // Kosten fuer mindestens Startjahr
+ {
+ if ($vtr['bdat'])
+ {
+ $jahr = new DateTime($vtr['bdat']);
+ $bjahr = $jahr->format('Y');
+ }
+ else $bjahr = $vtr['bjahr'];
+
+ // alle bisherigen Angaben loeschen
+ $sql = "DELETE FROM Vertrag_Kosten WHERE contract_ID = $cid";
+ $retdk = $dbc -> execute($sql);
+ if ($retdk)
+ {
+ $j=0;
+ if ($vtr['ejahr'] || $vtr['edat'])
+ {
+ if ($vtr['ejahr']) $ejahr = $vtr['ejahr'];
+ else
+ {
+ $jahr = new DateTime($vtr['edat']);
+ $ejahr = $jahr->format('Y');
+ }
+ }
+ elseif ($vtr["cautoend"] && !$vtr['ejahr'] && !$vtr['edat']) // automatische Vertragsverlaengerung und kein Endjahr angegeben
+ $ejahr = date("Y");
+ else
+ $ejahr = null;
+// if ($vtr['ejahr']) // Endjahr angegeben
+ if ($ejahr) // Endjahr angegeben
+ {
+ for ($i=(int)$bjahr; $i< (int)$ejahr +1; $i++)
+ {
+ if ($vtr['kost'][$j])
+ {
+// $kost = str_replace(',','.',$vtr['kost'][$j]);
+ $kost = dbformat_wert($vtr['kost'][$j]);
+ $sql = "INSERT INTO Vertrag_Kosten (contract_ID,k_year,kosten) VALUES($cid,$i,$kost)";
+ $retk = $dbc -> execute($sql);
+ }
+ $j++;
+ }
+ }
+ else // nur fuer Startjahr
+ {
+ if ($vtr['kost'][0])
+ {
+// $kost = str_replace(',','.',$vtr['kost'][0]);
+ $kost = dbformat_wert($vtr['kost'][0]);
+ $sql = "INSERT INTO Vertrag_Kosten (contract_ID,k_year,kosten) VALUES($cid,".(int)$bjahr.",$kost)";
+ $retk = $dbc -> execute($sql);
+ }
+ }
+ if (!$retk) echo "error INSERT Vertrag_Kosten: " . $dbc -> error . "<br />$sql<br />\n";
+ }
+ }
+
+ // Vertragfile und Schlagwort
+ $retl = true;
+ if (is_array($vtr['cfname']) && count($vtr['cfname']) > 0)
+ {
+ // alle bisherigen Dokumente loeschen
+ $sql = "DELETE FROM Vertrag_File WHERE contract_ID = $cid";
+ $retdl = $dbc -> execute($sql);
+ if ($retdl)
+ {
+ foreach ($vtr['cfname'] as $key => $value)
+ {
+ if ($value)
+ {
+ if (!$vtr['swort'][$key] || $vtr['swort'][$key]<"!") $sw = "NULL"; else $sw = "'".$vtr['swort'][$key]."'";
+ if (substr($value,0,$len) != $cid . "_") $file = $cid . "_".$value; else $file = $value;
+ $sql = "INSERT INTO Vertrag_File (contract_ID,cf_filename,cf_schlagwort) VALUES ($cid,'$file',$sw)";
+ $retl = $retl && $dbc -> execute($sql);
+ }
+ }
+ if (!$retl) echo "error INSERT Vertrag_File: " . $dbc -> error . "<br />$sql<br />\n";
+ }
+ }
?>
\ No newline at end of file