| @@ 5989-6031 (lines=43) @@ | ||
| 5986 | * @params bool expand or not question list (true show all questions, false show media question id instead of the question ids) |
|
| 5987 | * |
|
| 5988 | **/ |
|
| 5989 | public function transformQuestionListWithMedias($question_list, $expand_media_questions = false) |
|
| 5990 | { |
|
| 5991 | $new_question_list = array(); |
|
| 5992 | if (!empty($question_list)) { |
|
| 5993 | $media_questions = $this->getMediaList(); |
|
| 5994 | ||
| 5995 | $media_active = $this->mediaIsActivated($media_questions); |
|
| 5996 | ||
| 5997 | if ($media_active) { |
|
| 5998 | $counter = 1; |
|
| 5999 | foreach ($question_list as $question_id) { |
|
| 6000 | $add_question = true; |
|
| 6001 | foreach ($media_questions as $media_id => $question_list_in_media) { |
|
| 6002 | if ($media_id != 999 && in_array($question_id, $question_list_in_media)) { |
|
| 6003 | $add_question = false; |
|
| 6004 | if (!in_array($media_id, $new_question_list)) { |
|
| 6005 | $new_question_list[$counter] = $media_id; |
|
| 6006 | $counter++; |
|
| 6007 | } |
|
| 6008 | break; |
|
| 6009 | } |
|
| 6010 | } |
|
| 6011 | if ($add_question) { |
|
| 6012 | $new_question_list[$counter] = $question_id; |
|
| 6013 | $counter++; |
|
| 6014 | } |
|
| 6015 | } |
|
| 6016 | if ($expand_media_questions) { |
|
| 6017 | $media_key_list = array_keys($media_questions); |
|
| 6018 | foreach ($new_question_list as &$question_id) { |
|
| 6019 | if (in_array($question_id, $media_key_list)) { |
|
| 6020 | $question_id = $media_questions[$question_id]; |
|
| 6021 | } |
|
| 6022 | } |
|
| 6023 | $new_question_list = array_flatten($new_question_list); |
|
| 6024 | } |
|
| 6025 | } else { |
|
| 6026 | $new_question_list = $question_list; |
|
| 6027 | } |
|
| 6028 | } |
|
| 6029 | ||
| 6030 | return $new_question_list; |
|
| 6031 | } |
|
| 6032 | ||
| 6033 | function get_validated_question_list() |
|
| 6034 | { |
|
| @@ 6102-6142 (lines=41) @@ | ||
| 6099 | return $question_list; |
|
| 6100 | } |
|
| 6101 | ||
| 6102 | function transform_question_list_with_medias($question_list, $expand_media_questions = false) |
|
| 6103 | { |
|
| 6104 | $new_question_list = array(); |
|
| 6105 | if (!empty($question_list)) { |
|
| 6106 | $media_questions = $this->getMediaList(); |
|
| 6107 | $media_active = $this->mediaIsActivated($media_questions); |
|
| 6108 | ||
| 6109 | if ($media_active) { |
|
| 6110 | $counter = 1; |
|
| 6111 | foreach ($question_list as $question_id) { |
|
| 6112 | $add_question = true; |
|
| 6113 | foreach ($media_questions as $media_id => $question_list_in_media) { |
|
| 6114 | if ($media_id != 999 && in_array($question_id, $question_list_in_media)) { |
|
| 6115 | $add_question = false; |
|
| 6116 | if (!in_array($media_id, $new_question_list)) { |
|
| 6117 | $new_question_list[$counter] = $media_id; |
|
| 6118 | $counter++; |
|
| 6119 | } |
|
| 6120 | break; |
|
| 6121 | } |
|
| 6122 | } |
|
| 6123 | if ($add_question) { |
|
| 6124 | $new_question_list[$counter] = $question_id; |
|
| 6125 | $counter++; |
|
| 6126 | } |
|
| 6127 | } |
|
| 6128 | if ($expand_media_questions) { |
|
| 6129 | $media_key_list = array_keys($media_questions); |
|
| 6130 | foreach ($new_question_list as &$question_id) { |
|
| 6131 | if (in_array($question_id, $media_key_list)) { |
|
| 6132 | $question_id = $media_questions[$question_id]; |
|
| 6133 | } |
|
| 6134 | } |
|
| 6135 | $new_question_list = array_flatten($new_question_list); |
|
| 6136 | } |
|
| 6137 | } else { |
|
| 6138 | $new_question_list = $question_list; |
|
| 6139 | } |
|
| 6140 | } |
|
| 6141 | return $new_question_list; |
|
| 6142 | } |
|
| 6143 | ||
| 6144 | /** |
|
| 6145 | * @param int $exe_id |
|