0) // 3. if anonymous posts are not allowed // The only exception is the course manager // I have split this is several pieces for clarity. //if (!api_is_allowed_to_edit() AND (($current_forum_category['visibility'] == 0 OR $current_forum['visibility'] == 0) OR ($current_forum_category['locked'] <> 0 OR $current_forum['locked'] <> 0 OR $current_thread['locked'] <> 0))) { if (!api_is_allowed_to_edit(false, true) AND (($current_forum_category && $current_forum_category['visibility'] == 0) OR $current_forum['visibility'] == 0)) { api_not_allowed(); } if (!api_is_allowed_to_edit(false, true) AND (($current_forum_category && $current_forum_category['locked'] <> 0) OR $current_forum['locked'] <> 0 OR $current_thread['locked'] <> 0)) { api_not_allowed(); } if (!$_user['user_id'] AND $current_forum['allow_anonymous'] == 0) { api_not_allowed(); } if ($current_forum['forum_of_group'] != 0) { $show_forum = GroupManager::user_has_access( api_get_user_id(), $current_forum['forum_of_group'], GroupManager::GROUP_TOOL_FORUM ); if (!$show_forum) { api_not_allowed(); } } /* Breadcrumbs */ $gradebook = null; if (isset($_SESSION['gradebook'])){ $gradebook = Security::remove_XSS($_SESSION['gradebook']); } if (!empty($gradebook) && $gradebook == 'view') { $interbreadcrumb[] = array ( 'url' => '../gradebook/'.Security::remove_XSS($_SESSION['gradebook_dest']), 'name' => get_lang('ToolGradebook') ); } if ($origin == 'group') { $_clean['toolgroup'] = (int)$_SESSION['toolgroup']; $group_properties = GroupManager :: get_group_properties($_clean['toolgroup']); $interbreadcrumb[] = array( 'url' => '../group/group.php?'.api_get_cidreq(), 'name' => get_lang('Groups'), ); $interbreadcrumb[] = array( 'url' => '../group/group_space.php?'.api_get_cidreq(), 'name' => get_lang('GroupSpace').' '.$group_properties['name'], ); $interbreadcrumb[] = array( 'url' => 'viewforum.php?origin='.$origin.'&forum='.intval($_GET['forum']).'&'.api_get_cidreq(), 'name' => $current_forum['forum_title'], ); $interbreadcrumb[] = array( 'url' => 'viewthread.php?origin='.$origin.'&gradebook='.$gradebook.'&forum='.intval($_GET['forum']).'&thread='.intval($_GET['thread']).'&'.api_get_cidreq(), 'name' => $current_thread['thread_title'], ); $interbreadcrumb[] = array( 'url' => 'javascript: void(0);', 'name' => get_lang('Reply'), ); } else { $interbreadcrumb[] = array( 'url' => 'index.php?gradebook='.$gradebook, 'name' => $nameTools, ); $interbreadcrumb[] = array( 'url' => 'viewforumcategory.php?forumcategory='.$current_forum_category['cat_id'].'&'.api_get_cidreq(), 'name' => $current_forum_category['cat_title'], ); $interbreadcrumb[] = array( 'url' => 'viewforum.php?origin='.$origin.'&forum='.intval($_GET['forum']).'&'.api_get_cidreq(), 'name' => $current_forum['forum_title'], ); $interbreadcrumb[] = array( 'url' => 'viewthread.php?origin='.$origin.'&gradebook='.$gradebook.'&forum='.intval($_GET['forum']).'&thread='.intval($_GET['thread']).'&'.api_get_cidreq(), 'name' => $current_thread['thread_title'], ); $interbreadcrumb[] = array('url' => '#', 'name' => get_lang('Reply')); } /* Resource Linker */ if (isset($_POST['add_resources']) && $_POST['add_resources'] == get_lang('Resources')) { $_SESSION['formelements'] = $_POST; $_SESSION['origin'] = $_SERVER['REQUEST_URI']; $_SESSION['breadcrumbs'] = $interbreadcrumb; header('Location: ../resourcelinker/resourcelinker.php'); exit; } /* Header */ $htmlHeadXtra[] = << $(document).on('ready', function() { $('#reply-add-attachment').on('click', function(e) { e.preventDefault(); var newInputFile = $('', { type: 'file', name: 'user_upload[]' }); $('[name="user_upload[]"]').parent().append(newInputFile); }); }); JS; if ($origin == 'learnpath') { Display :: display_reduced_header(''); } else { // The last element of the breadcrumb navigation is already set in interbreadcrumb, so give an empty string. Display :: display_header(''); } /* Action links */ if ($origin != 'learnpath') { echo '
'; echo ''.search_link().''; echo ''. Display::return_icon('back.png', get_lang('BackToThread'), '', ICON_SIZE_MEDIUM).''; echo '
'; } else { echo '
 
'; } /*New display forum div*/ echo '
'; echo '

'. prepare4display($current_forum['forum_title']).'

'; echo '

'.prepare4display($current_forum['forum_comment']).'

'; echo '
'; /* End new display forum */ // The form for the reply $my_action = isset($_GET['action']) ? Security::remove_XSS($_GET['action']) : ''; $my_post = isset($_GET['post']) ? Security::remove_XSS($_GET['post']) : ''; $my_elements = isset($_SESSION['formelements']) ? $_SESSION['formelements'] : ''; $values = show_add_post_form( $current_forum, $forum_setting, $my_action, $my_post, $my_elements ); if (!empty($values) AND isset($_POST['SubmitPost'])) { $result = store_reply($current_forum, $values); //@todo split the show_add_post_form function $url = 'viewthread.php?forum='.$current_thread['forum_id'].'&gradebook='.$gradebook.'&thread='.intval($_GET['thread']).'&gidReq='.api_get_group_id().'&origin='.$origin.'&msg='.$result['msg'].'&type='.$result['type']; echo ' '; } if (isset($origin) && $origin != 'learnpath') { Display :: display_footer(); }