Project: moodle
Issue MDL-46549: Robust previewing + update dry running for importing grade CSVs
Integrate UCSB's CSV file preview functionality - gives preview of parsed file input and allows mapping of data from file to Moodle fields. When submitted, it provides diagnosis data about: * "potential updates", i.e. when importing a CSV will change existing grades * errors and underlying reasons It should also skip duplicate scores. Further detail - these are the strings being introduced for further detail: * '{$a->name} not found in system mapped to {$a->key}' * 'student {$a->name} not found in group {$a->key}' * 'invalid grade for {$a}' * 'missing grade for {$a}' * 'invalid scale value for {$a}' * 'invalid grade value for {$a}' * 'grade exceeds item max ({$a->name}) for {$a->key}' * 'duplicate grade for {$a->name} from {$a->key} to {$a->key2}' * 'changing grade for {$a->name} from {$a->key} to {$a->key2}' * 'adding grade for {$a->name} as {$a->key}' * 'Warning: Accepted grade exceeds Item Maximum' * 'Error: Grade exceeds Item Maximum' * 'Error: Grade score bypassed - Locked grade' * 'Error: Grade score bypassed - No grade' * 'Error: Grade score bypassed - Invalid grade' * 'Error: Grade score bypassed - Invalid group' * 'Error: Grade score bypassed - Invalid student' * 'Warning: Grade score bypassed - Duplicate score skipped' Other messages * likely used the wrong delimiter * Non numeric grade value supplied, possibly mapped wrong column.
Story points: 40