diff --git a/public/main/forum/forumfunction.inc.php b/public/main/forum/forumfunction.inc.php index 09dde98386..4ae8adcc6f 100644 --- a/public/main/forum/forumfunction.inc.php +++ b/public/main/forum/forumfunction.inc.php @@ -1383,7 +1383,7 @@ function getPosts( 'post_id' => $post->getIid(), 'post_title' => $post->getPostTitle(), 'post_text' => $post->getPostText(), - 'threadId' => $post->getThread() ? $post->getThread()->getIid() : 0, + 'thread_id' => $post->getThread() ? $post->getThread()->getIid() : 0, 'forum_id' => $post->getForum()->getIid(), //'poster_id' => $post->getPosterId(), //'poster_name' => $post->getPosterName(), @@ -1396,6 +1396,16 @@ function getPosts( 'entity' => $post, ]; + $user = $post->getUser(); + if ($user) { + $postInfo['user_id'] = $user->getId(); + $postInfo['username'] = $user->getUsername(); + $postInfo['username_canonical'] = $user->getUsernameCanonical(); + $postInfo['lastname'] = $user->getLastname(); + $postInfo['firstname'] = $user->getFirstname(); + $postInfo['complete_name'] = UserManager::formatUserFullName($user); + } + $list[] = $postInfo; if (!$recursive) { @@ -1453,25 +1463,25 @@ function get_thread_users_details(int $thread_id) $coachesId = array_merge($generalCoachesId, $sessionAdminsId); $user_to_avoid = implode(', ', $coachesId); //not showing coaches - $sql = "SELECT DISTINCT user.id, user.lastname, user.firstname, threadId + $sql = "SELECT DISTINCT user.id, user.lastname, user.firstname, thread_id FROM $t_posts p, $t_users user, $t_session_rel_user session_rel_user_rel_course WHERE p.poster_id = user.id AND user.id = session_rel_user_rel_course.user_id AND session_rel_user_rel_course.status = ".SessionEntity::STUDENT." AND session_rel_user_rel_course.user_id NOT IN ($user_to_avoid) AND - p.threadId = $thread_id AND + p.thread_id = $thread_id AND session_id = ".api_get_session_id()." AND p.c_id = $course_id AND session_rel_user_rel_course.c_id = $course_id $orderby "; } else { - $sql = "SELECT DISTINCT user.id, user.lastname, user.firstname, threadId + $sql = "SELECT DISTINCT user.id, user.lastname, user.firstname, thread_id FROM $t_posts p, $t_users user, $t_course_user course_user WHERE p.poster_id = user.id AND user.id = course_user.user_id AND course_user.relation_type <> ".COURSE_RELATION_TYPE_RRHH." - AND p.threadId = $thread_id + AND p.thread_id = $thread_id AND course_user.status != '1' AND p.c_id = $course_id AND course_user.c_id = $course_id $orderby"; @@ -1513,22 +1523,22 @@ function get_thread_users_qualify(int $thread_id) $coachesId = array_merge($generalCoachesId, $sessionAdminsId); $user_to_avoid = implode(', ', $coachesId); //not showing coaches - $sql = "SELECT DISTINCT post.poster_id, user.lastname, user.firstname, post.threadId,user.id,qualify.qualify + $sql = "SELECT DISTINCT post.poster_id, user.lastname, user.firstname, post.thread_id,user.id,qualify.qualify FROM $t_posts post , $t_users user, $t_session_rel_user scu, $t_qualify qualify WHERE poster_id = user.id AND post.poster_id = qualify.user_id AND user.id = scu.user_id AND scu.status = ".SessionEntity::STUDENT." AND scu.user_id NOT IN ($user_to_avoid) - AND qualify.threadId = $thread_id - AND post.threadId = $thread_id + AND qualify.thread_id = $thread_id + AND post.thread_id = $thread_id AND scu.session_id = $sessionId AND scu.c_id = $course_id AND qualify.c_id = $course_id AND post.c_id = $course_id $orderby "; } else { - $sql = "SELECT DISTINCT post.poster_id, user.lastname, user.firstname, post.threadId,user.id,qualify.qualify + $sql = "SELECT DISTINCT post.poster_id, user.lastname, user.firstname, post.thread_id,user.id,qualify.qualify FROM $t_posts post, $t_qualify qualify, $t_users user, @@ -1538,8 +1548,8 @@ function get_thread_users_qualify(int $thread_id) AND post.poster_id = qualify.user_id AND user.id = course_user.user_id AND course_user.relation_type<>".COURSE_RELATION_TYPE_RRHH." - AND qualify.threadId = $thread_id - AND post.threadId = $thread_id + AND qualify.thread_id = $thread_id + AND post.thread_id = $thread_id AND course_user.status not in('1') AND course_user.c_id = $course_id AND qualify.c_id = $course_id @@ -1580,7 +1590,7 @@ function get_thread_users_not_qualify($thread_id) $course_id = api_get_course_int_id(); $sql1 = "SELECT user_id FROM $t_qualify - WHERE threadId = '".$thread_id."'"; + WHERE thread_id = '".$thread_id."'"; $result1 = Database::query($sql1); $cad = ''; while ($row = Database::fetch_array($result1)) { @@ -1600,24 +1610,24 @@ function get_thread_users_not_qualify($thread_id) $coachesId = array_merge($generalCoachesId, $sessionAdminsId); $user_to_avoid = implode(', ', $coachesId); //not showing coaches - $sql = "SELECT DISTINCT user.id, user.lastname, user.firstname, post.threadId + $sql = "SELECT DISTINCT user.id, user.lastname, user.firstname, post.thread_id FROM $t_posts post , $t_users user, $t_session_rel_user session_rel_user_rel_course WHERE poster_id = user.id AND user.id NOT IN (".$cad.") AND user.id = session_rel_user_rel_course.user_id AND session_rel_user_rel_course.status = ".SessionEntity::STUDENT." AND session_rel_user_rel_course.user_id NOT IN ($user_to_avoid) - AND post.threadId = ".(int) $thread_id.' + AND post.thread_id = ".(int) $thread_id.' AND session_id = '.api_get_session_id()." AND session_rel_user_rel_course.c_id = $course_id AND post.c_id = $course_id $orderby "; } else { - $sql = "SELECT DISTINCT user.id, user.lastname, user.firstname, post.threadId + $sql = "SELECT DISTINCT user.id, user.lastname, user.firstname, post.thread_id FROM $t_posts post, $t_users user,$t_course_user course_user WHERE post.poster_id = user.id AND user.id NOT IN (".$cad.') AND user.id = course_user.user_id AND course_user.relation_type<>'.COURSE_RELATION_TYPE_RRHH.' - AND post.threadId = '.(int) $thread_id." + AND post.thread_id = '.(int) $thread_id." AND course_user.status not in('1') AND course_user.c_id = $course_id AND post.c_id = $course_id $orderby"; } @@ -1667,7 +1677,7 @@ function updateThread($values) $logInfo = [ 'tool' => TOOL_FORUM, 'tool_id' => $values['forum_id'], - 'tool_id_detail' => $values['threadId'], + 'tool_id_detail' => $values['thread_id'], 'action' => 'edit-thread', 'action_details' => 'thread', 'info' => $values['thread_title'], @@ -1684,10 +1694,10 @@ function updateThread($values) 'thread_title' => $values['thread_title'], 'thread_sticky' => $values['thread_sticky'] ?? 0, ]; - $where = ['iid = ?' => [$values['threadId']]]; + $where = ['iid = ?' => [$values['thread_id']]]; Database::update($threadTable, $params, $where); - $id = $values['threadId']; + $id = $values['thread_id']; $linkInfo = GradebookUtils::isResourceInCourseGradebook( $courseCode, LINK_FORUM_THREAD, @@ -1715,7 +1725,7 @@ function updateThread($values) 'thread_weight' => api_float_val($values['weight_calification']), 'thread_peer_qualify' => $values['thread_peer_qualify'], ]; - $where = ['iid = ?' => [$values['threadId']]]; + $where = ['iid = ?' => [$values['thread_id']]]; Database::update($threadTable, $params, $where); if (!$linkInfo) { @@ -1745,7 +1755,7 @@ function updateThread($values) 'thread_weight' => 0, 'thread_peer_qualify' => 0, ]; - $where = ['iid = ?' => [$values['threadId']]]; + $where = ['iid = ?' => [$values['thread_id']]]; Database::update($threadTable, $params, $where); if (!empty($linkInfo)) { @@ -1997,7 +2007,7 @@ function show_add_post_form(CForum $forum, CForumThread $thread, CForumPost $pos // Setting the form elements. $form->addElement('hidden', 'forum_id', $forumId); - $form->addElement('hidden', 'threadId', $threadId); + $form->addElement('hidden', 'thread_id', $threadId); $form->addElement('hidden', 'action', $action); // If anonymous posts are allowed we also display a form to allow the user to put his name or username in. @@ -2260,7 +2270,7 @@ function newThread(CForum $forum, $form_values = '', $showPreview = true) // Setting the form elements. $form->addElement('hidden', 'forum_id', $forumId); - $form->addElement('hidden', 'threadId', 0); + $form->addElement('hidden', 'thread_id', 0); $form->addElement('hidden', 'action', $action); // If anonymous posts are allowed we also display a form to allow the user to put his name or username in. @@ -2521,19 +2531,19 @@ function saveThreadScore( WHERE user_id = $user_id AND qualify_user_id = $currentUserId AND - threadId = ".$thread_id; + thread_id = ".$thread_id; } else { $sql = "SELECT COUNT(*) FROM $table_threads_qualify WHERE user_id = $user_id AND - threadId = ".$thread_id; + thread_id = ".$thread_id; } $result = Database::query($sql); $row = Database::fetch_array($result); if (0 == $row[0]) { - $sql = "INSERT INTO $table_threads_qualify (c_id, user_id, threadId,qualify,qualify_user_id,qualify_time,session_id) + $sql = "INSERT INTO $table_threads_qualify (c_id, user_id, thread_id,qualify,qualify_user_id,qualify_time,session_id) VALUES (".$course_id.", '".$user_id."','".$thread_id."',".$thread_qualify.", '".$currentUserId."','".$qualify_time."','".$session_id."')"; Database::query($sql); @@ -2553,7 +2563,7 @@ function saveThreadScore( qualify_time = '".$qualify_time."' WHERE user_id=".$user_id.' AND - threadId='.$thread_id." AND + thread_id='.$thread_id." AND qualify_user_id = $currentUserId "; Database::query($sql); @@ -2599,7 +2609,7 @@ function showQualify($option, $user_id, $thread_id) WHERE c_id = $course_id AND user_id=".$user_id.' AND - threadId='.$thread_id; + thread_id='.$thread_id; break; case 2: @@ -2646,14 +2656,14 @@ function getThreadScoreHistory($user_id, $thread_id, $opt) $sql = "SELECT * FROM $table_threads_qualify_log WHERE c_id = $course_id AND - threadId='".$thread_id."' AND + thread_id='".$thread_id."' AND user_id='".$user_id."' ORDER BY qualify_time"; } else { $sql = "SELECT * FROM $table_threads_qualify_log WHERE c_id = $course_id AND - threadId='".$thread_id."' AND + thread_id='".$thread_id."' AND user_id='".$user_id."' ORDER BY qualify_time DESC"; } @@ -2705,14 +2715,14 @@ function saveThreadScoreHistory( WHERE c_id = $course_id AND user_id = ".$user_id.' AND - threadId = '.$thread_id." AND + thread_id = '.$thread_id." AND qualify_user_id = $qualify_user_id "; $rs = Database::query($sql); $row = Database::fetch_array($rs); // Insert thread_historical. - $sql = "INSERT INTO $table_threads_qualify_log (c_id, user_id, threadId, qualify, qualify_user_id,qualify_time,session_id) + $sql = "INSERT INTO $table_threads_qualify_log (c_id, user_id, thread_id, qualify, qualify_user_id,qualify_time,session_id) VALUES(".$course_id.", '".$user_id."','".$thread_id."',".(float) $row[0].", '".$qualify_user_id."','".$row[1]."','')"; Database::query($sql); } @@ -2743,7 +2753,7 @@ function current_qualify_of_thread($threadId, $sessionId, $userId) $sql = "SELECT qualify FROM $table_threads_qualify WHERE c_id = $course_id AND - threadId = $threadId AND + thread_id = $threadId AND session_id = $sessionId AND qualify_user_id = $currentUserId AND user_id = $userId @@ -2838,7 +2848,7 @@ function store_reply(CForum $forum, CForumThread $thread, $values, $courseId = 0 } // Update the thread. - updateThreadInfo($values['threadId'], $new_post_id, $post_date); + updateThreadInfo($values['thread_id'], $new_post_id, $post_date); if ('1' == $forum->getApprovalDirectPost() && !api_is_allowed_to_edit(null, true) @@ -2855,7 +2865,7 @@ function store_reply(CForum $forum, CForumThread $thread, $values, $courseId = 0 // Setting the notification correctly. $my_post_notification = isset($values['post_notification']) ? $values['post_notification'] : null; if (1 == $my_post_notification) { - set_notification('thread', $values['threadId'], true); + set_notification('thread', $values['thread_id'], true); } send_notification_mails( @@ -2868,7 +2878,7 @@ function store_reply(CForum $forum, CForumThread $thread, $values, $courseId = 0 $logInfo = [ 'tool' => TOOL_FORUM, 'tool_id' => $values['forum_id'], - 'tool_id_detail' => $values['threadId'], + 'tool_id_detail' => $values['thread_id'], 'action' => 'new-post', 'action_details' => $values['action'], 'info' => $values['post_title'], @@ -2923,7 +2933,7 @@ function show_edit_post_form( $form->addElement('header', get_lang('Edit a post')); // Setting the form elements. $form->addElement('hidden', 'post_id', $post->getIid()); - $form->addElement('hidden', 'threadId', $thread->getIid()); + $form->addElement('hidden', 'thread_id', $thread->getIid()); $form->addElement('hidden', 'id_attach', $id_attach); if (null === $post->getPostParent()) { @@ -3067,7 +3077,7 @@ function store_edit_post(CForum $forum, $values) $logInfo = [ 'tool' => TOOL_FORUM, 'tool_id' => $_GET['forum'], - 'tool_id_detail' => $values['threadId'], + 'tool_id_detail' => $values['thread_id'], 'action' => 'edit-post', 'action_details' => 'post', 'info' => $values['post_title'], @@ -3079,7 +3089,7 @@ function store_edit_post(CForum $forum, $values) //check if this post is the first of the thread // First we check if the change affects the thread and if so we commit // the changes (sticky and post_title=thread_title are relevant). - $posts = getPosts($forum, $values['threadId']); + $posts = getPosts($forum, $values['thread_id']); $first_post = null; if (!empty($posts) && count($posts) > 0 && isset($posts[0])) { $first_post = $posts[0]; @@ -3091,7 +3101,7 @@ function store_edit_post(CForum $forum, $values) 'thread_title' => $values['post_title'], 'thread_sticky' => isset($values['thread_sticky']) ? $values['thread_sticky'] : 0, ]; - $where = ['iid = ?' => [$values['threadId']]]; + $where = ['iid = ?' => [$values['thread_id']]]; Database::update($threadTable, $params, $where); } @@ -3154,7 +3164,7 @@ function store_edit_post(CForum $forum, $values) get_lang('Forum').'
'; $message .= get_lang('You can now return to the'). ' '. + href="viewthread.php?'.api_get_cidreq().'&forum='.(int) ($_GET['forum']).'&thread='.$values['thread_id'].'&post='.Security::remove_XSS($_GET['post']).'">'. get_lang('Message').''; Session::erase('formelements'); @@ -3242,14 +3252,14 @@ function get_unaproved_messages($forum_id) $course_id = api_get_course_int_id(); $return_array = []; - $sql = "SELECT DISTINCT threadId FROM $table_posts + $sql = "SELECT DISTINCT thread_id FROM $table_posts WHERE c_id = $course_id AND forum_id='".Database::escape_string($forum_id)."' AND visible='0' "; $result = Database::query($sql); while ($row = Database::fetch_array($result)) { - $return_array[] = $row['threadId']; + $return_array[] = $row['thread_id']; } return $return_array; @@ -3301,12 +3311,12 @@ function send_notification_mails(CForum $forum, CForumThread $thread, $reply_inf c_id = ".$courseId." AND ( forum_id = '".$forum->getIid()."' OR - threadId = '".$thread->getIid()."' + thread_id = '".$thread->getIid()."' ) "; $result = Database::query($sql); $user_id = api_get_user_id(); while ($row = Database::fetch_array($result)) { - $sql = "INSERT INTO $table (c_id, threadId, post_id, user_id) + $sql = "INSERT INTO $table (c_id, thread_id, post_id, user_id) VALUES (".$courseId.", '".$thread->getIid()."', '".(int) ($reply_info['new_post_id'])."', '$user_id' )"; Database::query($sql); } @@ -3353,9 +3363,9 @@ function handle_mail_cue($content, $id) WHERE posts.c_id = $course_id AND mailcue.c_id = $course_id AND - posts.threadId = $thread_id AND + posts.thread_id = $thread_id AND posts.post_notification = '1' AND - mailcue.threadId = $thread_id AND + mailcue.thread_id = $thread_id AND users.id = posts.poster_id AND users.active = 1 GROUP BY users.email"; @@ -3373,9 +3383,9 @@ function handle_mail_cue($content, $id) WHERE posts.c_id = $course_id AND mailcue.c_id = $course_id AND - posts.threadId = $id AND + posts.thread_id = $id AND posts.post_notification = '1' AND - mailcue.threadId = $id AND + mailcue.thread_id = $id AND users.id = posts.poster_id AND users.active = 1 GROUP BY users.email"; @@ -3388,7 +3398,7 @@ function handle_mail_cue($content, $id) // Deleting the relevant entries from the mailcue. $sql = "DELETE FROM $table_mailcue - WHERE c_id = $course_id AND threadId = $id"; + WHERE c_id = $course_id AND thread_id = $id"; Database::query($sql); } elseif ('forum' === $content) { $sql = "SELECT iid FROM $table_threads @@ -3490,7 +3500,7 @@ function move_thread_form() ); $form->addHeader(get_lang('Move Thread')); // Invisible form: the threadId - $form->addHidden('threadId', (int) ($_GET['thread'])); + $form->addHidden('thread_id', (int) ($_GET['thread'])); $forum_categories = get_forum_categories(); $htmlcontent = '
@@ -3615,7 +3625,7 @@ function store_move_post($values) $new_thread_id = $thread->getIid(); // Moving the post to the newly created thread. - $sql = "UPDATE $table_posts SET threadId='".$new_thread_id."', post_parent_id = NULL + $sql = "UPDATE $table_posts SET thread_id='".$new_thread_id."', post_parent_id = NULL WHERE c_id = $course_id AND iid ='".(int) ($values['post_id'])."'"; Database::query($sql); @@ -3631,7 +3641,7 @@ function store_move_post($values) // Resetting the last post of the old thread and decreasing the number of replies and the thread. $sql = "SELECT * FROM $table_posts - WHERE c_id = $course_id AND threadId='".$threadId."' + WHERE c_id = $course_id AND thread_id='".$threadId."' ORDER BY iid DESC"; $result = Database::query($sql); $row = Database::fetch_array($result); @@ -3644,12 +3654,12 @@ function store_move_post($values) Database::query($sql); } else { // Moving to the chosen thread. - $sql = 'SELECT threadId FROM '.$table_posts." + $sql = 'SELECT thread_id FROM '.$table_posts." WHERE c_id = $course_id AND iid = '".$values['post_id']."' "; $result = Database::query($sql); $row = Database::fetch_array($result); - $original_thread_id = $row['threadId']; + $original_thread_id = $row['thread_id']; $sql = 'SELECT thread_last_post FROM '.$table_threads." WHERE c_id = $course_id AND iid = '".$original_thread_id."' "; @@ -3662,7 +3672,7 @@ function store_move_post($values) $sql = 'SELECT iid as post_id FROM '.$table_posts." WHERE c_id = $course_id AND - threadId = '".$original_thread_id."' AND + thread_id = '".$original_thread_id."' AND iid <> '".$values['post_id']."' ORDER BY post_date DESC LIMIT 1"; $result = Database::query($sql); @@ -3681,7 +3691,7 @@ function store_move_post($values) Database::query($sql); // moving to the chosen thread - $sql = "UPDATE $table_posts SET threadId='".(int) ($_POST['thread'])."', post_parent_id = NULL + $sql = "UPDATE $table_posts SET thread_id='".(int) ($_POST['thread'])."', post_parent_id = NULL WHERE c_id = $course_id AND iid ='".(int) ($values['post_id'])."'"; Database::query($sql); @@ -3716,7 +3726,7 @@ function store_move_thread($values) $sessionId = api_get_session_id(); $forumId = (int) ($_POST['forum']); - $threadId = (int) ($_POST['threadId']); + $threadId = (int) ($_POST['thread_id']); //$forumInfo = get_forums($forumId); // Change the thread table: Setting the forum_id to the new forum. @@ -3726,7 +3736,7 @@ function store_move_thread($values) // Changing all the posts of the thread: setting the forum_id to the new forum. $sql = "UPDATE $table_posts SET forum_id = $forumId - WHERE c_id = $courseId AND threadId= $threadId"; + WHERE c_id = $courseId AND thread_id= $threadId"; Database::query($sql); // Fix group id, if forum is moved to a different group @@ -4291,7 +4301,7 @@ function set_notification($content, $id, $addOnly = false, $userInfo = [], $cour $course_id = $courseInfo['real_id']; // Which database field do we have to store the id in? - $field = 'threadId'; + $field = 'thread_id'; if ('forum' === $content) { $field = 'forum_id'; } @@ -4370,7 +4380,7 @@ function get_notifications($content, $id) $course_id = api_get_course_int_id(); // Which database field contains the notification? - $field = 'threadId'; + $field = 'thread_id'; if ('forum' === $content) { $field = 'forum_id'; } @@ -4479,8 +4489,8 @@ function getNotificationsPerUser($user_id = 0, $force = false, $course_id = 0) if (null !== $row['forum_id']) { $_SESSION['forum_notification']['forum'][] = $row['forum_id']; } - if (null !== $row['threadId']) { - $_SESSION['forum_notification']['thread'][] = $row['threadId']; + if (null !== $row['thread_id']) { + $_SESSION['forum_notification']['thread'][] = $row['thread_id']; } } } @@ -4507,7 +4517,7 @@ function count_number_of_post_in_thread($thread_id) $sql = "SELECT count(*) count FROM $table_posts WHERE c_id = $course_id AND - threadId='".(int) $thread_id."' "; + thread_id='".(int) $thread_id."' "; $result = Database::query($sql); $count = 0; @@ -4533,7 +4543,7 @@ function count_number_of_post_for_user_thread($thread_id, $user_id) $sql = "SELECT count(iid) as count FROM $table_posts WHERE - threadId=".(int) $thread_id.' AND + thread_id=".(int) $thread_id.' AND poster_id = '.(int) $user_id.' AND visible = 1 '; $result = Database::query($sql); @@ -4598,7 +4608,7 @@ function get_thread_user_post(Course $course, $thread_id, $user_id) ON posts.poster_id = user.id WHERE posts.c_id = $course_id AND - posts.threadId='$thread_id' AND + posts.thread_id='$thread_id' AND posts.poster_id='$user_id' ORDER BY posts.iid ASC"; @@ -4612,7 +4622,7 @@ function get_thread_user_post(Course $course, $thread_id, $user_id) ON (posts.poster_id=users.id) WHERE posts.c_id = $course_id AND - posts.threadId='$thread_id' + posts.thread_id='$thread_id' AND posts.post_parent_id='".$row['iid']."' ORDER BY posts.iid ASC"; $result2 = Database::query($sql); @@ -4753,7 +4763,7 @@ function get_thread_user_post_limit($courseId, $thread_id, $user_id, $limit = 10 ON posts.poster_id=users.id WHERE posts.c_id = $courseId AND - posts.threadId='".Database::escape_string($thread_id)."' AND + posts.thread_id='".Database::escape_string($thread_id)."' AND posts.poster_id='".Database::escape_string($user_id)."' ORDER BY posts.post_id DESC LIMIT $limit "; $result = Database::query($sql);