• last updated 13 hours ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
Significant improvements on the proctoring display UI to help the review process of proctored artifacts:

- user can flag artifacts as OK or to be reviewed

- user can add and delete comments on the single artifacts

- user can filter artifacts by "verified/not verified" "flagged/not flagged" and "all". A counter is displayed showing how many over the total number are being displayed

- interface will update as before when new pictures come in from an ongoing exam

- interface has been designed "mobile first" and with minimal, mostly graphical dependencies, to Bootstrap

  1. … 5 more files in changeset.
Subst commands as well, include the artifact is in the websocket message

Formatting changes

Port the downstream only websocket enpoint

  1. … 2 more files in changeset.
file proctoring-websocket.tcl was initially added on branch oacs-5-10.

    • -0
    • +0
    ./proctoring-websocket.tcl
Rename the file so it actually has an extension

Add extension to the filename so it is preserved

Dodument a rather convoluted query

Improve doc

Improve doc

Improve doc

Provide an api to delete proctoring artifacts together with their folder in order to reduce duplication

  1. … 3 more files in changeset.
Provide an api to store proctoring artifacts, and a callback hook for postprocessing

  1. … 4 more files in changeset.
Introduce a data model for "proctoring artifacts", aka the pictures

and audios, which so far have only lived as files in the filesystem

named after a convention

The new datamodel allows to quickly and reliably retrieve the pictures

collected by proctoring and also provides for a technical space, in

form of a JSON metadata column, to store additional information coming

from e.g. postprocessing phases.

The idea is to use this feature to provide reviewing tools of proctoring results and allow for flexile downstream postprocessing.

The file naming convention has not been changed for the time being, so this would be

retro-compatible. However, integrators should start relying on the new

data model to retrieve pictures.

  1. … 6 more files in changeset.
Get the user_id directly

Not rely on a deprecated command to check for websockets, improve idiom

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.

  1. … 3 more files in changeset.
Allow to pass the doc array to the master (e.g. for the title)

Prefer the more modern api and fallback on the old idiom to support older NaviServer versions

reduce verbosity

fix typo

added support for optionally turning off proctoring recodings

This options is useful e.g. for e.g. mock exams to avoid privacy issues.

  1. … 8 more files in changeset.
Improve doc, remove needless properties

file proctoring-configure.tcl was initially added on branch oacs-5-10.

    • -0
    • +0
    ./proctoring-configure.tcl
UI include to configure proctoring on an arbitrary ACS object, meant to be integrated downstream into custom UIs

  1. … 3 more files in changeset.
file proctoring-configure.adp was initially added on branch oacs-5-10.

    • -0
    • +0
    ./proctoring-configure.adp
Correct hash challenging:

actually, the hash sent by the browser changes based on the requested URL, so it does not make sense to set it directly.

  1. … 2 more files in changeset.
Avoid double encoding of base URL

Basic backend support for Safe Exam Browser (https://safeexambrowser.org/):

via the API is possible to associate a Safe Exam Browser configuration and its validation key to

the proctored object. The proctored page will then take care of enforcing that, if the safe exam

browser is in use, the supplied request header matches with the configuration and the URL.

When such match fails, we now return the configuration file to the browser, so that users can

open it and restart their session properly configured.

  1. … 7 more files in changeset.
Formatting change