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ö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 . ") " . $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]+\\}/", " ", $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]+\\}/", " ", $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\"> </td><td width=\"628\" align=\"right\"><a href=\"".$pathvars["uri"]."?print=true\">Print Ausgabe</a></td><td width=\"16\"> </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"] = ""; } // +++