Code Duplication    Length = 41-43 lines in 2 locations

main/exercise/exercise.class.php 2 locations

@@ 6083-6125 (lines=43) @@
6080
     * @params bool expand or not question list (true show all questions, false show media question id instead of the question ids)
6081
     *
6082
     **/
6083
    public function transformQuestionListWithMedias($question_list, $expand_media_questions = false)
6084
    {
6085
        $new_question_list = array();
6086
        if (!empty($question_list)) {
6087
            $media_questions = $this->getMediaList();
6088
6089
            $media_active = $this->mediaIsActivated($media_questions);
6090
6091
            if ($media_active) {
6092
                $counter = 1;
6093
                foreach ($question_list as $question_id) {
6094
                    $add_question = true;
6095
                    foreach ($media_questions as $media_id => $question_list_in_media) {
6096
                        if ($media_id != 999 && in_array($question_id, $question_list_in_media)) {
6097
                            $add_question = false;
6098
                            if (!in_array($media_id, $new_question_list)) {
6099
                                $new_question_list[$counter] = $media_id;
6100
                                $counter++;
6101
                            }
6102
                            break;
6103
                        }
6104
                    }
6105
                    if ($add_question) {
6106
                        $new_question_list[$counter] = $question_id;
6107
                        $counter++;
6108
                    }
6109
                }
6110
                if ($expand_media_questions) {
6111
                    $media_key_list = array_keys($media_questions);
6112
                    foreach ($new_question_list as &$question_id) {
6113
                        if (in_array($question_id, $media_key_list)) {
6114
                            $question_id = $media_questions[$question_id];
6115
                        }
6116
                    }
6117
                    $new_question_list = array_flatten($new_question_list);
6118
                }
6119
            } else {
6120
                $new_question_list = $question_list;
6121
            }
6122
        }
6123
6124
        return $new_question_list;
6125
    }
6126
6127
    function get_validated_question_list()
6128
    {
@@ 6197-6237 (lines=41) @@
6194
        return $question_list;
6195
    }
6196
6197
    function transform_question_list_with_medias($question_list, $expand_media_questions = false)
6198
    {
6199
        $new_question_list = array();
6200
        if (!empty($question_list)) {
6201
            $media_questions = $this->getMediaList();
6202
            $media_active = $this->mediaIsActivated($media_questions);
6203
6204
            if ($media_active) {
6205
                $counter = 1;
6206
                foreach ($question_list as $question_id) {
6207
                    $add_question = true;
6208
                    foreach ($media_questions as $media_id => $question_list_in_media) {
6209
                        if ($media_id != 999 && in_array($question_id, $question_list_in_media)) {
6210
                            $add_question = false;
6211
                            if (!in_array($media_id, $new_question_list)) {
6212
                                $new_question_list[$counter] = $media_id;
6213
                                $counter++;
6214
                            }
6215
                            break;
6216
                        }
6217
                    }
6218
                    if ($add_question) {
6219
                        $new_question_list[$counter] = $question_id;
6220
                        $counter++;
6221
                    }
6222
                }
6223
                if ($expand_media_questions) {
6224
                    $media_key_list = array_keys($media_questions);
6225
                    foreach ($new_question_list as &$question_id) {
6226
                        if (in_array($question_id, $media_key_list)) {
6227
                            $question_id = $media_questions[$question_id];
6228
                        }
6229
                    }
6230
                    $new_question_list = array_flatten($new_question_list);
6231
                }
6232
            } else {
6233
                $new_question_list = $question_list;
6234
            }
6235
        }
6236
        return $new_question_list;
6237
    }
6238
6239
    /**
6240
     * @param int $exe_id