LMIS Assignment Update

1. Back up the site files and database.
2. While signed in as an administrator, upload assignment_type_additive.sql through
   the additive database updater provided earlier. Confirm the report shows the
   assignment_type column and both version tables created. Existing assignment
   records default to Practical. No learner records are removed by this SQL.
3. Extract the assignments/ directory from this archive into the existing
   modules/ directory, replacing the supplied PHP files. Keep its new
   assignment-upload-validation.php beside add.php and edit.php.
4. Copy the included uploads/assignments/ folder into the site uploads/
   directory so its access-control files protect uploaded resources and evidence.
   Keep all existing uploaded documents and learner submissions in place.
5. Confirm the site's clean URLs still route to the existing PHP pages,
   including /learner/assignments/view/{id} and the resource-download route.
6. Test creating each assignment type with a PDF or DOCX, signing in as an
   enrolled learner to download and submit, then marking the submission as an
   administrator or assigned assessor. Test a resubmission and the history.

The add page loads Modules for the chosen Programme, Topics for the Module,
and Lessons for the Topic. Empty dropdowns show a clear reason. Learners can
submit up to ten evidence files, and the existing submissions page handles
marks and written feedback. Administrator assignment documents are validated
as PDF, Office or image files and served as downloads. Uploading raw SQL here
will not import learner or assignment data.

This integrated package includes modules/assessment_evidence/download.php for
authenticated learner evidence downloads. Keep any other existing evidence
handlers and uploaded files in place.
