MDL-68143 Workshop: should remember collapsed/expanded sections

This commit is contained in:
Huong Nguyen 2020-03-30 12:15:56 +07:00
parent 9df4a4de18
commit 8b52ca84ab
10 changed files with 164 additions and 37 deletions

View File

@ -166,7 +166,8 @@ echo $output->render($workshop->prepare_submission($submission, has_capability('
if (trim($workshop->instructreviewers)) {
$instructions = file_rewrite_pluginfile_urls($workshop->instructreviewers, 'pluginfile.php', $PAGE->context->id,
'mod_workshop', 'instructreviewers', null, workshop::instruction_editors_options($PAGE->context));
print_collapsible_region_start('', 'workshop-viewlet-instructreviewers', get_string('instructreviewers', 'workshop'));
print_collapsible_region_start('', 'workshop-viewlet-instructreviewers', get_string('instructreviewers', 'workshop'),
'workshop-viewlet-instructreviewers-collapsed');
echo $output->box(format_text($instructions, $workshop->instructreviewersformat, array('overflowdiv'=>true)), array('generalbox', 'instructions'));
print_collapsible_region_end();
}

View File

@ -110,7 +110,15 @@ class provider implements
$collection->add_subsystem_link('core_files', [], 'privacy:metadata:subsystem:corefiles');
$collection->add_subsystem_link('core_plagiarism', [], 'privacy:metadata:subsystem:coreplagiarism');
$collection->add_user_preference('workshop_perpage', 'privacy:metadata:preference:perpage');
$userprefs = self::get_user_prefs();
foreach ($userprefs as $userpref) {
if ($userpref === 'workshop_perpage') {
$collection->add_user_preference('workshop_perpage', 'privacy:metadata:preference:perpage');
} else {
$summary = str_replace('workshop-', '', $userpref);
$collection->add_user_preference($userpref, "privacy:metadata:preference:$summary");
}
}
return $collection;
}
@ -259,12 +267,22 @@ class provider implements
* @param int $userid ID of the user we are exporting data for
*/
public static function export_user_preferences(int $userid) {
$perpage = get_user_preferences('workshop_perpage', null, $userid);
if ($perpage !== null) {
writer::export_user_preference('mod_workshop', 'workshop_perpage', $perpage,
get_string('privacy:metadata:preference:perpage', 'mod_workshop'));
$userprefs = self::get_user_prefs();
$expandstr = get_string('expand');
$collapsestr = get_string('collapse');
foreach ($userprefs as $userpref) {
$userprefval = get_user_preferences($userpref, null, $userid);
if ($userprefval !== null) {
$langid = str_replace('workshop-', '', $userpref);
$description = get_string("privacy:metadata:preference:$langid", 'mod_workshop');
if ($userpref === 'workshop_perpage') {
writer::export_user_preference('mod_workshop', $userpref, $userprefval,
get_string('privacy:metadata:preference:perpage', 'mod_workshop'));
} else {
writer::export_user_preference('mod_workshop', $userpref,
$userprefval == 1 ? $collapsestr : $expandstr, $description);
}
}
}
}
@ -837,4 +855,31 @@ class provider implements
\core_plagiarism\privacy\provider::delete_plagiarism_for_user($userid, $context);
}
}
/**
* Get the user preferences.
*
* @return array List of user preferences
*/
protected static function get_user_prefs(): array {
return [
'workshop_perpage',
'workshop-viewlet-allexamples-collapsed',
'workshop-viewlet-allsubmissions-collapsed',
'workshop-viewlet-assessmentform-collapsed',
'workshop-viewlet-assignedassessments-collapsed',
'workshop-viewlet-cleargrades-collapsed',
'workshop-viewlet-conclusion-collapsed',
'workshop-viewlet-examples-collapsed',
'workshop-viewlet-examplesfail-collapsed',
'workshop-viewlet-gradereport-collapsed',
'workshop-viewlet-instructauthors-collapsed',
'workshop-viewlet-instructreviewers-collapsed',
'workshop-viewlet-intro-collapsed',
'workshop-viewlet-overallfeedback-collapsed',
'workshop-viewlet-ownsubmission-collapsed',
'workshop-viewlet-publicsubmissions-collapsed',
'workshop-viewlet-yourgrades-collapsed'
];
}
}

