Proctoring enforcing reform:so far, to proctor applications that do not have a "single point of entry", such as e.g. dotlrn communities, we have integrated the lib/proctoring-enforce include into the website master template. Now we improve from this by introducing a callback mechanism that allows the single packages to decide if a request is "theirs to be proctored" or not.
Implement a checksum + cache mechanism to check whether user is sending the same file multiple times:this is needed to address the problem of timeouts, where the server might process a request even when the client has given up and rescheduled the upload. We now store the latest checksum that has been received and compare it with the new picture.