status; } } function forum_save($op, $node) { if ($op == "approve") { return array("status" => 1); } if ($op == "create") { return array("body" => filter($node->body), "teaser" => filter($node->teaser)); } if ($op == "decline") { return array("status" => 0); } if ($op == "update") { return array("body" => filter($node->body), "teaser" => filter($node->teaser)); } } function forum_link($type) { if ($type == "page" && user_access("access content")) { $links[] = lm(t("forum"), array("mod" => "forum"), "", array("title" => t("Read and participate in the discussion forums."))); } if ($type == "menu.create" && user_access("administer nodes")) { $links[] = lm(t("create forum"), array("mod" => "node", "op" => "add", "type" => "forum"), "", array("title" => t("Add a new discussion forum."))); } return $links ? $links : array(); } function forum_view($node) { global $theme; $output .= "

". lm(t("Forum"), array("mod" => "forum")) ." / ". l(check_output($node->title), array("id" => $node->nid)) .":

". check_output($node->body) ."

"; $output .= "

". $theme->links(link_node($node, $main)) ."

"; $theme->box(t("Discussion forum"), $output); } function forum_form(&$node, &$help, &$error) { if (function_exists("taxonomy_node_form")) { $output = implode("", taxonomy_node_form("forum", $node)); } $output .= form_textarea(t("Body"), "body", $node->body, 60, 10); return $output; } function forum_num_comments($nid) { $value = db_fetch_object(db_query("SELECT COUNT(cid) AS count FROM comments WHERE nid = '$nid'")); return ($value) ? $value->count : 0; } function forum_last_comment($nid) { $value = db_fetch_object(db_query("SELECT timestamp FROM comments WHERE nid = '$nid' ORDER BY timestamp DESC LIMIT 1")); return ($value) ? format_date($value->timestamp, "small") : " "; } function forum_page() { global $theme; if (user_access("access content")) { $result = db_query("SELECT nid FROM node WHERE type = 'forum' ORDER BY title"); $output .= ""; $output .= " "; while ($node = db_fetch_object($result)) { $node = node_load(array("nid" => $node->nid)); $output .= " "; } $output .= "
". t("Forum") ."". t("Comments") ."". t("Last comment") ."
". l(check_output($node->title), array("id" => $node->nid)) ."
". check_output($node->body, 1) ."
". forum_num_comments($node->nid) ."". forum_last_comment($node->nid) ."
"; $theme->header(); $theme->box(t("Discussion forum"), $output); $theme->footer(); } else { $theme->header(); $theme->box(t("Access denied"), message_access()); $theme->footer(); } } ?>