• last updated 12 hours ago
Constraints: committers
Constraints: files
Constraints: dates
Move the question overview block in question_info_block in an own method to ease downstream customization in subclasses

  1. … 1 more file in changeset.
use csv icon, revert deterioration of appearance

  1. … 2 more files in changeset.
fix typo and improve robustness with legacy composite items

Fix JS idiom when no "i" tag is found

fix typo

adaoption for bootstrap5

  1. … 2 more files in changeset.
Don't require the whole xowiki, as it is already a dependency

  1. … 2 more files in changeset.
use bootstrap button classes for print button in the exam protocol (many thanks to Monika Andergassen for the suggestion)

replace non-existing class "btn-small" (for bootstrap3) by non-existing class "btn-secondary", which shows in the right color and is future proof (introduced by bootstrap 4).

  1. … 2 more files in changeset.
use preferred idioms to use btn-default/btn-secondary for bootstrap3/bootstrap5

  1. … 2 more files in changeset.
Make use of extended functionality of OrderedComposite->orderby

- use integer comparison for "seconds" in participants table

- bumped version number to 5.10.1d33

  1. … 1 more file in changeset.
Support for extra extra hints texts (feedback, correction hints)

The updated version of the inclass-exam supports now extra hint texts for lecturers and students. These extra information is displayed after the question, and is used either for feedback to the student (e.g. Einsicht) or as information for the grader (evaluation guidelines, esp. useful when multiple graders are involved). It can be controlled via setup what kind of information the question author can provide. The providable feedback is controlled via the feedback level:

Feedback level

- The feedback level can be

* "full": two input fields for feedback for correct and incorrect answers

* "single": single input fields for feedback

* "none": no input field for feedback.

- The feedback level is specified in the forms used in the

pull down menus for creating "New" test items.

- The feedback level is applicable to all test item types

(SC, MC, Text, ShortText, Ordering, Upload, Composite, Pool)

- The predefined setup is as follows:

"single" is used for all item type, except for "Pool" questions (since the feedback

is taken from the replacement question from the Pool)

- Nothing has change here

Correction notes:

- optionally, correction notes can be specified.

Since in the past, the general feedback was not shown to the students,

it was sometimes abused for correction hints for the lecturer.

Therefore, we have now a separate field

- Correction notes can be added to all item types

(SC, MC, Text, ShortText, Ordering, Upload, Composite, Pool) and are

turned on by default (except for Pool).

Visibility of general feedback and correction notes

- general feedback is shown (when provided)

* full exam-protocol is shown

* filtering single question

* filtering single submission (view with revision selection)

* exam-review for students (Einsicht)

- corrections notes are shown (when provided)

* full exam-protocol is shown

* filtering single question

* filtering single submission (view with revision selection)

- when general feedback is not provided, the exam protocol etc. looks as before

- when correction notes are not provided, the exam protocol etc. looks as before

- Negative feedback is provided,

* when percentage is known, and

* percentage is < 50%

- when negative feedback is displayed, the positive feedback is not displayed and vice versa

For composite questions, the system supports hint texts for the full composite question and additional ones for every single part.

Version number bumped to 5.10.1d32

  1. … 5 more files in changeset.
Document public api

Added support for restricting access to exams based on IP addresses.

In order to avoid the problem that students might participate on exams

intended to be held e.g. on campus from at home, one can now restrict

the access based on IP ranges. It is possible to restrict the access

via multiple range blocks that can be predefined by the sysadmins. One

could predefine e.g. IP range blocks for "Campus LAN", "On Site",

"VPN", etc., which can be selected by lecturers for individual exams.

Every IP range block can be defined via multiple entries of disallowed

and allowed IP ranges, where the addresses can be specified via IPv4

or IPv6 CIDR blocks (e.g., or with wild cards or

individual IP addresses. The usage of CIDR blocks requires an update

to the updated version of NaviServer.

The IP restriction is used in the current implementation for

restricting the regular start of the exam (proctored or

non-proctored). Lecturers can still perform test runs for exams with

restricted access.

Bump version number to 5.10.1d31

  1. … 8 more files in changeset.
increase default value of number of potential alternatives to 25

relax regexp for timestamp of proctored images to support time fractions

allow fractional minutes (useful for short quizzes)

guarantee uniqueness of IDs when multiple aggregated forms are used in one page (e.g. exam protocol)

simplify logic

Fix variable name

switch from xo::db::sql to acs::dc interface

  1. … 12 more files in changeset.
Added support for www-toggle-publish-status

This is needed to avoid a bad interaction with [ad_return_url] as it

is used in www-toggle-publish-status in xowiki, since the workflow

definition unsets the actual return_url, which causes ad_return_url to

use the URL leading to this call (m=toggle-publish-status), causing a

redirection loop.

Version number bumped to 5.10.1d28

  1. … 2 more files in changeset.
ensure html markup is well formed

"::xowiki::includelet::personal-notification-messages modal_message_dialog"

is returning the html link with an open a-tag, which has to be closed from the caller

display notification link while the exam is published

Document public api

make grading dialog draggable

make parameter name more self-expanatory to avoid misinterpretations

  1. … 2 more files in changeset.
Store statistics in a separate page instead of the workflow itself

- advantages:

* smaller workflow instance

- no danger that page is too large for caching, even for large exams.

- smaller objects mean also better performance

* modification date in exam is not modified when statistics

are updated

* easier extensible

- New function WorkflowPage->childpage

easy to use interface for creating child pages

- render_submission=exam_protocol: changed name of

parameter "-form_objs" to "-filter_form_ids", since

form_objs are used typically to keep objects, not ids

- Still to do: policy for inclass-exam-statistics.wf

- Bumped version number to 5.10.1d25

  1. … 5 more files in changeset.
Port downstream change: adding label for question selection box

Many thanks to Felix Mödritscher

  1. … 3 more files in changeset.
avoid unneccesary warnings (and unneccessary work)

In case the exam-protocol is shown filtered (e.g. only selected questions)

there is distinction between the available answer attributes and the

answer attributes, which is shown. Earlier versions tried to lookup

all available answer attributes, now we restrict the lookup to only

the shown answer attributes, and therefore avaiding running into

warnings of the form "No form field with name ... found"