function JLMS_viewHWResult($option) { global $my, $JLMS_DB, $Itemid, $JLMS_CONFIG; $course_id = intval(mosGetParam($_REQUEST, 'course_id', 0)); $user_id = intval(mosGetParam($_REQUEST, 'user_id', 0)); $hw_id = intval(mosGetParam($_REQUEST, 'hw_id', 0)); $JLMS_ACL =& JLMSFactory::getACL(); if ($JLMS_ACL->CheckPermissions('homework', 'manage') && ($hw_id && JLMS_GetHWCourse($hw_id) == $course_id)) { $query = "SELECT * \n\t\t\t\t\tFROM #__lms_homework_results \n\t\t\t\t\tWHERE hw_id = '" . $hw_id . "' AND user_id = '" . $user_id . "' AND course_id = '" . $course_id . "'"; $JLMS_DB->setQuery($query); $row = $JLMS_DB->LoadObject(); if (is_object($row)) { $hw = new mos_Joomla_LMS_HomeWork($JLMS_DB); $hw->load($row->hw_id); $row->hw = $hw; if ($JLMS_CONFIG->get('use_global_groups', 1)) { $user_group_ids = JLMS_ACL_HELPER::GetUserGlobalGroup($row->user_id, $row->course_id); } else { $user_group_ids = JLMS_ACL_HELPER::GetUserGroup($row->user_id, $row->course_id); } if ($JLMS_ACL->CheckPermissions('advanced', 'assigned_groups_only')) { $assigned_group_ids = JLMS_ACL_HELPER::GetAssignedGroups($row->user_id, $row->course_id); $user_group_ids = array_intersect($user_group_ids, $assigned_group_ids); } $user = JUser::getInstance($user_id); $user->group = ''; if (isset($user_group_ids[0])) { $query = "SELECT ug_name FROM #__lms_usergroups WHERE id IN (" . implode(',', $user_group_ids) . ")"; $JLMS_DB->setQuery($query); $user_groups = $JLMS_DB->loadResultArray(); if (isset($user_groups[0])) { $user->group = implode(', ', $user_groups); } } $row->user = $user; $row->file = false; switch ($hw->activity_type) { case _ACTIVITY_TYPE_UPLOAD: $query = "SELECT * FROM #__lms_files WHERE id = " . $row->file_id; $JLMS_DB->setQuery($query); $file = $JLMS_DB->loadObject(); if (is_object($file)) { $base_path = str_replace('\\', '/', JPATH_BASE); $doc_path = str_replace('\\', '/', _JOOMLMS_DOC_FOLDER); $doc_folder = str_replace($base_path, '', $doc_path); $doc_folder = ltrim($doc_folder, '/'); $file->path = JURI::root() . $doc_folder . $file->file_srv_name; $row->file = $file; } break; } if ($hw->graded_activity) { $query = "SELECT scale_name AS value, scale_name AS text \n\t\t\t\t\t\tFROM #__lms_gradebook_scale \n\t\t\t\t\t\tWHERE course_id = " . $row->course_id . "\n\t\t\t\t\t\tORDER BY ordering"; $JLMS_DB->setQuery($query); $grade_list = $JLMS_DB->loadObjectList(); if (isset($grade_list[0])) { $grade_list = array_merge(array(mosHTML::makeOption('not_selected', ' ')), $grade_list); } else { $grade_list[] = mosHTML::makeOption('not_selected', ' '); } $grade_list[] = mosHTML::makeOption(_STATUS_INCOMPLETE, _JLMS_HW_STATUS_INCOMPLETE); } else { $grade_list[] = mosHTML::makeOption(_STATUS_NOT_SELECT, ' '); $grade_list[] = mosHTML::makeOption(_STATUS_NOT_PASSED, _JLMS_HW_STATUS_NOT_PASSED); $grade_list[] = mosHTML::makeOption(_STATUS_PASSED, _JLMS_HW_STATUS_PASSED); $grade_list[] = mosHTML::makeOption(_STATUS_INCOMPLETE, _JLMS_HW_STATUS_INCOMPLETE); } if (!$row->grade) { $row->grade = _STATUS_NOT_SELECT; } $lists['grade'] = mosHTML::selectList($grade_list, 'grade', 'class="inputbox" size="1"', 'value', 'text', $row->grade); JLMS_homework_html::viewHWResult($row, $option, $lists); } else { JLMSRedirect(sefRelToAbs("index.php?option={$option}&Itemid={$Itemid}&task=homework&id={$course_id}")); } } else { JLMSRedirect(sefRelToAbs("index.php?option={$option}&Itemid={$Itemid}&task=homework&id={$course_id}")); } }