function renumber_blog($kategorie = "")
 {
     global $db, $environment, $blog, $cfg, $status;
     $where = "";
     if ($kategorie != "") {
         $where = " AND SUBSTR(content,POSITION('[" . $cfg["bloged"]["blogs"][$blog]["category"] . "]' IN content)+11,POSITION('[/" . $cfg["bloged"]["blogs"][$blog]["category"] . "]' IN content)-11-POSITION('[" . $cfg["bloged"]["blogs"][$blog]["category"] . "]' IN content)) ='" . $kategorie . "'";
     }
     $sql = "SELECT Cast(SUBSTR(content,POSITION('[" . $cfg["bloged"]["blogs"][$blog]["sort"][0] . "]' IN content)+6,POSITION('[/" . $cfg["bloged"]["blogs"][$blog]["sort"][0] . "]' IN content)-POSITION('[" . $cfg["bloged"]["blogs"][$blog]["sort"][0] . "]' IN content)-6) AS SIGNED) AS date,content,tname \n                    FROM site_text \n                    WHERE " . $status . " AND tname like '" . eCRC(make_ebene($environment["parameter"][4])) . ".%'" . $where . " order by date ASC";
     $result = $db->query($sql);
     $count = 0;
     $preg = "^\\[!\\][0-9]*";
     while ($data = $db->fetch_array($result, 1)) {
         $count = $count + 10;
         $content = preg_replace("|\\[" . $cfg["bloged"]["blogs"][$blog]["sort"][0] . "\\][-0-9]*\\[\\/" . $cfg["bloged"]["blogs"][$blog]["sort"][0] . "\\]|", "\\[" . $cfg["bloged"]["blogs"][$blog]["sort"][0] . "\\]" . $count . "[\\/" . $cfg["bloged"]["blogs"][$blog]["sort"][0] . "\\]", $data["content"]);
         $sql_update = "UPDATE site_text SET content='" . $content . "' WHERE " . $status . " and tname ='" . $data["tname"] . "'";
         if ($_SESSION["wizard_content"][DATABASE . "," . $data["tname"] . ",inhalt"]) {
             $_SESSION["wizard_content"][DATABASE . "," . $data["tname"] . ",inhalt"] = preg_replace("|\\[" . $cfg["bloged"]["blogs"][$blog]["sort"][0] . "\\][-0-9]*\\[\\/" . $cfg["bloged"]["blogs"][$blog]["sort"][0] . "\\]|", "[" . $cfg["bloged"]["blogs"][$blog]["sort"][0] . "]" . $count . "[/" . $cfg["bloged"]["blogs"][$blog]["sort"][0] . "]", $_SESSION["wizard_content"][DATABASE . "," . $data["tname"] . ",inhalt"]);
         }
         $result_update = $db->query($sql_update);
     }
 }
