示例#1
0
/**
 * @param int $workId
 * @param string $courseCode
 * @param int $sessionId
 * @param int $groupId
 * @param int $start
 * @param int $limit
 * @param int $sidx
 * @param string $sord
 * @param bool $getCount
 * @return array|int
 */
function getWorkUserListData(
    $workId,
    $courseCode,
    $sessionId,
    $groupId,
    $start,
    $limit,
    $sidx,
    $sord,
    $getCount = false
) {
    $my_folder_data = get_work_data_by_id($workId);
    $workParents = array();
    if (empty($my_folder_data)) {
        $workParents = getWorkList($workId, $my_folder_data, null);
    }

    $workIdList = array();
    if (!empty($workParents)) {
        foreach ($workParents as $work) {
            $workIdList[] = $work->id;
        }
    }

    $courseInfo = api_get_course_info($courseCode);

    $userList = getWorkUserList(
        $courseCode,
        $sessionId,
        $groupId,
        $start,
        $limit,
        $sidx,
        $sord,
        $getCount
    );

    if ($getCount) {
        return $userList;
    }
    $results = array();
    if (!empty($userList)) {
        foreach ($userList as $userId) {
            $user = api_get_user_info($userId);
            $link = api_get_path(WEB_CODE_PATH).'work/student_work.php?'.api_get_cidreq().'&studentId='.$user['user_id'];
            $url = Display::url(api_get_person_name($user['firstname'], $user['lastname']), $link);
            $userWorks = 0;
            if (!empty($workIdList)) {
                $userWorks = getUniqueStudentAttempts(
                    $workIdList,
                    $groupId,
                    $courseInfo['real_id'],
                    $sessionId,
                    $user['user_id']
                );
            }
            $works = $userWorks." / ".count($workParents);
            $results[] = array('student' => $url, 'works' => $works);
        }
    }
    return $results;
}
示例#2
0
                 $file_deleted = true;
             }
         }
     }
     if (!$file_deleted) {
         Display::display_error_message(get_lang('YouAreNotAllowedToDeleteThisDocument'));
     }
 }
 /*	Display list of student publications */
 if (!empty($my_folder_data['description'])) {
     echo '<p><div><strong>' . get_lang('Description') . ':</strong><p>' . Security::remove_XSS($my_folder_data['description'], STUDENT) . '</p></div></p>';
 }
 $my_folder_data = get_work_data_by_id($work_id);
 $work_parents = array();
 if (empty($my_folder_data)) {
     $work_parents = getWorkList($work_id, $my_folder_data, $add_query);
 }
 if (api_is_allowed_to_edit()) {
     // Work list
     echo '<div class="row">';
     echo '<div class="span9">';
     if (!empty($group_id)) {
         $userList = GroupManager::get_users($group_id);
     } else {
         if (empty($session_id)) {
             $userList = CourseManager::get_user_list_from_course_code($course_code, $session_id, null, null, STUDENT);
         } else {
             $userList = CourseManager::get_user_list_from_course_code($course_code, $session_id, null, null, 0);
         }
         $userList = array_keys($userList);
     }
示例#3
0
/**
 * @param int $userId
 * @return array
 */
function getWorkPerUser($userId)
{
    $works = getWorkList(null, null, null);
    $result = array();
    if (!empty($works)) {
        foreach ($works as $workData) {
            $workId = $workData->id;
            $result[$workId]['work'] = $workData;
            $result[$workId]['work']->user_results = get_work_user_list(0, 100, null, null, $workId, null, $userId);
        }
    }
    return $result;
}