Code Duplication    Length = 11-12 lines in 4 locations

main/inc/lib/groupmanager.lib.php 4 locations

@@ 387-398 (lines=12) @@
384
        $group_ids = is_array($group_ids) ? $group_ids : array ($group_ids);
385
        $group_ids = array_map('intval',$group_ids);
386
387
        if (api_is_course_coach()) {
388
            //a coach can only delete courses from his session
389
            for ($i=0 ; $i<count($group_ids) ; $i++) {
390
                if (!api_is_element_in_the_session(TOOL_GROUP,$group_ids[$i])) {
391
                    array_splice($group_ids,$i,1);
392
                    $i--;
393
                }
394
            }
395
            if (count($group_ids) == 0) {
396
                return 0;
397
            }
398
        }
399
400
        // Unsubscribe all users
401
        self::unsubscribe_all_users($group_ids);
@@ 1182-1192 (lines=11) @@
1179
        $group_ids = is_array($group_ids) ? $group_ids : array ($group_ids);
1180
        $group_ids = array_map('intval', $group_ids);
1181
1182
        if (api_is_course_coach()) {
1183
            for ($i=0 ; $i< count($group_ids) ; $i++) {
1184
                if (!api_is_element_in_the_session(TOOL_GROUP, $group_ids[$i])){
1185
                    array_splice($group_ids,$i,1);
1186
                    $i--;
1187
                }
1188
            }
1189
            if (count($group_ids)==0) {
1190
                return false;
1191
            }
1192
        }
1193
1194
        $category = self::get_category_from_group($group_ids[0]);
1195
        $groups_per_user = (isset($category['groups_per_user']) ? $category['groups_per_user'] : self::GROUP_PER_MEMBER_NO_LIMIT);
@@ 1655-1665 (lines=11) @@
1652
        $group_ids = is_array($group_ids) ? $group_ids : array($group_ids);
1653
        $group_ids = array_map('intval', $group_ids);
1654
        if (count($group_ids) > 0) {
1655
            if (api_is_course_coach()) {
1656
                for ($i = 0; $i < count($group_ids); $i++) {
1657
                    if (!api_is_element_in_the_session(TOOL_GROUP, $group_ids[$i])) {
1658
                        array_splice($group_ids, $i, 1);
1659
                        $i--;
1660
                    }
1661
                }
1662
                if (count($group_ids) == 0) {
1663
                    return false;
1664
                }
1665
            }
1666
            $table_group_user = Database :: get_course_table(TABLE_GROUP_USER);
1667
            $sql = 'DELETE FROM '.$table_group_user.'
1668
                    WHERE group_id IN ('.implode(',', $group_ids).') AND c_id = '.$course_id;
@@ 2119-2129 (lines=11) @@
2116
        $group_ids = is_array($group_ids) ? $group_ids : array($group_ids);
2117
        $group_ids = array_map('intval', $group_ids);
2118
2119
        if (api_is_course_coach()) {
2120
            for ($i = 0; $i < count($group_ids); $i++) {
2121
                if (!api_is_element_in_the_session(TOOL_GROUP, $group_ids[$i])) {
2122
                    array_splice($group_ids, $i, 1);
2123
                    $i--;
2124
                }
2125
            }
2126
            if (count($group_ids) == 0) {
2127
                return false;
2128
            }
2129
        }
2130
2131
        $_course = api_get_course_info();
2132