本文整理汇总了PHP中bbp_is_topic_open函数的典型用法代码示例。如果您正苦于以下问题:PHP bbp_is_topic_open函数的具体用法?PHP bbp_is_topic_open怎么用?PHP bbp_is_topic_open使用的例子?那么, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了bbp_is_topic_open函数的9个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: bbp_get_topic_close_link
/**
* Return the close link of the topic
*
* @since 2.0.0 bbPress (r2727)
*
* @param array $args This function supports these args:
* - id: Optional. Topic id
* - link_before: Before the link
* - link_after: After the link
* - close_text: Close text
* - open_text: Open text
* @uses bbp_get_topic_id() To get the topic id
* @uses bbp_get_topic() To get the topic
* @uses current_user_can() To check if the current user can edit the topic
* @uses bbp_is_topic_open() To check if the topic is open
* @uses add_query_arg() To add custom args to the url
* @uses wp_nonce_url() To nonce the url
* @uses esc_url() To escape the url
* @uses apply_filters() Calls 'bbp_get_topic_close_link' with the link
* and args
* @return string Topic close link
*/
function bbp_get_topic_close_link($args = array())
{
// Parse arguments against default values
$r = bbp_parse_args($args, array('id' => 0, 'link_before' => '', 'link_after' => '', 'sep' => ' | ', 'close_text' => esc_html_x('Close', 'Topic Status', 'bbpress'), 'open_text' => esc_html_x('Open', 'Topic Status', 'bbpress')), 'get_topic_close_link');
$topic = bbp_get_topic($r['id']);
if (empty($topic) || !current_user_can('moderate', $topic->ID)) {
return;
}
$display = bbp_is_topic_open($topic->ID) ? $r['close_text'] : $r['open_text'];
$uri = add_query_arg(array('action' => 'bbp_toggle_topic_close', 'topic_id' => $topic->ID));
$uri = wp_nonce_url($uri, 'close-topic_' . $topic->ID);
$retval = $r['link_before'] . '<a href="' . esc_url($uri) . '" class="bbp-topic-close-link">' . $display . '</a>' . $r['link_after'];
return apply_filters('bbp_get_topic_close_link', $retval, $r, $args);
}
示例2: do_action
<?php
do_action('bbp_theme_before_reply_form');
?>
<fieldset class="bbp-form">
<legend><?php
printf(esc_html__('Reply To: %s', 'monsoon'), bbp_get_topic_title());
?>
</legend>
<?php
do_action('bbp_theme_before_reply_form_notices');
?>
<?php
if (!bbp_is_topic_open() && !bbp_is_reply_edit()) {
?>
<div class="bbp-template-notice">
<p><?php
esc_html_e('This topic is marked as closed to new replies, however your posting capabilities still allow you to do so.', 'monsoon');
?>
</p>
</div>
<?php
}
?>
<?php
if (current_user_can('unfiltered_html')) {
示例3: bbp_current_user_can_access_create_reply_form
/**
* Performs a series of checks to ensure the current user can create replies.
*
* @since 2.0.0 bbPress (r3127)
*
* @uses bbp_is_user_keymaster()
* @uses bbp_is_topic_edit()
* @uses current_user_can()
* @uses bbp_get_topic_id()
* @uses bbp_allow_anonymous()
* @uses is_user_logged_in()
*
* @return bool
*/
function bbp_current_user_can_access_create_reply_form()
{
// Users need to earn access
$retval = false;
// Always allow keymasters
if (bbp_is_user_keymaster()) {
$retval = true;
// Looking at a single topic, topic is open, and forum is open
} elseif ((bbp_is_single_topic() || is_page() || is_single()) && bbp_is_topic_open() && bbp_is_forum_open()) {
$retval = bbp_current_user_can_publish_replies();
// User can edit this topic
} elseif (bbp_is_reply_edit()) {
$retval = current_user_can('edit_reply', bbp_get_reply_id());
}
// Allow access to be filtered
return (bool) apply_filters('bbp_current_user_can_access_create_reply_form', (bool) $retval);
}
示例4: bbp_toggle_topic_handler
/**
* Handles the front end opening/closing, spamming/unspamming,
* sticking/unsticking and trashing/untrashing/deleting of topics
*
* @since bbPress (r2727)
*
* @param string $action The requested action to compare this function to
* @uses bbp_get_topic() To get the topic
* @uses current_user_can() To check if the user is capable of editing or
* deleting the topic
* @uses bbp_get_topic_post_type() To get the topic post type
* @uses check_ajax_referer() To verify the nonce and check the referer
* @uses bbp_is_topic_open() To check if the topic is open
* @uses bbp_close_topic() To close the topic
* @uses bbp_open_topic() To open the topic
* @uses bbp_is_topic_sticky() To check if the topic is a sticky
* @uses bbp_unstick_topic() To unstick the topic
* @uses bbp_stick_topic() To stick the topic
* @uses bbp_is_topic_spam() To check if the topic is marked as spam
* @uses bbp_spam_topic() To make the topic as spam
* @uses bbp_unspam_topic() To unmark the topic as spam
* @uses wp_trash_post() To trash the topic
* @uses wp_untrash_post() To untrash the topic
* @uses wp_delete_post() To delete the topic
* @uses do_action() Calls 'bbp_toggle_topic_handler' with success, post data
* and action
* @uses bbp_get_forum_permalink() To get the forum link
* @uses bbp_get_topic_permalink() To get the topic link
* @uses wp_safe_redirect() To redirect to the topic
* @uses bbPress::errors:add() To log the error messages
*/
function bbp_toggle_topic_handler($action = '')
{
// Bail if required GET actions aren't passed
if (empty($_GET['topic_id'])) {
return;
}
// Setup possible get actions
$possible_actions = array('bbp_toggle_topic_close', 'bbp_toggle_topic_stick', 'bbp_toggle_topic_spam', 'bbp_toggle_topic_trash');
// Bail if actions aren't meant for this function
if (!in_array($action, $possible_actions)) {
return;
}
$failure = '';
// Empty failure string
$view_all = false;
// Assume not viewing all
$topic_id = (int) $_GET['topic_id'];
// What's the topic id?
$success = false;
// Flag
$post_data = array('ID' => $topic_id);
// Prelim array
$redirect = '';
// Empty redirect URL
// Make sure topic exists
$topic = bbp_get_topic($topic_id);
if (empty($topic)) {
return;
}
// What is the user doing here?
if (!current_user_can('edit_topic', $topic->ID) || 'bbp_toggle_topic_trash' === $action && !current_user_can('delete_topic', $topic->ID)) {
bbp_add_error('bbp_toggle_topic_permission', __('<strong>ERROR:</strong> You do not have the permission to do that.', 'bbpress'));
return;
}
// What action are we trying to perform?
switch ($action) {
// Toggle open/close
case 'bbp_toggle_topic_close':
check_ajax_referer('close-topic_' . $topic_id);
$is_open = bbp_is_topic_open($topic_id);
$success = true === $is_open ? bbp_close_topic($topic_id) : bbp_open_topic($topic_id);
$failure = true === $is_open ? __('<strong>ERROR</strong>: There was a problem closing the topic.', 'bbpress') : __('<strong>ERROR</strong>: There was a problem opening the topic.', 'bbpress');
break;
// Toggle sticky/super-sticky/unstick
// Toggle sticky/super-sticky/unstick
case 'bbp_toggle_topic_stick':
check_ajax_referer('stick-topic_' . $topic_id);
$is_sticky = bbp_is_topic_sticky($topic_id);
$is_super = false === $is_sticky && !empty($_GET['super']) && "1" === $_GET['super'] ? true : false;
$success = true === $is_sticky ? bbp_unstick_topic($topic_id) : bbp_stick_topic($topic_id, $is_super);
$failure = true === $is_sticky ? __('<strong>ERROR</strong>: There was a problem unsticking the topic.', 'bbpress') : __('<strong>ERROR</strong>: There was a problem sticking the topic.', 'bbpress');
break;
// Toggle spam
// Toggle spam
case 'bbp_toggle_topic_spam':
check_ajax_referer('spam-topic_' . $topic_id);
$is_spam = bbp_is_topic_spam($topic_id);
$success = true === $is_spam ? bbp_unspam_topic($topic_id) : bbp_spam_topic($topic_id);
$failure = true === $is_spam ? __('<strong>ERROR</strong>: There was a problem unmarking the topic as spam.', 'bbpress') : __('<strong>ERROR</strong>: There was a problem marking the topic as spam.', 'bbpress');
$view_all = !$is_spam;
break;
// Toggle trash
// Toggle trash
case 'bbp_toggle_topic_trash':
$sub_action = !empty($_GET['sub_action']) && in_array($_GET['sub_action'], array('trash', 'untrash', 'delete')) ? $_GET['sub_action'] : false;
if (empty($sub_action)) {
break;
}
switch ($sub_action) {
//.........这里部分代码省略.........
示例5: row_actions
/**
* Topic Row actions
*
* Remove the quick-edit action link under the topic title and add the
* content and close/stick/spam links
*
* @since 2.0.0 bbPress (r2485)
*
* @param array $actions Actions
* @param array $topic Topic object
* @uses bbp_get_topic_post_type() To get the topic post type
* @uses bbp_topic_content() To output topic content
* @uses bbp_get_topic_permalink() To get the topic link
* @uses bbp_get_topic_title() To get the topic title
* @uses current_user_can() To check if the current user can edit or
* delete the topic
* @uses bbp_is_topic_open() To check if the topic is open
* @uses bbp_is_topic_spam() To check if the topic is marked as spam
* @uses bbp_is_topic_sticky() To check if the topic is a sticky or a
* super sticky
* @uses get_post_type_object() To get the topic post type object
* @uses add_query_arg() To add custom args to the url
* @uses remove_query_arg() To remove custom args from the url
* @uses wp_nonce_url() To nonce the url
* @uses get_delete_post_link() To get the delete post link of the topic
* @return array $actions Actions
*/
public function row_actions($actions, $topic)
{
if ($this->bail()) {
return $actions;
}
unset($actions['inline hide-if-no-js']);
// Show view link if it's not set, the topic is trashed and the user can view trashed topics
if (empty($actions['view']) && bbp_get_trash_status_id() === $topic->post_status && current_user_can('view_trash')) {
$actions['view'] = '<a href="' . esc_url(bbp_get_topic_permalink($topic->ID)) . '" title="' . esc_attr(sprintf(__('View “%s”', 'bbpress'), bbp_get_topic_title($topic->ID))) . '" rel="permalink">' . esc_html__('View', 'bbpress') . '</a>';
}
// Only show the actions if the user is capable of viewing them :)
if (current_user_can('moderate', $topic->ID)) {
// Pending
// Show the 'approve' and 'view' link on pending posts only and 'unapprove' on published posts only
$approve_uri = wp_nonce_url(add_query_arg(array('topic_id' => $topic->ID, 'action' => 'bbp_toggle_topic_approve'), remove_query_arg(array('bbp_topic_toggle_notice', 'topic_id', 'failed', 'super'))), 'approve-topic_' . $topic->ID);
if (bbp_is_topic_published($topic->ID)) {
$actions['unapproved'] = '<a href="' . esc_url($approve_uri) . '" title="' . esc_attr__('Unapprove this topic', 'bbpress') . '">' . _x('Unapprove', 'Unapprove Topic', 'bbpress') . '</a>';
} elseif (!bbp_is_topic_private($topic->ID)) {
$actions['approved'] = '<a href="' . esc_url($approve_uri) . '" title="' . esc_attr__('Approve this topic', 'bbpress') . '">' . _x('Approve', 'Approve Topic', 'bbpress') . '</a>';
$actions['view'] = '<a href="' . esc_url(bbp_get_topic_permalink($topic->ID)) . '" title="' . esc_attr(sprintf(__('View “%s”', 'bbpress'), bbp_get_topic_title($topic->ID))) . '" rel="permalink">' . esc_html__('View', 'bbpress') . '</a>';
}
// Close
// Show the 'close' and 'open' link on published and closed posts only
if (in_array($topic->post_status, array(bbp_get_public_status_id(), bbp_get_closed_status_id()))) {
$close_uri = wp_nonce_url(add_query_arg(array('topic_id' => $topic->ID, 'action' => 'bbp_toggle_topic_close'), remove_query_arg(array('bbp_topic_toggle_notice', 'topic_id', 'failed', 'super'))), 'close-topic_' . $topic->ID);
if (bbp_is_topic_open($topic->ID)) {
$actions['closed'] = '<a href="' . esc_url($close_uri) . '" title="' . esc_attr__('Close this topic', 'bbpress') . '">' . _x('Close', 'Close a Topic', 'bbpress') . '</a>';
} else {
$actions['closed'] = '<a href="' . esc_url($close_uri) . '" title="' . esc_attr__('Open this topic', 'bbpress') . '">' . _x('Open', 'Open a Topic', 'bbpress') . '</a>';
}
}
// Sticky
// Dont show sticky if topic links is spam, trash or pending
if (!bbp_is_topic_spam($topic->ID) && !bbp_is_topic_trash($topic->ID) && !bbp_is_topic_pending($topic->ID)) {
$stick_uri = wp_nonce_url(add_query_arg(array('topic_id' => $topic->ID, 'action' => 'bbp_toggle_topic_stick'), remove_query_arg(array('bbp_topic_toggle_notice', 'topic_id', 'failed', 'super'))), 'stick-topic_' . $topic->ID);
if (bbp_is_topic_sticky($topic->ID)) {
$actions['stick'] = '<a href="' . esc_url($stick_uri) . '" title="' . esc_attr__('Unstick this topic', 'bbpress') . '">' . esc_html__('Unstick', 'bbpress') . '</a>';
} else {
$super_uri = wp_nonce_url(add_query_arg(array('topic_id' => $topic->ID, 'action' => 'bbp_toggle_topic_stick', 'super' => '1'), remove_query_arg(array('bbp_topic_toggle_notice', 'topic_id', 'failed', 'super'))), 'stick-topic_' . $topic->ID);
$actions['stick'] = '<a href="' . esc_url($stick_uri) . '" title="' . esc_attr__('Stick this topic to its forum', 'bbpress') . '">' . esc_html__('Stick', 'bbpress') . '</a> <a href="' . esc_url($super_uri) . '" title="' . esc_attr__('Stick this topic to front', 'bbpress') . '">' . esc_html__('(to front)', 'bbpress') . '</a>';
}
}
// Spam
$spam_uri = wp_nonce_url(add_query_arg(array('topic_id' => $topic->ID, 'action' => 'bbp_toggle_topic_spam'), remove_query_arg(array('bbp_topic_toggle_notice', 'topic_id', 'failed', 'super'))), 'spam-topic_' . $topic->ID);
if (bbp_is_topic_spam($topic->ID)) {
$actions['spam'] = '<a href="' . esc_url($spam_uri) . '" title="' . esc_attr__('Mark the topic as not spam', 'bbpress') . '">' . esc_html__('Not spam', 'bbpress') . '</a>';
} else {
$actions['spam'] = '<a href="' . esc_url($spam_uri) . '" title="' . esc_attr__('Mark this topic as spam', 'bbpress') . '">' . esc_html__('Spam', 'bbpress') . '</a>';
}
}
// Do not show trash links for spam topics, or spam links for trashed topics
if (current_user_can('delete_topic', $topic->ID)) {
if (bbp_get_trash_status_id() === $topic->post_status) {
$post_type_object = get_post_type_object(bbp_get_topic_post_type());
$actions['untrash'] = "<a title='" . esc_attr__('Restore this item from the Trash', 'bbpress') . "' href='" . wp_nonce_url(add_query_arg(array('_wp_http_referer' => add_query_arg(array('post_type' => bbp_get_topic_post_type()), admin_url('edit.php'))), admin_url(sprintf($post_type_object->_edit_link . '&action=untrash', $topic->ID))), 'untrash-' . $topic->post_type . '_' . $topic->ID) . "'>" . esc_html__('Restore', 'bbpress') . "</a>";
} elseif (EMPTY_TRASH_DAYS) {
$actions['trash'] = "<a class='submitdelete' title='" . esc_attr__('Move this item to the Trash', 'bbpress') . "' href='" . esc_url(add_query_arg(array('_wp_http_referer' => add_query_arg(array('post_type' => bbp_get_topic_post_type()), admin_url('edit.php'))), get_delete_post_link($topic->ID))) . "'>" . esc_html__('Trash', 'bbpress') . "</a>";
}
if (bbp_get_trash_status_id() === $topic->post_status || !EMPTY_TRASH_DAYS) {
$actions['delete'] = "<a class='submitdelete' title='" . esc_attr__('Delete this item permanently', 'bbpress') . "' href='" . esc_url(add_query_arg(array('_wp_http_referer' => add_query_arg(array('post_type' => bbp_get_topic_post_type()), admin_url('edit.php'))), get_delete_post_link($topic->ID, '', true))) . "'>" . esc_html__('Delete Permanently', 'bbpress') . "</a>";
} elseif (bbp_get_spam_status_id() === $topic->post_status) {
unset($actions['trash']);
}
}
return $actions;
}
示例6: bbp_current_user_can_access_create_reply_form
/**
* Performs a series of checks to ensure the current user can create replies.
*
* @since bbPress (r3127)
*
* @uses bbp_is_topic_edit()
* @uses current_user_can()
* @uses bbp_get_topic_id()
* @uses bbp_allow_anonymous()
* @uses is_user_logged_in()
*
* @return bool
*/
function bbp_current_user_can_access_create_reply_form()
{
// Users need to earn access
$retval = false;
// Always allow super admins
if (is_super_admin()) {
$retval = true;
} elseif ((bbp_is_single_topic() || is_page() || is_single()) && bbp_is_topic_open() && bbp_is_forum_open()) {
$retval = bbp_current_user_can_publish_replies();
} elseif (bbp_is_reply_edit()) {
$retval = current_user_can('edit_reply', bbp_get_reply_id());
}
// Allow access to be filtered
return (bool) apply_filters('bbp_current_user_can_access_create_reply_form', (bool) $retval);
}
示例7: bbp_toggle_topic
/**
* Do the actual topic toggling
*
* This function is used by `bbp_toggle_topic_handler()` to do the actual heavy
* lifting when it comes to toggling topic. It only really makes sense to call
* within that context, so if you need to call this function directly, make sure
* you're also doing what the handler does too.
*
* @since 2.6.0 bbPress (r6133)
* @access private
*
* @param array $args
*/
function bbp_toggle_topic($args = array())
{
// Parse the arguments
$r = bbp_parse_args($args, array('id' => 0, 'action' => '', 'sub_action' => '', 'data' => array()));
// Build the nonce suffix
$nonce_suffix = bbp_get_topic_post_type() . '_' . (int) $r['id'];
// Default return values
$retval = array('status' => 0, 'message' => '', 'redirect_to' => bbp_get_topic_permalink($r['id'], bbp_get_redirect_to()), 'view_all' => false);
// What action are we trying to perform?
switch ($r['action']) {
// Toggle approve/unapprove
case 'bbp_toggle_topic_approve':
check_ajax_referer("approve-{$nonce_suffix}");
$is_pending = bbp_is_topic_pending($r['id']);
$retval['view_all'] = !$is_pending;
// Toggle
$retval['status'] = true === $is_pending ? bbp_approve_topic($r['id']) : bbp_unapprove_topic($r['id']);
// Feedback
$retval['message'] = true === $is_pending ? __('<strong>ERROR</strong>: There was a problem approving the topic.', 'bbpress') : __('<strong>ERROR</strong>: There was a problem unapproving the topic.', 'bbpress');
break;
// Toggle open/close
// Toggle open/close
case 'bbp_toggle_topic_close':
check_ajax_referer("close-{$nonce_suffix}");
$is_open = bbp_is_topic_open($r['id']);
// Toggle
$retval['status'] = true === $is_open ? bbp_close_topic($r['id']) : bbp_open_topic($r['id']);
// Feedback
$retval['message'] = true === $is_open ? __('<strong>ERROR</strong>: There was a problem closing the topic.', 'bbpress') : __('<strong>ERROR</strong>: There was a problem opening the topic.', 'bbpress');
break;
// Toggle sticky/super-sticky/unstick
// Toggle sticky/super-sticky/unstick
case 'bbp_toggle_topic_stick':
check_ajax_referer("stick-{$nonce_suffix}");
$is_sticky = bbp_is_topic_sticky($r['id']);
$is_super = false === $is_sticky && !empty($_GET['super']) && "1" === $_GET['super'] ? true : false;
// Toggle
$retval['status'] = true === $is_sticky ? bbp_unstick_topic($r['id']) : bbp_stick_topic($r['id'], $is_super);
// Feedback
$retval['message'] = true === $is_sticky ? __('<strong>ERROR</strong>: There was a problem unsticking the topic.', 'bbpress') : __('<strong>ERROR</strong>: There was a problem sticking the topic.', 'bbpress');
break;
// Toggle spam
// Toggle spam
case 'bbp_toggle_topic_spam':
check_ajax_referer("spam-{$nonce_suffix}");
$is_spam = bbp_is_topic_spam($r['id']);
$retval['view_all'] = !$is_spam;
// Toggle
$retval['status'] = true === $is_spam ? bbp_unspam_topic($r['id']) : bbp_spam_topic($r['id']);
// Feedback
$retval['message'] = true === $is_spam ? __('<strong>ERROR</strong>: There was a problem unmarking the topic as spam.', 'bbpress') : __('<strong>ERROR</strong>: There was a problem marking the topic as spam.', 'bbpress');
break;
// Toggle trash
// Toggle trash
case 'bbp_toggle_topic_trash':
switch ($r['sub_action']) {
case 'trash':
check_ajax_referer("trash-{$nonce_suffix}");
$retval['view_all'] = true;
$retval['status'] = wp_trash_post($r['id']);
$retval['message'] = __('<strong>ERROR</strong>: There was a problem trashing the topic.', 'bbpress');
break;
case 'untrash':
check_ajax_referer("untrash-{$nonce_suffix}");
$retval['status'] = wp_untrash_post($r['id']);
$retval['message'] = __('<strong>ERROR</strong>: There was a problem untrashing the topic.', 'bbpress');
break;
case 'delete':
check_ajax_referer("delete-{$nonce_suffix}");
$retval['status'] = wp_delete_post($r['id']);
$retval['message'] = __('<strong>ERROR</strong>: There was a problem deleting the topic.', 'bbpress');
break;
}
break;
}
// Maybe redirect back to the topic's forum
if (isset($r['sub_action']) && 'delete' === $r['sub_action']) {
$retval['redirect_to'] = bbp_get_forum_permalink($retval['status']->post_parent);
}
// Add view all if needed
if (!empty($retval['view_all'])) {
$retval['redirect_to'] = bbp_add_view_all($retval['redirect_to'], true);
}
// Filter & return
return apply_filters('bbp_toggle_topic', $retval, $r, $args);
}
示例8: bbp_get_topic_close_link
/**
* Return the close link of the topic
*
* @since bbPress (r2727)
*
* @param mixed $args This function supports these args:
* - id: Optional. Topic id
* - link_before: Before the link
* - link_after: After the link
* - close_text: Close text
* - open_text: Open text
* @uses bbp_get_topic_id() To get the topic id
* @uses bbp_get_topic() To get the topic
* @uses current_user_can() To check if the current user can edit the topic
* @uses bbp_is_topic_open() To check if the topic is open
* @uses add_query_arg() To add custom args to the url
* @uses wp_nonce_url() To nonce the url
* @uses esc_url() To escape the url
* @uses apply_filters() Calls 'bbp_get_topic_close_link' with the link
* and args
* @return string Topic close link
*/
function bbp_get_topic_close_link($args = '')
{
$defaults = array('id' => 0, 'link_before' => '', 'link_after' => '', 'sep' => ' | ', 'close_text' => _x('Close', 'Topic Status', 'bbpress'), 'open_text' => _x('Open', 'Topic Status', 'bbpress'));
$r = bbp_parse_args($args, $defaults, 'get_topic_close_link');
extract($r);
$topic = bbp_get_topic(bbp_get_topic_id((int) $id));
if (empty($topic) || !current_user_can('moderate', $topic->ID)) {
return;
}
$display = bbp_is_topic_open($topic->ID) ? $close_text : $open_text;
$uri = add_query_arg(array('action' => 'bbp_toggle_topic_close', 'topic_id' => $topic->ID));
$uri = esc_url(wp_nonce_url($uri, 'close-topic_' . $topic->ID));
$retval = $link_before . '<a href="' . $uri . '">' . $display . '</a>' . $link_after;
return apply_filters('bbp_get_topic_close_link', $retval, $args);
}
示例9: the_permalink
// User is allowed to reply
if (bbp_current_user_can_access_create_reply_form()) {
?>
<form id="new-post" name="new-post" method="post" action="<?php
the_permalink();
?>
">
<?php
// Notices and warnings
// apoc_forum_rules();
?>
<?php
// Admin can post in a closed topic
if (!bbp_is_topic_open()) {
?>
<p class="warning"><?php
_e('This topic is marked as closed to new replies, however your posting capabilities still allow you to do so.', 'bbpress');
?>
</p>
<?php
}
?>
<?php
do_action('bbp_template_notices');
?>
<fieldset class="reply-form">