Skip to content

Commit

Permalink
fix(*): show only those query which is available corresponding to the…
Browse files Browse the repository at this point in the history
… category
  • Loading branch information
Ayush8923 committed Aug 29, 2024
1 parent f492e09 commit f4fdde6
Show file tree
Hide file tree
Showing 2 changed files with 15 additions and 8 deletions.
17 changes: 12 additions & 5 deletions classes/model/survey.php
Original file line number Diff line number Diff line change
Expand Up @@ -71,6 +71,13 @@ public static function get_all_question_categories() {
return $DB->get_records('cc_categories', array('type' => 'question'));
}

public static function get_question_categories_by_survey_id($surveyid) {
global $DB;
$sql = "SELECT ca.* FROM {cc_survey_questions} sq LEFT JOIN {cc_categories} ca ON ca.id = sq.question_category_id WHERE sq.survey_id = :surveyid GROUP BY ca.id;";
$params = ['surveyid' => $surveyid];
return $DB->get_records_sql($sql, $params);
}

public static function get_active_survey_count() {
global $DB;
if (is_sel_admin()) {
Expand Down Expand Up @@ -434,11 +441,11 @@ public static function get_live_surveys_with_interpretations($categoryid, $rolen
sr.submitted_by,
s.id AS survey_id
FROM
mdl_cc_surveys s
LEFT JOIN mdl_cc_survey_responses sr ON sr.survey_id = s.id
LEFT JOIN mdl_user u ON sr.submitted_by = u.id
LEFT JOIN mdl_role_assignments ra ON ra.userid = u.id
LEFT JOIN mdl_role r ON ra.roleid = r.id
{cc_surveys} s
LEFT JOIN {cc_survey_responses} sr ON sr.survey_id = s.id
LEFT JOIN {user} u ON sr.submitted_by = u.id
LEFT JOIN {role_assignments} ra ON ra.userid = u.id
LEFT JOIN {role} r ON ra.roleid = r.id
WHERE
s.category_id = :categoryid
AND s.status = :status
Expand Down
6 changes: 3 additions & 3 deletions fill_survey/survey_analysis.php
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
$survey = $surveydbhelper->get_survey_by_id($id);

$statusoptions = get_string('surveyinsighttypes', 'local_moodle_survey');
$questioncategories = get_question_categories($surveydbhelper);
$questioncategories = get_question_categories($surveydbhelper, $id);
$currentinsighttype = optional_param('insighttype', 'teacher', PARAM_ALPHA);
$questioncategory = optional_param('category', array_key_first($questioncategories), PARAM_ALPHANUMEXT);
$interpretationdata = $surveydbhelper->get_interpretations_data_by_survey_id_and_question_category_id($id, $currentinsighttype);
Expand Down Expand Up @@ -166,8 +166,8 @@ function get_question_category_filter($url, $id, $questioncategories, $questionc
return $html;
}

function get_question_categories($surveydbhelper) {
$questioncategories = $surveydbhelper->get_all_question_categories();
function get_question_categories($surveydbhelper, $id) {
$questioncategories = $surveydbhelper->get_question_categories_by_survey_id($id);
$categories = [];
foreach ($questioncategories as $category) {
$categories[$category->slug] = $category->label;
Expand Down

0 comments on commit f4fdde6

Please sign in to comment.