diff --git a/lexicon.php b/lexicon.php new file mode 100644 index 0000000000000000000000000000000000000000..420d3247018963e7d22d3bd9f64f58a8b181352d --- /dev/null +++ b/lexicon.php @@ -0,0 +1,91 @@ +load('lexicon'); + +add_breadcrumb($lang->lexicon, "lexicon.php"); + +// Breadcrump Navigation +switch($mybb->input['action']) +{ + case "list": + add_breadcrumb($lang->lexicon_list); + break; + case "view": + add_breadcrumb($lang->lexicon_view_entry); + break; +} + +// Generate navigation +$alphabet = range('A', 'Z'); +array_push($alphabet, "Ä", "Ö", "Ü"); +foreach($alphabet as $letter) { + eval("\$menu_bit .= \"".$templates->get("lexicon_nav_bit")."\";"); +} + +eval("\$menu = \"".$templates->get("lexicon_nav")."\";"); + +// Search for categories +$select_category = ""; +$query_cats = $db->simple_select("lexicon_categories", "*", "", + ["order_by" => 'name', "order_dir" => 'ASC']); +if($db->num_rows($query_cats) > 0) { + while($categories = $db->fetch_array($query_cats)) { + $categories_bit .= ""; + } + $select_category = ""; +} + +// Landing Page +if(!$mybb->input['action']) +{ + + eval("\$page = \"".$templates->get("lexicon")."\";"); + output_page($page); +} + +// Entry List +if($mybb->input['action'] == "list") { + + $letter = $db->escape_string($mybb->get_input('letter')); + $cat = (int)$mybb->get_input('category'); + $keyword = $db->escape_string($mybb->get_input('keyword')); + + if(!$letter) { + $letter = '%'; + } + if(!$cat) { + $cat = '%'; + } + if(!$keyword || $keyword == $lang->lexicon_search_word) { + $keyword = '%'; + } + + // Format Entries + require_once MYBB_ROOT."inc/class_parser.php"; + $parser = new postParser; + $parser_options = array( + "allow_html" => 1, + "allow_mycode" => 1, + "allow_smilies" => 1, + "allow_imgcode" => 1 + ); + + $entry_bit = ""; + $query = $db->simple_select("lexicon_entries", "*", "name LIKE '{$letter}%' AND name LIKE '%{$keyword}%' AND lcid LIKE '%{$cat}%'", + ["order_by" => 'name', "order_dir" => 'ASC']); + if($db->num_rows($query) > 0) { + while($entry = $db->fetch_array($query)) { + $entry['category'] = $db->fetch_field($db->simple_select("lexicon_categories", "name", "lcid = '{$entry['lcid']}'"), "name"); + $entry['text'] = $parser->parse_message($entry['text'], $parser_options); + eval("\$entry_bit .= \"".$templates->get("lexicon_list_bit")."\";"); + } + } else { eval("\$entry_bit = \"".$templates->get("lexicon_list_none")."\";"); } + + eval("\$page = \"".$templates->get("lexicon_list")."\";"); + output_page($page); +} + +?>