function bloglink($url, $anzahl, $tag, $length = 25)
{
    global $db;
    $sql = "SELECT Cast(SUBSTR(content,6,19) as DATETIME) AS date,content,tname from site_text WHERE content REGEXP '^\\\\[!\\\\]1;' AND tname like '" . eCRC($url) . ".%' order by date DESC Limit 0,5";
    $result = $db->query($sql);
    $links = "<ul>";
    while ($data = $db->fetch_array($result, 1)) {
        $preg1 = "\\.([0-9]*)\$";
        preg_match("/{$preg1}/", $data["tname"], $id);
        $test = preg_replace("|\r\n|", "\\r\\n", $data["content"]);
        $preg = "\\[" . $tag . "\\](.*)\\[\\/" . $tag . "\\]";
        preg_match("/{$preg}/U", $test, $regs);
        if ($regs[1] == "") {
            continue;
        }
        $regs[1] = preg_replace("|\\\\r\\\\n|", "", $regs[1]);
        $regs[1] = substr($regs[1], 0, $length);
        $links .= "<li><a href=\"" . $url . "/" . $id[1] . ".html\">" . $regs[1] . "</a></li>";
    }
    $links .= "</ul>";
    return $links;
}
    // funktions bereich
    // page basics
    // ***
    // fehlermeldungen
    if ($_GET["error"] != "") {
        if ($_GET["error"] == 1) {
            $ausgaben["form_error"] = "#(error1)";
        }
    } else {
        $ausgaben["form_error"] = "";
    }
    // navigation erstellen
    $ausgaben["link_new"] = $cfg["usered"]["basis"] . "/add.html";
    // was anzeigen
    $cfg["usered"]["path"] = str_replace($pathvars["virtual"], "", $cfg["usered"]["basis"]);
    $mapping["main"] = eCRC($cfg["usered"]["path"]) . ".list";
    // unzugaengliche #(marken) sichtbar machen
    if (isset($_GET["edit"])) {
        $ausgaben["inaccessible"] = "inaccessible values:<br />";
        $ausgaben["inaccessible"] .= "# (error1) #(error1)<br />";
    } else {
        $ausgaben["inaccessible"] = "";
    }
    // wohin schicken
    $ausgaben["form_aktion"] = $cfg["usered"]["basis"] . "/list.html";
    // +++
    // page basics
} else {
    header("Location: " . $pathvars["virtual"] . "/");
}
////////////////////////////////////////////////////////////////////////////////////////////////////////////////
function show_blog($url, $tags, $right = "", $limit = "", $kategorie = "", $future = "")
{
    global $db, $pathvars, $ausgaben, $mapping, $hidedata, $environment, $cfg, $specialvars;
    // parameter-erklaerung
    // 1: vorgesehen fuer inhalt_selector
    // 2: aufruf eines einzigen contents
    // 3: anzeige als faq
    // unzugaengliche #(marken) sichtbar machen
    if (isset($HTTP_GET_VARS["edit"])) {
        $ausgaben["inaccessible"] = "inaccessible values:<br />";
        $ausgaben["inaccessible"] .= "# (error1) #(error1)<br />";
    } else {
        $ausgaben["inaccessible"] = "";
    }
    // label bearbeitung aktivieren
    if (isset($_GET["edit"])) {
        $specialvars["editlock"] = 0;
    } else {
        $specialvars["editlock"] = -1;
    }
    // aus der url eine id machen
    $id = make_id($url);
    $new = $id["mid"];
    $where = "";
    // manipulation verhindern
    if ($environment["parameter"][2] != "" && !preg_match("/^[0-9]*\$/", $environment["parameter"][2])) {
        header('Location: /index.html');
        exit;
    }
    $sort_len = strlen($cfg["bloged"]["blogs"][$url]["sort"][0]) + 2;
    // hier erfolgt der rechte-check
    $check_url = $url;
    if ($kategorie != "") {
        $check_url = $kategorie;
    }
    $status = "status=1";
    $order = "";
    $wizard_right = "";
    // falls der der content bei dem der blog eingebunden ist, zur Freigabe angefordert ist, darf hier nichts mehr passieren
    if ($kategorie == tname2path($environment["parameter"][2]) && !priv_check($check_url, "publish")) {
        $sql = "SELECT status from site_text WHERE tname='" . $environment["parameter"][2] . "' AND label='" . $environment["parameter"][3] . "' ORDER by version DESC";
        $result = $db->query($sql);
        $data = $db->fetch_array($result, 1);
        if ($data["status"] == -2) {
            $wizard_right = "NO";
        }
    }
    if ($right == "" || priv_check($check_url, $right) && $wizard_right == "") {
        $hidedata["new"]["link"] = $url;
        $hidedata["new"]["kategorie"] = $kategorie;
        if ($environment["ebene"] == "/wizard") {
            $status = "(status=1 OR status = -1)";
            $order = " DESC ,changed";
        }
    }
    // erster test einer suchanfrage per kalender
    //
    if ($environment["parameter"][4] && $environment["kategorie"] != "delete") {
        $parameter = ",,," . $environment["parameter"][4] . "," . $environment["parameter"][5] . "," . $environment["parameter"][6];
        if ($cfg["bloged"]["blogs"][$url]["sort"][1] != -1) {
            $heute = getdate(mktime(0, 0, 0, $environment["parameter"][5] + 1, 0, $environment["parameter"][4]));
            if ($environment["parameter"][5] == "") {
                $month2 = "1";
                $month1 = "12";
            } else {
                $month1 = $environment["parameter"][5];
                $month2 = $environment["parameter"][5];
            }
            if (!$environment["parameter"][6]) {
                $day1 = $heute["mday"];
                $day2 = "1";
            } else {
                $day1 = $environment["parameter"][6];
                $day2 = $environment["parameter"][6];
            }
            // parameter - check
            $preg_error = "";
            if (!preg_match("/^[0-9]{4}\$/", $environment["parameter"][4])) {
                $preg_error = -1;
            }
            if ($environment["parameter"][5] != "" && !preg_match("/^[0-9]{1,2}\$/", $environment["parameter"][5])) {
                $preg_error = -1;
            }
            if ($environment["parameter"][6] != "" && !preg_match("/^[0-9]{1,2}\$/", $environment["parameter"][6])) {
                $preg_error = -1;
            }
            if ($preg_error == -1) {
                header('Location: /index.html');
                exit;
            }
            $environment["parameter"][4] = min($environment["parameter"][4], '2035');
            $environment["parameter"][4] = max($environment["parameter"][4], '1970');
            if ($cfg["bloged"]["blogs"][$url]["ext_sort"] == "") {
                $where .= " AND Cast(SUBSTRING(content,POSITION('[" . $cfg["bloged"]["blogs"][$url]["sort"][0] . "]' IN content)+" . $sort_len . ",POSITION('[/" . $cfg["bloged"]["blogs"][$url]["sort"][0] . "]' IN content)-POSITION('[" . $cfg["bloged"]["blogs"][$url]["sort"][0] . "]' IN content)-" . $sort_len . ") as DATETIME) < '" . $environment["parameter"][4] . "-" . $month1 . "-" . $day1 . " 23:59:59' AND Cast(SUBSTRING(content,POSITION('[" . $cfg["bloged"]["blogs"][$url]["sort"][0] . "]' IN content)+" . $sort_len . ",POSITION('[/" . $cfg["bloged"]["blogs"][$url]["sort"][0] . "]' IN content)-POSITION('[" . $cfg["bloged"]["blogs"][$url]["sort"][0] . "]' IN content)-" . $sort_len . ") as DATETIME) > '" . $environment["parameter"][4] . "-" . $month2 . "-" . $day2 . " 00:00:00'";
            } else {
                $where .= " AND (( Cast(SUBSTRING(content,POSITION('[" . $cfg["bloged"]["blogs"][$url]["sort"][0] . "]' IN content)+" . $sort_len . ",POSITION('[/" . $cfg["bloged"]["blogs"][$url]["sort"][0] . "]' IN content)-POSITION('[" . $cfg["bloged"]["blogs"][$url]["sort"][0] . "]' IN content)-" . $sort_len . ") as DATETIME) < '" . $environment["parameter"][4] . "-" . $month1 . "-" . $day1 . " 23:59:59' AND Cast(SUBSTRING(content,POSITION('[" . $cfg["bloged"]["blogs"][$url]["sort"][0] . "]' IN content)+" . $sort_len . ",POSITION('[/" . $cfg["bloged"]["blogs"][$url]["sort"][0] . "]' IN content)-POSITION('[" . $cfg["bloged"]["blogs"][$url]["sort"][0] . "]' IN content)-" . $sort_len . ") as DATETIME) >= '" . $environment["parameter"][4] . "-" . $month2 . "-" . $day2 . " 00:00:00')";
                $sort_len2 = strlen($cfg["bloged"]["blogs"][$url]["ext_sort"]) + 2;
                $where .= " OR ( Cast(SUBSTRING(content,POSITION('[" . $cfg["bloged"]["blogs"][$url]["sort"][0] . "]' IN content)+" . $sort_len . ",POSITION('[/" . $cfg["bloged"]["blogs"][$url]["sort"][0] . "]' IN content)-POSITION('[" . $cfg["bloged"]["blogs"][$url]["sort"][0] . "]' IN content)-" . $sort_len . ") as DATETIME) <= '" . $environment["parameter"][4] . "-" . $month1 . "-" . $day2 . " 00:00:00' AND  Cast(SUBSTRING(content,POSITION('[" . $cfg["bloged"]["blogs"][$url]["ext_sort"] . "]' IN content)+" . $sort_len2 . ",POSITION('[/" . $cfg["bloged"]["blogs"][$url]["ext_sort"] . "]' IN content)-POSITION('[" . $cfg["bloged"]["blogs"][$url]["ext_sort"] . "]' IN content)-" . $sort_len2 . ") as DATETIME) >= '" . $environment["parameter"][4] . "-" . $month2 . "-" . $day2 . " 00:00:00'))";
            }
        }
    }
    //
    // erster test einer suchanfrage per kalender
    // falls kategorie , werden nur diese angezeigt
    if ($kategorie != "") {
        $cat_len = strlen($cfg["bloged"]["blogs"][$url]["category"]) + 2;
        $where .= "  AND SUBSTRING(content,POSITION('[" . $cfg["bloged"]["blogs"][$url]["category"] . "]' IN content),POSITION('[/" . $cfg["bloged"]["blogs"][$url]["category"] . "]' IN content)-POSITION('[" . $cfg["bloged"]["blogs"][$url]["category"] . "]' IN content)) ='[" . $cfg["bloged"]["blogs"][$url]["category"] . "]" . $kategorie . "'";
    }
    if ($future == -1) {
        $where .= " AND Cast(SUBSTRING(content,POSITION('[" . $cfg["bloged"]["blogs"][$url]["sort"][0] . "]' IN content)+" . $sort_len . ",POSITION('[/" . $cfg["bloged"]["blogs"][$url]["sort"][0] . "]' IN content)-POSITION('[" . $cfg["bloged"]["blogs"][$url]["sort"][0] . "]' IN content)-" . $sort_len . ") as DATETIME) < '" . date('Y-m-d') . " 23:59:59'";
    }
    $tname = eCRC($url) . ".%";
    // falls parameter 2 gesetzt, wird nur dieser content geholt
    if ($environment["parameter"][2] != "" && $environment["ebene"] != "/wizard") {
        $tname = eCRC($url) . "." . $environment["parameter"][2];
    }
    // falls sort auf -1 wird anstatt ein datum ein integer als sortiermerkmal gesetzt um ein manuelles sortieren zu ermoeglichen
    if ($cfg["bloged"]["blogs"][$url]["sort"][1] == "-1") {
        $art = "SIGNED";
    } else {
        $art = "DATETIME";
    }
    // hier der endgueltige sql !!
    $sql = "SELECT Cast(SUBSTRING(content,POSITION('[" . $cfg["bloged"]["blogs"][$url]["sort"][0] . "]' IN content)+" . $sort_len . ",POSITION('[/" . $cfg["bloged"]["blogs"][$url]["sort"][0] . "]' IN content)-POSITION('[" . $cfg["bloged"]["blogs"][$url]["sort"][0] . "]' IN content)-" . $sort_len . ") AS " . $art . ") AS date,status,content,tname from site_text WHERE " . $status . " AND tname like '" . $tname . "'" . $where . " order by date" . $order . " DESC";
    // damit kann man beliebig viele blogs manuell holen
    $ausgaben["inhalt_selector"] = "";
    if (strpos($limit, ",")) {
        $sql = $sql . " LIMIT " . $limit;
    } else {
        if ($limit != "") {
            $hidedata["inhalt_selector"]["on"] = "on";
            $p = $environment["parameter"][1] + 0;
            // seiten umschalter
            $inhalt_selector = inhalt_selector($sql, $p, $limit, $parameter, 1, 10, $getvalues);
            $ausgaben["inhalt_selector"] = $inhalt_selector[0] . "<br />";
            $sql = $inhalt_selector[1];
            $ausgaben["anzahl"] = $inhalt_selector[2];
            $ausgaben["sel_hit"] = $inhalt_selector[3];
        }
    }
    $counter = 0;
    $result = $db->query($sql);
    $preg1 = "\\.([0-9]*)\$";
    // evtl wizard einbinden
    if ($cfg["bloged"]["blogs"][$url]["wizard"] != "") {
        $editlink = "/wizard/show,";
    } else {
        $editlink = "/admin/contented/edit,";
    }
    while ($data = $db->fetch_array($result, 1)) {
        $tag_parameter = "";
        $counter++;
        // im wizard wird der content aus der SESSION-Variablen genommen
        if ($_SESSION["wizard_content"][DATABASE . "," . $data["tname"] . ",inhalt"] && $environment["ebene"] == "/wizard") {
            $test = preg_replace("|\r\n|", "\\r\\n", $_SESSION["wizard_content"][DATABASE . "," . $data["tname"] . ",inhalt"]);
        } else {
            $test = preg_replace("|\r\n|", "\\r\\n", $data["content"]);
        }
        foreach ($tags as $key => $value) {
            // finden der parameter sowie begin und endtag
            $invisible = "";
            if (is_array($value)) {
                $tag_parameter = $value["parameter"];
                $invisible = $value["invisible"];
                $show = $value["show"];
                $value = $value["tag"];
            }
            if (strpos($value, "=")) {
                $endtag = substr($value, 0, strpos($value, "="));
                if ($value == "IMG=") {
                    $value .= ".*";
                } else {
                    $value = $value . $tag_parameter;
                }
            } else {
                $endtag = $value;
            }
            // preg nach den tags in der config
            $preg = "(\\[" . addcslashes($value, "/") . "\\])(.*)\\[\\/" . $endtag . "\\]";
            if (preg_match("/{$preg}/Us", $test, $regs)) {
                $rep_tag = str_replace('\\r\\n', "<br />", $regs[0]);
                $org_tag = str_replace('\\r\\n', "<br />", $regs[2]);
            } else {
                $rep_tag = "";
                $org_tag = "";
            }
            // gefundene werte in array schreiben
            if ($invisible != -1) {
                $array[$counter][$key . "_wizard_edit_link"] = $pathvars["virtual"] . "/wizard/editor," . DATABASE . "," . $data["tname"] . ",inhalt," . $value . ":0,,,.html";
                $array[$counter][$key . "_org"] = str_replace("\"", "'", $org_tag);
                $array[$counter][$key . "_org_tag"] = $value;
                $array[$counter][$key] = tagreplace($rep_tag);
                if ($org_tag == "") {
                    $array[$counter][$key] = "";
                }
                if (preg_match("/^\\[IMG/", $rep_tag, $regs_img)) {
                    $image_para = explode("/", $rep_tag);
                    $array[$counter][$key . "_img_art"] = $image_para[2];
                    $array[$counter][$key . "_img_id"] = $image_para[3];
                    $array[$counter][$key . "_img_size"] = $image_para[4];
                    $sql_img = "SELECT * FROM site_file WHERE fid='" . $image_para[3] . "'";
                    $result_img = $db->query($sql_img);
                    $data_img = $db->fetch_array($result_img, 1);
                    $array[$counter][$key . "_img_desc"] = $data_img["fdesc"];
                    $array[$counter][$key . "_img_under"] = $data_img["funder"];
                    $array[$counter][$key . "_img_fname"] = $data_img["ffname"];
                    if ($show != "") {
                        $rep_tag = str_replace("/" . $image_para[4] . "/", "/" . $show . "/", $rep_tag);
                    }
                }
            } else {
                if (preg_match("/^\\[IMG/", $rep_tag, $reg_img)) {
                    $image_para = explode("/", $rep_tag);
                    $invisible_array[$counter][$key . "_img_art"] = $image_para[2];
                    $invisible_array[$counter][$key . "_img_id"] = $image_para[3];
                    $invisible_array[$counter][$key . "_img_size"] = $image_para[4];
                    if ($show != "") {
                        $rep_tag = str_replace("/" . $image_para[4] . "/", "/" . $show . "/", $rep_tag);
                    }
                }
                $invisible_array[$counter][$key . "_org"] = str_replace("\"", "'", $org_tag);
                $invisible_array[$counter][$key] = tagreplace($rep_tag);
                $array[$counter][$key . "_org"] = "";
                $array[$counter][$key] = "";
            }
        }
        preg_match("/{$preg1}/", $data["tname"], $regs);
        if ($environment["parameter"][2] != "" && $environment["ebene"] != "/wizard") {
            $array[$counter]["all"] = tagreplace($data["content"]);
            $array[$counter]["id"] = $regs[1];
        } else {
            $array[$counter]["datum"] = substr($data["date"], 8, 2) . "." . substr($data["date"], 5, 2) . "." . substr($data["date"], 0, 4);
            $array[$counter]["detaillink"] = $pathvars["virtual"] . $url . "/" . $regs[1] . ".html";
            if ($environment["ebene"] == "") {
                $faq_url = "/" . $environment["kategorie"];
            } else {
                $faq_url = $environment["ebene"] . "/" . $environment["kategorie"];
            }
            $array[$counter]["faqlink"] = $pathvars["virtual"] . $faq_url . ",,," . $regs[1] . ".html#faq_" . $regs[1];
            $array[$counter]["faqanker"] = "faq_" . $regs[1];
            $array[$counter]["allink"] = $pathvars["virtual"] . $faq_url . ",," . $regs[1] . ".html";
            $array[$counter]["id"] = $regs[1];
            $array[$counter]["status"] = $data["status"];
            // Sortierung ausgeben
            // ausgabe der aktions-buttons
            if ($right == "" || priv_check($check_url, $right) && $wizard_right == "") {
                if ($cfg["bloged"]["blogs"][$url]["sort"][1] == "-1") {
                    $sort_kat = "";
                    if ($kategorie != "") {
                        $id = make_id($kategorie);
                        $sort_kat = $id["mid"];
                    }
                    $array[$counter]["sort_up"] = $pathvars["virtual"] . "/admin/bloged/sort,up," . $regs[1] . "," . $sort_kat . "," . $new . ".html";
                    $array[$counter]["sort_down"] = $pathvars["virtual"] . "/admin/bloged/sort,down," . $regs[1] . "," . $sort_kat . "," . $new . ".html";
                } else {
                    $array[$counter]["sort_up"] = "";
                    $array[$counter]["sort_down"] = "";
                }
                $array[$counter]["wizard_delete_link"] = $pathvars["virtual"] . "/wizard/delete," . DATABASE . "," . $data["tname"] . ",inhalt.html\"";
                $array[$counter]["deletelink"] = "<a href=\"" . $pathvars["virtual"] . "/admin/bloged/delete,," . $regs[1] . "," . $sort_kat . "," . $new . ".html\">g(blog_delete)</a>";
                $array[$counter]["editlink"] = "<a href=\"" . $pathvars["virtual"] . $editlink . DATABASE . "," . $data["tname"] . ",inhalt.html\">g(blog_edit)</a>";
                $array[$counter]["tname"] = eCrc($url);
            } else {
                $array[$counter]["editlink"] = "";
                $array[$counter]["deletelink"] = "";
                $array[$counter]["sort"] = "";
            }
        }
        if ($environment["parameter"][3] == $regs[1]) {
            if (is_array($invisible_array)) {
                foreach ($invisible_array[$counter] as $key => $value) {
                    $array[$counter][$key] = $value;
                }
            }
        }
    }
    // was anzeigen
    if ($environment["ebene"] == "") {
        $templ = $environment["kategorie"];
    } else {
        $templ = eCRC($environment["ebene"]) . "." . $environment["kategorie"];
    }
    if (file_exists($pathvars["templates"] . $templ . ".tem.html")) {
        $mapping["main"] = $templ;
    } elseif ($cfg["bloged"]["blogs"][$url]["own_list_template"] != "") {
        $mapping["main"] = "-2051315182." . $cfg["bloged"]["blogs"][$url]["own_list_template"];
    } elseif ($cfg["bloged"]["blogs"][$url]["sort"][1] != "") {
        $mapping["main"] = "-2051315182.faq";
    } else {
        $mapping["main"] = "-2051315182.list";
    }
    return $array;
}
     $sql = "INSERT INTO " . $cfg["menued"]["db"]["lang"]["entries"] . "\n                                    ( mid, lang, label, " . $extenda . " exturl )\n                             VALUES ( '" . $lastid . "',\n                                      '" . $_POST["lang"] . "',\n                                      '" . $_POST["label"] . "',\n                                      " . $extendb . "\n                                      '" . $_POST["exturl"] . "' )";
     if ($debugging["sql_enable"]) {
         $debugging["ausgabe"] .= "sql: " . $sql . $debugging["char"];
     }
     $result = $db->query($sql);
     if (!$result) {
         $ausgaben["form_error"] .= $db->error("#(error_result)<br />");
     }
 }
 if ($ausgaben["form_error"] == "") {
     // wohin schicken
     if ($_POST["add"]) {
         $header = $cfg["menued"]["basis"] . "/edit," . $lastid . ",verify.html";
     } else {
         if ($_SESSION["REFERER"] != "") {
             $crc = eCRC(str_replace($pathvars["virtual"], "", $_SESSION["REFERER"])) . ".";
             // ausnahme fuer die startseite hier wird die crc geleert und index aus dem referer entfernt
             if ($_SESSION["REFERER"] == "/auth/index") {
                 $crc = "";
                 $_SESSION["REFERER"] = str_replace("/index", "", $_SESSION["REFERER"]);
             }
             if (strstr($_SERVER["HTTP_REFERER"], "/auth/wizard/add")) {
                 if ($ausgaben["form_error"] == "") {
                     $_SESSION["form_referer"] = $_SESSION["REFERER"] . "/" . $fixed_entry . ".html";
                     $header = $pathvars["virtual"] . "/wizard/add," . DATABASE . "," . $crc . $fixed_entry . ",inhalt," . $_POST["wizard"] . ".html";
                 } else {
                     $header = $pathvars["virtual"] . "/wizard/add,,,," . $_POST["wizard"] . ".html";
                     $_SESSION["form_error"] = array("desc" => $ausgaben["form_error"], "post" => $_POST);
                 }
                 //                         header("Location: ".$header);
             } else {
 // funktions bereich fuer erweiterungen
 // ***
 ### put your code here ###
 // +++
 // funktions bereich fuer erweiterungen
 // page basics
 // ***
 // fehlermeldungen
 $ausgaben["form_error"] = "";
 // navigation erstellen
 $ausgaben["form_aktion"] = $cfg["fileed"]["basis"] . "/upload," . $environment["parameter"][1] . ",verify.html";
 $ausgaben["form_break"] = $cfg["fileed"]["basis"] . "/list.html";
 // hidden values
 $ausgaben["form_hidden"] .= "";
 // was anzeigen
 $mapping["main"] = eCRC($environment["ebene"]) . ".upload";
 #$mapping["navi"] = "leer";
 // unzugaengliche #(marken) sichtbar machen
 if (isset($HTTP_GET_VARS["edit"])) {
     $ausgaben["inaccessible"] = "inaccessible values:<br />";
     $ausgaben["inaccessible"] .= "# (error_result) #(error_result)<br />";
     $ausgaben["inaccessible"] .= "# (error_dupe) #(error_dupe)<br />";
 } else {
     $ausgaben["inaccessible"] = "";
 }
 // wohin schicken
 #n/a
 // +++
 // page basics
 if ($environment["parameter"][2] == "verify" && ($HTTP_POST_VARS["send"] != "" || $HTTP_POST_VARS["extension1"] != "" || $HTTP_POST_VARS["extension2"] != "")) {
     // form eigaben pr�fen
     $ausgaben["content"] = "#(no_content)";
 }
 $ausgaben["form_hidden"] .= "<input type=\"hidden\" name=\"tname\" value=\"" . $tname . "\" class=\"hidden\"/>";
 // +++
 // content holen (alle sprachen)
 // page basics
 // ***
 // fehlermeldungen
 $ausgaben["form_error"] = "";
 // navigation erstellen
 $ausgaben["form_aktion"] = $cfg["menued"]["basis"] . "/delete," . $environment["parameter"][1] . "," . $environment["parameter"][2] . ".html";
 $ausgaben["form_break"] = $cfg["menued"]["basis"] . "/list.html";
 // hidden values
 $ausgaben["form_hidden"] .= "<input type=\"hidden\" name=\"delete\" value=\"true\" class=\"hidden\"/>";
 // was anzeigen
 $mapping["main"] = eCRC($environment["ebene"]) . ".delete";
 $mapping["navi"] = "leer";
 // unzugaengliche #(marken) sichtbar machen
 // ***
 if (isset($HTTP_GET_VARS["edit"])) {
     $ausgaben["inaccessible"] = "inaccessible values:<br />";
     $ausgaben["inaccessible"] .= "# (error_menu) #(error_menu)<br />";
     $ausgaben["inaccessible"] .= "# (error_menu_lang) #(error_menu_lang)<br />";
     $ausgaben["inaccessible"] .= "# (error_text) #(error_text)<br />";
     $ausgaben["inaccessible"] .= "# (no_content) #(no_content)<br />";
 } else {
     $ausgaben["inaccessible"] = "";
 }
 // +++
 // unzugaengliche #(marken) sichtbar machen
 // wohin schicken
     $_SESSION["page"] = $_SESSION["cms_last_referer"];
     $hidedata["cms"] = array("link" => $_SESSION["cms_last_edit"] . "?referer=" . $_SESSION["cms_last_referer"], "display" => "inline");
 }
 // navigation erstellen
 $ausgaben["form_aktion"] = $cfg["fileed"]["basis"] . "/compilation," . $environment["parameter"][1] . "," . $environment["parameter"][2] . "," . $environment["parameter"][3] . ".html";
 $ausgaben["form_break"] = $cfg["fileed"]["basis"] . "/list.html";
 $ausgaben["edit"] = $cfg["fileed"]["basis"] . "/collect," . $environment["parameter"][1] . ".html";
 if ($cfg["fileed"]["compilation"]["sel_pics_w_sel"] == -1) {
     // wenn die selection ausgewaehlt wird werden auch alle bilder ausgewaehlt, js-teil anzeigen
     $hidedata["sel_pics_w_sel"] = array();
 }
 // hidden values
 #$ausgaben["form_hidden"] .= "";
 // was anzeigen
 $cfg["fileed"]["path"] = str_replace($pathvars["virtual"], "", $cfg["fileed"]["basis"]);
 $mapping["main"] = eCRC($cfg["fileed"]["path"]) . ".compilation";
 #$mapping["navi"] = "leer";
 // unzugaengliche #(marken) sichtbar machen
 if (isset($HTTP_GET_VARS["edit"])) {
     $ausgaben["inaccessible"] = "inaccessible values:<br />";
     $ausgaben["inaccessible"] .= "g (cmslink) g(cmslink)<br />";
     $ausgaben["inaccessible"] .= "# (img_plural) #(img_plural)<br />";
     $ausgaben["inaccessible"] .= "# (img_sing) #(img_sing)<br />";
     $ausgaben["inaccessible"] .= "# (all_names) #(all_names)<br />";
     $ausgaben["inaccessible"] .= "# (check_error1) #(check_error1)<br />";
     $ausgaben["inaccessible"] .= "# (check_error2) #(check_error2)<br />";
     $ausgaben["inaccessible"] .= "# (answera) #(answera)<br />";
     $ausgaben["inaccessible"] .= "# (answerb) #(answerb)<br />";
     $ausgaben["inaccessible"] .= "# (answerc_no) #(answerc_no)<br />";
     $ausgaben["inaccessible"] .= "# (answerc_yes) #(answerc_yes)<br />";
     $ausgaben["inaccessible"] .= "# (answerc_yes_sing) #(answerc_yes_sing)<br />";
    // ***
    // fehlermeldungen
    if ($HTTP_GET_VARS["error"] != "") {
        if ($HTTP_GET_VARS["error"] == 1) {
            $ausgaben["form_error"] = "#(error1)";
        }
    } else {
        $ausgaben["form_error"] = "";
    }
    // navigation erstellen
    $ausgaben["link_new"] = $cfg["contented"]["basis"] . "/add.html";
    // hidden values
    #$ausgaben["form_hidden"] .= "";
    // was anzeigen
    $cfg["contented"]["path"] = str_replace($pathvars["virtual"], "", $cfg["contented"]["basis"]);
    $mapping["main"] = eCRC($cfg["contented"]["path"]) . ".list";
    #$mapping["navi"] = "leer";
    // unzugaengliche #(marken) sichtbar machen
    if (isset($HTTP_GET_VARS["edit"])) {
        $ausgaben["inaccessible"] = "inaccessible values:<br />";
        $ausgaben["inaccessible"] .= "# (error1) #(error1)<br />";
        $ausgaben["inaccessible"] .= "# (edittitel) #(edittitel)<br />";
        $ausgaben["inaccessible"] .= "# (deletetitel) #(deletetitel)<br />";
    } else {
        $ausgaben["inaccessible"] = "";
    }
    // wohin schicken
    #n/a
    // +++
    // page basics
} else {
function content($line, $tname)
{
    global $db, $debugging, $pathvars, $specialvars, $environment, $defaults, $ausgaben, $rechte, $eWeBuKi, $RightConcept;
    if ($specialvars["crc32"] == -1) {
        if ($environment["ebene"] != "" && $tname == $environment["kategorie"]) {
            $tname = eCRC($environment["ebene"]) . "." . $tname;
            if ($debugging["html_enable"]) {
                $debugging["ausgabe"] .= "crc32 tname \"" . $tname . "\" forced!!!" . $debugging["char"];
            }
        }
    } else {
        // ist das eine sub kategorie ?
        if ($environment["subkatid"] != "" && $tname == $environment["katid"]) {
            $tname = $tname . "." . $environment["subkatid"];
            if ($debugging["html_enable"]) {
                $debugging["ausgabe"] .= "sub tname \"" . $tname . "\" forced!!!" . $debugging["char"];
            }
            #$dbtname = $tname;
        }
    }
    while (strpos($line, "#(") !== false || strpos($line, "g(") !== false) {
        // wo beginnt die marke
        $labelbeg = strpos($line, "#(");
        $art = "#(";
        $bez = "# (";
        $dbtname = $tname;
        if ($labelbeg === false) {
            $labelbeg = strpos($line, "g(");
            $art = "g(";
            $bez = "g (";
            $dbtname = "global";
        }
        // wo endet die marke (wichtig der offset!)
        $labelend = strpos($line, ")", $labelbeg);
        // wie lang ist die marke
        $labellen = $labelend - $labelbeg;
        // token name extrahieren
        $label = substr($line, $labelbeg + 2, $labellen - 2);
        if (strpos($label, ",") !== false) {
            break;
        }
        // javascript fix
        if (preg_match("/^v[0-9]*\$/", $environment["parameter"][1], $regs) && ($rechte["view"] || $rechte["cms_edit"] == -1)) {
            $version_sql = "AND version=" . substr($environment["parameter"][1], 1);
            $version = substr($environment["parameter"][1], 1);
        } else {
            $version = "";
            $version_sql = "";
        }
        if ($specialvars["content_release"] == -1 && $version == "") {
            $content_release = "AND status>0";
        } else {
            $content_release = "";
        }
        $sql = "SELECT html, content\n                      FROM " . SITETEXT . "\n                     WHERE tname='" . $dbtname . "'\n                       AND lang='" . $environment["language"] . "'\n                       AND label='" . $label . "'\n                        " . $version_sql . "\n                        " . $content_release . "\n                  ORDER BY version DESC\n                     LIMIT 0,1";
        #if ( $debugging["html_enable"] ) $debugging["ausgabe"] .= "sql: ".$sql.$debugging["char"];
        $result = $db->query($sql);
        $row = $db->fetch_row($result);
        if (!is_array($row)) {
            // wenn "aktuelle sprache" = "default sprache" ueberfluessige fehlermeldung nicht anzeigen!
            if ($environment["language"] != $specialvars["default_language"]) {
                if ($debugging["html_enable"]) {
                    $debugging["ausgabe"] .= "Language: \"" . $environment["language"] . "\" for #(" . $label . ") in template \"" . $dbtname . "\" not found using default: \"" . $specialvars["default_language"] . "\"" . $debugging["char"];
                }
            }
            $sql = "SELECT html, content\n                          FROM " . SITETEXT . "\n                         WHERE tname='{$dbtname}'\n                           AND lang='" . $specialvars["default_language"] . "'\n                           AND label='{$label}'\n                            " . $version_sql . "\n                            " . $content_release . "\n                      ORDER BY version DESC\n                         LIMIT 0,1";
            $result = $db->query($sql);
            $row = $db->fetch_row($result);
        }
        if ($row[1] == "") {
            if ($debugging["html_enable"]) {
                $debugging["ausgabe"] .= "Language: Uuuuups no default language \"" . $specialvars["default_language"] . "\" for #(" . $label . ") in template \"" . $dbtname . "\" found. Giving up!" . $debugging["char"];
            }
        }
        $database = $db->getDb();
        $replace = $row[1];
        // wenn content nicht in html ist und deaktiviert wurde
        if ($row[0] != -1 && $specialvars["denyhtml"] == -1) {
            // html killer :)
            $pattern = "<[\\!\\/a-zA-Z].{0,}>";
            while (preg_match("/" . $pattern . "/", $replace, $tag)) {
                $replace = str_replace($tag[0], " - html gel&ouml;scht! -", $replace);
            }
        }
        // eWeBuKi tag schutz part 1 (siehe part 2 (weiter unten), part 3 (cms.in.php), part 4 (function_rparser.inc.php))
        if (strpos($replace, "[/E]") !== false) {
            $preg = "|\\[E\\](.*)\\[/E\\]|Us";
            preg_match_all($preg, $replace, $match, PREG_PATTERN_ORDER);
            $mark_l = array("[/", "[");
            $hide_l = array("++", "**");
            $mark_o = array("#(", "g(", "#{", "!#");
            $hide_o = array("::1::", "::2::", "::3::", "::4::");
            foreach ($match[0] as $key => $value) {
                $escape = str_replace($mark_l, $hide_l, $match[1][$key]);
                $escape = str_replace($mark_o, $hide_o, $escape);
                $replace = str_replace($value, "[E]" . $escape . "[/E]", $replace);
            }
        }
        // cms edit link einblenden
        $check = "";
        if ($specialvars["editlock"] == False && $tname != "auth") {
            if ($specialvars["security"]["new"] == -1) {
                $check = priv_check('', $specialvars["security"]["content"], $specialvars["dyndb"]);
            } else {
                if ($rechte["cms_edit"] == -1) {
                    $check = True;
                }
            }
            if ($check == True) {
                if ($defaults["section"]["label"] == "") {
                    $defaults["section"]["label"] = "inhalt";
                }
                if ($defaults["section"]["tag"] == "") {
                    $defaults["section"]["tag"] = "[H";
                }
                if ($specialvars["nosections"] != True && $label == $defaults["section"]["label"]) {
                    if (is_array($defaults["section"]["tag"])) {
                        // neue section-edit-marken
                        $preg_search = str_replace(array("[", "]", "/"), array("\\[", "\\]", "\\/"), implode("|", $defaults["section"]["tag"]));
                        $allcontent = preg_split("/(" . $preg_search . ")/", $replace, -1, PREG_SPLIT_DELIM_CAPTURE);
                        $i = 0;
                        foreach ($allcontent as $key => $value) {
                            if (in_array($value, $defaults["section"]["tag"])) {
                                $join[$i] = "{" . $i . "}" . $value;
                            } else {
                                $join[$i] .= $value;
                                $i++;
                            }
                        }
                        $replace = implode("", $join);
                    } else {
                        $allcontent = explode($defaults["section"]["tag"], $replace);
                        foreach ($allcontent as $key => $value) {
                            if ($key == 0) {
                                $join[] = $value;
                            } else {
                                $parts = explode("]", $value, 2);
                                $join[] = $parts[0] . "]{" . $key . "}" . $parts[1];
                            }
                        }
                        $replace = implode($defaults["section"]["tag"], $join);
                    }
                }
                // konvertieren ?
                if ($specialvars["wysiwyg"] == "" && $row[0] == -1) {
                    $convert = ",,tag";
                    $signal = "c";
                } elseif ($specialvars["wysiwyg"] != "" && $row[0] != -1) {
                    $convert = ",,html";
                    $signal = "c";
                } else {
                    $convert = "";
                    $signal = "e";
                }
                if ($specialvars["old_contented"] == True) {
                    $editurl = $pathvars["virtual"] . "/cms/edit," . $db->getDb() . "," . $dbtname . "," . $label;
                } else {
                    $editurl_key = $pathvars["virtual"] . "/admin/contented/edit," . $db->getDb() . "," . $dbtname . "," . $label;
                    $editurl = $pathvars["virtual"] . "/admin/contented/edit," . $db->getDb() . "," . $dbtname . "," . $label . ",,," . $version;
                }
                if ($defaults["cms-tag"]["link"] == "") {
                    $defaults["cms-tag"]["link"] = "<a href=\"##url##\"><img src=\"/images/default/cms-tag-##signal##.png\" width=\"4\" height=\"4\" alt=\"Bearbeiten\" /></a>";
                }
                // section verarbeitung
                if ($specialvars["nosections"] != True && $label == $defaults["section"]["label"]) {
                    foreach ($allcontent as $key => $value) {
                        $marken = array("##url##", "##signal##");
                        $ersatz = array($editurl_key . "," . $key . ",," . $version . ",.html", $signal);
                        $replace = str_replace("{" . $key . "}", str_replace($marken, $ersatz, $defaults["cms-tag"]["link"]), $replace);
                    }
                }
                // wenn es kein value, alt, title und status in der zeile gibt
                $vorher = substr($line, $labelbeg - 20, 20);
                if (!strpos($vorher, "value=\"") && !strpos($vorher, "alt=\"") && !strpos($vorher, "title=\"") && !strpos($vorher, "status='")) {
                    $marken = array("##url##", "##signal##");
                    $ersatz = array($editurl . $convert . ".html", $signal);
                    $replace .= str_replace($marken, $ersatz, $defaults["cms-tag"]["link"]);
                } else {
                    $ausgaben["inaccessible"] .= $bez . $label . ")&nbsp;" . $art . $label . ")<br />\n";
                }
            }
        }
        // wenn content nicht in html ist
        if ($row[0] != -1) {
            // intelligenten link tag bearbeiten
            $replace = intelilink($replace);
            // neues generelles tagreplace
            $replace = tagreplace($replace);
            // eWeBuKi tag schutz part 2
            $replace = str_replace($hide_l, $mark_l, $replace);
            // newlines nach br wandeln (muss zuletzt gemacht werden)
            if ($specialvars["newbrmode"] != True) {
                $replace = nlreplace($replace);
            }
        }
        // marke ersetzen
        if (strpos($line, $art) !== false) {
            $line = str_replace($art . $label . ")", $replace, $line);
        }
    }
    return $line;
}
     ### put your code here ###
     if ($error) {
         $ausgaben["form_error"] .= $db->error("#(error_result)<br />");
     }
     // +++
     // funktions bereich fuer erweiterungen
 }
 // datensatz aendern
 if ($ausgaben["form_error"] == "") {
     $path = explode("/", $url);
     $kategorie = array_pop($path);
     $ebene = implode("/", $path);
     if ($ebene == "") {
         $tname = $kategorie;
     } else {
         $tname = eCRC($ebene) . "." . $kategorie;
     }
     // zuerst alle loeschen
     $sql = "DELETE\n                          FROM " . $cfg["keyworded"]["db"]["keyword"]["entries"] . "\n                         WHERE " . $cfg["keyworded"]["db"]["keyword"]["tname"] . "='" . $tname . "'\n                           AND " . $cfg["keyworded"]["db"]["keyword"]["lang"] . "='" . $environment["language"] . "'";
     $result = $db->query($sql);
     // neue hinzufuegen
     foreach ($keywords as $tag) {
         if ($tag == "") {
             continue;
         }
         $sql = "INSERT INTO " . $cfg["keyworded"]["db"]["keyword"]["entries"] . "\n                                        (" . $cfg["keyworded"]["db"]["keyword"]["tname"] . ",\n                                         " . $cfg["keyworded"]["db"]["keyword"]["ebene"] . ",\n                                         " . $cfg["keyworded"]["db"]["keyword"]["kategorie"] . ",\n                                         " . $cfg["keyworded"]["db"]["keyword"]["lang"] . ",\n                                         " . $cfg["keyworded"]["db"]["keyword"]["keyword"] . "\n                                        )\n                                 VALUES ('" . $tname . "',\n                                         '" . $ebene . "',\n                                         '" . $kategorie . "',\n                                         '" . $environment["language"] . "',\n                                         '" . $tag . "'\n                                        )";
         $result = $db->query($sql);
     }
     // Sql um spezielle Felder erweitern
     #$ldate = $_POST["ldate"];
     #$ldate = substr($ldate,6,4)."-".substr($ldate,3,2)."-".substr($ldate,0,2)." ".substr($ldate,11,9);
function find_marked_content($url = "/", $cfg, $label, $status = array(-2, -1), $add_filter = array(), $check_privs = TRUE, $ignore = array())
{
    global $db, $pathvars, $environment;
    $path = explode("/", $url);
    $kategorie = array_pop($path);
    $ebene = implode("/", $path);
    // gibt es bereiche, die nicht untersucht werden sollen
    if (count($ignore) > 0) {
        foreach ($ignore as $value) {
            $where[] = "ebene NOT LIKE '" . $value . "%'";
            $where[] = "kategorie NOT LIKE '" . $value . "%'";
        }
        $where = " AND (" . implode(" AND ", $where) . ")";
    }
    // zusaetzliche filter
    $buffer = array();
    foreach ($add_filter as $key => $value) {
        switch ($key) {
            case "user":
                $buffer[] = "byalias='" . $value . "'";
                break;
            case "max_age":
                $buffer[] = "changed>='" . date("Y-m-d H:i:s", mktime(0, 0, 0, date("m"), date("d") - $value, date("Y"))) . "'";
                break;
        }
    }
    if (count($buffer) > 0) {
        $filter = "AND " . implode(" AND ", $buffer);
    }
    $sql = "SELECT *\n                      FROM site_text\n                     WHERE (\n                            ebene LIKE '" . $url . "%'\n                            OR (ebene='" . $ebene . "' AND kategorie='" . $kategorie . "')\n                           )" . $where . "\n                       AND label='" . $label . "'\n                       AND status IN (" . implode(",", $status) . ")\n                       " . $filter . "\n                  ORDER BY tname, status ASC, version DESC";
    $sql = "SELECT *\n                      FROM site_text\n                     WHERE (\n                            ebene LIKE '" . $url . "%'\n                            OR (ebene='" . $ebene . "')\n                           )" . $where . "\n                       AND label='" . $label . "'\n                       AND status IN (" . implode(",", $status) . ")\n                       " . $filter . "\n                  ORDER BY tname, status ASC, version DESC";
    // if ( count($add_filter) > 0 ) echo "$sql<br>";
    $result = $db->query($sql);
    $dataset = "";
    while ($data = $db->fetch_array($result)) {
        // weiterspringen, falls es von diesen content bereits eine freizugebene version gibt
        if ($dataset == $data["tname"] . "::" . $label) {
            continue;
        }
        $dataset = $data["tname"] . "::" . $label;
        if ($data["ebene"] == "") {
            $tname = $data["kategorie"];
        } else {
            $tname = eCRC($data["ebene"]) . "." . $data["kategorie"];
        }
        $path = $data["ebene"] . "/" . $data["kategorie"];
        // rechte checken
        if ($check_privs == TRUE || $_SESSION["uid"] == "") {
            if ($data["status"] == -2 && !priv_check($path, "publish")) {
                continue;
            } elseif ($data["status"] == -1 && !priv_check($path, "edit;publish")) {
                continue;
            }
        }
        // titel
        $titel = "---";
        preg_match("/\\[H[0-9]{1}\\](.+)\\[\\/H/Us", $data["content"], $match);
        if (count($match) > 1) {
            $titel = $match[1];
        }
        // link anpassen
        if ($data["status"] > 0) {
            $view_link = $pathvars["menuroot"] . $data["ebene"] . "/" . $data["kategorie"] . ".html";
        } else {
            $view_link = $pathvars["menuroot"] . $data["ebene"] . "/" . $data["kategorie"] . ",v" . $data["version"] . ".html";
        }
        // ggf kategorie
        $kategorie = "---";
        $ext = "---";
        if ($cfg["bloged"]["blogs"][$url]["category"] != "") {
            preg_match("/\\[" . $cfg["bloged"]["blogs"][$url]["addons"]["name"]["tag"] . "\\](.+)\\[\\/" . $cfg["bloged"]["blogs"][$url]["addons"]["name"][0] . "/Us", $data["content"], $termine_match);
            if (count($termine_match) > 1) {
                $ext = $termine_match[1];
                //                         if ( $data["status"] > 0 ) {
                $view_link = $pathvars["menuroot"] . $data["ebene"] . ",," . $data["kategorie"] . ".html";
                //                         } else {
                //                             $view_link = $pathvars["menuroot"].$data["ebene"].",,".$data["kategorie"].",v".$data["version"].".html";
                //                         }
            }
            preg_match("/\\[" . $cfg["bloged"]["blogs"][$url]["category"] . "\\](.+)\\[\\/" . $cfg["bloged"]["blogs"][$url]["category"] . "/U", $data["content"], $match);
            if (count($match) > 1) {
                $kategorie = $match[1];
                $path = $kategorie;
            }
        }
        // letzte aktuelle version finden
        $sql = "SELECT *\n                          FROM site_text\n                         WHERE tname='" . $data["tname"] . "'\n                           AND label='" . $data["label"] . "'\n                           AND lang='" . $data["lang"] . "'\n                           AND status=1\n                  ORDER BY version DESC";
        $res_akt = $db->query($sql);
        if ($db->num_rows($res_akt) == 0) {
            $last_author = "";
            $last_uid = "";
        } else {
            $dat_akt = $db->fetch_array($res_akt);
            $last_author = $dat_akt["byforename"] . " " . $dat_akt["bysurname"];
            $last_uid = $dat_akt["byalias"];
        }
        // tabellen farben wechseln
        if ($cfg[$data["status"]]["color"]["set"] == $cfg["wizard"]["color"]["a"]) {
            $cfg[$data["status"]]["color"]["set"] = $cfg["wizard"]["color"]["b"];
        } else {
            $cfg[$data["status"]]["color"]["set"] = $cfg["wizard"]["color"]["a"];
        }
        // datum bearbeiten
        $tmp_date1 = explode(" ", $data["changed"]);
        $tmp_date = explode("-", $tmp_date1[0]);
        $date = $tmp_date[2] . "." . $tmp_date[1] . "." . $tmp_date[0];
        // Sortierdatum
        $sort_date = $date;
        $sort_date_db = $data["changed"];
        preg_match("/\\[SORT\\](.+)\\[\\/SORT\\]/Us", $data["content"], $match);
        if (count($match) > 1) {
            $tmp_date1 = explode(" ", $match[1]);
            $tmp_date = explode("-", $tmp_date1[0]);
            $sort_date = $tmp_date[2] . "." . $tmp_date[1] . "." . $tmp_date[0];
            $sort_date_db = $match[1];
        }
        $new_releases[$data["status"]][] = array("path" => $path, "titel" => $titel, "ext" => $ext, "kategorie" => $kategorie, "author" => $data["byforename"] . " " . $data["bysurname"], "last_author" => $last_author, "last_uid" => $last_uid, "changed" => $date, "changed_db" => $data["changed"], "sort" => $sort_date, "sort_db" => $sort_date_db, "view" => $view_link, "edit" => $pathvars["virtual"] . "/wizard/show," . $db->getDb() . "," . $tname . ",inhalt.html", "del" => $pathvars["virtual"] . "/wizard/delete," . $db->getDb() . "," . $tname . ",inhalt.html", "unlock" => $pathvars["virtual"] . "/wizard/release," . $environment["parameter"][1] . "," . $tname . "," . $label . ",unlock," . $data["version"] . ".html", "release" => $pathvars["virtual"] . "/wizard/release," . $environment["parameter"][1] . "," . $tname . "," . $label . ",release," . $data["version"] . ".html", "history" => $pathvars["virtual"] . "/admin/contented/history,," . $tname . "," . $label . "," . $dat_akt["version"] . "," . $data["version"] . ".html", "color" => $cfg[$data["status"]]["color"]["set"], "status" => $data["status"]);
    }
    return $new_releases;
}
         if (count($dataloop["presse"]) > 0) {
             $hidedata["presse"]["ueberschrift"] = "Pressemitteilungen";
         }
         if (count($dataloop["termine"]) > 0) {
             $hidedata["termine"]["ueberschrift"] = "Termine";
         }
     }
     break;
 case "va-archiv":
     // reiter ausblenden
     unset($hidedata["aussenstelle"]);
     // kekse manipulieren
     $environment["kekse"] .= $defaults["split"]["kekse"] . "<span class=\"last_bread_crumb\">Archiv</span>";
     $art_tname = eCRC("/aktuell/archiv");
     $pre_tname = eCRC("/aktuell/presse");
     $ter_tname = eCRC("/aktuell/termine");
     $today = date("Y-m-d");
     $sql = "SELECT CAST(SUBSTR(content,POSITION('[SORT]' IN content)+6,POSITION('[/SORT]' IN content)-POSITION('[SORT]' IN content)-6) AS DATETIME) AS start,\n                               tname,\n                               ebene,\n                               kategorie,\n                               content\n                          FROM site_text\n                         WHERE status='1'\n                           AND (\n                                   tname LIKE '" . $ter_tname . ".%'\n                                OR (\n                                           (tname LIKE '" . $art_tname . ".%' OR tname LIKE '" . $pre_tname . ".%')\n                                       AND CAST(SUBSTR(content,POSITION('[SORT]' IN content)+6,POSITION('[/SORT]' IN content)-POSITION('[SORT]' IN content)-6) AS TIMESTAMP)<'" . $today . " 23:59:00'\n                                   )\n                               )\n                           AND SUBSTR(content,POSITION('[KATEGORIE]' IN content),POSITION('[/KATEGORIE]' IN content)-POSITION('[KATEGORIE]' IN content))= '[KATEGORIE]/aemter/" . $amtid . "/index'\n                      ORDER BY start DESC";
     // seiten umschalter
     $inhalt_selector = inhalt_selector($sql, $environment["parameter"][1], 25, $parameter, 1, 3, $getvalues);
     $ausgaben["va_archiv_inhalt_selector"] = $inhalt_selector[0] . "<br />";
     $sql = $inhalt_selector[1];
     $ausgaben["va_archiv_anzahl"] = $inhalt_selector[2];
     $result = $db->query($sql);
     while ($data = $db->fetch_array($result, 1)) {
         if (strstr($data["tname"], "1884525588")) {
             // termine
             $link = "termine,," . $data["kategorie"] . ",all.html";
             preg_match("/\\[_NAME\\](.*)\\[\\/_NAME\\]/Uis", $data["content"], $match);
             $title = $match[1];
             $type = "Termin";
 if ($HTTP_GET_VARS["error"] != "") {
     if ($HTTP_GET_VARS["error"] == 1) {
         $ausgaben["form_error"] = "#(error1)";
     } else {
         $ausgaben["form_error"] = "#(error2)";
     }
 } else {
     $ausgaben["form_error"] = "";
 }
 // navigation erstellen
 $ausgaben["link_new"] = $cfg["fileed"]["basis"] . "/add.html";
 // hidden values
 #$ausgaben["form_hidden"] .= "";
 // was anzeigen
 $cfg["fileed"]["path"] = str_replace($pathvars["virtual"], "", $cfg["fileed"]["basis"]);
 $mapping["main"] = eCRC($cfg["fileed"]["path"]) . ".list";
 #$mapping["navi"] = "leer";
 // unzugaengliche #(marken) sichtbar machen
 if (isset($HTTP_GET_VARS["edit"])) {
     $ausgaben["inaccessible"] = "inaccessible values:<br />";
     $ausgaben["inaccessible"] .= "# (error1) #(error1)<br />";
     $ausgaben["inaccessible"] .= "# (error2) #(error2)<br />";
     $ausgaben["inaccessible"] .= "# (cmslink) #(cmslink)<br />";
     $ausgaben["inaccessible"] .= "# (fileedit) #(fileedit)<br />";
     $ausgaben["inaccessible"] .= "# (filedelete) #(filedelete)<br />";
     $ausgaben["inaccessible"] .= "# (answera) #(answera)<br />";
     $ausgaben["inaccessible"] .= "# (answerb) #(answerb)<br />";
     $ausgaben["inaccessible"] .= "# (answerc_no) #(answerc_no)<br />";
     $ausgaben["inaccessible"] .= "# (answerc_yes) #(answerc_yes)<br />";
     $ausgaben["inaccessible"] .= "# (prev) #(next)<br />";
     $ausgaben["inaccessible"] .= "# (next) #(prev)<br />";
    // ***
    // fehlermeldungen
    if ($HTTP_GET_VARS["error"] != "") {
        if ($HTTP_GET_VARS["error"] == 1) {
            $ausgaben["form_error"] = "#(error1)";
        }
    } else {
        $ausgaben["form_error"] = "";
    }
    // navigation erstellen
    $ausgaben["link_new"] = $cfg["leveled"]["basis"] . "/add.html";
    // hidden values
    #$ausgaben["form_hidden"] .= "";
    // was anzeigen
    $cfg["leveled"]["path"] = str_replace($pathvars["virtual"], "", $cfg["leveled"]["basis"]);
    $mapping["main"] = eCRC($cfg["leveled"]["path"]) . ".list";
    #$mapping["navi"] = "leer";
    // unzugaengliche #(marken) sichtbar machen
    if (isset($HTTP_GET_VARS["edit"])) {
        $ausgaben["inaccessible"] = "inaccessible values:<br />";
        $ausgaben["inaccessible"] .= "# (error1) #(error1)<br />";
    } else {
        $ausgaben["inaccessible"] = "";
    }
    // wohin schicken
    #n/a
    // +++
    // page basics
} else {
    header("Location: " . $pathvars["virtual"] . "/");
}
 function update_tname($refid, $suchmuster = "", $ersatz = "")
 {
     global $db, $cfg, $debugging, $ausgaben;
     $sql = "SELECT mid, refid, entry FROM " . $cfg["db"]["menu"]["entries"] . " WHERE refid ='" . $refid . "'";
     $result = $db->query($sql);
     while ($data = $db->fetch_array($result, 1)) {
         // aktuelle ebene suchen
         $ebene = make_ebene($data["refid"]);
         // eindeutiges suchmuster erstellen
         #if ( $suchmuster == "" ) {
         #    $suchmuster = $ebene;
         #    $ersatz = substr($ebene,0,strrpos($ebene,"/"))."/".$new;
         #}
         // alter tname
         if ($ebene != "/") {
             $extend = eCRC($ebene) . ".";
         }
         $old_tname = $extend . $data["entry"];
         #echo $ebene.":".$old_tname."<br>";
         // neuer tname
         $ebene = str_replace($suchmuster, $ersatz, $ebene);
         if ($ebene != "/") {
             $extend = eCRC($ebene) . ".";
         }
         $new_tname = $extend . $data["entry"];
         #echo $ebene.":".$new_tname."<br>";
         $sql = "UPDATE " . $cfg["db"]["text"]["entries"] . "\n                            SET tname = '" . $new_tname . "',\n                                ebene = '" . $ebene . "',\n                                kategorie = '" . $data["entry"] . "'\n                            WHERE tname = '" . $old_tname . "'";
         if ($debugging["sql_enable"]) {
             $debugging["ausgabe"] .= "sql: " . $sql . $debugging["char"];
         }
         $subresult = $db->query($sql);
         if (!$subresult) {
             $ausgaben["form_error"] .= $db->error("#(menu_error)<br />");
         }
         // und das gleiche fuer alle unterpunkte
         update_tname($data["mid"], $suchmuster, $ersatz);
     }
 }
    Chaos Networks
    c/o Werner Ammon
    Lerchenstr. 11c

    86343 Königsbrunn

    URL: http://www.chaos.de
*/
////////////////////////////////////////////////////////////////////////////////////////////////////////////////
$sql = "SELECT content FROM site_text WHERE tname = '" . eCRC(dirname($environment["ebene"])) . "." . basename($environment["ebene"]) . "' AND status = '1'";
include $pathvars["moduleroot"] . "wizard/wizard.cfg.php";
$cfg["wizard"]["function"]["print"][] = "makece";
include $pathvars["moduleroot"] . "wizard/wizard-functions.inc.php";
if (($cfg["print"]["path"] == "" || strstr($environment["ebene"], $cfg["print"]["path"])) && class_exists('PDFlib')) {
    $sql = "SELECT content FROM site_text WHERE tname = '" . eCRC(dirname($environment["ebene"])) . "." . basename($environment["ebene"]) . "' AND status = '1'";
    if ($debugging["sql_enable"]) {
        $debugging["ausgabe"] .= "sql: " . $sql . $debugging["char"];
    }
    $result = $db->query($sql);
    $data = $db->fetch_array($result, 1);
    $test = content_split_all($data["content"]);
    $mutate["H"] = array("H");
    #$mutate["B"] = array("");
    $mutate["P"] = array("P");
    $pdf = new PDFlib();
    $pdf->begin_document("", "lang=de tagged=true");
    $pdf->set_info("Creator", "hello.php");
    $pdf->set_info("Author", "STI");
    $pdf->set_info("Title", "Hello world (PHP)!");
    $pdf->set_parameter("autospace", "true");
    // ***
    // fehlermeldungen
    if ($HTTP_GET_VARS["error"] != "") {
        if ($HTTP_GET_VARS["error"] == 1) {
            $ausgaben["form_error"] = "#(error1)";
        }
    } else {
        $ausgaben["form_error"] = "";
    }
    // navigation erstellen
    $ausgaben["link_new"] = $cfg["grouped"]["basis"] . "/add.html";
    // hidden values
    #$ausgaben["form_hidden"] .= "";
    // was anzeigen
    $cfg["grouped"]["path"] = str_replace($pathvars["virtual"], "", $cfg["grouped"]["basis"]);
    $mapping["main"] = eCRC($cfg["grouped"]["path"]) . ".list";
    #$mapping["navi"] = "leer";
    // unzugaengliche #(marken) sichtbar machen
    if (isset($HTTP_GET_VARS["edit"])) {
        $ausgaben["inaccessible"] = "inaccessible values:<br />";
        $ausgaben["inaccessible"] .= "# (error1) #(error1)<br />";
    } else {
        $ausgaben["inaccessible"] = "";
    }
    // wohin schicken
    #n/a
    // +++
    // page basics
} else {
    header("Location: " . $pathvars["virtual"] . "/");
}
 #$debug_array = $row;
 // +++
 // langtabelle ausgabe
 // +++
 // verwaltung multi language
 // page basics
 // ***
 // fehlermeldungen
 $ausgaben["form_error"] = "";
 // navigation erstellen
 $ausgaben["form_aktion"] = $cfg["menued"]["basis"] . "/edit," . $environment["parameter"][1] . "," . $environment["parameter"][2] . ",verify.html";
 $ausgaben["form_break"] = $cfg["menued"]["basis"] . "/list.html";
 // hidden values
 $ausgaben["form_hidden"] .= "";
 // was anzeigen
 $mapping["main"] = eCRC($environment["ebene"]) . ".edit" . $art;
 $mapping["navi"] = "leer";
 // unzugaengliche #(marken) sichtbar machen
 // ***
 if (isset($HTTP_GET_VARS["edit"])) {
     $ausgaben["inaccessible"] = "inaccessible values:<br />";
     $ausgaben["inaccessible"] .= "# (error_result) #(error_result)<br />";
     $ausgaben["inaccessible"] .= "# (error_dupe) #(error_dupe)<br />";
     $ausgaben["inaccessible"] .= "# (error_lang_add) #(error_lang_add)<br />";
     $ausgaben["inaccessible"] .= "# (error_lang_delete) #(error_lang_delete)<br />";
     $ausgaben["inaccessible"] .= "# (error_entry) #(error_entry)<br />";
     $ausgaben["inaccessible"] .= "# (error_url) #(error_url)<br />";
 } else {
     $ausgaben["inaccessible"] = "";
 }
 // +++
    $data = $db->fetch_array($result, 1);
    $artikel_check = priv_check($data["check_url"], $cfg["wizard"]["right"]["edit"]);
    $artikel_check_publish = priv_check($data["check_url"], "publish");
}
if ($cfg["wizard"]["right"]["edit"] == "" || priv_check($url, $cfg["wizard"]["right"]["edit"]) || priv_check(tname2path($environment["parameter"][2]), $cfg["wizard"]["right"]["edit"]) || priv_check_old("", $cfg["wizard"]["right"]) || $artikel_check || $rechte["administration"] == -1 || $erlaubnis == -1) {
    // unzugaengliche #(marken) sichtbar machen
    // ***
    if (isset($_GET["edit"])) {
        $ausgaben["inaccessible"] = "inaccessible values:<br />";
        $ausgaben["inaccessible"] .= "# (error_result) #(error_result)<br />";
        $ausgaben["inaccessible"] .= "# (error_dupe) #(error_dupe)<br />";
    } else {
        $ausgaben["inaccessible"] = "";
    }
    // form options holen
    $form_options = form_options(eCRC("/admin/menued") . ".add");
    // fehlermeldungen
    $ausgaben["form_error"] = $_SESSION["form_error"]["desc"];
    if (strstr($_SERVER["HTTP_REFERER"], "auth/login")) {
        $ausgaben["form_referer"] = "/auth/login.html";
    } else {
        $ausgaben["form_referer"] = $_SERVER["HTTP_REFERER"];
    }
    // form elememte bauen
    $element = array_merge(form_elements("site_menu", $form_values), form_elements("site_menu_lang", $form_values));
    // freigabe-test
    if ($specialvars["content_release"] == -1) {
        $hidedata["add_menu"]["hide"] = -1;
    } else {
        $hidedata["add_menu"]["hide"] = "";
    }
    $check_parameter = $environment["parameter"][1];
    if (!$environment["parameter"][1]) {
        $check_parameter = 0;
    }
    if (priv_check(make_ebene($check_parameter), $cfg["menued"]["modify"]["add"][2], $specialvars["dyndb"])) {
        $ausgaben["new"] .= "<a href=\"" . $cfg["menued"]["basis"] . "/add," . $environment["parameter"][1] . "," . $array["refid"] . ".html\">g(new)</a>";
        $ausgaben["root"] = "";
        if ($specialvars["security"]["new"] == -1 && priv_check("/", $cfg["menued"]["modify"]["rights"][2], $specialvars["dyndb"]) && ($environment["parameter"][1] == "" || $environment["parameter"][1] == "0")) {
            $ausgaben["root"] = "<ul class=\"menued\"><li><a style=\"float:right\" href=\"" . $pathvars["virtual"] . "/" . $cfg["menued"]["subdir"] . "/righted/edit,0.html\"><img style=\"float:right\" src=\"/images/default/rights.png\" alt=\"righted\" title=\"RIGHTED\" width=\"24\" height=\"18\"></img></a><span>/</span></li></ul>";
        }
    } else {
        $ausgaben["new"] = "";
        $ausgaben["root"] = "";
    }
    // was anzeigen
    $mapping["main"] = eCRC($environment["ebene"]) . ".list";
    $mapping["navi"] = "leer";
    // unzugaengliche #(marken) sichtbar machen
    if (isset($HTTP_GET_VARS["edit"])) {
        $ausgaben["inaccessible"] = "inaccessible values:<br />";
        $ausgaben["inaccessible"] .= "# (error1) #(error1)<br />";
        $ausgaben["inaccessible"] .= "# (disabled) #(disabled)<br />";
        $ausgaben["inaccessible"] .= "# (enabled) #(enabled)<br />";
    } else {
        $ausgaben["inaccessible"] = "";
    }
    // wohin schicken
    #n/a
} else {
    header("Location: " . $pathvars["virtual"] . "/");
}
 // funktions bereich
 // page basics
 // ***
 // fehlermeldungen
 if ($HTTP_GET_VARS["error"] != "") {
     if ($HTTP_GET_VARS["error"] == 1) {
         $ausgaben["form_error"] = "#(error1)";
     }
 } else {
     $ausgaben["form_error"] = "";
 }
 // hidden values
 #$ausgaben["form_hidden"] .= "";
 // was anzeigen
 $cfg["leer"]["path"] = str_replace($pathvars["virtual"], "", $cfg["leer"]["basis"]);
 $mapping["main"] = eCRC($environment["ebene"]) . "." . $environment["kategorie"];
 #$mapping["navi"] = "leer";
 // unzugaengliche #(marken) sichtbar machen
 if (isset($HTTP_GET_VARS["edit"])) {
     $ausgaben["inaccessible"] = "inaccessible values:<br />";
     $ausgaben["inaccessible"] .= "# (error1) #(error1)<br />";
     $ausgaben["inaccessible"] .= "# (error_mail) g(error_email)<br />";
     $ausgaben["inaccessible"] .= "# (error_captcha) g(error_captcha)<br />";
 } else {
     $ausgaben["inaccessible"] = "";
 }
 if ($environment["parameter"][2] == "verify" && $HTTP_POST_VARS["btn"] != "") {
     // form eigaben pruefen
     form_errors($form_options, $HTTP_POST_VARS);
     if (is_array($cfg["register"]["captcha"])) {
         if ($_POST["captcha_proof"] != crc32($_POST["captcha"] . $cfg["register"]["captcha"]["randomize"]) || !file_exists($captcha_path_srv . "captcha-" . $_POST["captcha_proof"] . ".png")) {
 $ausgaben["langtabelle"] .= "</td></tr>";
 $ausgaben["langtabelle"] .= "</table>";
 // +++
 // lang management form elemente end
 */
 // page basics
 // ***
 // fehlermeldungen
 $ausgaben["form_error"] = "";
 // navigation erstellen
 $ausgaben["form_aktion"] = $cfg["basis"] . "/add,verify.html";
 $ausgaben["form_break"] = $cfg["basis"] . "/list.html";
 // hidden values
 $ausgaben["form_hidden"] .= "";
 // was anzeigen
 $mapping["main"] = eCRC($environment["ebene"]) . ".edit-single";
 $mapping["navi"] = "leer";
 // unzugaengliche #(marken) sichtbar machen
 // ***
 if (isset($HTTP_GET_VARS["edit"])) {
     $ausgaben["inaccessible"] = "inaccessible values:<br />";
     $ausgaben["inaccessible"] .= "# (error_result) #(error_result)<br />";
     $ausgaben["inaccessible"] .= "# (error_dupe) #(error_dupe)<br />";
 } else {
     $ausgaben["inaccessible"] = "";
 }
 // +++
 // unzugaengliche #(marken) sichtbar machen
 // wohin schicken
 # header("Location: ".$cfg["basis"]."/?.html");
 // +++
 function related_pages($quantum = 0)
 {
     global $db, $environment, $pathvars, $cfg, $debugging;
     // seiten mit gleichen schlagwoertern finden
     if ($environment["ebene"] == "") {
         $tname = $environment["kategorie"];
     } else {
         $tname = eCRC($environment["ebene"]) . "." . $environment["kategorie"];
     }
     $sql = "SELECT *\n                      FROM " . $cfg["keyworded"]["db"]["keyword"]["entries"] . "\n                     WHERE " . $cfg["keyworded"]["db"]["keyword"]["keyword"] . "\n                        IN (SELECT " . $cfg["keyworded"]["db"]["keyword"]["keyword"] . "\n                              FROM " . $cfg["keyworded"]["db"]["keyword"]["entries"] . "\n                             WHERE " . $cfg["keyworded"]["db"]["keyword"]["tname"] . "='" . $tname . "'\n                           )\n                       AND " . $cfg["keyworded"]["db"]["keyword"]["tname"] . " != '" . $tname . "'\n                  ORDER BY " . $cfg["keyworded"]["db"]["keyword"]["keyword"];
     $result = $db->query($sql);
     $pages = array();
     while ($data = $db->fetch_array($result, 1)) {
         $url = $data[$cfg["keyworded"]["db"]["keyword"]["ebene"]] . "/" . $data[$cfg["keyworded"]["db"]["keyword"]["kategorie"]];
         $tname = $data[$cfg["keyworded"]["db"]["keyword"]["tname"]];
         $keywords = $pages[$tname]["keywords"];
         if ($keywords != "") {
             $keywords .= ", ";
         }
         $keywords .= $data[$cfg["keyworded"]["db"]["keyword"]["keyword"]];
         $index = $pages[$tname]["index"] + 1;
         $mid = make_id($url);
         $sql = "SELECT *\n                          FROM site_menu_lang\n                         WHERE mid=" . $mid["mid"] . "\n                           AND lang='" . $environment["language"] . "'";
         $res_menu = $db->query($sql);
         $dat_menu = $db->fetch_array($res_menu, 1);
         $title = $dat_menu["label"];
         // zus. titel aus content holen
         if ($specialvars["content_release"] == -1 && $version == "") {
             $content_release = "AND status>0";
         } else {
             $content_release = "";
         }
         $sql = "SELECT *\n                          FROM site_text\n                         WHERE tname='" . $tname . "'\n                           AND lang='" . $environment["language"] . "'\n                           AND label='inhalt'\n                            " . $content_release . "\n                      ORDER BY version DESC\n                         LIMIT 0,1";
         $res_content = $db->query($sql);
         $dat_content = $db->fetch_array($res_content, 1);
         preg_match("/\\[H1\\](.*)\\[\\/H1\\]/U", $dat_content["content"], $match);
         if ($match[1] != "") {
             $title_content = $match[1];
         } else {
             $title_content = $title;
         }
         if ($title == "") {
             continue;
         }
         $pages[$tname] = array("index" => $index, "url" => $pathvars["virtual"] . $url . ".html", "mid" => $mid["mid"], "title" => $title, "title_content" => $title_content, "keywords" => $keywords);
     }
     usort($pages, "sort_pages");
     if ($quantum > 0) {
         $pages = array_slice($pages, 0, $quantum);
     }
     return $pages;
 }
function rparser($startfile, $default_template, $overwrite_template = "")
{
    global $db, $debugging, $pathvars, $specialvars, $environment, $ausgaben, $element, $lnk, $dataloop, $hidedata, $mapping, $loopcheck;
    if ($overwrite_template == "") {
        if (file_exists($pathvars["templates"] . $startfile)) {
            $template = $pathvars["templates"] . $startfile;
        } else {
            $template = $pathvars["fileroot"] . "templates/default/" . $startfile;
        }
        // wenn es fuer eine unterseite kein eigenes template gibt default.tem.html verwenden.
        if (!file_exists($template) && $default_template != "") {
            if ($startfile == $loopcheck) {
                if ($debugging["html_enable"]) {
                    $debugging["ausgabe"] .= "rparser note: template \"" . $template . "\" not found. Loop detect!!!" . $debugging["char"];
                }
            } else {
                if ($debugging["html_enable"]) {
                    $debugging["ausgabe"] .= "rparser note: template \"" . $template . "\" not found, using: " . $default_template . $debugging["char"];
                }
                if (file_exists($pathvars["templates"] . $default_template)) {
                    $template = $pathvars["templates"] . $default_template;
                } else {
                    $template = $pathvars["fileroot"] . "templates/default/" . $default_template;
                }
            }
            $loopcheck = $startfile;
        } else {
            unset($loopcheck);
        }
    } else {
        if (file_exists($pathvars["templates"] . $overwrite_template)) {
            $template = $pathvars["templates"] . $overwrite_template;
        } else {
            $template = $pathvars["fileroot"] . "templates/default/" . $overwrite_template;
        }
        if ($debugging["html_enable"]) {
            $debugging["ausgabe"] .= "rparser note: template \"" . $startfile . "\" overwrite, using: " . $template . $debugging["char"];
        }
    }
    // reset template overwrite inner recursive procedure
    $overwrite_template = "";
    if (file_exists($template)) {
        $fd = fopen($template, "r");
        while (!feof($fd)) {
            $line = fgets($fd, 1024);
            // alles vor ##begin und nach ##end wird nicht ausgegeben
            if (strpos($line, "##begin") !== false) {
                $begin = "1";
            } else {
                if (strpos($line, "##end") !== false) {
                    $begin = "0";
                } elseif ($begin == "1") {
                    // style path korrektur + dynamic style
                    if (strpos($line, "css/" . $environment["design"] . "/") !== false) {
                        if ($specialvars["dynamiccss"] != "") {
                            $line = str_replace("_default", "_" . $specialvars["dynamiccss"], $line);
                        }
                        $line = str_replace("../../css/", $pathvars["subdir"] . "/css/", $line);
                    } elseif (strpos($line, "../../css/") !== false) {
                        $line = str_replace("../../css/", $pathvars["subdir"] . "/css/", $line);
                    }
                    // image path korrektur (subdir support siehe weiter unten)
                    if (strpos($line, "../../images/") !== false) {
                        $line = str_replace("../../images/", "/images/", $line);
                    }
                    // js path korrektur
                    if (strpos($line, "../../js/") !== false) {
                        $line = str_replace("../../js/", $pathvars["subdir"] . "/js/", $line);
                    }
                    // dynamic bg
                    if (strpos($line, "background=\"!#specialvars_dynamicbg\"") !== false) {
                        if ($specialvars["dynamicbg"] != "") {
                            $line = str_replace("background=\"!#specialvars_dynamicbg\"", "background=\"/images/" . $environment["design"] . "/" . $specialvars["dynamicbg"] . "\"", $line);
                        } else {
                            $line = str_replace("background=\"!#specialvars_dynamicbg\" ", "", $line);
                        }
                    }
                    // image language korrektur
                    if (strpos($line, "_" . $specialvars["default_language"] . ".") !== false && $environment["language"] != $specialvars["default_language"] && $environment["language"] != "") {
                        $line = str_replace("_" . $specialvars["default_language"] . ".", "_" . $environment["language"] . ".", $line);
                    }
                    //////////////////////////////////////////////////////////////////////////////////////////////
                    // language "#(label)" - erster lauf: hier kommt der text anhand von sprache,
                    //                       template und marke aus der datenbank
                    //                       ( der content kann !#ausgaben_xxx enthalten )
                    //////////////////////////////////////////////////////////////////////////////////////////////
                    if (strpos($line, "#(") !== false || strpos($line, "g(") !== false) {
                        // wie heisst das template
                        $tname = substr($startfile, 0, strpos($startfile, ".tem.html"));
                        $line = content($line, $tname);
                    }
                    //////////////////////////////////////////////////////////////////////////////////////////////
                    // variable "!#marke" - hier werden die variablen in die ausgabe eingebaut
                    //////////////////////////////////////////////////////////////////////////////////////////////
                    // !#ausgaben array pruefen und evtl. einsetzen
                    if (strpos($line, "!#ausgaben_") !== false) {
                        foreach ($ausgaben as $name => $value) {
                            // php5 only
                            //                             $line = str_replace("!#ausgaben_$name", $value, $line, &$count);
                            //                             if ( $count > 0 ) {
                            //                                 if ( $debugging["html_enable"] ) $debugging["ausgabe"] .= "parser info (ausgaben): ".$name.$debugging["char"];
                            //                             }
                            $line = str_replace("!#ausgaben_{$name}", $value, $line);
                            #if ( $debugging["html_enable"] ) $debugging["ausgabe"] .= "parser info (ausgaben): ".$name.$debugging["char"];
                        }
                    }
                    // !#element array pruefen und evtl. einsetzen
                    if (strpos($line, "!#element_") !== false) {
                        foreach ((array) $element as $name => $value) {
                            $line = str_replace("!#element_{$name}", $value, $line);
                            #if ( $debugging["html_enable"] ) $debugging["ausgabe"] .= "parser info (element): ".$name." : ".$element[$name].$debugging["char"];
                        }
                    }
                    // !#environment array pruefen und evtl. einsetzen
                    if (strpos($line, "!#environment_") !== false) {
                        foreach ((array) $environment as $name => $value) {
                            $line = str_replace("!#environment_{$name}", $value, $line);
                            #if ( $debugging["html_enable"] ) $debugging["ausgabe"] .= "parser info (environment): ".$name." : ".$environment[$name].$debugging["char"];
                        }
                    }
                    // !#pathvars array pruefen und evtl. einsetzen
                    if (strpos($line, "!#pathvars_") !== false) {
                        foreach ((array) $pathvars as $name => $value) {
                            $line = str_replace("!#pathvars_{$name}", $value, $line);
                            #if ( $debugging["html_enable"] ) $debugging["ausgabe"] .= "parser info (pathvars): ".$name." : ".$pathvars[$name].$debugging["char"];
                        }
                    }
                    // !#lnk array pruefen und evtl. einsetzen
                    // $lnk wird in kekse.inc.php erstellt
                    if (strpos($line, "!#lnk_") !== false) {
                        foreach ((array) $lnk as $name => $value) {
                            $line = str_replace("!#lnk_{$name}", $value, $line);
                            #if ( $debugging["html_enable"] ) $debugging["ausgabe"] .= "parser info (lnk): ".$name." : ".$lnk[$name].$debugging["char"];
                        }
                    }
                    // ##loop-??? -> ##cont bereich bearbeiten
                    // und inhalte aus $dataloop array einbauen
                    if (strpos($line, "##loop") !== false) {
                        $loop = "1";
                        $loop_mark = explode("-", strstr($line, "##loop"), 3);
                        $loop_label = $loop_mark[1];
                        $loop_buffer = "";
                    } else {
                        if (strpos($line, "##cont") !== false) {
                            $loop = "0";
                            $loop_block = "";
                            $labelloop = $dataloop[$loop_label];
                            foreach ((array) $labelloop as $data) {
                                $loop_work = $loop_buffer;
                                foreach ((array) $data as $name => $value) {
                                    $loop_work = str_replace("!{" . $name . "}", $value, $loop_work);
                                }
                                $loop_work = preg_replace("/!\\{[0-9a-zA-Z]+\\}/", "&nbsp;", $loop_work);
                                $loop_block .= $loop_work;
                            }
                            $line = $loop_block . trim($line) . "\n";
                        } elseif ($loop == "1") {
                            $loop_buffer .= trim($line) . "\n";
                            continue;
                        }
                    }
                    // ##hide-??? - ##show bereich bearbeiten
                    // nur wenn $hidedata["???"] verfuegbar ist einblenden
                    if (strpos($line, "##hide") !== false) {
                        $hide = "1";
                        $hide_mark = explode("-", strstr($line, "##hide"), 3);
                        $hide_label = $hide_mark[1];
                        $hide_buffer = "";
                        continue;
                        // marke ebenfalls kicken!
                    } else {
                        if (strpos($line, "##show") !== false) {
                            $hide = "0";
                            $hide_block = "";
                            if (is_array($hidedata[$hide_label])) {
                                foreach ($hidedata[$hide_label] as $name => $value) {
                                    $hide_buffer = str_replace("!{" . $name . "}", $value, $hide_buffer);
                                }
                                $hide_block = preg_replace("/!\\{[0-9a-zA-Z]+\\}/", "&nbsp;", $hide_buffer);
                            }
                            #$line = $block.trim($line)."\n";
                            $line = $hide_block;
                            // marke ebenfalls kicken!
                        } elseif ($hide == "1") {
                            $hide_buffer .= trim($line) . "\n";
                            continue;
                        }
                    }
                    if (strpos($line, "!#") !== false && strpos($line, "<textarea") === false) {
                        $line = str_replace("!#date", gerdate(), $line);
                        $line = str_replace("!#specialvars_pagetitle", $specialvars["pagetitle"], $line);
                        $line = str_replace("!#specialvars_phpsessid", $specialvars["phpsessid"], $line);
                    }
                    //////////////////////////////////////////////////////////////////////////////////////////////
                    // language "#(label)" - zweiter lauf: hier kommt der text anhand von sprache,
                    //                       template und marke aus der datenbank
                    //                       ( wurde bei !#ausgaben_xxx ein #(label) eingebaut
                    //                       wird auch dieses mit content versehen )
                    //////////////////////////////////////////////////////////////////////////////////////////////
                    if (strpos($line, "#(") !== false || strpos($line, "g(") !== false) {
                        // wie heisst das template
                        $tname = substr($startfile, 0, strpos($startfile, ".tem.html"));
                        $line = content($line, $tname);
                    }
                    //////////////////////////////////////////////////////////////////////////////////////////////
                    // subdir support images
                    //////////////////////////////////////////////////////////////////////////////////////////////
                    if ($pathvars["subdir"] != "") {
                        // images in templates + funktionen
                        $line = str_replace("/images/", $pathvars["subdir"] . "/images/", $line);
                        // images im content aber nur bei der ausgabe (nicht im cms editor und im filesystem (magic.php))
                        #                        if ( strpos($line,"=".$cfg["file"]["base"]["webdir"]) === false && strpos($line,$cfg["file"]["base"]["maindir"]) === false ) {
                        if (strpos($line, "textarea") === false && strpos($line, $cfg["file"]["base"]["maindir"]) === false) {
                            $line = str_replace($cfg["file"]["base"]["webdir"], $pathvars["subdir"] . $cfg["file"]["base"]["webdir"], $line);
                        }
                        #else {
                        #    echo "####".$line."####";
                        #}
                    }
                    //////////////////////////////////////////////////////////////////////////////////////////////
                    // automatic "#{marke}" - rekursives !!!, automatisches einparsen von sub templates
                    //////////////////////////////////////////////////////////////////////////////////////////////
                    if (strpos($line, "#{") !== false) {
                        // tausche wenn nötig die inhalte aus
                        if (isset($mapping)) {
                            foreach ($mapping as $name => $value) {
                                #if ( $debugging["html_enable"] ) $debugging["ausgabe"] .= "parser info: #{".$name."}:"."#{".$value."}".$debugging["char"];
                                // evtl. globaler print button
                                #if ( strstr($line,"#{main") ) {
                                #  global $HTTP_GET_VARS;
                                #  if ( $HTTP_GET_VARS["print"] != true ) $print = "<table cellpadding=\"0\" cellspacing=\"0\" width=\"660\"><tr><td width=\"16\">&nbsp;</td><td width=\"628\" align=\"right\"><a href=\"".$pathvars["uri"]."?print=true\">Print Ausgabe</a></td><td width=\"16\">&nbsp;</td></tr></table>";
                                #  if ( $debugging["html_enable"] ) $debugging["ausgabe"] .= "print schalter: ".$environment["template"].$debugging["char"];
                                #}
                                #$line = str_replace("#{".$name."}","#{".$value."}".$print,$line);
                                #if ( strstr($line,"#{main}") ) {
                                // datenbank wechseln -> variablen in menuctrl.inc.php
                                if (strpos($line, "#{main}") !== false && $specialvars["dynlock"] == "") {
                                    if ($environment["fqdn"][0] == $specialvars["dyndb"]) {
                                        $db->selectDb($specialvars["dyndb"], FALSE);
                                        #echo "1: ".$db->getDb();
                                        $specialvars["changed"] = "###switchback###";
                                    }
                                }
                                $line = str_replace("#{" . $name . "}", "#{" . $value . "}" . $specialvars["changed"], $line);
                            }
                        }
                        // marke aus der zeile schneiden und anfang und ende merken
                        while (strpos($line, "#{") !== false) {
                            // wo beginnt die marke
                            $tokenbeg = strpos($line, "#{");
                            // wo endet die marke
                            $tokenend = strpos($line, "}", $tokenbeg);
                            // loopfix
                            // wie lang ist die marke
                            $tokenlen = $tokenend - $tokenbeg;
                            // anfang der zeile merken
                            $lline = substr($line, 0, $tokenbeg);
                            // ende der zeile merken
                            $rline = substr($line, $tokenend + 1);
                            // token name extrahieren
                            $token_name = substr($line, $tokenbeg + 2, $tokenlen - 2);
                            // den token aus der zeile loeschen
                            $token_replace = "#{" . $token_name . "}";
                            $line = str_replace($token_replace, "", $line);
                            if ($specialvars["crc32"] == -1) {
                                if ($environment["ebene"] != "" && $token_name == $environment["kategorie"]) {
                                    // das normale template ist!
                                    $newstartfile = eCRC($environment["ebene"]) . "." . $token_name . ".tem.html";
                                    if ($debugging["html_enable"]) {
                                        $debugging["ausgabe"] .= "crc32 template/content basis: " . $newstartfile . " for ebene (" . $environment["ebene"] . ")" . $debugging["char"];
                                    }
                                    // gibt es ein overwrite template?
                                    $path_element = explode("/", substr($environment["ebene"] . "/", 1) . $environment["kategorie"]);
                                    foreach ($path_element as $value) {
                                        $find_kategorie = array_pop($path_element);
                                        if ($value != "") {
                                            $find_ebene = "/" . implode("/", $path_element);
                                            if ($find_ebene != "/") {
                                                $overwrite_template = eCRC($find_ebene) . "." . $find_kategorie . ".tem.html";
                                            } else {
                                                $overwrite_template = $find_kategorie . ".tem.html";
                                            }
                                            if (!file_exists($pathvars["templates"] . $overwrite_template)) {
                                                if ($debugging["html_enable"]) {
                                                    $debugging["ausgabe"] .= "crc32 overwrite template search: " . $overwrite_template . " for ebene (" . $find_ebene . ")" . $debugging["char"];
                                                }
                                                $overwrite_template = "";
                                            } else {
                                                if ($debugging["html_enable"]) {
                                                    $debugging["ausgabe"] .= "crc32 overwrite template found: " . $overwrite_template . " for ebene (" . $find_ebene . ")" . $debugging["char"];
                                                }
                                                break;
                                            }
                                        }
                                    }
                                } else {
                                    // token name und template endung zusammen bauen
                                    $newstartfile = $token_name . ".tem.html";
                                }
                            } else {
                                // ist das eine sub kategorie ?
                                if ($token_name == $environment["katid"] && $environment["subkatid"] != "") {
                                    // token name und template endung zusammen bauen
                                    $newstartfile = $token_name . "." . $environment["subkatid"] . ".tem.html";
                                    // es gibt kein besonderes template
                                    if (!file_exists($pathvars["templates"] . $newstartfile)) {
                                        if ($debugging["html_enable"]) {
                                            $debugging["ausgabe"] .= "no " . $newstartfile . " template found using " . $token_name . ".tem.html" . $debugging["char"];
                                        }
                                        $newstartfile = $token_name . ".tem.html";
                                    }
                                } else {
                                    // token name und template endung zusammen bauen
                                    $newstartfile = $token_name . ".tem.html";
                                }
                            }
                            // gemerkten zeilen anfang ausgeben
                            echo ltrim($lline);
                            // parser nochmal aufrufen um untertemplate mit dem namen: "$token".tem.html zu parsen
                            rparser($newstartfile, $default_template, $overwrite_template);
                            // reset template overwrite outer recursive procedure
                            $overwrite_template = "";
                            if (strpos($rline, "###switchback###") !== false) {
                                $db->selectDb(DATABASE, FALSE);
                                #echo "<br />2: ".$db->getDb();
                                unset($specialvars["changed"]);
                                $rline = str_replace("###switchback###", "", $rline);
                            }
                            // gemerktes zeilen ende ausgeben
                            echo rtrim($rline) . "\n";
                        }
                    } else {
                        // eWeBuKi tag schutz part 4
                        $mark_o = array("#(", "g(", "#{", "!#");
                        $hide_o = array("::1::", "::2::", "::3::", "::4::");
                        $line = str_replace($hide_o, $mark_o, $line);
                        // da keine marken fuer sub templates da waren zeile unveraendert ausgeben
                        echo trim($line) . "\n";
                    }
                    # ende automatic "#{marke}"
                }
                # hier passiert alles bevor ##end
            }
            # ende zeile enthaelt kein ##begin
        }
        # ende der file while schleife
        fclose($fd);
    } else {
        if ($debugging["html_enable"]) {
            $debugging["ausgabe"] .= "rparser error: template " . $template . " not found!!!" . $debugging["char"];
        }
    }
    # ende der file existenz pruefung
}
    86343 K�nigsbrunn

    URL: http://www.chaos.de
*/
////////////////////////////////////////////////////////////////////////////////////////////////////////////////
if ($debugging["html_enable"]) {
    $debugging["ausgabe"] .= "[ ** " . $script["name"] . " ** ]" . $debugging["char"];
}
$ausgaben["form_error"] = "";
// weiterleitung zur login-seite
if ($_SERVER["REDIRECT_URL"] == "/" && ($_SERVER["SERVER_NAME"] == "internetredakteur.bvv.bayern.de" || $_SERVER["SERVER_NAME"] == "lvg-entw-intertest")) {
    header("Location: /login.html");
}
// Artikel anzeigen
$sql = "SELECT Cast(SUBSTR(content,POSITION('[SORT]' IN content)+6,POSITION('[/SORT]' IN content)-POSITION('[SORT]' IN content)-6) as DATETIME) as date,\n                        tname,\n                        ebene,\n                        kategorie,\n                        content\n                    FROM site_text\n                    WHERE status='1'\n                    AND tname LIKE '" . eCRC("/aktuell/archiv") . ".%'\n                    AND content LIKE '%[KATEGORIE]/aktuell/archiv[/KATEGORIE]%'\n                ORDER BY date DESC";
$result = $db->query($sql);
$count = 0;
$today = mktime(23, 59, 59, date('m'), date('d'), date('Y'));
$dataloop["list_new"] = array();
while ($data = $db->fetch_array($result, 1)) {
    // Datumskontrolle
    // Startdatum
    $startdatum = mktime(0, 0, 0, substr($data["date"], 5, 2), substr($data["date"], 8, 2), substr($data["date"], 0, 4));
    if ($startdatum > $today) {
        continue;
    }
    // Enddatum
    if (preg_match("/\\[ENDE\\](.*)\\[\\/ENDE\\]/Uis", $data["content"], $endmatch)) {
        if ($today > mktime(0, 0, 0, substr($endmatch[1], 5, 2), substr($endmatch[1], 8, 2), substr($endmatch[1], 0, 4)) && $endmatch[1] != "1970-01-01") {
            continue;
 // fehlermeldungen
 $ausgaben["form_error"] = "";
 // navigation erstellen
 #$ausgaben["form_aktion"] = $cfg["contented"]["basis"]."/edit,".$environment["parameter"][1].",verify.html";
 #$ausgaben["form_break"] = $cfg["contented"]["basis"]."/list.html";
 #$ausgaben["form_aktion"] = $cfg["contented"]["basis"]."edit/save,".$environment["parameter"][1].",".$environment["parameter"][2].",".$environment["parameter"][3].",".$environment["parameter"][4].".html";
 $ausgaben["form_aktion"] = $cfg["contented"]["basis"] . "/edit," . $environment["parameter"][1] . "," . $environment["parameter"][2] . "," . $environment["parameter"][3] . "," . $environment["parameter"][4] . ",,,verify.html";
 #$ausgaben["form_abbrechen"] = $_SESSION["page"];
 $ausgaben["form_break"] = $cfg["contented"]["basis"] . "/edit," . $environment["parameter"][1] . "," . $environment["parameter"][2] . "," . $environment["parameter"][3] . "," . $environment["parameter"][4] . ",,,unlock.html";
 // hidden values
 #$ausgaben["form_hidden"] .= "";
 $ausgaben["form_hidden_html"] .= $form_values["html"];
 $ausgaben["form_hidden_version"] .= $form_values["version"];
 $ausgaben["form_hidden_status"] .= $form_values["status"];
 // was anzeigen
 $mapping["main"] = eCRC($environment["ebene"]) . ".modify" . $art;
 #$mapping["navi"] = "leer";
 // unzugaengliche #(marken) sichtbar machen
 if (isset($HTTP_GET_VARS["edit"])) {
     $ausgaben["inaccessible"] = "inaccessible values:<br />";
     $ausgaben["inaccessible"] .= "# (error_result) #(error_result)<br />";
     $ausgaben["inaccessible"] .= "# (error_dupe) #(error_dupe)<br />";
     $ausgaben["inaccessible"] .= "# (upload) #(upload)<br />";
     $ausgaben["inaccessible"] .= "# (file) #(file)<br />";
     $ausgaben["inaccessible"] .= "# (files) #(files)<br />";
     $ausgaben["inaccessible"] .= "g (overwrite) g(overwrite)<br />";
     $ausgaben["inaccessible"] .= "g (version) g(version)<br />";
     $ausgaben["inaccessible"] .= "g (reset) g(reset)<br />";
     $ausgaben["inaccessible"] .= "g (abort) g(abort)<br />";
 } else {
     $ausgaben["inaccessible"] = "";
    // page basics
    // ***
    // fehlermeldungen
    if ($_GET["error"] != "") {
        if ($_GET["error"] == 1) {
            $ausgaben["form_error"] = "#(error1)";
        }
    } else {
        $ausgaben["form_error"] = "";
    }
    // unzugaengliche #(marken) sichtbar machen
    if (isset($_GET["edit"])) {
        $ausgaben["inaccessible"] = "inaccessible values:<br />";
        $ausgaben["inaccessible"] .= "# (error1) #(error1)<br />";
    } else {
        $ausgaben["inaccessible"] = "";
    }
    // wohin schicken
    $ausgaben["back"] = $_SERVER["HTTP_REFERER"];
    $ausgaben["edit"] = $cfg["usered"]["basis"] . "/edit," . $environment["parameter"][1] . ".html";
    // was wird angezeigt
    $mapping["main"] = eCRC($environment["ebene"]) . ".details";
    // +++
    // page basics
} else {
    header("Location: " . $pathvars["virtual"] . "/");
}
if ($debugging["html_enable"]) {
    $debugging["ausgabe"] .= "[ ++ " . $script["name"] . " ++ ]" . $debugging["char"];
}
////////////////////////////////////////////////////////////////////////////////////////////////////////////////
    Lerchenstr. 11c

    86343 K�nigsbrunn

    URL: http://www.chaos.de
*/
////////////////////////////////////////////////////////////////////////////////////////////////////////////////
if ($rechte[$cfg["kontakt"]["right"]] == "" || $rechte[$cfg["kontakt"]["right"]] == -1) {
    // page basics
    // ***
    #if ( count($HTTP_POST_VARS) == 0 ) {
    #} else {
    $form_values = $HTTP_POST_VARS;
    #}
    // form options holen
    $form_options = form_options(eCRC($environment["ebene"]) . "." . $environment["kategorie"]);
    // form elememte bauen
    $element = form_elements($cfg["kontakt"]["db"]["entries"], $form_values);
    $hidedata["form"] = array();
    // +++
    // page basics
    // funktions bereich fuer erweiterungen
    // ***
    if (is_array($cfg["kontakt"]["captcha"])) {
        // zufaellige zeichen erzeugen
        $captcha_text = captcha_randomize($cfg["kontakt"]["captcha"]["length"], $cfg["kontakt"]["captcha"]);
        // bild erzeugen
        captcha_create($captcha_text, $cfg["kontakt"]["captcha"]);
        // captcha-info erzeugen
        $captcha_crc = crc32($captcha_text . $cfg["kontakt"]["captcha"]["randomize"]);
        $captcha_name = "captcha-" . $captcha_crc . ".png";
 $last_element = array_pop($entry);
 // crc bauen
 foreach ($entry as $key => $value) {
     $crc_part .= "/" . $value;
 }
 $crc = eCRC($crc_part) . "." . $last_element;
 // in auth_special wird immer die aktuelle db eingetragen
 $base = $db->getdb();
 $ausgaben["path"] = $show_path;
 $ausgaben["database"] = $base;
 // form options holen
 $form_options = form_options(eCRC($environment["ebene"]) . "." . $environment["kategorie"]);
 // form elememte bauen
 #$element = form_elements( $cfg["menued"]["db"]["menu"]["entries"], $form_values );
 // was anzeigen
 $mapping["main"] = eCRC($environment["ebene"]) . ".rights";
 // wohin schicken
 $ausgaben["form_error"] = "";
 $ausgaben["form_aktion"] = $cfg["menued"]["basis"] . "/rights," . $environment["parameter"][1] . "," . $environment["parameter"][2] . ",verify.html";
 $ausgaben["form_break"] = $cfg["menued"]["basis"] . "/list.html";
 // page basics
 // ***
 // unzugaengliche #(marken) sichtbar machen
 // ***
 if (isset($HTTP_GET_VARS["edit"])) {
     $ausgaben["inaccessible"] = "inaccessible values:<br />";
     $ausgaben["inaccessible"] .= "# (error_dupe) #(error_dupe)<br />";
 } else {
     $ausgaben["inaccessible"] = "";
 }
 // +++