public function doRequest() { global $permission; $this->data[0] = limitString(clean($this->data[0], true), 30); $this->data[1] = limitString(clean($this->data[1], true), 300); $this->data[2] = clean($this->data[2], true); if (!empty($this->data[0]) && $this->user->hasPermission($permission["board_edit"], $this->element)) { if ($this->element->editTitle($this->user, $this->data[0]) && $this->element->editDescription($this->user, $this->data[1])) { foreach (explode(",", strtolower($this->data[2]) . ",") as $username) { $user = getUserByUsername(trim($username)); if ($user != null) { if ($user->id > 0) { $user->moderate($this->element); $user->save($this->con); } } } if (!empty($this->data[3])) { $this->element->move($this->user, ForumElement::getElementFromCode($this->data[3])); } $this->element->save($this->con); return "Successfully edited board."; } else { return "Failed to edited board."; } } return "Invalid board name"; }
/** * Prints out the board as a forum block. * @param ForumUser $user - The current user. * @return string To be printed. */ public function printBoard($user) { global $posts_per_page, $permission; /** * Display the stats. */ $stats = count($this->getPosts()) . " post(s) " . $this->getViews() . " view(s)"; $printLatestPost = "No posts."; $latestPost = $this->getLatestPost(); if ($latestPost != null) { $latestPostUser = getUserByID($latestPost->fields["User"]); $thread = Thread::getByID($latestPost->fields["Parent"]); if ($latestPostUser != null && $thread != null) { $printLatestPost = "Lastest: <a href='{$_SERVER['PHP_SELF']}?p=t" . $thread->getID() . "&page=" . ceil(count($thread->getPosts()) / $posts_per_page) . "#" . $latestPost->getID() . "'>" . limitString($latestPost->name) . "</a><br /> By: <b>" . limitString($latestPostUser->username, 20) . "</b>, " . $latestPost->getDate() . "."; } } $subBoards = ""; foreach ($this->getChildren() as $child) { if ($child instanceof Board) { $subBoards .= "<li><a href='{$_SERVER['PHP_SELF']}?p=b{$child->getID()}'>{$child->name}</a></li>"; } } if (!empty($subBoards)) { $subBoards = "<ul>Sub-Boards: " . $subBoards . "</ul>"; } if ($user->hasPermission($permission['board_edit'], $this->getParent())) { $orderHTML = "<a href=\"{$_SERVER['PHP_SELF']}?&o=b{$this->getID()}\" class='btn_small btn_silver btn_flat'>↓</a>"; } return "\r\n\t \t<div class='board_box forum_element'>\r\n\t \t\t<div class='two_third'>\r\n\t \t\t\t<span class='" . ($this->isUnread($user) ? "icon_on" : "icon_off") . "'></span>\r\n\t \t\t\t<div class='board_content'>\r\n\t \t\t\t\t<h3 class='element_title'><a href='{$_SERVER['PHP_SELF']}?p=b{$this->getID()}'>{$this->name}</a> {$orderHTML}</h3>\r\n\t \t\t\t\t<div class='element_text'>\r\n\t \t\t\t\t\t<span>{$this->fields["Description"]}</span>\r\n\t \t\t\t\t\t<div class='forum_element_info'>{$stats}</div>\r\n\t \t\t\t\t</div>\r\n\t \t\t\t</div>\r\n\t \t\t</div>\r\n\t \t\t<div class='board_info forum_element_info one_third column-last'>\r\n\t \t\t\t<p>{$printLatestPost}</p>\r\n\t \t\t\t<div class='sub_boards'>\r\n\t \t\t\t\t{$subBoards}\r\n\t \t\t\t\t<div class='clear'></div>\r\n\t \t\t\t</div>\r\n\t \t\t</div>\r\n <div class='clear'></div>\r\n\t \t</div>\r\n\t\t\t<div class='hrline_silver'></div>"; }
public function getTreeAsString() { return str_replace("</ul>", "<li><a href='{$_SERVER['PHP_SELF']}?p=t{$this->getID()}' class='current'>" . limitString($this->name, 30) . "</a></li></ul>", str_replace("class='current'", "", Board::getByID(intval($this->fields["Parent"]))->getTreeAsString())); }