View File

@ -144,7 +144,8 @@ echo $output->render($workshop->prepare_example_submission(($example)));
if (trim($workshop->instructreviewers)) {
$instructions = file_rewrite_pluginfile_urls($workshop->instructreviewers, 'pluginfile.php', $PAGE->context->id,
'mod_workshop', 'instructreviewers', null, workshop::instruction_editors_options($PAGE->context));
print_collapsible_region_start('', 'workshop-viewlet-instructreviewers', get_string('instructreviewers', 'workshop'));
print_collapsible_region_start('', 'workshop-viewlet-instructreviewers', get_string('instructreviewers', 'workshop'),
'workshop-viewlet-instructreviewers-collapsed');
echo $output->box(format_text($instructions, $workshop->instructreviewersformat, array('overflowdiv'=>true)), array('generalbox', 'instructions'));
print_collapsible_region_end();
}

View File

@ -180,7 +180,8 @@ echo $output->heading(format_string($workshop->name), 2);
if (trim($workshop->instructauthors)) {
$instructions = file_rewrite_pluginfile_urls($workshop->instructauthors, 'pluginfile.php', $PAGE->context->id,
'mod_workshop', 'instructauthors', null, workshop::instruction_editors_options($PAGE->context));
print_collapsible_region_start('', 'workshop-viewlet-instructauthors', get_string('instructauthors', 'workshop'));
print_collapsible_region_start('', 'workshop-viewlet-instructauthors', get_string('instructauthors', 'workshop'),
'workshop-viewlet-instructauthors-collapsed');
echo $output->box(format_text($instructions, $workshop->instructauthorsformat, array('overflowdiv'=>true)), array('generalbox', 'instructions'));
print_collapsible_region_end();
}

View File

@ -263,6 +263,22 @@ $string['privacy:metadata:feedbackreviewerformat'] = 'Text format of the feedbac
$string['privacy:metadata:late'] = 'Whether the submission been submitted after the deadline';
$string['privacy:metadata:peercomment'] = 'Comment on the given grade by the user providing the assessment';
$string['privacy:metadata:peercommentformat'] = 'Text format of the comment on the given grade';
$string['privacy:metadata:preference:viewlet-allexamples-collapsed'] = 'The collapsed/expanded state for the \'Example submissions\' viewlet.';
$string['privacy:metadata:preference:viewlet-allsubmissions-collapsed'] = 'The collapsed/expanded state for the \'Workshop submissions report\' viewlet.';
$string['privacy:metadata:preference:viewlet-assessmentform-collapsed'] = 'The collapsed/expanded state for the \'Assessment form\' viewlet.';
$string['privacy:metadata:preference:viewlet-assignedassessments-collapsed'] = 'The collapsed/expanded state for the \'Assigned submissions to assess\' viewlet.';
$string['privacy:metadata:preference:viewlet-cleargrades-collapsed'] = 'The collapsed/expanded state for the \'Workshop toolbox\' viewlet.';
$string['privacy:metadata:preference:viewlet-conclusion-collapsed'] = 'The collapsed/expanded state for the \'Conclusion\' viewlet.';
$string['privacy:metadata:preference:viewlet-examples-collapsed'] = 'The collapsed/expanded state for the \'Example submissions to assess\' viewlet.';
$string['privacy:metadata:preference:viewlet-examplesfail-collapsed'] = 'The collapsed/expanded state for the \'Example submissions to assess\' viewlet.';
$string['privacy:metadata:preference:viewlet-gradereport-collapsed'] = 'The collapsed/expanded state for the \'Workshop grades report\' viewlet.';
$string['privacy:metadata:preference:viewlet-instructauthors-collapsed'] = 'The collapsed/expanded state for the \'Instructions for submission\' viewlet.';
$string['privacy:metadata:preference:viewlet-instructreviewers-collapsed'] = 'The collapsed/expanded state for the \'Instructions for assessment\' viewlet.';
$string['privacy:metadata:preference:viewlet-intro-collapsed'] = 'The collapsed/expanded state for the \'Intro\' viewlet.';
$string['privacy:metadata:preference:viewlet-overallfeedback-collapsed'] = 'The collapsed/expanded state for the \'Overall feedback\' viewlet.';
$string['privacy:metadata:preference:viewlet-ownsubmission-collapsed'] = 'The collapsed/expanded state for the \'Your submission\' viewlet.';
$string['privacy:metadata:preference:viewlet-publicsubmissions-collapsed'] = 'The collapsed/expanded state for the \'Published submissions\' viewlet.';
$string['privacy:metadata:preference:viewlet-yourgrades-collapsed'] = 'The collapsed/expanded state for the \'Your grades\' viewlet.';
$string['privacy:metadata:preference:perpage'] = 'Number of submissions the user prefers to see on one page';
$string['privacy:metadata:published'] = 'Whether the submission should be published to all participants once the workshop is closed';
$string['privacy:metadata:reviewerid'] = 'ID of the user providing the assessment';

