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(false, true) && (($current_forum_category && $current_forum_category['visibility'] == 0) || $current_forum['visibility'] == 0) ) { api_not_allowed(true); } if (!api_is_allowed_to_edit(false, true) && (($current_forum_category && $current_forum_category['locked'] != 0) || $current_forum['locked'] != 0 || $current_thread['locked'] != 0) ) { api_not_allowed(true); } if (!$_user['user_id'] && $current_forum['allow_anonymous'] == 0) { api_not_allowed(true); } 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(); } } if (api_is_in_gradebook()) { $interbreadcrumb[] = [ 'url' => Category::getUrl(), 'name' => get_lang('Assessments'), ]; } $groupId = api_get_group_id(); if (!empty($groupId)) { $group_properties = GroupManager::get_group_properties($groupId); $interbreadcrumb[] = [ 'url' => api_get_path(WEB_CODE_PATH).'group/group.php?'.api_get_cidreq(), 'name' => get_lang('Groups'), ]; $interbreadcrumb[] = [ 'url' => api_get_path(WEB_CODE_PATH).'group/group_space.php?'.api_get_cidreq(), 'name' => get_lang('Group area').' '.$group_properties['name'], ]; $interbreadcrumb[] = [ 'url' => api_get_path(WEB_CODE_PATH).'forum/viewforum.php?forum='.$forumId.'&'.api_get_cidreq(), 'name' => $current_forum['forum_title'], ]; $interbreadcrumb[] = [ 'url' => api_get_path(WEB_CODE_PATH).'forum/viewthread.php?forum='.$forumId.'&thread='.$threadId.'&'.api_get_cidreq(), 'name' => $current_thread['thread_title'], ]; $interbreadcrumb[] = [ 'url' => 'javascript: void(0);', 'name' => get_lang('Reply'), ]; } else { $interbreadcrumb[] = [ 'url' => 'index.php?'.api_get_cidreq(), 'name' => $nameTools, ]; $interbreadcrumb[] = [ 'url' => api_get_path(WEB_CODE_PATH).'forum/viewforumcategory.php?forumcategory='.$current_forum_category['cat_id'].'&'.api_get_cidreq(), 'name' => $current_forum_category['cat_title'], ]; $interbreadcrumb[] = [ 'url' => api_get_path(WEB_CODE_PATH).'forum/viewforum.php?forum='.$forumId.'&'.api_get_cidreq(), 'name' => $current_forum['forum_title'], ]; $interbreadcrumb[] = [ 'url' => api_get_path(WEB_CODE_PATH).'forum/viewthread.php?forum='.$forumId.'&thread='.$threadId.'&'.api_get_cidreq(), 'name' => $current_thread['thread_title'], ]; $interbreadcrumb[] = ['url' => '#', 'name' => get_lang('Reply')]; } /* Header */ $htmlHeadXtra[] = << $(function() { $('#reply-add-attachment').on('click', function(e) { e.preventDefault(); var newInputFile = $('', { type: 'file', name: 'user_upload[]' }); $('[name="user_upload[]"]').parent().append(newInputFile); }); }); JS; /* 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'] : ''; $logInfo = [ 'tool' => TOOL_FORUM, 'tool_id' => $forumId, 'tool_id_detail' => $threadId, 'action' => !empty($my_action) ? $my_action : 'reply', ]; Event::registerLog($logInfo); $form = show_add_post_form( $current_forum, $my_action, $my_elements ); 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 ''; echo Display::return_icon( 'back.png', get_lang('Back to thread'), '', ICON_SIZE_MEDIUM ).''; echo '
'; } /*New display forum div*/ echo '
'; echo '

'; echo Display::url( prepare4display($current_forum['forum_title']), 'viewforum.php?'.api_get_cidreq().'&'.http_build_query(['forum' => $current_forum['forum_id']]), ['class' => empty($current_forum['visibility']) ? 'text-muted' : null] ); echo '

'; echo '

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

'; echo '
'; if ($form) { $form->display(); } if ($origin == 'learnpath') { Display::display_reduced_footer(); } else { Display::display_footer(); }