Code Duplication    Length = 21-27 lines in 2 locations

main/inc/lib/sessionmanager.lib.php 2 locations

@@ 1682-1708 (lines=27) @@
1679
            }
1680
1681
            // Delete existing users
1682
            if ($empty_users) {
1683
                foreach ($existingUsers as $existing_user) {
1684
                    if (!in_array($existing_user, $user_list)) {
1685
                        $sql = "DELETE FROM $tbl_session_rel_course_rel_user
1686
                                WHERE
1687
                                    session_id = $id_session AND
1688
                                    c_id = $courseId AND
1689
                                    user_id = $existing_user AND
1690
                                    status = 0 ";
1691
                        $result = Database::query($sql);
1692
1693
                        Event::addEvent(
1694
                            LOG_SESSION_DELETE_USER_COURSE,
1695
                            LOG_USER_ID,
1696
                            $existing_user,
1697
                            api_get_utc_datetime(),
1698
                            api_get_user_id(),
1699
                            $courseId,
1700
                            $id_session
1701
                        );
1702
1703
                        if (Database::affected_rows($result)) {
1704
                            $nbr_users--;
1705
                        }
1706
                    }
1707
                }
1708
            }
1709
1710
            // Replace with this new function
1711
            // insert new users into session_rel_course_rel_user and ignore if they already exist
@@ 1714-1734 (lines=21) @@
1711
            // insert new users into session_rel_course_rel_user and ignore if they already exist
1712
1713
            foreach ($user_list as $enreg_user) {
1714
                if (!in_array($enreg_user, $existingUsers)) {
1715
                    $enreg_user = Database::escape_string($enreg_user);
1716
                    $sql = "INSERT IGNORE INTO $tbl_session_rel_course_rel_user (session_id, c_id, user_id, visibility, status)
1717
                            VALUES($id_session, $courseId, $enreg_user, $session_visibility, 0)";
1718
                    $result = Database::query($sql);
1719
1720
                    Event::addEvent(
1721
                        LOG_SESSION_ADD_USER_COURSE,
1722
                        LOG_USER_ID,
1723
                        $enreg_user,
1724
                        api_get_utc_datetime(),
1725
                        api_get_user_id(),
1726
                        $courseId,
1727
                        $id_session
1728
                    );
1729
1730
                    if (Database::affected_rows($result)) {
1731
1732
                        $nbr_users++;
1733
                    }
1734
                }
1735
            }
1736
1737
            // Count users in this session-course relation