Code Duplication    Length = 41-43 lines in 2 locations

main/exercice/exercise.class.php 2 locations

@@ 5937-5979 (lines=43) @@
5934
     * @params bool expand or not question list (true show all questions, false show media question id instead of the question ids)
5935
     *
5936
     **/
5937
    public function transformQuestionListWithMedias($question_list, $expand_media_questions = false)
5938
    {
5939
        $new_question_list = array();
5940
        if (!empty($question_list)) {
5941
            $media_questions = $this->getMediaList();
5942
5943
            $media_active = $this->mediaIsActivated($media_questions);
5944
5945
            if ($media_active) {
5946
                $counter = 1;
5947
                foreach ($question_list as $question_id) {
5948
                    $add_question = true;
5949
                    foreach ($media_questions as $media_id => $question_list_in_media) {
5950
                        if ($media_id != 999 && in_array($question_id, $question_list_in_media)) {
5951
                            $add_question = false;
5952
                            if (!in_array($media_id, $new_question_list)) {
5953
                                $new_question_list[$counter] = $media_id;
5954
                                $counter++;
5955
                            }
5956
                            break;
5957
                        }
5958
                    }
5959
                    if ($add_question) {
5960
                        $new_question_list[$counter] = $question_id;
5961
                        $counter++;
5962
                    }
5963
                }
5964
                if ($expand_media_questions) {
5965
                    $media_key_list = array_keys($media_questions);
5966
                    foreach ($new_question_list as &$question_id) {
5967
                        if (in_array($question_id, $media_key_list)) {
5968
                            $question_id = $media_questions[$question_id];
5969
                        }
5970
                    }
5971
                    $new_question_list = array_flatten($new_question_list);
5972
                }
5973
            } else {
5974
                $new_question_list = $question_list;
5975
            }
5976
        }
5977
5978
        return $new_question_list;
5979
    }
5980
5981
    function get_validated_question_list()
5982
    {
@@ 6050-6090 (lines=41) @@
6047
        return $question_list;
6048
    }
6049
6050
    function transform_question_list_with_medias($question_list, $expand_media_questions = false)
6051
    {
6052
        $new_question_list = array();
6053
        if (!empty($question_list)) {
6054
            $media_questions = $this->getMediaList();
6055
            $media_active = $this->mediaIsActivated($media_questions);
6056
6057
            if ($media_active) {
6058
                $counter = 1;
6059
                foreach ($question_list as $question_id) {
6060
                    $add_question = true;
6061
                    foreach ($media_questions as $media_id => $question_list_in_media) {
6062
                        if ($media_id != 999 && in_array($question_id, $question_list_in_media)) {
6063
                            $add_question = false;
6064
                            if (!in_array($media_id, $new_question_list)) {
6065
                                $new_question_list[$counter] = $media_id;
6066
                                $counter++;
6067
                            }
6068
                            break;
6069
                        }
6070
                    }
6071
                    if ($add_question) {
6072
                        $new_question_list[$counter] = $question_id;
6073
                        $counter++;
6074
                    }
6075
                }
6076
                if ($expand_media_questions) {
6077
                    $media_key_list = array_keys($media_questions);
6078
                    foreach ($new_question_list as &$question_id) {
6079
                        if (in_array($question_id, $media_key_list)) {
6080
                            $question_id = $media_questions[$question_id];
6081
                        }
6082
                    }
6083
                    $new_question_list = array_flatten($new_question_list);
6084
                }
6085
            } else {
6086
                $new_question_list = $question_list;
6087
            }
6088
        }
6089
        return $new_question_list;
6090
    }
6091
6092
    /**
6093
     * @param int $exe_id