Class ::xowf::IpRange |
|
Class representing a range of IPs to be used to enforce access
control. |
Class ::xowf::test_item::Answer_manager |
|
Public API:
- create_workflow
- delete_all_answer_data
- allow_answering
- get_answer_wf
- get_wf_instances
- get_answer_attributes
- student_submissions_exist
- runtime_panel
- render_answers_with_edit_history
- render_answers
- marked_results
- answers_panel
- exam_results
- grading_table
- grading_scheme
- grade
- participants_table
- get_duration
- get_IPs
- revisions_up_to
- last_time_in_state
- last_time_switched_to_state
- state_periods
- time_window_setup
- waiting_room_message |
Class ::xowf::test_item::AssessmentInterface |
|
Abstract class for common functionality |
Class ::xowf::test_item::Question_manager |
|
This code manages questions and the information related to a
current (selected) question via qthe "position" instance
attribute. |
Class ::xowf::test_item::Renaming_form_loader |
|
Form loader that renames "generic" form-field-names as provided
by the test-item form-field classes (@answer@) into names based
on the form name, such that multiple of these form names can be
processed together without name clashes. |
Class ::xowf::test_item::grading::Grading |
|
Superclass representing a generic grading |
Class ::xowf::test_item::grading::GradingNone |
|
Grading scheme, which omits grading at all. |
Class ::xowf::test_item::grading::GradingRoundNone |
|
Implements a grading with no special rounding. |
Class ::xowf::test_item::grading::GradingRoundPercentage |
|
Implements a grading expressed as a rounded percentage |
Class ::xowf::test_item::grading::GradingRoundPoints |
|
Implements a grading expressed as a rounded number of points |
Class ::xowiki::formfield::TestItemField |
|
Abstract class for defining common attributes for all Test Item
fields. |
Class ::xowiki::formfield::test_item |
|
Wrapper for composite test items, containing specification for
minutes, grading scheme, feedback levels, handling different types
of questions ("interactions" in the terminology of QTI). |
Class ::xowiki::formfield::test_item_name |
|
Name sanitizer for test items |
Class ::xowiki::includelet::countdown-timer |
|
Countdown timer |
Class ::xowiki::includelet::exam-top-includelet |
|
This is the top includelet for the in-class exam, containing a
countdown timer and the personal notifications includelet |
xowf::IpRange instproc allow_access |
|
Check, if provided IP address is in the provided ranges of
disallowed or allowed addresses. |
xowf::IpRange instproc match |
|
|
xowf::Package instproc destroy |
|
remove mixin |
xowf::Package instproc initialize |
|
Add mixin ::xowf::WorkflowPage to every FormPage. |
xowf::Package proc create_new_workflow_page |
|
Helper proc for loading workflow prototype page with less effort. |
xowf::WorkflowPage instproc answer_is_correct |
|
Check, if answer is correct based on "answer" and "correct_when"
attributes of form fields and provided user input. |
xowf::WorkflowPage instproc call_action |
|
Call the specified action in the current workflow instance. |
xowf::WorkflowPage instproc call_action_foreach |
|
Call the specified action for each of the specified pages denoted
by the list of page names |
xowf::WorkflowPage instproc childpage |
|
Return the child page of the current object with the provided
name. |
xowf::WorkflowPage instproc footer |
|
Provide a tailored footer for workflow definition pages and
workflow instance pages containing controls for instantiating
forms or providing links to the workflow definition. |
xowf::WorkflowPage instproc get_action_obj |
|
Check if the action can be executed in the current state,
and if so, return the action_obj. |
xowf::WorkflowPage instproc get_revision_sets |
|
Return a list of ns_sets containing revision_id, creation_date,
creation_user, creation_ip, and state for the current workflow
instance. |
xowf::WorkflowPage instproc is_wf |
|
Check, if the current page is a workflow page (page, defining a workflow) |
xowf::WorkflowPage instproc is_wf_instance |
|
Check, if the current page is a workflow instance (page, referring to a workflow) |
xowf::WorkflowPage instproc post_process_dom_tree |
|
post-process form in edit mode to provide feedback in feedback mode |
xowf::WorkflowPage instproc post_process_form_fields |
|
Propagate the feedback mode setting of this workflow page to the
supplied formfields. |
xowf::WorkflowPage instproc render_form_action_buttons |
|
Render the defined actions in the current state with submit buttons |
xowf::WorkflowPage instproc render_form_action_buttons_widgets |
|
With the given set of buttons, produce the HTML for the button
container and the included inputs. |
xowf::WorkflowPage instproc render_icon |
|
Provide an icon or text for describing the kind of application. |
xowf::WorkflowPage instproc render_thumbnails |
|
Renderer of the thumbnail file(s) |
xowf::WorkflowPage instproc schedule_action |
|
Schedule the specified action for the current workflow instance at
the given time. |
xowf::WorkflowPage instproc schedule_job |
|
Schedule the specified Tcl command for the current package
instance at the given time. |
xowf::WorkflowPage instproc solution_set |
|
Compute solution set in form of attribute=value pairs
based on "answer" attribute of form fields. |
xowf::WorkflowPage instproc stats_record_count |
|
Record that the specified question was used. |
xowf::WorkflowPage instproc stats_record_detail |
|
Record the stat detail of the question. |
xowf::WorkflowPage instproc wf_context |
|
Return for a workflow page the workflow context object. |
xowf::WorkflowPage instproc www-edit |
|
Hook for editing workflow pages |
xowf::WorkflowPage instproc www-view |
|
Provide additional view modes:
- edit: instead of viewing a page, it is opened in edit mode
- view_user_input: show user the provided input
- view_user_input_with_feedback: show user the provided input with feedback |
xowf::after-instantiate |
|
Callback when this an xowf instance is created |
xowf::include_get |
|
Implement inclusion of workflow definitions. |
xowf::migrate_from_wf_current_state |
|
|
xowf::test_item::Answer_manager instproc achieved_points |
|
Calculate the achieved_points dict for an exam submission. |
xowf::test_item::Answer_manager instproc allow_answering |
|
Tell if specified IP address is allowed to answer the exam. |
xowf::test_item::Answer_manager instproc answer_form_field_objs |
|
Instantiate the form_field objects of the provided form based on
form_info. |
xowf::test_item::Answer_manager instproc answers_panel |
|
Produce HTML code for an answers panel, containing the number
of participants of an e-assessment and the number of
participants, who have already answered. |
xowf::test_item::Answer_manager instproc countdown_timer |
|
Accepted formats for target_time, determined by JavaScript
ISO 8601, e.g. |
xowf::test_item::Answer_manager instproc create_workflow |
|
Create a workflow based on the template provided in this
method for answering the question for the students. |
xowf::test_item::Answer_manager instproc delete_all_answer_data |
|
Delete all instances of the answer workflow |
xowf::test_item::Answer_manager instproc delete_scheduled_atjobs |
|
Delete previously scheduled atjobs
ns_log notice "#### delete_scheduled_atjobs" |
xowf::test_item::Answer_manager instproc exam_results |
|
Return results either as HTML table, as HTML chart or as
csv. |
xowf::test_item::Answer_manager instproc export_answer |
|
Export the provided question and answer in GNU rectuil format. |
xowf::test_item::Answer_manager instproc export_file_submission |
|
Get all nonempty file form-fields and add these to a zip
file. |
xowf::test_item::Answer_manager instproc get_IPs |
|
Get the IP addresses for the given revision set. |
xowf::test_item::Answer_manager instproc get_answer_attributes |
|
Extracts wf instances as answers (e.g., extracting their
answer-specific attributes) |
xowf::test_item::Answer_manager instproc get_answer_wf |
|
return the workflow denoted by the property wfName in obj |
xowf::test_item::Answer_manager instproc get_duration |
|
Get the duration from a set of revisions and return a dict
containing "from", "fromClock","to", "toClock", "seconds", and
"duration". |
xowf::test_item::Answer_manager instproc get_exam_results |
|
Retrieve a property value from the exam statistics result
page. |
xowf::test_item::Answer_manager instproc get_label_from_options |
|
|
xowf::test_item::Answer_manager instproc get_non_empty_file_formfields |
|
|
xowf::test_item::Answer_manager instproc get_wf_instances |
|
get_wf_instances: return the workflow instances |
xowf::test_item::Answer_manager instproc grading_dialog_setup |
|
Define the modal dialog and everything necessary for reusing
this dialog for multiple occasions. |
xowf::test_item::Answer_manager instproc grading_scheme |
|
Return the grading scheme object based on the provided short
name. |
xowf::test_item::Answer_manager instproc grading_table |
|
Produce HTML markup based on a dict with grades as keys and
counts as values. |
xowf::test_item::Answer_manager instproc last_time_in_state |
|
Loops through revision sets and retrieves the latest date
where state is equal the specified value. |
xowf::test_item::Answer_manager instproc last_time_switched_to_state |
|
Loops through revision sets and retrieves the latest date
where state is equal the specified value. |
xowf::test_item::Answer_manager instproc marked_results |
|
Return for every participant the individual results for an exam |
xowf::test_item::Answer_manager instproc participant_result |
|
|
xowf::test_item::Answer_manager instproc participants_table |
|
This method returns an HTML table containing a row for every
participant with Name and short summary information. |
xowf::test_item::Answer_manager instproc postprocess_question_html |
|
Post-process the HTML of a question by adding information of
the student as data attributes, such as achieved and
achievable points, setting CSS classes, mangling names of
composite questions to match with the data in achieved_points, |
xowf::test_item::Answer_manager instproc pretty_formfield_name |
|
|
xowf::test_item::Answer_manager instproc pretty_period |
|
|
xowf::test_item::Answer_manager instproc prevent_multiple_tabs |
|
Prevent answering the same survey from multiple, concurrently
open tabs. |
xowf::test_item::Answer_manager instproc recutil_create |
|
Create recfile |
xowf::test_item::Answer_manager instproc render_answers |
|
Return the answers in HTML format in a somewhat printer
friendly way, e.g. |
xowf::test_item::Answer_manager instproc render_answers_with_edit_history |
|
Analyze the student submissions an find situations, where input
is "cleared" between revisions and return the HTML rendering. |
xowf::test_item::Answer_manager instproc render_filter_bar |
|
Render a bar to filter, sort and export exam submissions. |
xowf::test_item::Answer_manager instproc render_full_submission_form |
|
Compute the HTML of the full submission of the user with all
form fields instantiated according to randomization. |
xowf::test_item::Answer_manager instproc render_print_button |
|
Render a simple print button for the unaware that makes it
easy to print the exam protocol to PDF and use e.g. |
xowf::test_item::Answer_manager instproc render_proctor_images |
|
Render proctor images the provided submission. |
xowf::test_item::Answer_manager instproc render_submission=edit_history |
|
|
xowf::test_item::Answer_manager instproc render_submission=exam_protocol |
|
|
xowf::test_item::Answer_manager instproc render_submissions=edit_history |
|
|
xowf::test_item::Answer_manager instproc results_table |
|
Render the results in format of a table and return HTML. |
xowf::test_item::Answer_manager instproc revisions_up_to |
|
Return the revisions of the provided revision set up the
provided revision_id. |
xowf::test_item::Answer_manager instproc runtime_panel |
|
Return statistics for the provided object in the form of HTML:
- minimal statistics: when view default
- statistics with clickable revisions: when view = revision_overview
- per-revision statistics: when view = revision_overview and revision_id is provided |
xowf::test_item::Answer_manager instproc set_exam_results |
|
ns_log notice "SES '$property' bytes [string length $value]" |
xowf::test_item::Answer_manager instproc state_periods |
|
Return for the provided revision_sets the time ranges the
workflow was in the provided state. |
xowf::test_item::Answer_manager instproc student_submissions_exist |
|
Returns 1 if there are student submissions. |
xowf::test_item::Answer_manager instproc submissions |
|
Return an ordered composite built form all student submission,
potentially filtered via the provided values. |
xowf::test_item::Answer_manager instproc time_window_setup |
|
Check the provided time_window values, adjust it if necessary,
and make sure, according atjobs are provided. |
xowf::test_item::Answer_manager instproc waiting_room_message |
|
Renders the waiting room message, including the JavaScript
reacting to actions from the backend. |
xowf::test_item::Answer_manager instproc {dom class add} |
|
|
xowf::test_item::Answer_manager instproc {dom class remove} |
|
|
xowf::test_item::Answer_manager instproc {dom node appendXML} |
|
|
xowf::test_item::Answer_manager instproc {dom node delete} |
|
|
xowf::test_item::Answer_manager instproc {dom node replaceXML} |
|
|
xowf::test_item::Answer_manager instproc {dom node replace} |
|
|
xowf::test_item::Answer_manager instproc {result_table per_participant} |
|
|
xowf::test_item::Answer_manager instproc {result_table per_question} |
|
|
xowf::test_item::AssessmentInterface instproc add_to_fc |
|
|
xowf::test_item::AssessmentInterface instproc assert_answer_instance |
|
we could include as well {[$o property answer] ne ""} in case we initialize it |
xowf::test_item::AssessmentInterface instproc assert_assessment |
|
|
xowf::test_item::AssessmentInterface instproc assert_assessment_container |
|
|
xowf::test_item::AssessmentInterface instproc export_links |
|
Creates export links and markup |
xowf::test_item::AssessmentInterface instproc list_equal |
|
Compare two lists for equality. |
xowf::test_item::AssessmentInterface instproc render_feedback_files |
|
Render feedback files which are children of the submit
instances. |
xowf::test_item::AssessmentInterface instproc replace_in_fc |
|
|
xowf::test_item::Question_manager instproc add_seeds |
|
Add property "seed" to the provided object, consisting of a
list of the specified number of random values starting with a
base seed. |
xowf::test_item::Question_manager instproc aggregated_form |
|
Compute an aggregated form (containing potentially multiple
questions) based on the chunks available in question_infos. |
xowf::test_item::Question_manager instproc combined_question_form |
|
For the provided assessment, return a combined question_form
as a single (combined) form, containing the content of all
question forms. |
xowf::test_item::Question_manager instproc current_question_form |
|
Return the current form object of the provided assessment. |
xowf::test_item::Question_manager instproc current_question_name |
|
|
xowf::test_item::Question_manager instproc current_question_number |
|
Translate the position of an object into its question number
(as e.g. |
xowf::test_item::Question_manager instproc current_question_obj |
|
Load the current question obj based on the current question
name. |
xowf::test_item::Question_manager instproc current_question_title |
|
In case, with_numbers is provided, return a internationalized
title for the question, such as "Question 1". |
xowf::test_item::Question_manager instproc describe_form |
|
Call for every form field of the form_obj the "describe"
method and return these infos in a form of a list. |
xowf::test_item::Question_manager instproc disable_text_field_feature |
|
This function changes the form_constraints of the provided
form object by adding "$feature=false" properties to textarea or
text_fields entries. |
xowf::test_item::Question_manager instproc disallow_paste |
|
This function changes the form_constraints of the provided
form object by adding "paste=false" properties to textarea or
text_fields entries. |
xowf::test_item::Question_manager instproc disallow_spellcheck |
|
This function changes the form_constraints of the provided
form object by adding "spellcheck=false" properties to textarea or
text_fields entries. |
xowf::test_item::Question_manager instproc disallow_translation |
|
This function disallows translation of the full page by
setting the HTML5 "translate" attribute of the body to "no". |
xowf::test_item::Question_manager instproc exam_base_time |
|
Calculate the exam base time for a student. |
xowf::test_item::Question_manager instproc exam_configuration_block |
|
|
xowf::test_item::Question_manager instproc exam_configuration_modifiable_field_names |
|
Return the names of the modifiable field names in the current
state. |
xowf::test_item::Question_manager instproc exam_configuration_popup |
|
Render the exam configuration popup, add it as a
content_header (to avoid putting it to the main workflow form,
since nested FORMS are not allowed) and return the rendering
of the button for popping-ip the configuration modal. |
xowf::test_item::Question_manager instproc exam_configuration_render_fields |
|
Render the provided fields via tDOM. |
xowf::test_item::Question_manager instproc exam_info_block |
|
Provide a summative overview of an exam. |
xowf::test_item::Question_manager instproc exam_target_time |
|
Calculate the exam target time (finishing time) based on the
duration of the exam plus the provided base_time (which is in
the format returned by SQL) |
xowf::test_item::Question_manager instproc get_pool_questions |
|
Obtain for the specs in the pool_question_obj potential
replacement items in form of a replacement dict. |
xowf::test_item::Question_manager instproc get_pool_replacement_candidates |
|
When fc_dict contains no item_types, return empty and signal
in the logfile. |
xowf::test_item::Question_manager instproc goto_page |
|
ns_log notice "===== goto_page $position"
Set the position (test item number) of the workflow
(exam). |
xowf::test_item::Question_manager instproc hint_box |
|
|
xowf::test_item::Question_manager instproc hint_boxes |
|
Render the hint boxes (feedback and correction notes) for a
question object. |
xowf::test_item::Question_manager instproc initialize |
|
Initialize the question manager for a certain workflow
instance. |
xowf::test_item::Question_manager instproc item_substitute_markup |
|
Substitute everything item-specific in the text, including
markup (handling e.g. |
xowf::test_item::Question_manager instproc load_question_objs |
|
Load the question objects for the provided question names and
return the question objs. |
xowf::test_item::Question_manager instproc max_items |
|
|
xowf::test_item::Question_manager instproc minutes_string |
|
Get an attribute of the original question |
xowf::test_item::Question_manager instproc more_ahead |
|
Return true, when this is for the current user not the last
question. |
xowf::test_item::Question_manager instproc nth_question_form |
|
Return the question_info of the nth form (question) of the
assessment. |
xowf::test_item::Question_manager instproc nth_question_obj |
|
Return the nth question object of an assessment (based on
position). |
xowf::test_item::Question_manager instproc pagination_actions |
|
Create actions used for pagination. |
xowf::test_item::Question_manager instproc pagination_button_css_class |
|
|
xowf::test_item::Question_manager instproc percent_substitute |
|
|
xowf::test_item::Question_manager instproc percent_substitute_in_form |
|
Perform percent substitution in the provided HTML,
form_constraints and disabled_form_constraints and return the
result as a dict. |
xowf::test_item::Question_manager instproc points_string |
|
Get an attribute of the original question |
xowf::test_item::Question_manager instproc pretty_ncorrect |
|
|
xowf::test_item::Question_manager instproc pretty_nr_alternatives |
|
|
xowf::test_item::Question_manager instproc pretty_shuffle |
|
|
xowf::test_item::Question_manager instproc qualified_question_names |
|
Return the question names with parent folder in form of an
item-ref. |
xowf::test_item::Question_manager instproc question_count |
|
Return the number questions in an exam. |
xowf::test_item::Question_manager instproc question_info |
|
Returns a dict containing "form", "title_infos",
"form_constraints" "disabled_form_constraints"
"randomization_for_exam" "autograde" and "question_objs". |
xowf::test_item::Question_manager instproc question_info_block |
|
Provide question info block. |
xowf::test_item::Question_manager instproc question_is_autograded |
|
Return boolean information whether this question is autograded. |
xowf::test_item::Question_manager instproc question_names |
|
Return the names of the questions of an assessment. |
xowf::test_item::Question_manager instproc question_objs |
|
For the provided assessment object, return the question
objects in the right order, depending on the shuffle_id. |
xowf::test_item::Question_manager instproc question_overview_block |
|
|
xowf::test_item::Question_manager instproc question_property |
|
Get an attribute of the original question |
xowf::test_item::Question_manager instproc question_randomization_ok |
|
|
xowf::test_item::Question_manager instproc question_statistics_block |
|
When we have results, we can provide statistics |
xowf::test_item::Question_manager instproc question_summary |
|
Provide a summary of all questions of an exam. |
xowf::test_item::Question_manager instproc questions_without_minutes |
|
Compute the number of questions without provided time |
xowf::test_item::Question_manager instproc render_describe_infos |
|
|
xowf::test_item::Question_manager instproc replace_pool_question |
|
|
xowf::test_item::Question_manager instproc replace_pool_questions |
|
Replaces all pool questions for the exam by random items. |
xowf::test_item::Question_manager instproc shuffled_index |
|
Return the shuffled index position, in case shuffling is turned on. |
xowf::test_item::Question_manager instproc title_infos |
|
When max_items is nonempty, return the title infos of all
items. |
xowf::test_item::Question_manager instproc total |
|
Sum up the values of the provided property from title_infos |
xowf::test_item::Question_manager instproc total_minutes |
|
Compute the duration of an exam based on the form_info dict. |
xowf::test_item::Question_manager instproc total_minutes_for_exam |
|
Compute the total time of an exam, based on the minutes
provided by the single questions. |
xowf::test_item::Question_manager instproc total_points |
|
Compute the maximum achievable points of an exam based on the
form_info dict. |
xowf::test_item::Renaming_form_loader instproc answer_attributes |
|
Return all form-loader specific attributes from
instance_attributes. |
xowf::test_item::Renaming_form_loader instproc answer_for_form |
|
Return answer for the provided formName from
instance_attributes of a single object. |
xowf::test_item::Renaming_form_loader instproc answers_for_form |
|
Return a list of dicts for the provided formName from the
answers (as returned from [answer_manager get_answer_attributes ...]). |
xowf::test_item::Renaming_form_loader instproc form_name_based_attribute_stem |
|
Produce from the provided 'formName' an attribute stem for the
input fields of this form. |
xowf::test_item::Renaming_form_loader instproc map_form_constraints |
|
Rename form constraints starting with $oldName into $newName. |
xowf::test_item::Renaming_form_loader instproc name_to_question_obj_dict |
|
Produce a dict for attribute name to question_obj |
xowf::test_item::Renaming_form_loader instproc rename_attributes |
|
Perform attribute renaming in the provided form_obj and return
this form_obj. |
xowf::test_item::grading::Grading instproc calc_grade |
|
Return a numeric grade for an exam submission based on
percentage and the property "percentage_mapping". |
xowf::test_item::grading::Grading instproc grading_dict |
|
Important dict members of "achieved_points":
- achievedPoints: points that the student has achieved in her exam
- achievablePoints: points that the student could have achieved so far
- totalPoints: points that the student can achieve when finishing the exam
achieved_points: {achievedPoints 4.0 achievablePoints 4 totalPoints 4}
percentage_mapping: {50.0 60.0 70.0 80.0}
While "achievedPoints" and "achievablePoints" are calculated by
iterating over the submitted values, "totalPoints" contains
the sum of points of all questions of the exam, no matter if
these were answered or not. |
xowf::test_item::grading::Grading instproc init |
|
Provide a default, self-descriptive title |
xowf::test_item::grading::Grading instproc print |
|
Return a dict containing the members "panel" and "csv"
depending on the type of rounding options |
xowf::test_item::grading::GradingNone instproc grade |
|
No grading scheme defined, return grading 0. |
xowf::test_item::grading::GradingRoundNone instproc grade |
|
Return a numeric grade for an exam submission based with no
special rounding (2 digits). |
xowf::test_item::grading::GradingRoundPercentage instproc grade |
|
Return a numeric grade for an exam submission based on rounded
percentage. |
xowf::test_item::grading::GradingRoundPoints instproc grade |
|
Return a numeric grade for an exam submission based on rounded
points. |
xowf::test_item::grading::flush_grading_schemes |
|
Helper to hide the implementation details of the flushed cache. |
xowf::test_item::grading::grading_scheme_wf_item_id |
|
Return and cache the item_id of the edit-grading-scheme.wf. |
xowf::test_item::grading::load_grading_schemes |
|
Load the actual grading scheme objects defined for the package_id
and parent_id. |
xowf::test_item::tdom_render |
|
|