Initial commit
This commit is contained in:
554
wort_bearbeiten.php
Normal file
554
wort_bearbeiten.php
Normal file
@ -0,0 +1,554 @@
|
||||
<?php
|
||||
/*
|
||||
# Fuer debugging
|
||||
error_reporting(E_ALL);
|
||||
ini_set('display_errors', 1);
|
||||
#echo __LINE__."<br>";
|
||||
*/
|
||||
|
||||
include_once 'classes/lg-on_Smarty.class.php';
|
||||
$smarty = new lgon_Smarty();
|
||||
require_once("config.inc.php");
|
||||
require_once("func_rollenrechte.php");
|
||||
$templatename = substr(basename($_SERVER['PHP_SELF']), 0, -3) . "html";
|
||||
require_once "language/german.inc.php";
|
||||
|
||||
require_once("func_htmlclean.php");
|
||||
|
||||
// Rechteüberprüfung
|
||||
if ($user_admin == "") {
|
||||
require("index.php");
|
||||
exit;
|
||||
} //Wenn man nicht angemeldet ist, darf man nicht auf die Seite
|
||||
if (!rore($user_admin, 'a_wortbear', 'RE')) {
|
||||
require("lib/rechte.php");
|
||||
exit;
|
||||
}
|
||||
// Rechteüberprüfung ende
|
||||
|
||||
if (isset($_GET['action'])) {
|
||||
$action = $_GET['action'];
|
||||
} else {
|
||||
$action = '';
|
||||
}
|
||||
|
||||
if ($action == '') {
|
||||
$db = dbconnect();
|
||||
|
||||
$result_gd = $db->query("SELECT wgd FROM profil WHERE user = '$user_admin'");
|
||||
$row_gd = $result_gd->fetch_array();
|
||||
|
||||
|
||||
$query = "SELECT DISTINCT lid, DATE_Format(datum, '%d.%m.%Y')AS datum, DATE_Format(datum, '%Y%m%d')AS datum_sort, ueberschrift, DATE_Format(datum, '%d') tag, DATE_Format(datum, '%m') monat, DATE_Format(datum, '%Y') jahr, kid, ukid
|
||||
FROM quelle
|
||||
ORDER BY datum_sort DESC
|
||||
";
|
||||
$result = $db->query($query);
|
||||
|
||||
while ($row = $result->fetch_array()) {
|
||||
|
||||
$wochentag = date("l", mktime(0, 0, 0, $row['monat'], $row['tag'], $row['jahr']));
|
||||
|
||||
if ($wochentag == 'Wednesday' AND $row_gd['wgd'] != '0' AND ($row['ukid'] != "25" AND $row['ukid'] != "26" AND $row['ukid'] != "22")) {
|
||||
$datum = date("d.m.Y", mktime(0, 0, 0, $row['monat'], $row['tag'] + $row_gd['wgd'], $row['jahr']));
|
||||
} else {
|
||||
$datum = date("d.m.Y", mktime(0, 0, 0, $row['monat'], $row['tag'], $row['jahr']));
|
||||
}
|
||||
|
||||
$row['datum'] = $datum;
|
||||
$value[] = $row;
|
||||
}
|
||||
$smarty->assign('table_data', $value);
|
||||
}
|
||||
|
||||
if ($action == 'bearbeiten1') {
|
||||
|
||||
if (isset($_POST['wort'])) { //wird die Seite von externer Datei aufgerufen (ansicht.php)?
|
||||
$lid = $_POST['wort'];
|
||||
setcookie("ck_back", "0"); // prüft später, ob man wieder zur Ansicht.php zurückspringen muss oder ob es eien normale Wortbearbeitung war
|
||||
} else {
|
||||
$lid = $_GET['wort'];
|
||||
setcookie("ck_back", "1"); // prüft später, ob man wieder zur Ansicht.php zurückspringen muss oder ob es eien normale Wortbearbeitung war
|
||||
}
|
||||
|
||||
setcookie("ck_lid", "");
|
||||
setcookie("ck_lid", "$lid");
|
||||
|
||||
|
||||
$query = "SELECT bezeichnung FROM thema GROUP BY bezeichnung ORDER BY tid DESC";
|
||||
$result = $db->query($query) or die("Cannot execute query");
|
||||
|
||||
while ($row = $result->fetch_array()) {
|
||||
$value[] = $row;
|
||||
}
|
||||
$smarty->assign('table_data', $value);
|
||||
|
||||
$result = $db->query("SELECT ueberschrift, thema, unterthema, textstelle, vorwort, botschaft, textwort, inhalt, zusammenfassung, kontext, DATE_Format(datum, '%d') tag, DATE_Format(datum, '%m') monat, DATE_Format(datum, '%Y') jahr, kid, ukid, stapgd, DATE_Format(datum, '%Y-%m-%d')AS datum_berechnung
|
||||
FROM quelle
|
||||
WHERE lid = '$lid'");
|
||||
$row = $result->fetch_array();
|
||||
setcookie("ck_ukid", $row['ukid']);
|
||||
|
||||
|
||||
$date_nlg = mktime(0, 0, 0, 12, 1, 2007); // Datum ab dem neue LGs gelten
|
||||
$date_nlg_format = date("Y-m-d", $date_nlg); // ISO-8601 Format wie in der Datenbank: Formatierung für Vergleiche erforderlich
|
||||
|
||||
|
||||
$switch_date = strtotime($date_nlg_format); //Umrechnung des Fristgrenztages in eine Zahl
|
||||
$lg_datum = strtotime($row['datum_berechnung']); // Umrechnung des Enddatums in eine Zahl
|
||||
|
||||
$result3 = $db->query("SELECT bezeichnung
|
||||
FROM thema
|
||||
WHERE tid='$row[thema]'");
|
||||
$row3 = $result3->fetch_array();
|
||||
|
||||
$result4 = $db->query("SELECT bezeichnung
|
||||
FROM unterthema
|
||||
WHERE tid='$row[thema]'
|
||||
AND utid='$row[unterthema]'");
|
||||
$row4 = $result4->fetch_array();
|
||||
|
||||
$smarty->assign('wort_bearbeiten_thema', "$row3[bezeichnung]");
|
||||
$smarty->assign('wort_bearbeiten_subthema', "$row4[bezeichnung]");
|
||||
$smarty->assign('wort_bearbeiten_stapgd', "$row[stapgd]");
|
||||
$smarty->assign('wort_bearbeiten_headline', "$row[ueberschrift]");
|
||||
$smarty->assign('wort_bearbeiten_textstelle', "$row[textstelle]");
|
||||
$smarty->assign('wort_bearbeiten_textwort', "$row[textwort]");
|
||||
$smarty->assign('wort_bearbeiten_vorwort', "$row[vorwort]");
|
||||
$smarty->assign('wort_bearbeiten_botschaft', "$row[botschaft]");
|
||||
$smarty->assign('wort_bearbeiten_inhalt', "$row[inhalt]");
|
||||
$smarty->assign('wort_bearbeiten_zusammenfassung', "$row[zusammenfassung]");
|
||||
$smarty->assign('wort_bearbeiten_kontext', "$row[kontext]");
|
||||
$smarty->assign('wort_bearbeiten_tag', "$row[tag]");
|
||||
$smarty->assign('wort_bearbeiten_monat', "$row[monat]");
|
||||
$smarty->assign('wort_bearbeiten_jahr', "$row[jahr]");
|
||||
|
||||
$db = dbconnect();
|
||||
$query1 = "SELECT kid, bezeichnung FROM kategorie ORDER BY bezeichnung ASC";
|
||||
$result1 = $db->query($query1) or die("Cannot execute query1");
|
||||
|
||||
while ($row1 = $result1->fetch_array()) {
|
||||
|
||||
if ($row1['kid'] == $row['kid']) {
|
||||
$select = 'Y';
|
||||
} else {
|
||||
$select = 'N';
|
||||
}
|
||||
|
||||
$row1['select'] = $select;
|
||||
$value1[] = $row1;
|
||||
}
|
||||
$smarty->assign('table_data1', $value1);
|
||||
}
|
||||
|
||||
|
||||
if ($action == 'bearbeiten2') {
|
||||
$db = dbconnect();
|
||||
$datum = "$_POST[beg_jahr]-$_POST[beg_mon]-$_POST[beg_tag]";
|
||||
$vorwort = htmlclean($_POST['vorwort'], $db);
|
||||
$wort = htmlclean($_POST['wort'], $db);
|
||||
$botschaft = htmlclean($_POST['botschaft'], $db);
|
||||
$inhalt = htmlclean($_POST['inhalt'], $db);
|
||||
$zusammenfassung = htmlclean($_POST['zusammenfassung'], $db);
|
||||
$kontext = htmlclean($_POST['kontext'], $db);
|
||||
$textstelle = $_POST['textstelle'];
|
||||
|
||||
|
||||
if (@checkdate($_POST['beg_mon'], $_POST['beg_tag'], $_POST['beg_jahr']) == 0) { // checkdate liefert 0 & 1 zurück: 0 wenn Datum falsch, 1 wenn Datum richtig
|
||||
$smarty->assign('wort_bearbeiten_checkdate_err', "1");
|
||||
$fehler = TRUE;
|
||||
} elseif ((
|
||||
// Pregs auf vollständige Bibelbücher überprüft
|
||||
|
||||
// Bücher mit mehreren Bücher 1. Johannes...
|
||||
preg_match("/^([1-9])\.\s* (Makkabäer|Johannes|Mose|Könige|Chronik|Korinther|Samuel|Thessalonicher|Timotheus|Petrus)\s*[0-9]{1,2}(\,)?\s*(aus)?\s*[0-9]{1,3}(\.|-)?([0-9]{1,3})?(\.)?([0-9]{1,3})?$/im", $textstelle) or
|
||||
// Bücher mit nur einem Buch Rut 3,5-7
|
||||
preg_match("/^(Gebet Manasses|Stücke zu Daniel|Stücke zu Ester|Baruch|Weisheit|Judit|Johannes|Sirach|Josua|Richter|Rut|Ruth|Esra|Nehemia|Esther|Ester|Hiob|Psalm|Sprüche|Prediger|Hoheslied|Jesaja|Jeremia|Klagelieder|Hesekiel|Daniel|Hosea|Joel|Amos|Tobias|Obadja|Jona|Micha|Nahum|Habakuk|Zefanja|Haggai|Sacharja|Maleachi|Matthäus|Markus|Lukas|Apostelgeschichte|Römer|Galater|Epheser|Philipper|Kolosser|Titus|Hebräer|Jakobus|Offenbarung)\s*[0-9]{1,3}(\,)?\s*(aus)?\s*[0-9]{1,3}(\.|-)?([0-9]{1,3})?(\.)?([0-9]{1,3})?$/im", $textstelle) or
|
||||
// Bücher ohne Kapitel
|
||||
preg_match("/^(Philemon|Judas)\s*(aus)?\s*[0-9]{1,3}(\.|-)?([0-9]{1,3})?(\.)?([0-9]{1,3})?$/im", $textstelle)) AND $textstelle != "") {
|
||||
|
||||
|
||||
|
||||
function refill($start, $ende)
|
||||
{
|
||||
|
||||
for ($i = $start; $i < $ende; $i++) {
|
||||
$j .= "|$i";
|
||||
|
||||
}
|
||||
$j .= "|" . $i . "|";
|
||||
return $j;
|
||||
|
||||
}
|
||||
|
||||
function refillpunkt($zahl1, $zahl2, $zahl3)
|
||||
{
|
||||
|
||||
$j = "|$zahl1|$zahl2|";
|
||||
|
||||
if ($zahl3 != '') {
|
||||
$j .= "$zahl3|";
|
||||
}
|
||||
return $j;
|
||||
|
||||
}
|
||||
|
||||
function makeLink($a, $b, $c, $d, $e, $f, $g, $h, $lid)
|
||||
{
|
||||
settype($f, "integer");
|
||||
if ($e == '-') {
|
||||
|
||||
$d = refill($d, $f);
|
||||
$e = "";
|
||||
$f = "";
|
||||
} elseif ($e == '.') {
|
||||
$d = refillpunkt($d, $f, $h);
|
||||
$e = "";
|
||||
$f = "";
|
||||
$g = "";
|
||||
$h = "";
|
||||
} else {
|
||||
$d = "|$d|";
|
||||
}
|
||||
|
||||
|
||||
$db = dbconnect();
|
||||
$sql = $db->query("UPDATE quelle
|
||||
SET txt_anz_buch=trim('$a')
|
||||
, txt_buch=trim('$b')
|
||||
, txt_kapitel=trim('$c')
|
||||
, txt_vers =trim('$d')
|
||||
WHERE lid='$lid'");
|
||||
|
||||
|
||||
}
|
||||
|
||||
// Wenn Wörter dem richtigen Aufbau entsprechen, dann weiter
|
||||
if (isset($_POST['stapgd'])) {
|
||||
if ($_POST['stapgd'] == 'Y') {
|
||||
$stapgd = 'Y';
|
||||
} else {
|
||||
$stapgd = 'N';
|
||||
}
|
||||
} else {
|
||||
$stapgd = 'N';
|
||||
}
|
||||
|
||||
|
||||
$lid = $_COOKIE["ck_lid"];
|
||||
|
||||
|
||||
# benütigt man altes update, oder update für neue LG
|
||||
$result = $db->query("SELECT DATE_Format(datum, '%Y-%m-%d')AS datum_berechnung
|
||||
FROM quelle
|
||||
WHERE lid = '$lid'");
|
||||
$row = $result->fetch_array();
|
||||
|
||||
|
||||
$date_nlg = mktime(0, 0, 0, 12, 1, 2007); // Datum ab dem neue LGs gelten
|
||||
$date_nlg_format = date("Y-m-d", $date_nlg); // ISO-8601 Format wie in der Datenbank: Formatierung für Vergleiche erforderlich
|
||||
|
||||
$switch_date = strtotime($date_nlg_format); //Umrechnung des Fristgrenztages in eine Zahl
|
||||
$lg_datum = strtotime($row['datum_berechnung']); // Umrechnung des Enddatums in eine Zahl
|
||||
|
||||
|
||||
if ($_POST['ukid'] == NULL) {
|
||||
$ukid = 'NULL';
|
||||
} else {
|
||||
$ukid = $_POST['ukid'];
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
if ($lg_datum < $switch_date) { # alte LG?
|
||||
$sql1 = $db->query("UPDATE quelle
|
||||
SET Textstelle = '$_POST[textstelle]'
|
||||
,Ueberschrift = '$_POST[uberschrift]'
|
||||
,Textwort = '$wort'
|
||||
,Inhalt = '$inhalt'
|
||||
,Datum = '$datum'
|
||||
,stapgd = '$stapgd'
|
||||
,kid='$_POST[kid]'
|
||||
,ukid=$ukid
|
||||
WHERE lid = '$lid'
|
||||
");
|
||||
$textstelle = "$_POST[textstelle]";
|
||||
$textstelle = preg_replace_callback("/^([1-9]\.)*\s*" . //1 a
|
||||
"(Makkabäer|Johannes|Mose|Könige|Chronik|Korinther|Samuel|Thessalonicher|Timotheus|Petrus|Gebet Manasses|Stücke zu Daniel|Stücke zu Ester|Baruch|Weisheit|Judit|Judith|Sirach|Josua|Richter|Rut|Ruth|Esra|Nehemia|Esther|Ester|Hiob|Ijob|Psalm|Sprüche|Prediger|Hoheslied|Jesaja|Jeremia|Klagelieder|Hesekiel|Ezechiel|Daniel|Hosea|Joel|Amos|Tobias|Obadja|Jona|Micha|Nahum|Habakuk|Zefanja|Haggai|Sacharja|Maleachi|Matthäus|Markus|Lukas|Apostelgeschichte|Römer|Galater|Epheser|Philipper|Kolosser|Titus|Hebräer|Jakobus|Offenbarung|Philemon|Judas)\s*" . //2
|
||||
"([0-9]{1,3})" . //3 c
|
||||
"(\,)?\s*" . //4
|
||||
"(aus)?\s*" . //5
|
||||
"([0-9]{0,3})" . //6 d
|
||||
"(\.|-)?" . //7 e
|
||||
"([0-9]{0,3})?" . //8 f
|
||||
"(\.|-)?" . //9 g
|
||||
"(\s)?" . //10 g
|
||||
"([0-9]{0,3})" . //11 h
|
||||
"$/", function($m) use (&$lid)
|
||||
{
|
||||
return makeLink($m[1], $m[2], $m[3], $m[6], $m[7], $m[8], $m[9], $m[11], $lid);
|
||||
}, $textstelle);
|
||||
|
||||
|
||||
} else {
|
||||
|
||||
/*
|
||||
Vorgehensweise:
|
||||
Prüfung, ob bearbeitetes Thema schon in der DB gibt
|
||||
Wenn nicht, dann wird das Thema eingetragen
|
||||
Abfrage der ThemenID für den Update
|
||||
Prüfung, ob bearbeitetes Unterthema schon in der DB gibt
|
||||
wenn nicht, dann Unterthema eintragen
|
||||
Abfrage des UnterThemaIDs für den Update
|
||||
Update durchführen
|
||||
Evtle unbenutzten Themen bzw Unterthemen löschen
|
||||
*/
|
||||
$result = $db->query("SELECT tid FROM thema WHERE bezeichnung = '$_POST[thema]'");
|
||||
$row = $result->fetch_array();
|
||||
|
||||
## wenn nicht, dann eintragen
|
||||
if ($row['tid'] == '') {
|
||||
$sql1 = $db->query("INSERT INTO thema ( bezeichnung) VALUES ('$_POST[thema]') ");
|
||||
}
|
||||
## ThemaID (tid) abfragen
|
||||
$result1 = $db->query("SELECT tid FROM thema WHERE bezeichnung = '$_POST[thema]'");
|
||||
$row1 = $result1->fetch_array();
|
||||
|
||||
$result2 = $db->query("SELECT utid FROM unterthema WHERE bezeichnung = '$_POST[unterthema]' AND tid='$row1[tid]'");
|
||||
$row2 = $result2->fetch_array();
|
||||
## Unterhema eintragen
|
||||
if ($row2['utid'] == '') {
|
||||
$sql1 = $db->query("INSERT INTO unterthema ( tid, bezeichnung) VALUES ('$row1[tid]', '$_POST[unterthema]') ");
|
||||
}
|
||||
|
||||
## UnterThemaID (utid) abfragen
|
||||
$result3 = $db->query("SELECT utid FROM unterthema WHERE bezeichnung = '$_POST[unterthema]' AND tid='$row1[tid]' ");
|
||||
$row3 = $result3->fetch_array();
|
||||
|
||||
$sql1 = $db->query("UPDATE quelle
|
||||
SET thema = '$row1[tid]'
|
||||
,unterthema = '$row3[utid]'
|
||||
,botschaft = '$botschaft'
|
||||
,Textstelle = '$_POST[textstelle]'
|
||||
,Ueberschrift = '$_POST[uberschrift]'
|
||||
,vorwort = '$vorwort'
|
||||
,Textwort = '$wort'
|
||||
,Inhalt = '$inhalt'
|
||||
,zusammenfassung = '$zusammenfassung'
|
||||
,kontext = '$kontext'
|
||||
,Datum = '$datum'
|
||||
,stapgd = '$stapgd'
|
||||
,kid='$_POST[kid]'
|
||||
,ukid=$ukid
|
||||
WHERE lid = '$lid'
|
||||
");
|
||||
|
||||
$textstelle = "$_POST[textstelle]";
|
||||
$textstelle = preg_replace_callback("/^([1-9]\.)*\s*" . //1 a
|
||||
"(Makkabäer|Johannes|Mose|Könige|Chronik|Korinther|Samuel|Thessalonicher|Timotheus|Petrus|Gebet Manasses|Stücke zu Daniel|Stücke zu Ester|Baruch|Weisheit|Judit|Judith|Sirach|Josua|Richter|Rut|Ruth|Esra|Nehemia|Esther|Ester|Hiob|Ijob|Psalm|Sprüche|Prediger|Hoheslied|Jesaja|Jeremia|Klagelieder|Hesekiel|Ezechiel|Daniel|Hosea|Joel|Amos|Tobias|Obadja|Jona|Micha|Nahum|Habakuk|Zefanja|Haggai|Sacharja|Maleachi|Matthäus|Markus|Lukas|Apostelgeschichte|Römer|Galater|Epheser|Philipper|Kolosser|Titus|Hebräer|Jakobus|Offenbarung|Philemon|Judas)\s*" . //2
|
||||
"([0-9]{1,3})" . //3 c
|
||||
"(\,)?\s*" . //4
|
||||
"(aus)?\s*" . //5
|
||||
"([0-9]{0,3})" . //6 d
|
||||
"(\.|-)?" . //7 e
|
||||
"([0-9]{0,3})?" . //8 f
|
||||
"(\.|-)?" . //9 g
|
||||
"(\s)?" . //10 g
|
||||
"([0-9]{0,3})" . //11 h
|
||||
"$/", function($m) use (&$lid)
|
||||
{
|
||||
return makeLink($m[1], $m[2], $m[3], $m[6], $m[7], $m[8], $m[9], $m[11], $lid);
|
||||
}, $textstelle);
|
||||
|
||||
|
||||
}
|
||||
## unverwendete Themen löschen
|
||||
$sql2 = $db->query("DELETE FROM thema WHERE tid not in (select thema from quelle)");
|
||||
$sql2 = $db->query("DELETE FROM unterthema WHERE utid not in (select unterthema from quelle)");
|
||||
|
||||
# Cache löschen
|
||||
$sql2 = $db->query("DELETE FROM quelle_verweise_cache WHERE erg_lid='$lid'");
|
||||
$sql2 = $db->query("DELETE FROM quelle_cache WHERE lid='$lid'");
|
||||
|
||||
|
||||
if (!$sql1) {
|
||||
$smarty->assign('wort_bearbeiten_sql_err1', "1");
|
||||
$fehler = TRUE;
|
||||
}
|
||||
} elseif ($textstelle == "") {
|
||||
|
||||
if (isset($_POST['stapgd']) AND $_POST['stapgd'] == 'Y') {
|
||||
$stapgd = 'Y';
|
||||
} else {
|
||||
$stapgd = 'N';
|
||||
}
|
||||
|
||||
$lid = $_COOKIE["ck_lid"];
|
||||
|
||||
|
||||
# benütigt man altes update, oder update für neue LG
|
||||
$result = $db->query("SELECT DATE_Format(datum, '%Y-%m-%d')AS datum_berechnung
|
||||
FROM quelle
|
||||
WHERE lid = '$lid'");
|
||||
$row = $result->fetch_array();
|
||||
|
||||
$date_nlg = mktime(0, 0, 0, 12, 1, 2007); // Datum ab dem neue LGs gelten
|
||||
$date_nlg_format = date("Y-m-d", $date_nlg); // ISO-8601 Format wie in der Datenbank: Formatierung für Vergleiche erforderlich
|
||||
|
||||
$switch_date = strtotime($date_nlg_format); //Umrechnung des Fristgrenztages in eine Zahl
|
||||
$lg_datum = strtotime($row['datum_berechnung']); // Umrechnung des Enddatums in eine Zahl
|
||||
|
||||
|
||||
if ($_POST['ukid'] == NULL) {
|
||||
$ukid = 'NULL';
|
||||
} else {
|
||||
$ukid = $_POST['ukid'];
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
if ($lg_datum < $switch_date) { # alte LG?
|
||||
$sql1 = $db->query("UPDATE quelle
|
||||
SET Textstelle = '$_POST[textstelle]'
|
||||
,Ueberschrift = '$_POST[uberschrift]'
|
||||
,Textwort = '$wort'
|
||||
,Inhalt = '$inhalt'
|
||||
,Datum = '$datum'
|
||||
,stapgd = '$stapgd'
|
||||
,kid='$_POST[kid]'
|
||||
,ukid=$ukid
|
||||
WHERE lid = '$lid'
|
||||
");
|
||||
$textstelle = "$_POST[textstelle]";
|
||||
$textstelle = preg_replace_callback("/^([1-9]\.)*\s*" . //1 a
|
||||
"(Makkabäer|Johannes|Mose|Könige|Chronik|Korinther|Samuel|Thessalonicher|Timotheus|Petrus|Gebet Manasses|Stücke zu Daniel|Stücke zu Ester|Baruch|Weisheit|Judit|Judith|Sirach|Josua|Richter|Rut|Ruth|Esra|Nehemia|Esther|Ester|Hiob|Ijob|Psalm|Sprüche|Prediger|Hoheslied|Jesaja|Jeremia|Klagelieder|Hesekiel|Ezechiel|Daniel|Hosea|Joel|Amos|Tobias|Obadja|Jona|Micha|Nahum|Habakuk|Zefanja|Haggai|Sacharja|Maleachi|Matthäus|Markus|Lukas|Apostelgeschichte|Römer|Galater|Epheser|Philipper|Kolosser|Titus|Hebräer|Jakobus|Offenbarung|Philemon|Judas)\s*" . //2
|
||||
"([0-9]{1,3})" . //3 c
|
||||
"(\,)?\s*" . //4
|
||||
"(aus)?\s*" . //5
|
||||
"([0-9]{0,3})" . //6 d
|
||||
"(\.|-)?" . //7 e
|
||||
"([0-9]{0,3})?" . //8 f
|
||||
"(\.|-)?" . //9 g
|
||||
"(\s)?" . //10 g
|
||||
"([0-9]{0,3})" . //11 h
|
||||
"$/", function($m) use (&$lid)
|
||||
{
|
||||
return makeLink($m[1], $m[2], $m[3], $m[6], $m[7], $m[8], $m[9], $m[11], $lid);
|
||||
}, $textstelle);
|
||||
|
||||
|
||||
|
||||
|
||||
} else {
|
||||
|
||||
/*
|
||||
Vorgehensweise:
|
||||
Prüfung, ob bearbeitetes Thema schon in der DB gibt
|
||||
Wenn nicht, dann wird das Thema eingetragen
|
||||
Abfrage der ThemenID für den Update
|
||||
Prüfung, ob bearbeitetes Unterthema schon in der DB gibt
|
||||
wenn nicht, dann Unterthema eintragen
|
||||
Abfrage des UnterThemaIDs für den Update
|
||||
Update durchführen
|
||||
Evtle unbenutzten Themen bzw Unterthemen löschen
|
||||
*/
|
||||
$result = $db->query("SELECT tid FROM thema WHERE bezeichnung = '$_POST[thema]'");
|
||||
$row = $result->fetch_array();
|
||||
|
||||
## wenn nicht, dann eintragen
|
||||
if ($row['tid'] == '') {
|
||||
$sql1 = $db->query("INSERT INTO thema ( bezeichnung) VALUES ('$_POST[thema]') ");
|
||||
}
|
||||
## ThemaID (tid) abfragen
|
||||
$result1 = $db->query("SELECT tid FROM thema WHERE bezeichnung = '$_POST[thema]'");
|
||||
$row1 = $result1->fetch_array();
|
||||
|
||||
$result2 = $db->query("SELECT utid FROM unterthema WHERE bezeichnung = '$_POST[unterthema]' AND tid='$row1[tid]'");
|
||||
$row2 = $result2->fetch_array();
|
||||
|
||||
## Unterhema eintragen
|
||||
if ($row2['utid'] == '') {
|
||||
$sql1 = $db->query("INSERT INTO unterthema ( tid, bezeichnung) VALUES ('$row1[tid]', '$_POST[unterthema]') ");
|
||||
}
|
||||
|
||||
## UnterThemaID (utid) abfragen
|
||||
$result3 = $db->query("SELECT utid FROM unterthema WHERE bezeichnung = '$_POST[unterthema]' AND tid='$row1[tid]' ");
|
||||
$row3 = $result3->fetch_array();
|
||||
|
||||
|
||||
|
||||
$sql1 = $db->query("UPDATE quelle
|
||||
SET thema = '$row1[tid]'
|
||||
,unterthema = '$row3[utid]'
|
||||
,botschaft = '$botschaft'
|
||||
,Textstelle = '$_POST[textstelle]'
|
||||
,Ueberschrift = '$_POST[uberschrift]'
|
||||
,vorwort = '$vorwort'
|
||||
,Textwort = '$wort'
|
||||
,Inhalt = '$inhalt'
|
||||
,zusammenfassung = '$zusammenfassung'
|
||||
,kontext = '$kontext'
|
||||
,Datum = '$datum'
|
||||
,stapgd = '$stapgd'
|
||||
,kid='$_POST[kid]'
|
||||
,ukid=$ukid
|
||||
WHERE lid = '$lid'
|
||||
");
|
||||
|
||||
$textstelle = "$_POST[textstelle]";
|
||||
$textstelle = preg_replace_callback("/^([1-9]\.)*\s*" . //1 a
|
||||
"(Makkabäer|Johannes|Mose|Könige|Chronik|Korinther|Samuel|Thessalonicher|Timotheus|Petrus|Gebet Manasses|Stücke zu Daniel|Stücke zu Ester|Baruch|Weisheit|Judit|Judith|Sirach|Josua|Richter|Rut|Ruth|Esra|Nehemia|Esther|Ester|Hiob|Ijob|Psalm|Sprüche|Prediger|Hoheslied|Jesaja|Jeremia|Klagelieder|Hesekiel|Ezechiel|Daniel|Hosea|Joel|Amos|Tobias|Obadja|Jona|Micha|Nahum|Habakuk|Zefanja|Haggai|Sacharja|Maleachi|Matthäus|Markus|Lukas|Apostelgeschichte|Römer|Galater|Epheser|Philipper|Kolosser|Titus|Hebräer|Jakobus|Offenbarung|Philemon|Judas)\s*" . //2
|
||||
"([0-9]{1,3})" . //3 c
|
||||
"(\,)?\s*" . //4
|
||||
"(aus)?\s*" . //5
|
||||
"([0-9]{0,3})" . //6 d
|
||||
"(\.|-)?" . //7 e
|
||||
"([0-9]{0,3})?" . //8 f
|
||||
"(\.|-)?" . //9 g
|
||||
"(\s)?" . //10 g
|
||||
"([0-9]{0,3})" . //11 h
|
||||
"$/", function($m) use (&$lid)
|
||||
{
|
||||
return makeLink($m[1], $m[2], $m[3], $m[6], $m[7], $m[8], $m[9], $m[11], $lid);
|
||||
}, $textstelle);
|
||||
|
||||
|
||||
}
|
||||
## unverwendete Themen löschen
|
||||
$sql2 = $db->query("DELETE FROM thema WHERE tid not in (select thema from quelle)");
|
||||
$sql2 = $db->query("DELETE FROM unterthema WHERE utid not in (select unterthema from quelle)");
|
||||
|
||||
# Cache löschen
|
||||
$sql2 = $db->query("DELETE FROM quelle_verweise_cache WHERE erg_lid='$lid'");
|
||||
$sql2 = $db->query("DELETE FROM quelle_cache WHERE lid='$lid'");
|
||||
|
||||
|
||||
if (!$sql1) {
|
||||
$smarty->assign('wort_bearbeiten_sql_err1', "1");
|
||||
$fehler = TRUE;
|
||||
}
|
||||
|
||||
} else {
|
||||
$smarty->assign('wort_bearbeiten_sql_err2', "1");
|
||||
$fehler = TRUE;
|
||||
}
|
||||
|
||||
if (!isset($fehler)) {
|
||||
|
||||
setcookie("ck_lid", "");
|
||||
$back = $_COOKIE["ck_back"];
|
||||
|
||||
if ($back == 0) {
|
||||
$smarty->assign('wort_bearbeiten_success', "1");
|
||||
} else {
|
||||
$smarty->assign('wort_bearbeiten_success', "2");
|
||||
$smarty->assign('wort_bearbeiten_lid', "$lid");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
$smarty->assign('action', "$action");
|
||||
$smarty->display("$template/$templatename");
|
||||
?>
|
Reference in New Issue
Block a user