View File

@ -692,7 +692,7 @@ class mod_workshop_renderer extends plugin_renderer_base {
if (!is_null($assessment->form)) {
$o .= print_collapsible_region_start('assessment-form-wrapper', uniqid('workshop-assessment'),
get_string('assessmentform', 'workshop'), '', false, true);
get_string('assessmentform', 'workshop'), 'workshop-viewlet-assessmentform-collapsed', false, true);
$o .= $this->output->container(self::moodleform($assessment->form), 'assessment-form');
$o .= print_collapsible_region_end(true);
@ -782,7 +782,7 @@ class mod_workshop_renderer extends plugin_renderer_base {
$o = $this->output->box($o, 'overallfeedback');
$o = print_collapsible_region($o, 'overall-feedback-wrapper', uniqid('workshop-overall-feedback'),
get_string('overallfeedback', 'workshop'), '', false, true);
get_string('overallfeedback', 'workshop'), 'workshop-viewlet-overallfeedback-collapsed', false, true);
return $o;
}

View File

@ -193,7 +193,8 @@ echo $output->heading(get_string('mysubmission', 'workshop'), 3);
if (trim($workshop->instructauthors)) {
$instructions = file_rewrite_pluginfile_urls($workshop->instructauthors, 'pluginfile.php', $PAGE->context->id,
'mod_workshop', 'instructauthors', null, workshop::instruction_editors_options($PAGE->context));
print_collapsible_region_start('', 'workshop-viewlet-instructauthors', get_string('instructauthors', 'workshop'));
print_collapsible_region_start('', 'workshop-viewlet-instructauthors', get_string('instructauthors', 'workshop'),
'workshop-viewlet-instructauthors-collapsed');
echo $output->box(format_text($instructions, $workshop->instructauthorsformat, array('overflowdiv'=>true)), array('generalbox', 'instructions'));
print_collapsible_region_end();
}

View File

@ -0,0 +1,39 @@
@mod @mod_workshop
Feature: Workshop should remember collapsed/expanded sections in view page.
In order to keep the last state of collapsed/expanded sections in view page
As an user
I need to be able to choose collapsed/expanded, and after refresh the page it will display collapsed/expanded I chose before.
Background:
Given the following "users" exist:
| username | firstname | lastname | email |
| teacher1 | Teacher | 1 | teacher1@example.com |
| student1 | Student | 1 | student1@example.com |
And the following "courses" exist:
| fullname | shortname |
| Course1 | c1 |
And the following "course enrolments" exist:
| user | course | role |
| teacher1 | c1 | editingteacher |
| student1 | c1 | student |
And the following "activities" exist:
| activity | name | intro | course | idnumber |
| workshop | Workshop 1 | Workshop 1 description | c1 | workshop1 |
@javascript
Scenario: Check section in view page can be remembered.
Given I log in as "teacher1"
And I am on "Course1" course homepage
And I follow "Workshop 1"
When I change phase in workshop "Workshop 1" to "Submission phase"
And I wait until the page is ready
And I log out
And I log in as "student1"
And I am on "Course1" course homepage
And I follow "Workshop 1"
Then I should see "You have not submitted your work yet"
And I click on "Your submission" "link"
And I should not see "You have not submitted your work yet"
And I reload the page
And I wait until the page is ready
And I should not see "You have not submitted your work yet"

