• last updated 56 mins ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
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

    • -5
    • +18
    ./xowf/catalog/xowf.de_DE.ISO-8859-1.xml
    • -3
    • +17
    ./xowf/catalog/xowf.en_US.ISO-8859-1.xml
    • -4
    • +3
    ./xowf/catalog/xowf.es_ES.ISO-8859-1.xml
    • -3
    • +3
    ./xowf/catalog/xowf.it_IT.ISO-8859-1.xml
    • -0
    • +168
    ./xowf/lib/edit-grading-scheme.wf
    • -370
    • +258
    ./xowf/tcl/test-item-procs.tcl
    • -0
    • +69
    ./xowf/tcl/xowf-form-field-procs.tcl
file edit-grading-scheme.wf was initially added on branch oacs-5-10.

    • -0
    • +0
    ./xowf/lib/edit-grading-scheme.wf
file grading-procs.tcl was initially added on branch oacs-5-10.

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

    • -0
    • +0
    ./xowf/resources/prototypes/edit-grading-scheme.wf.page
Replace reference to long-missing message key

reduce verbosity

support grading passed in via property

still initialize array

improve comment.

since "nsv_get $array $member varname" returns 0, when the array does not exist, we do not need the extra value for initialization

cache parsed form_constraints via nsv instead of via global variable

- Define converters as procs

- Register these procs as aliases where convenient

- this effects:

dict_to_fc, dict_to_spec, spec_to_dict, fc_to_dict, dict_value

- extended regression test

- bumped version number to 5.10.1d9

    • -38
    • +140
    ./xowiki/tcl/form-field-procs.tcl
    • -0
    • +76
    ./xowiki/tcl/test/api-test-procs.tcl
minor editing changes

improve location of comment

prefer "Package require" over "Package initialize" when possible

    • -1
    • +1
    ./xowiki/tcl/test/xowiki-test-procs.tcl
adjust code with regression test, which performs literal comparison of rendered content

    • -3
    • +3
    ./xowiki/tcl/test/xowiki-admin-tests-procs.tcl
    • -1
    • +1
    ./xowiki/tcl/test/xowiki-link-test-procs.tcl
    • -2
    • +2
    ./xowiki/tcl/test/xowiki-test-procs.tcl
performance improvements for "::xo::db::Class proc get_instance_from_db"

when the object exists already, the text for existance is made earlier

to void useless operations. This change improves the performance by a factor of 3

when the object was already loaded.

OLD {4.544836 microseconds per iteration}

NEW {1.310991 microseconds per iteration}

Smartify idioms

    • -15
    • +16
    ./acs-templating/tcl/tag-init.tcl
Fix typo

reduce verbosity

Similar to the folder-create script, complain if the filename turns out empty after sanitizing

Allow the maximum size permitted by the datamodel in the UI, but then validate it before saving

    • -2
    • +2
    ./calendar/www/calendar-item-types.tcl
When deleting, make sure supplied id is actually a room id

Trap the attempt to retrieve a non-existing forum and return a 404 in this case

this might need to happen in other places and/or be refined

Make error consistent with the already existing check in the content-repository

Handle more gracefully the case, which should not happen on a production system, that the file being downloaded does not exist on the filesystem

simplify idioms

- deactivate unused link-templates

- make quoting of label more consistent (it is passed in already quoted from the rich-text editors)

- whitespace changes

    • -125
    • +146
    ./xowiki/tcl/link-procs.tcl
Deprecate template::util::list_opts: it can be replaced by trivial tcl idioms

    • -1
    • +24
    ./acs-templating/tcl/deprecated-procs.tcl
    • -20
    • +1
    ./acs-templating/tcl/util-procs.tcl