|
|
|
@ -38,6 +38,7 @@ $courseInfo = api_get_course_info(); |
|
|
|
|
$courseId = $courseInfo['real_id']; |
|
|
|
|
$userInfo = api_get_user_info(); |
|
|
|
|
$userId = $userInfo['id']; |
|
|
|
|
$sessionId = api_get_session_id(); |
|
|
|
|
$isDrhOfCourse = CourseManager::isUserSubscribedInCourseAsDrh( |
|
|
|
|
$userId, |
|
|
|
|
$courseInfo |
|
|
|
@ -182,7 +183,7 @@ if ($is_allowedToEdit) { |
|
|
|
|
// we got variable $courseId $courseInfo session api_get_session_id() |
|
|
|
|
$exerciseList = ExerciseLib::get_all_exercises_for_course_id( |
|
|
|
|
$courseInfo, |
|
|
|
|
api_get_session_id(), |
|
|
|
|
$sessionId, |
|
|
|
|
$courseId, |
|
|
|
|
false |
|
|
|
|
); |
|
|
|
@ -231,17 +232,33 @@ if ($is_allowedToEdit) { |
|
|
|
|
break; |
|
|
|
|
case 'enable': |
|
|
|
|
// enables an exercise |
|
|
|
|
$objExerciseTmp->enable(); |
|
|
|
|
$objExerciseTmp->save(); |
|
|
|
|
api_item_property_update($courseInfo, TOOL_QUIZ, $objExerciseTmp->id, 'visible', $userId); |
|
|
|
|
if (empty($sessionId)) { |
|
|
|
|
$objExerciseTmp->enable(); |
|
|
|
|
$objExerciseTmp->save(); |
|
|
|
|
} |
|
|
|
|
api_item_property_update( |
|
|
|
|
$courseInfo, |
|
|
|
|
TOOL_QUIZ, |
|
|
|
|
$objExerciseTmp->id, |
|
|
|
|
'visible', |
|
|
|
|
$userId |
|
|
|
|
); |
|
|
|
|
// "WHAT'S NEW" notification: update table item_property (previously last_tooledit) |
|
|
|
|
Display :: display_confirmation_message(get_lang('VisibilityChanged')); |
|
|
|
|
break; |
|
|
|
|
case 'disable': |
|
|
|
|
// disables an exercise |
|
|
|
|
$objExerciseTmp->disable(); |
|
|
|
|
$objExerciseTmp->save(); |
|
|
|
|
api_item_property_update($courseInfo, TOOL_QUIZ, $objExerciseTmp->id, 'invisible', $userId); |
|
|
|
|
if (empty($sessionId)) { |
|
|
|
|
$objExerciseTmp->disable(); |
|
|
|
|
$objExerciseTmp->save(); |
|
|
|
|
} |
|
|
|
|
api_item_property_update( |
|
|
|
|
$courseInfo, |
|
|
|
|
TOOL_QUIZ, |
|
|
|
|
$objExerciseTmp->id, |
|
|
|
|
'invisible', |
|
|
|
|
$userId |
|
|
|
|
); |
|
|
|
|
Display :: display_confirmation_message(get_lang('VisibilityChanged')); |
|
|
|
|
break; |
|
|
|
|
case 'disable_results': |
|
|
|
@ -586,7 +603,24 @@ if (!empty($exercise_list)) { |
|
|
|
|
); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
$visibility = api_get_item_visibility($courseInfo, TOOL_QUIZ, $my_exercise_id); |
|
|
|
|
$visibility = api_get_item_visibility( |
|
|
|
|
$courseInfo, |
|
|
|
|
TOOL_QUIZ, |
|
|
|
|
$my_exercise_id, |
|
|
|
|
0 |
|
|
|
|
); |
|
|
|
|
|
|
|
|
|
if (!empty($sessionId)) { |
|
|
|
|
if ($visibility == 0) { |
|
|
|
|
continue; |
|
|
|
|
} |
|
|
|
|
$visibility = api_get_item_visibility( |
|
|
|
|
$courseInfo, |
|
|
|
|
TOOL_QUIZ, |
|
|
|
|
$my_exercise_id, |
|
|
|
|
$sessionId |
|
|
|
|
); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
if ($row['active'] == 0 || $visibility == 0) { |
|
|
|
|
$title = Display::tag('font', $cut_title, array('style' => 'color:grey')); |
|
|
|
@ -685,6 +719,26 @@ if (!empty($exercise_list)) { |
|
|
|
|
} else { |
|
|
|
|
// not session |
|
|
|
|
$actions = Display::return_icon('edit_na.png', get_lang('ExerciseEditionNotAvailableInSession')); |
|
|
|
|
|
|
|
|
|
// Check if this exercise was added in a LP |
|
|
|
|
if ($exercise_obj->exercise_was_added_in_lp == true) { |
|
|
|
|
$actions .= Display::return_icon('invisible.png', get_lang('AddedToLPCannotBeAccessed'), '', ICON_SIZE_SMALL); |
|
|
|
|
} else { |
|
|
|
|
|
|
|
|
|
if ($row['active'] == 0 || $visibility == 0) { |
|
|
|
|
$actions .= Display::url( |
|
|
|
|
Display::return_icon('invisible.png', get_lang('Activate'), '', ICON_SIZE_SMALL), |
|
|
|
|
'exercise.php?'.api_get_cidreq().'&choice=enable&sec_token='.$token.'&page='.$page.'&exerciseId='.$row['id'] |
|
|
|
|
); |
|
|
|
|
} else { |
|
|
|
|
// else if not active |
|
|
|
|
$actions .= Display::url( |
|
|
|
|
Display::return_icon('visible.png', get_lang('Deactivate'), '', ICON_SIZE_SMALL), |
|
|
|
|
'exercise.php?'.api_get_cidreq().'&choice=disable&sec_token='.$token.'&page='.$page.'&exerciseId='.$row['id'] |
|
|
|
|
); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
$actions .='<a href="exercise_report.php?'.api_get_cidreq().'&exerciseId='.$row['id'].'">'. |
|
|
|
|
Display :: return_icon('test_results.png', get_lang('Results'), '', ICON_SIZE_SMALL).'</a>'; |
|
|
|
|
$actions .= Display::url(Display::return_icon('cd.gif', get_lang('CopyExercise')), '', array('onclick' => "javascript:if(!confirm('".addslashes(api_htmlentities(get_lang('AreYouSureToCopy'), ENT_QUOTES, $charset))." ".addslashes($row['title'])."?"."')) return false;", 'href' => 'exercise.php?'.api_get_cidreq().'&choice=copy_exercise&sec_token='.$token.'&exerciseId='.$row['id'])); |
|
|
|
@ -743,7 +797,12 @@ if (!empty($exercise_list)) { |
|
|
|
|
$item .= Display::tag('td', $number_of_questions); |
|
|
|
|
} else { |
|
|
|
|
// Student only. |
|
|
|
|
$visibility = api_get_item_visibility($courseInfo, TOOL_QUIZ, $my_exercise_id); |
|
|
|
|
$visibility = api_get_item_visibility( |
|
|
|
|
$courseInfo, |
|
|
|
|
TOOL_QUIZ, |
|
|
|
|
$my_exercise_id, |
|
|
|
|
$sessionId |
|
|
|
|
); |
|
|
|
|
|
|
|
|
|
if ($visibility == 0) { |
|
|
|
|
continue; |
|
|
|
|