function JQ_moveQuestionSelect($option, $page, $course_id, $cid, $gqp = '', $page_button = '') { global $JLMS_DB, $Itemid, $JLMS_SESSION, $my; $JLMS_ACL =& JLMSFactory::getACL(); if ($JLMS_ACL->CheckPermissions('quizzes', 'manage') || $page == 'copy_quest_sel' && $JLMS_ACL->CheckPermissions('quizzes', 'manage_pool')) { // only if we can manage quizzes (not only manage_pool) if (!is_array($cid) || count($cid) < 1) { echo "<script> alert('Select an item to move'); window.history.go(-1);</script>\n"; exit; } //------------------------------------------------------------------- $JLMS_ACL =& JLMSFactory::getACL(); $usertype_simple = $JLMS_ACL->_role_type; // $usertype_simple = JLMS_GetUserType_simple($my->id, false, true); //FLMS multicat $levels = array(); $lists = array(); if ($gqp) { /* $query = "SELECT * FROM #__lms_gqp_cats_config ORDER BY id"; $JLMS_DB->setQuery($query); $levels = $JLMS_DB->loadObjectList(); */ if (count($levels) == 0) { for ($i = 0; $i < 15; $i++) { $num = $i + 1; if ($i > 0) { // $levels[$i]->cat_name = _JLMS_COURSES_COURSES_GROUPS; $levels[$i]->cat_name = 'Level #' . $num; } else { // $levels[$i]->cat_name = _JLMS_COURSES_COURSES_GROUPS; $levels[$i]->cat_name = 'Level #' . $num; } } } $level_id = array(); for ($i = 0; $i < count($levels); $i++) { if ($i == 0) { $level_id[$i] = intval(mosGetParam($_REQUEST, 'filter_id_' . $i . '', $JLMS_SESSION->get('GQP_filter_id_' . $i . '', 0))); $JLMS_SESSION->set('GQP_filter_id_' . $i . '', $level_id[$i]); } else { $level_id[$i] = intval(mosGetParam($_REQUEST, 'filter_id_' . $i . '', $JLMS_SESSION->get('GQP_filter_id_' . $i . '', 0))); $JLMS_SESSION->set('GQP_filter_id_' . $i . '', $level_id[$i]); } if ($i == 0) { $parent_id[$i] = 0; } else { $parent_id[$i] = $level_id[$i - 1]; } if ($i == 0 || $parent_id[$i]) { //(Max): extra requests $query = "SELECT count(id) FROM `#__lms_gqp_cats` WHERE parent = '" . $parent_id[$i] . "' ORDER BY c_category"; $JLMS_DB->setQuery($query); $groups = $JLMS_DB->loadResult(); if ($groups == 0) { $level_id[$i] = 0; $JLMS_SESSION->set('GQP_filter_id_' . $i . '', $level_id[$i]); } } } for ($i = 0; $i < count($levels); $i++) { if ($i > 0 && $level_id[$i - 1] == 0) { $level_id[$i] = 0; $JLMS_SESSION->set('GQP_filter_id_' . $i . '', $level_id[$i]); $parent_id[$i] = 0; } elseif ($i == 0 && $level_id[$i] == 0) { $level_id[$i] = 0; $JLMS_SESSION->set('GQP_filter_id_' . $i . '', $level_id[$i]); $parent_id[$i] = 0; } } $javascript = 'onclick="javascript:read_filter();" onchange="javascript:write_filter();document.adminForm.page.value=\'' . $page_button . '\';document.adminForm.submit();"'; $query1 = "SELECT group_id FROM `#__lms_users_in_global_groups` WHERE user_id = '" . $my->id . "'"; $JLMS_DB->setQuery($query1); $user_group_ids = $JLMS_DB->loadResultArray(); for ($i = 0; $i < count($levels); $i++) { if ($i == 0 || $parent_id[$i]) { //(Max): extra requests if ($parent_id[$i] == 0 && $usertype_simple == 1) { //(Max): roletype_id $query = "SELECT * FROM `#__lms_gqp_cats` WHERE `parent` = '0'"; $query .= "\n ORDER BY `c_category`"; } else { $query = "SELECT * FROM `#__lms_gqp_cats` WHERE parent = '" . $parent_id[$i] . "' ORDER BY c_category"; } $JLMS_DB->setQuery($query); $groups = $JLMS_DB->loadObjectList(); if ($parent_id[$i] && $i > 0 && count($groups)) { $type_level[$i][] = mosHTML::makeOption(0, ' '); foreach ($groups as $group) { $type_level[$i][] = mosHTML::makeOption($group->id, $group->c_category); } $lists['filter_' . $i . ''] = mosHTML::selectList($type_level[$i], 'filter_id_' . $i . '', 'class="inputbox" style="width: 266px;" size="1" ' . $javascript, 'value', 'text', $level_id[$i]); //onchange="document.location.href=\''. $link_multi .'\';" } elseif ($i == 0) { $type_level[$i][] = mosHTML::makeOption(0, ' '); foreach ($groups as $group) { $type_level[$i][] = mosHTML::makeOption($group->id, $group->c_category); } $lists['filter_' . $i . ''] = mosHTML::selectList($type_level[$i], 'filter_id_' . $i . '', 'class="inputbox" style="width: 266px;" size="1" ' . $javascript, 'value', 'text', $level_id[$i]); //onchange="document.location.href=\''. $link_multi .'\';" } } } } //------------------------------------------------------------------- $cids = implode(',', $cid); if ($gqp) { /* $query = "SELECT a.*, b.c_qtype as qtype_full, c.c_title as quiz_name, qc.c_category" . "\n FROM #__lms_quiz_t_question a LEFT JOIN #__lms_quiz_t_qtypes b ON b.c_id = a.c_type LEFT JOIN #__lms_quiz_t_quiz c ON a.c_quiz_id = c.c_id AND c.course_id = '".$id."'" . "\n LEFT JOIN #__lms_quiz_t_category as qc ON a.c_qcat = qc.c_id AND qc.course_id = '".$id."' AND qc.is_quiz_cat = 0" . "\n WHERE a.course_id = '".$id."'" $query = "SELECT b.c_category FROM #__lms_gqp_levels AS a, #__lms_gqp_cats AS b WHERE a.quest_id = '".$rows[$i]->c_id."' AND a.cat_id = b.id AND a.level = '".$new_level."'"; */ $query = "SELECT a.c_question, c.c_category as quiz_name" . "\n FROM #__lms_quiz_t_question AS a" . "\n LEFT JOIN #__lms_gqp_cats AS c ON a.c_qcat = c.id" . "\n WHERE a.c_id IN ( {$cids} ) AND a.course_id = 0 AND a.c_quiz_id = 0" . "\n GROUP BY a.c_id"; } else { $query = "SELECT a.c_question, b.c_title as quiz_name" . "\n FROM #__lms_quiz_t_question AS a LEFT JOIN #__lms_quiz_t_quiz AS b ON b.c_id = a.c_quiz_id AND b.course_id = '" . $course_id . "'" . "\n WHERE a.c_id IN ( {$cids} ) AND a.course_id = '" . $course_id . "'" . ($JLMS_ACL->CheckPermissions('quizzes', 'manage') ? '' : " AND a.c_quiz_id = 0 "); } $JLMS_DB->setQuery($query); $items = $JLMS_DB->loadObjectList(); // echo '<pre>'; // print_r($items); // echo '</pre>'; if ($gqp) { /* for($i=0;$i<count($items);$i++) { $query = "SELECT b.c_category FROM #__lms_gqp_levels AS a, #__lms_gqp_cats AS b WHERE a.quest_id = '".$items[$i]->quest_id."' AND a.cat_id = b.id ORDER BY a.level desc LIMIT 1"; $JLMS_DB->setQuery( $query ); $items[$i]->quiz_name = $JLMS_DB->loadResult(); } */ } $quizzes = array(); $quizzes[] = mosHTML::makeOption('0', _JLMS_SB_SELECT_QUIZ); $quizzes[] = mosHTML::makeOption('-1', _JLMS_QUIZ_QUEST_POOL); if ($JLMS_ACL->CheckPermissions('quizzes', 'manage')) { $query = "SELECT a.c_title AS text, a.c_id AS value" . "\n FROM #__lms_quiz_t_quiz AS a" . "\n WHERE course_id = '" . $course_id . "'" . "\n ORDER BY a.c_title"; $JLMS_DB->setQuery($query); $quizzes = array_merge($quizzes, $JLMS_DB->loadObjectList()); } $QuizList = mosHTML::selectList($quizzes, 'quizmove', 'class="inputbox" size="1"', 'value', 'text', 0); JLMS_quiz_admin_html_class::JQ_moveQuest_Select($option, $page, $course_id, $cid, $QuizList, $items, $gqp, $levels, $lists); } else { JLMSRedirect(sefRelToAbs("index.php?option={$option}&Itemid={$Itemid}&task=quizzes&id={$course_id}&page=setup_quest")); } }