Code Duplication    Length = 21-22 lines in 2 locations

main/gradebook/lib/be/category.class.php 2 locations

@@ 1175-1195 (lines=21) @@
1172
        if (!api_is_allowed_to_edit()) {
1173
            $sql .= ' AND visible = 1';
1174
            //proceed with checks on optional parameters course & session
1175
            if (!empty($course_code)) {
1176
                // TODO: considering it highly improbable that a user would get here
1177
                // if he doesn't have the rights to view this course and this
1178
                // session, we don't check his registration to these, but this
1179
                // could be an improvement
1180
                if (!empty($session_id)) {
1181
                    $sql .= " AND course_code = '".Database::escape_string($course_code)."' AND session_id = ".(int)$session_id;
1182
                } else {
1183
                    $sql .= " AND course_code = '".Database::escape_string($course_code)."' AND session_id is null OR session_id=0";
1184
                }
1185
            } else {
1186
                //no optional parameter, proceed as usual
1187
                $sql .= ' AND course_code in
1188
                     (
1189
                        SELECT c.code
1190
                        FROM '.$main_course_user_table.' cu INNER JOIN '.$courseTable.' c
1191
                        ON (cu.c_id = c.id)
1192
                        WHERE cu.user_id = '.intval($stud_id).'
1193
                        AND cu.status = '.STUDENT.'
1194
                    )';
1195
            }
1196
        } elseif (api_is_allowed_to_edit() && !api_is_platform_admin()) {
1197
            //proceed with checks on optional parameters course & session
1198
            if (!empty($course_code)) {
@@ 1198-1219 (lines=22) @@
1195
            }
1196
        } elseif (api_is_allowed_to_edit() && !api_is_platform_admin()) {
1197
            //proceed with checks on optional parameters course & session
1198
            if (!empty($course_code)) {
1199
                // TODO: considering it highly improbable that a user would get here
1200
                // if he doesn't have the rights to view this course and this
1201
                // session, we don't check his registration to these, but this
1202
                // could be an improvement
1203
                $sql .= " AND course_code  = '".Database::escape_string($course_code)."'";
1204
                if (!empty($session_id)) {
1205
                    $sql .= " AND session_id = ".(int)$session_id;
1206
                } else {
1207
                    $sql .="AND session_id IS NULL OR session_id=0";
1208
                }
1209
            } else {
1210
                $sql .= ' AND course_code IN
1211
                     (
1212
                        SELECT c.code
1213
                        FROM '.$main_course_user_table.' cu INNER JOIN '.$courseTable.' c
1214
                        ON (cu.c_id = c.id)
1215
                        WHERE
1216
                            cu.user_id = '.api_get_user_id().' AND
1217
                            cu.status = '.COURSEMANAGER.'
1218
                    )';
1219
            }
1220
        }elseif (api_is_platform_admin()) {
1221
            if (isset($session_id) && $session_id!=0) {
1222
                $sql.=' AND session_id='.intval($session_id);