<?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&uuml;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&uuml;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&uuml;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&uuml;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");
?>