• last updated 24 mins ago
Constraints: committers
Constraints: files
Constraints: dates
Improved configurability of inclass exam

- added modal window for showing all configuration options

- depending on the state of an exam (whether students have stated

working on the exam or not) different options can be

altered. E.g. the grading scheme can be adjusted at any time, since

it is not visible to students prior to exam review.

- improved configurability of form-fields:

. new feature: fc_repository for shared definitions

(can be reused in the same configuration on multiple occasions)

. when form-constraints are defined with an empty short-spec,

the system tries to look this up from the fc_repository.

- extended answer manager:

. new method: student_submissions_exist

. renamed methods

. "student_submissions" -> "submissions"

(since result my include as well test run results)

. "get_answers" -> "get_answer_attributes"

to better distinguish from "submissions"

- base "merge_constraints" on dicts

- prefer forwarder over instance variable for referring

the question manager(QM)

- extended Message keys with "Configuration"

- added missing German translations in message keys

- bump version to 5.10.1d17

    • -52
    • +98
    • -4
    • +4
    • -3
    • +23
    • -42
    • +248
    • -13
    • +38
improve comment

make use of "from_cache_indicator" for the per_request_cache in instantiate_forms

output warning for unexpected input

whitespace changes

    • -6
    • +6
Various small improvements:

- Page->content_header_append/content_header_get: new methods to

include HTML content before the form. One use case ist to include

additional forms this way, since these cannot be included in the

main form of a FormPage. The additional content is displayed in the

www-view method.

- FormPage->create_form_fields_from_names: new convenience function to create

form-fields via their names. The definitions of the named form-fields are

taken from the provided form_constraints. This function is useful when

only a subset of the form-constraints definitions should be used

to create form-fields.

- improve comments

- improve argument checking on parent_id to be able to provide better

error messages

- reduce usage of regexp for performance reasons

- improve spelling

    • -10
    • +64
Improved handling of pages with parent_id == 0 (which come from site-wide pages)

Provide warning, when pretty_link is called on such pages.

    • -4
    • +11
Perform a full initialize on both packages to get ::xo::cc initialized

prefer call of "pretty_link" on package_id to avoid suprises on pages from shared locations

Extended LockfreeCache:

- Feneralized flag "-no_empty" of "LockfreeCache eval" to "-no_cache LIST"

The provided list can contain multiple values that should not be cached.

- The new parameter "-from_cache_indicator" can be used to return information

whether the returned value was returned from the cache or not.

    • -2
    • +2
Provide an exception in case get_instance_from_db is called with an invalid argument combination.

Added convenience methods "::xo::db::CrClass->ensure_item_ids_instantiated"

Add the root folder id to the cache key so that when one does not specify any parent_id, the method still reacts to a package being uninstantiated or the root folder messed around with

Fixes xowiki automated tests when run all together in the same request

factor out common code

    • -11
    • +4
make listing more compact

    • -4
    • +3
Port reform that replaces publish status display from a png to a character + css style to the xowiki/admin/list

The behavior of the default table widget had to be adapted to reflect that of the bootstrap one: css class from the line is appended to that from the field definition

    • -12
    • +18
provide as well a minimal compatibility for "-size" parameter on ns_baseunit

use ns_baseunit for time span calculation

    • -2
    • +2
added a partial backwards compatibility implementation of for ns_baseunit (as used in request processor)

move broken procs based on undefined function to decprecated procs and comment it out

correct comment

use per-request cache for relatively expensive operation, which is called potentially often per request

We might consider in the future a longer lasting cache for "global" form pages.

use same idom for loading named forms as on other places

improve styling in exam protocol

use "throw" in exception handling with "try"

Fail with the actual error message when parsing the value fails, rather than because of "result" variable not being set

Added support for user-supplied grading schemes

Grading schemes provide a means to map achieved percentages to a numeric grade.

In the current versions, a fixed number of 5 grades is supported.

A grading scheme consists of a grounding scheme and grading boundaries.

- A grading scheme can be selected at exam definition time

- Lecturers can define their own grading schemes and reuse these between exams

- Available grounding schemes:

* no rounding (recommended for small exams, e.g. 5 minutes or 2 points)

* by percent (the calculated percentages are rounded to the provided number of digits)

* by points (the calculated points are rounded to the provided number of digits)

- The grounding precision can be defined by the user (e.g. to 2 digits)

- The grading boundaries represent percentages boundaries necessary for a certain grade

- When selecting no grading scheme, no grading information is provided in the exam protocol

(just percentages)

More changes:

- allow grading also, when student has not submitted the exam

- added percentage information in the grading-box (esp. useful for composite questions)

- renamed predefined grading schemes to more neutral terms

- provide easy-to-type names for question-manager, answer-manager and form-loader

- new utility for more robust list-comparions

- defined validating form-field type for grading boundaries

    • -1
    • +1
    • -0
    • +370
    • -370
    • +258
file edit-grading-scheme.wf was initially added on branch oacs-5-10.

    • -0
    • +0
file grading-procs.tcl was initially added on branch oacs-5-10.

    • -0
    • +0
file edit-grading-scheme.wf.page was initially added on branch oacs-5-10.

Replace reference to long-missing message key