• last updated 17 hours ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
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
    /openacs-4/packages/xowiki/tcl/xowiki-procs.tcl
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
    /openacs-4/packages/xowiki/tcl/package-procs.tcl
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
    /openacs-4/packages/acs-tcl/acs-tcl.info
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
    /openacs-4/packages/xowiki/www/admin/list.tcl
make listing more compact

    • -4
    • +3
    /openacs-4/packages/xowiki/www/admin/list.tcl
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
    /openacs-4/packages/xowiki/www/admin/list.tcl
provide as well a minimal compatibility for "-size" parameter on ns_baseunit

use ns_baseunit for time span calculation

    • -2
    • +2
    /openacs-4/packages/acs-tcl/acs-tcl.info
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
    /openacs-4/packages/xowf/lib/inclass-exam.wf
    • -0
    • +370
    /openacs-4/packages/xowf/tcl/grading-procs.tcl
    • -370
    • +258
    /openacs-4/packages/xowf/tcl/test-item-procs.tcl
file edit-grading-scheme.wf was initially added on branch oacs-5-10.

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

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

Replace reference to long-missing message key

reduce verbosity

    • -1
    • +1
    /openacs-4/packages/xowf/tcl/xowf-procs.tcl
support grading passed in via property

    • -2
    • +3
    /openacs-4/packages/xowf/lib/inclass-exam.wf
still initialize array

    • -1
    • +6
    /openacs-4/packages/xowiki/tcl/xowiki-procs.tcl
improve comment.

    • -3
    • +4
    /openacs-4/packages/xowiki/tcl/xowiki-procs.tcl
since "nsv_get $array $member varname" returns 0, when the array does not exist, we do not need the extra value for initialization

    • -2
    • +1
    /openacs-4/packages/xowiki/tcl/xowiki-procs.tcl