## Assignment submissions : Changes

assignsubmission_changes
Maintained by Hendrik Würz, Guido Roessling
This plugin provides a changelog for student submissions. You can see when a file was updated and the changed pages in PDF submissions.
16 sites
6 fans

# Assign Submission Changes Plugin for Moodle

This plugin provides a changelog for student submissions. You can see when a file was updated and the changed pages in PDF submissions.

Copyright (c) 2017 Hendrik Wuerz

This program is free software: you can redistribute it and/or modify
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program.  If not, see <http://www.gnu.org/licenses/>;.


## Installation

1. Install the dependency local_changeloglib with the required command line tools (See readme.md in the changeloglib repository.)
2. Clone the repo inside MOODLE_HOME/mod/assign/submission/changes
cd path/to/moodle/home
git clone https://github.com/hwuerz/moodle-assignsubmission_changes.git mod/assign/submission/changes

## Tests

This plugin provides tests for the main features. To run them please follow the next steps:

2. Install the plugin.
3. Run the tests
cd /path/to/moodle/home
vendor/bin/phpunit --group assignsubmission_changes

## Features

This plugin can generate a changelog for assignments. This changelog includes the timestamp and the old filename. Optionally a search for changed pages in PDF submissions can be performed. The results are visible in the detail view of each submission. The overview displays the changes after the last grading.

The features have to be enabled by the moodle administrator and a teacher must activate them is an assignment.

As a moodle administrator you can control whether the functionality should be available in your installation.

1. Go to Site administration -> Plugins -> Activity modules -> Assignment -> Submission plugins -> Changes
2. Set Allow detection of changes in student submissions to true if you want to enable the functionality in your installation. If this value is unchecked, no options will be displayed in assignments and no changelog is generated.
3. Set Max filesize in MB for diff detection to 20. This will allow the analysis of changed pages in PDF documents up to 20MB. If you set this value to zero, teachers can not enable the detection of differences in assignments. The feature requires the command line tools poppler-utils and diff as described in the changeloglib Plugin
4. Set Enable Changelog by default and Enable Difference Detection by default to true if you want to enable the changelog and the detection of changed pages in new assignments by default.

As a teacher you can activate the generation of a changelog and the detection of changed pages for an assignment in your course if the moodle admin has allowed it.

1. Go to Edit settings of an assignment or create a new one.
2. Scroll to Submission types.
3. Enable the submission type Changes if you want to create a changelog of uploads in this assignment.
4. Enable the checkbox Auto detect diff if the plugin should search for changed pages in new PDF submissions.

In the overview page of an assignment you can see a new column which indicates whether there are ungraded changes for a student. The detail view lists all updates in the assignment with date and filename. If you enabled the diff detection, the changed pages are included as well.

As a student you can see the generated changelog for your submission. If there are mistakes in the auto generated entries, you can edit (but not delete) the data.

### Contributors

Guido Roessling: Maintainer

### Awards

• Sun, 3 Sep 2017, 6:00 AM
Approval issue created: CONTRIB-7030
• Sun, 17 Dec 2017, 2:13 AM
This is one thing major that is missing from Moodle overall. If a student doesnt tell me they changed a submission there is no way to know. Will this be upgraded for Moodle 3.4?
• Sun, 17 Dec 2017, 2:25 AM
Thanks for your comment. I'm still in the process of making some improvements while testing for Moodle 3.4. However, the current version would probably still work without problems. You can expect an update of the plugin before the end of the year.
• Tue, 2 Jan 2018, 1:55 PM
Hi Hendrik. The functionality offered by this plugin sounds perfect for our needs (and is much needed in Moodle core, imo) - many thanks for making it available! Re. the currently offered versions: I'm just wondering if you know of any technical reasons why the 3.4+ version wouldn't work under Moodle 3.3? I ask because we'd like to take advantage of the new features of the 3.4+ version, but won't be upgrading to Moodle 3.4 until later this year. Again, many thanks for your efforts in sharing this with the community.
• Tue, 2 Jan 2018, 8:27 PM
Hi Roland, thanks for your kind words. Concerning the versions: I do not think that there are any technical restrictions and that you could install the version for Moodle 3.4 under 3.3. Unfortunately, I do not have the time to test this extensively, which is why only 3.4 was specified for the update. If you try the plugin on a test installation first, then there should not be any problems.
• Wed, 3 Jan 2018, 5:22 PM
Many thanks for the reply Hendrik, and just to confirm that we have now installed the 3.4+ version on a 3.3-based server and can happily report that so far in our testing both the installation and the functionality of the plugin seem to work flawlessly. Again, this is a vitally important addition to Moodle, imo - so thank you very much for making it available!
• Mon, 18 Jun 2018, 9:06 PM
I agree this should be Moodle-core. How do we get it to be noticed as such