View File

@ -24,6 +24,6 @@
defined('MOODLE_INTERNAL') || die();
$plugin->version = 2019111800; // The current module version (YYYYMMDDXX)
$plugin->version = 2020032900; // The current module version (YYYYMMDDXX)
$plugin->requires = 2019111200; // Requires this Moodle version.
$plugin->component = 'mod_workshop';

View File

@ -109,12 +109,14 @@ echo $output->render($userplan);
switch ($workshop->phase) {
case workshop::PHASE_SETUP:
if (trim($workshop->intro)) {
print_collapsible_region_start('', 'workshop-viewlet-intro', get_string('introduction', 'workshop'));
print_collapsible_region_start('', 'workshop-viewlet-intro', get_string('introduction', 'workshop'),
'workshop-viewlet-intro-collapsed');
echo $output->box(format_module_intro('workshop', $workshop, $workshop->cm->id), 'generalbox');
print_collapsible_region_end();
}
if ($workshop->useexamples and has_capability('mod/workshop:manageexamples', $PAGE->context)) {
print_collapsible_region_start('', 'workshop-viewlet-allexamples', get_string('examplesubmissions', 'workshop'));
print_collapsible_region_start('', 'workshop-viewlet-allexamples', get_string('examplesubmissions', 'workshop'),
'workshop-viewlet-allexamples-collapsed');
echo $output->box_start('generalbox examples');
if ($workshop->grading_strategy_instance()->form_ready()) {
if (! $examples = $workshop->get_examples_for_manager()) {
@ -138,7 +140,8 @@ case workshop::PHASE_SUBMISSION:
if (trim($workshop->instructauthors)) {
$instructions = file_rewrite_pluginfile_urls($workshop->instructauthors, 'pluginfile.php', $PAGE->context->id,
'mod_workshop', 'instructauthors', null, workshop::instruction_editors_options($PAGE->context));
print_collapsible_region_start('', 'workshop-viewlet-instructauthors', get_string('instructauthors', 'workshop'));
print_collapsible_region_start('', 'workshop-viewlet-instructauthors', get_string('instructauthors', 'workshop'),
'workshop-viewlet-instructauthors-collapsed');
echo $output->box(format_text($instructions, $workshop->instructauthorsformat, array('overflowdiv'=>true)), array('generalbox', 'instructions'));
print_collapsible_region_end();
}
@ -168,7 +171,8 @@ case workshop::PHASE_SUBMISSION:
} else {
$examplesdone = true;
}
print_collapsible_region_start('', 'workshop-viewlet-examples', get_string('exampleassessments', 'workshop'), false, $examplesdone);
print_collapsible_region_start('', 'workshop-viewlet-examples', get_string('exampleassessments', 'workshop'),
'workshop-viewlet-examples-collapsed', $examplesdone);
echo $output->box_start('generalbox exampleassessments');
if ($total == 0) {
echo $output->heading(get_string('noexamples', 'workshop'), 3);
@ -183,7 +187,8 @@ case workshop::PHASE_SUBMISSION:
}
if (has_capability('mod/workshop:submit', $PAGE->context) and (!$examplesmust or $examplesdone)) {
print_collapsible_region_start('', 'workshop-viewlet-ownsubmission', get_string('yoursubmission', 'workshop'));
print_collapsible_region_start('', 'workshop-viewlet-ownsubmission', get_string('yoursubmission', 'workshop'),
'workshop-viewlet-ownsubmission-collapsed');
echo $output->box_start('generalbox ownsubmission');
if ($submission = $workshop->get_submission_by_author($USER->id)) {
echo $output->render($workshop->prepare_submission_summary($submission, true));
@ -221,7 +226,8 @@ case workshop::PHASE_SUBMISSION:
}
}
print_collapsible_region_start('', 'workshop-viewlet-allsubmissions', get_string('submissionsreport', 'workshop'));
print_collapsible_region_start('', 'workshop-viewlet-allsubmissions', get_string('submissionsreport', 'workshop'),
'workshop-viewlet-allsubmissions-collapsed');
$perpage = get_user_preferences('workshop_perpage', 10);
$data = $workshop->prepare_grading_report_data($USER->id, $groupid, $page, $perpage, $sortby, $sorthow);
@ -266,12 +272,14 @@ case workshop::PHASE_ASSESSMENT:
$ownsubmissionexists = null;
if (has_capability('mod/workshop:submit', $PAGE->context)) {
if ($ownsubmission = $workshop->get_submission_by_author($USER->id)) {
print_collapsible_region_start('', 'workshop-viewlet-ownsubmission', get_string('yoursubmission', 'workshop'), false, true);
print_collapsible_region_start('', 'workshop-viewlet-ownsubmission', get_string('yoursubmission', 'workshop'),
'workshop-viewlet-ownsubmission-collapsed', true);
echo $output->box_start('generalbox ownsubmission');
echo $output->render($workshop->prepare_submission_summary($ownsubmission, true));
$ownsubmissionexists = true;
} else {
print_collapsible_region_start('', 'workshop-viewlet-ownsubmission', get_string('yoursubmission', 'workshop'));
print_collapsible_region_start('', 'workshop-viewlet-ownsubmission', get_string('yoursubmission', 'workshop'),
'workshop-viewlet-ownsubmission-collapsed');
echo $output->box_start('generalbox ownsubmission');
echo $output->container(get_string('noyoursubmission', 'workshop'));
$ownsubmissionexists = false;
@ -309,7 +317,8 @@ case workshop::PHASE_ASSESSMENT:
$reportopts->showgradinggrade = false;
$reportopts->workshopphase = $workshop->phase;
print_collapsible_region_start('', 'workshop-viewlet-gradereport', get_string('gradesreport', 'workshop'));
print_collapsible_region_start('', 'workshop-viewlet-gradereport', get_string('gradesreport', 'workshop'),
'workshop-viewlet-gradereport-collapsed');
echo $output->box_start('generalbox gradesreport');
echo $output->container(groups_print_activity_menu($workshop->cm, $PAGE->url, true), 'groupwidget');
echo $output->render($pagingbar);
@ -323,7 +332,8 @@ case workshop::PHASE_ASSESSMENT:
if (trim($workshop->instructreviewers)) {
$instructions = file_rewrite_pluginfile_urls($workshop->instructreviewers, 'pluginfile.php', $PAGE->context->id,
'mod_workshop', 'instructreviewers', null, workshop::instruction_editors_options($PAGE->context));
print_collapsible_region_start('', 'workshop-viewlet-instructreviewers', get_string('instructreviewers', 'workshop'));
print_collapsible_region_start('', 'workshop-viewlet-instructreviewers', get_string('instructreviewers', 'workshop'),
'workshop-viewlet-instructreviewers-collapsed');
echo $output->box(format_text($instructions, $workshop->instructreviewersformat, array('overflowdiv'=>true)), array('generalbox', 'instructions'));
print_collapsible_region_end();
}
@ -338,7 +348,8 @@ case workshop::PHASE_ASSESSMENT:
$examplesavailable = true;
if (!$examplesdone and $examplesmust and ($ownsubmissionexists === false)) {
print_collapsible_region_start('', 'workshop-viewlet-examplesfail', get_string('exampleassessments', 'workshop'));
print_collapsible_region_start('', 'workshop-viewlet-examplesfail', get_string('exampleassessments', 'workshop'),
'workshop-viewlet-examplesfail-collapsed');
echo $output->box(get_string('exampleneedsubmission', 'workshop'));
print_collapsible_region_end();
$examplesavailable = false;
@ -365,7 +376,8 @@ case workshop::PHASE_ASSESSMENT:
} else {
$examplesdone = true;
}
print_collapsible_region_start('', 'workshop-viewlet-examples', get_string('exampleassessments', 'workshop'), false, $examplesdone);
print_collapsible_region_start('', 'workshop-viewlet-examples', get_string('exampleassessments', 'workshop'),
'workshop-viewlet-examples-collapsed', $examplesdone);
echo $output->box_start('generalbox exampleassessments');
if ($total == 0) {
echo $output->heading(get_string('noexamples', 'workshop'), 3);
@ -379,7 +391,8 @@ case workshop::PHASE_ASSESSMENT:
print_collapsible_region_end();
}
if (!$examplesmust or $examplesdone) {
print_collapsible_region_start('', 'workshop-viewlet-assignedassessments', get_string('assignedassessments', 'workshop'));
print_collapsible_region_start('', 'workshop-viewlet-assignedassessments', get_string('assignedassessments', 'workshop'),
'workshop-viewlet-assignedassessments-collapsed');
if (! $assessments = $workshop->get_assessments_by_reviewer($USER->id)) {
echo $output->box_start('generalbox assessment-none');
echo $output->notification(get_string('assignedassessmentsnone', 'workshop'));
@ -459,7 +472,8 @@ case workshop::PHASE_EVALUATION:
$reportopts->showgradinggrade = true;
$reportopts->workshopphase = $workshop->phase;
print_collapsible_region_start('', 'workshop-viewlet-gradereport', get_string('gradesreport', 'workshop'));
print_collapsible_region_start('', 'workshop-viewlet-gradereport', get_string('gradesreport', 'workshop'),
'workshop-viewlet-gradereport-collapsed');
echo $output->box_start('generalbox gradesreport');
echo $output->container(groups_print_activity_menu($workshop->cm, $PAGE->url, true), 'groupwidget');
echo $output->render($pagingbar);
@ -471,7 +485,8 @@ case workshop::PHASE_EVALUATION:
}
}
if (has_capability('mod/workshop:overridegrades', $workshop->context)) {
print_collapsible_region_start('', 'workshop-viewlet-cleargrades', get_string('toolbox', 'workshop'), false, true);
print_collapsible_region_start('', 'workshop-viewlet-cleargrades', get_string('toolbox', 'workshop'),
'workshop-viewlet-cleargrades-collapsed', true);
echo $output->box_start('generalbox toolbox');
// Clear aggregated grades
@ -497,7 +512,8 @@ case workshop::PHASE_EVALUATION:
print_collapsible_region_end();
}
if (has_capability('mod/workshop:submit', $PAGE->context)) {
print_collapsible_region_start('', 'workshop-viewlet-ownsubmission', get_string('yoursubmission', 'workshop'));
print_collapsible_region_start('', 'workshop-viewlet-ownsubmission', get_string('yoursubmission', 'workshop'),
'workshop-viewlet-ownsubmission-collapsed');
echo $output->box_start('generalbox ownsubmission');
if ($submission = $workshop->get_submission_by_author($USER->id)) {
echo $output->render($workshop->prepare_submission_summary($submission, true));
@ -508,7 +524,8 @@ case workshop::PHASE_EVALUATION:
print_collapsible_region_end();
}
if ($assessments = $workshop->get_assessments_by_reviewer($USER->id)) {
print_collapsible_region_start('', 'workshop-viewlet-assignedassessments', get_string('assignedassessments', 'workshop'));
print_collapsible_region_start('', 'workshop-viewlet-assignedassessments', get_string('assignedassessments', 'workshop'),
'workshop-viewlet-assignedassessments-collapsed');
$shownames = has_capability('mod/workshop:viewauthornames', $PAGE->context);
foreach ($assessments as $assessment) {
$submission = new stdclass();
@ -542,13 +559,15 @@ case workshop::PHASE_CLOSED:
if (trim($workshop->conclusion)) {
$conclusion = file_rewrite_pluginfile_urls($workshop->conclusion, 'pluginfile.php', $workshop->context->id,
'mod_workshop', 'conclusion', null, workshop::instruction_editors_options($workshop->context));
print_collapsible_region_start('', 'workshop-viewlet-conclusion', get_string('conclusion', 'workshop'));
print_collapsible_region_start('', 'workshop-viewlet-conclusion', get_string('conclusion', 'workshop'),
'workshop-viewlet-conclusion-collapsed');
echo $output->box(format_text($conclusion, $workshop->conclusionformat, array('overflowdiv'=>true)), array('generalbox', 'conclusion'));
print_collapsible_region_end();
}
$finalgrades = $workshop->get_gradebook_grades($USER->id);
if (!empty($finalgrades)) {
print_collapsible_region_start('', 'workshop-viewlet-yourgrades', get_string('yourgrades', 'workshop'));
print_collapsible_region_start('', 'workshop-viewlet-yourgrades', get_string('yourgrades', 'workshop'),
'workshop-viewlet-yourgrades-collapsed');
echo $output->box_start('generalbox grades-yourgrades');
echo $output->render($finalgrades);
echo $output->box_end();
@ -576,7 +595,8 @@ case workshop::PHASE_CLOSED:
$reportopts->showgradinggrade = true;
$reportopts->workshopphase = $workshop->phase;
print_collapsible_region_start('', 'workshop-viewlet-gradereport', get_string('gradesreport', 'workshop'));
print_collapsible_region_start('', 'workshop-viewlet-gradereport', get_string('gradesreport', 'workshop'),
'workshop-viewlet-gradereport-collapsed');
echo $output->box_start('generalbox gradesreport');
echo $output->container(groups_print_activity_menu($workshop->cm, $PAGE->url, true), 'groupwidget');
echo $output->render($pagingbar);
@ -588,7 +608,8 @@ case workshop::PHASE_CLOSED:
}
}
if (has_capability('mod/workshop:submit', $PAGE->context)) {
print_collapsible_region_start('', 'workshop-viewlet-ownsubmission', get_string('yoursubmission', 'workshop'));
print_collapsible_region_start('', 'workshop-viewlet-ownsubmission', get_string('yoursubmission', 'workshop'),
'workshop-viewlet-ownsubmission-collapsed');
echo $output->box_start('generalbox ownsubmission');
if ($submission = $workshop->get_submission_by_author($USER->id)) {
echo $output->render($workshop->prepare_submission_summary($submission, true));
@ -606,7 +627,8 @@ case workshop::PHASE_CLOSED:
if (has_capability('mod/workshop:viewpublishedsubmissions', $workshop->context)) {
$shownames = has_capability('mod/workshop:viewauthorpublished', $workshop->context);
if ($submissions = $workshop->get_published_submissions()) {
print_collapsible_region_start('', 'workshop-viewlet-publicsubmissions', get_string('publishedsubmissions', 'workshop'));
print_collapsible_region_start('', 'workshop-viewlet-publicsubmissions', get_string('publishedsubmissions', 'workshop'),
'workshop-viewlet-publicsubmissions-collapsed');
foreach ($submissions as $submission) {
echo $output->box_start('generalbox submission-summary');
echo $output->render($workshop->prepare_submission_summary($submission, $shownames));
@ -616,7 +638,8 @@ case workshop::PHASE_CLOSED:
}
}
if ($assessments = $workshop->get_assessments_by_reviewer($USER->id)) {
print_collapsible_region_start('', 'workshop-viewlet-assignedassessments', get_string('assignedassessments', 'workshop'));
print_collapsible_region_start('', 'workshop-viewlet-assignedassessments', get_string('assignedassessments', 'workshop'),
'workshop-viewlet-assignedassessments-collapsed');
$shownames = has_capability('mod/workshop:viewauthornames', $PAGE->context);
foreach ($assessments as $assessment) {
$submission = new stdclass();