Dinamo Опубликовано 16 Ноября 2007 Жалоба Поделиться Опубликовано 16 Ноября 2007 Ребята вот кусок кода, который выводит список форумов на портал от брендона фабера(модифицированного Vicer) function forums_block(){ $this->ipsclass->DB->query("SELECT id, parent_id, name, sub_can_post, permission_array FROM ibf_forums ORDER BY position"); $i=0; while($f = $this->ipsclass->DB->fetch_row()){ $_forums[$i]['id'] = $f['id']; $_forums[$i]['parent_id'] = $f['parent_id']; $_forums[$i]['name'] = $f['name']; $_forums[$i]['sub_can_post'] = $f['sub_can_post']; $_permission_array = unserialize(stripslashes($f['permission_array'])); $_forums[$i]['read_perms'] = $_permission_array['read_perms']; $i++; } $_tree = array(); $this->ipsclass->forums_fillers = array( array("prefix"=>" <b>", "suffix"=>"</b><br>"), array("prefix"=>" »", "suffix"=>"<br>"),//» array("prefix"=>" →", "suffix"=>"<br>"), array("prefix"=>" ·", "suffix"=>"<br>"), ); $list = ""; $this->build_forum_tree_recursive($_tree, $_forums, "-1", $list, 0); $rows = ""; $this->render_forum_forum_recursive($rows, $_tree["children"]); $output = $this->ipsclass->compiled_templates['skin_bfportal']->forum_navigation_html($rows); return $output; } function render_forum_forum_recursive(&$rows, &$container) { $size = count($container); for ($i = 0; $i < $size; $i++) { @$item = &$container[$i]; if ($item["sub_can_post"] || $item["children_count"]){ $rows .= $item["name"]; if (isset($item["children"]) && isset($item["children_count"]) && $item["children_count"] > 0) { $this->render_forum_forum_recursive($rows, $item["children"]); } } } } function build_forum_tree_recursive(&$childContainer, &$listHash, $parentId, &$list, $filler=0) { global $ibforums, $std; $result = false; $listSize = count($listHash); for ($i = 0; $i < $listSize; $i++) { if ($listHash[$i]['read_perms'] == "*" || $this->ipsclass->check_perms($listHash[$i]['read_perms']) == TRUE){ @$listItem = &$listHash[$i]; if ($listItem["parent_id"] == $parentId) { $result = true; $childContainer["children_count"]++; @$childContainer["children"][] = &$listItem; $listItem["name"] = $this->forums_fillers[$filler]["prefix"]."<a href=".$this->ipsclass->vars['board_url']."/index.php?showforum=".$listItem["id"].">".$listItem["name"]."</a>".$this->forums_fillers[$filler]["suffix"]; if ($this->build_forum_tree_recursive($listItem, $listHash, $listItem["id"], $list, $filler+1)) { $childContainer["children_count"] += $listItem["children_count"]; } } } } return $result; } Почему он не работает на линейке 2.2. ? Сам никак не могу понять. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Вопрос
Dinamo
Ребята вот кусок кода, который выводит список форумов на портал от брендона фабера(модифицированного Vicer)
Почему он не работает на линейке 2.2. ? Сам никак не могу понять.
Ссылка на комментарий
Поделиться на других сайтах
0 ответов на этот вопрос
Рекомендуемые сообщения
Присоединиться к обсуждению
Вы можете ответить сейчас, а зарегистрироваться позже. Если у вас уже есть аккаунт, войдите, чтобы ответить от своего имени.