Features unique to HUJI moodle

General structure:
  • One instance of Moodle per academic year
  • All HUJI and CSE users effectively exist in all instances of Moodle. (Accounts are automatically created as required.) User ids and names are unique across all instances.
  • Courses, including Teachers, TAs, Students and Groups are built and maintained from information from Maarachot Meida and Minhal Talmidim but can be overridden.
  • Options for Sister courses, Kid courses and Extra courses where mapping from Shnaton course to required Moodle course is not one-to-one.
  • Additional hierarchy of Moodle courses, termed Rooms. See My rooms below
  • Certain features are available in CSE courses only. (Whether a CSE course is considered a CSE course is configurable.)

  • Administration:
    • Tool for Coordinators to create Shiur, Tirgul or Lab kid courses instead of, or in additon to, the parent course according to the types of groups specified in the Shnaton for the parent course.
  • Authentication:
    • Single sign-on between different instances of Moodle (including instances running Moodle version 1). Requires access to databases of other instances. Directionality and minimum authentication levels are configurable (No longer used.)
    • The Manual, IdNG* and SAML authentication plugins set the session's authentication level according to the authentication token provided. (Many users own tokens at several levels.) Function require_login() can optionally specify the authentication level required. The user is redirected to the login page if he attempts to perform an action that requires authentication at a higher level than the session's current level. (Under webservices, he is denied access.) The login window specifies the types of token allowed at the required authentication level. (The Forgotten link is appropriate to the authentication level.)
    • A higher authentication level is required where access to CSE courses, modules or sections is restricted to authenticated users. (Term CSE users is used instead of Authenticated users where relevant.) Even if access to a CSE course is not restricted to authenticated users, so as to avoid confusion reauthentication is required if the session's current level is too low.
    • Minimal permissible authentication level can be set for users who own more than one token
    • Single sign-on with CSE CourseAdmin system
    • The IdNG* authentication plugin authenticates against the IdNG password server. If the server fails, authentication automatically changes to Manual. (Moodle has encrypted copies of all non-OTP tokens.) As soon as the server recovers, authentication reverts to IdNG.
  • Backup, Import and Restore:
    • When backup option Backup for restore to this moodle is set, course and module files are not included in the backup. Instead they are saved to a central repository (for this instance of moodle) from which Restore takes them. This ensures that saved backups (automated and manual) occupy about the same space as the Moodle data directory, irrespective of how many there are.
    • User profiles and preferences are not included in the backup.
    • One-step backup and restore. See Copy from Moodle below.
    • Roles and enrolments, and groups and groupings are never backed-up or deleted. Blocks are not backed up by default and are never deleted.
    • When restoring from Moodle1, various problems with files are reported, rather than causing the restore to abort
    • Bug fix: In automated backups, if an existing backup file is broken, error is caught
    • Moodle URLs are canonicalized
  • Blocks:
    • Administration block:
      • Node Course administration:
        • Node Reset removes complete contents of course (i.e. resources, activities and questions but not blocks, enrolments, roles, groups or groupings)
        • Node Copy from Moodle is a one-step backup and restore. Copies any course from any instance of Moodle at HUJI. Choose to copy quizzes and question bank, just question bank, course contents (excluding blocks and legacy files), or legacy files. Manually-created groups created, including their associated access restrictions, are preserved.
          When copying from Moodle1:
          • Automatically upgrades assignments, including assignments of type UploadPDF (using the PDF submission and PDF feedback plugins).
          • For users with appropriate capability, option to copy also userdata, including attachments and embedded files. (Currently limited to forums and glossaries.) Note: If userdata is not being copied, News forum is also not copied.
    • Login block:
      • If SAML authentication is enabled:
        • If it is the default, block contents are an embedded SAML login window (plus a Login to this web site only link). On successful authentication, the page is reloaded.
        • Otherwise, there is a link Login with SAML at the bottom of the block
    • Navigation block:
      • Node Home:
        • Leaf node All courses replaces Courses node
        • Part of course hierarchy is under node My rooms rather than My courses
        • Nodes My courses and My rooms:
          • Include also nodes for courses and categories to which user is assigned but not enrolled
          • Node My courses, or My rooms, is shown only if user has a course, or room, respectively
          • On frontpage, if node exists, it is initially expanded
          • Node My courses is not shown in a room and node My rooms is not shown in a course
        • Course nodes include nodes Sections and Subsections instead of individual section nodes
        • Node Sections includes section nodes
        • Node Subsections includes a leaf node for each subsection type used. See Subsections
        • Course node is dimmed if not available and not redirected and, for unprivileged user, not automatically redirected to Moodle1
    • Quiz navigation block:
      • Tooltips of question buttons show also first few words of question text
    • New blocks:
      • CSE CourseAdmin and CoursePreview
      • HUJI Links: Per-academic unit and per-course links, configurable
      • Notice
      • Office hours: Teacher and TA office info. If info is missing, Teachers and TAs see link to block configuration page (regardless of editing mode)
      • Search courses: See Search courses
      • Shnaton
      • Warnings:
        • Teacher view: Terse summary of course redirection, enrolability and availability to authenticated or unauthenticated users, cluding start and end dates
        • Student view: Date of automatic removal of enrolment for self-enrolled students
        • Guest view: End of period of guest access
    • Contributed blocks:
      • Quickfind List:
        • Search by one or more of Hebrew and English first and last names, email name component, and ID
        • Search words for names may be whole or part words, prefixes or words to exclude
        • Disabled javascript autosearch
        • Users with role of Coordinator in any category context can use the block.
          However, public profiles of other users show only courses
          1. in categories in which the viewer's role of Coordinator is assigned or inherited, or
          2. in which the other user has a contact role
        • Various bugfixes; Title change
    • Bug fixes: Moving blocks in three-column themes in right-to-left mode
  • Bug fixes, improvements to help strings, and other minor fixes: Numerous.
    Major bug fix: Each of the numerous calls to Postgres function pg_field_type() increased bandwith from database to webserver by a factor of about 100. (On each call, all types are transferred.)
  • Calendar:
    • For course events, event title in export file is prefixed with course ID
    • Category events are disabled. (Collecting category events is too sluggish.)
    • Bug fix: Don't display Calendar monthly block for guest user
  • Course categories:
    • Allow courses to have more than one parent category
  • Course formats:
    • Grid format:
      • Various small fixes
  • Course settings:
    • Access key for test users
    • Option to redirect (if not visible)
    • Subsection names and styles
    • Rename only enrollable roles
    • New Guest access options. See Guest enrolment
    • Attempting to make a course available, or opening guest access to the world, displays an appropriate warning and requires the users's agreement
    • Cannot change to visible if visible in Moodle1 (and vice versa)
    • Option to specify that the course is a sister of some other course. Students are automatically enrolled to the other course and, optionally, automatically redirected to it. Groups are automatically created in courses with sisters for their own students and each of their sisters.
  • Course listings:
    • All courses, including unavailable courses, are listed.
    • Course is dimmed and icons are not shown if not available and not redirected and not automatically redirected to Moodle1
    • Guest access and Self enrolment icons are shown only during the period of time that they are allowed
    • Special icons for redirected courses and courses automatically redirected to Moodle1
    • Complete category hierarchy of each course (instead of just parent category)
  • Course view: If course is unavailable, and not redirected, unprivileged users are automatically redirected to the course in Moodle1, if it is available or redirected
  • Dashboard:
    • No On-line users or Private files blocks
    • Option on dashboard page for user to set it as his default homepage.
      If dashboard is set as the user's homepage, option on frontpage for him to set it as his default homepage.
  • Editor:
    • Fixed problem with cutting and pasting of internal links from one editor window to another. See e.g. https://moodle.org/mod/forum/discuss.php?d=202500
    • Ensured that id and name tags are not stripped before editing
    • Atto:
      • Ensured that font tags are not stripped
      • Disabled undo and redo keyboards shortcuts (Ctrl-Y and Ctrl-Z)
    • TinyMCE:
      • Added autosave (using TinyAutoSave plugin). Each editor instance has its own save buffer. Editor contents are saved once a minute (provided there are at least 50 characters). Save buffer is discarded after 20 minutes. Contents can be restored by clicking on lifebelt toolbar icon.
      • Set forced_root_block to empty
  • Enrolled users (aka Participants) and Other users
    • Enrolled users (aka Participants) page:
      • Links to Enrolled user and Secondary role role definitions
      • Enrolment popup:
        • Reverted to pre-3.4 version (Autocomplete is too sluggish, even if search is set not to begin until string is at least 5 characters.)
        • All users matching search criteria are listed. Users that already have a role are marked as Enrolled (i.e. a Participant) or Assigned (i.e. an Other user) and cannot be enrolled
      • Filter menu:
        • Roles: Only Enrollable roles and Secondary roles. If the Secondary role selected is assigned to a non-participant, link See also Other users is shown.
        • Enrolment methods: Except Guest access
        • Status types: Not shown
        • Inactive since options: Not shown
      • Column Roles: The primary role is shown but only secondary roles can be assigned and unassigned. See Roles
      • Column Groups: All groups are shown but users can be added to, or removed from, only groups that are not automatically-maintained
      • Column Status: Information is shown, and users can be unenrolled, only for manual enrolments
        Information includes modifier and modification time but not enrolment period
      • If not paged, total number of users listed is shown
      • New option in With selected users.. menu: List ID numbers
    • Other users page:
      • Links to Other user and Secondary role role definitions
      • Users assigned at system level are not shown.
    • In both enrolment popups (javascript) and user selectors (non-javascript):
      • At course level;
        • Users can be assigned only to enrollable roles (in Enrol users) or hidden roles (in Other users). See Roles
        • All users matching the search conditions are displayed but only users without either an enrollable or a hidden role can be enrolled
      • Context is system context, rather than course context (i.e. email is shown, rather than IDnumber)
      • Help icon shows that search is by Hebrew or English name, email or email name component, or full ID; for new users, by full email or ID; for CSE courses also by CSE login.
        (Search words for names may be prefixes.)
    • User selectors: If there are more than 100 potential users, none are listed
  • Enrolment plugins:
    • Auto enrolment: Used for Teachers listed in the Shnaton and Students registered through Minhal Talmidim. Users cannot be unenrolled.
    • Guest enrolment:
      • New configuration options:
        • Authenticated users only
        • Start date
        • End date
      • Icon only when currently enabled
      • New additional icon when authenticated users only
    • Manual enrolment:
    • Self enrolment:
      • Icon only when currently enabled
    Self and Manual enrolments are automatically converted to Auto enrolments, as appropriate.
    Self enrolments are deleted at the end of the end of the enrolment period.
    If a user's enrolment is Manual or Self, his name is marked with a small red or green asterisk everywhere within the course
  • Experimental:
    • Optional parameter iframe forces the Embedded layout.
    • Possibility for a course to be in a different instance of Moodle. If the other instance is seemingly identical, actual location of course is transparent. (Useful when a course must be restored from a backup of the database.)
  • File manager:
    • Option for a file uploaded to the draftarea to replace the existing file. Saves first deleting the existing file when only one file may be saved.
  • Forms:
    • Form elements:
      • Editor:
        • Option to use Plain text editor, irrespective of user's preferred editor.
  • Gradebook:
    • Added functions compulsory, cond, and maxavg, and operators <, >, and & to calculations
    • Rewrote help pages and popups
    • Grader report:
      • If Show quick feedback is enabled, when editing is turned off mouseover bubbles (aka tooltips) display the feedback
      • Bug fix: Ensured that student names are not truncated in Hebrew mode when avatars are not shown
      • Group menu even when group mode is No groups
      • Changes since last page load are highlighted in pink. Notice at top of page explaining whether highlighted changes have been saved and how to enable/disable automatic saving.
    • Single view:
      • Changes since last save are highlighted in pink. Notice at top of page explaining that highlighted changes have not been saved
      • Warning if user attempts to navigate away before changes have been saved
    • Export:
      • Plugin GR for export to the Faculty of Natural Sciences GR grading system
      • Plugin CA for export to the CSE CourseAdmin system
      • For most formats, group menu even when group mode is No groups
    • Import:
      • If the imported file is based on an exported file, then the default mappings of the column headers are set appropriately
      • User can be identified by CSE login
      • ID number can be 8- or 9-digit, or old ID (if student ID has changed)
    • Setup/Course grade settings and Setup/Preferences: Grader Report:
      • Option to use Plain text editor for feedback in the Gradebook and Assignments. This avoids HTML tags in Gradebook Quick feedback and in column Feedback comments in the Assignment View/grade all submissions page
    • New grade report type Chart: Bar chart of grades for any grade item
    • New grade display type Real or Percentage: Grade items are displayed as Real; Category and Course totals are displayed as a Percentage.
    • Support for Moadim: If support for Moadim is enabled:
      • The Course total category will be renamed to Targil. This becomes the default category
      • The Gradebook Setup pages will show a new item - Exam. Category Targil and item Exam will be in category Final grade. The Final grade can be specified in the usual way - by aggregation or by calculation. (Items Targil and Exam are available for calculation.) The Final grade and Exam grade can be locked and hidden per Moed
      • In the Gradebook View pages: There will show four new items - Exam1, Final1, Exam2 and Final2. Setting the grade for Exam1 or Exam2 will automatically set the grade for Final1 or Final2, respectively (according to how the Final grade is specified) - unless it is overridden.
      Support for Moadim can be disabled. Alternatively, a third Moed can be added.
    • A grade item can be marked as Compulsory. If a student does not have a grade for such an item, he will not be given a grade for its category
    • If a Minimum grade to pass is set on any grade item and a student's grade is lower, his grade on the category is reduced to one less than the category's Grade to pass (if set) if it would otherwise be higher
    • Bug fixes:
      • If there is a non-existent idnumber in an item's grade calculation, redirect to the calculation page instead of permanently recalculating
      • In item settings page, Hidden and Hidden until cannot both be enabled
    • Even if Unlimited grades is enabled (in Site/Grades/General settings), Multiplicator and Offset (in grade item settings), do not put grade outside the item's limits
  • Groups:
    • Automatically-maintained groups:
      Cannot add or remove members
      Members added manually are shown with an asterisk and are not automatically deleted in the nightly update.
      Members deleted manually are automatically restored in the nightly update.
  • Language:
    • Display language menu on all pages where language is not forced
    • Names of course categories, courses and users are shown in current language (Hebrew or English)
    • Likewise: If unchanged from default, names of subsections, news forum, default question categories and type of attendance recording are displayed in the current language. (Achieved without use of multilang filter)
  • Logging:
    • Full logging of enrolments and unenrolments, role assignments and unassignments
    • No logging of calendar events
    • Full logging of all webservice requests, including username, tokenid, function name and parameter values
  • Messages:
    • List also messages sent to self.
    • Message-ID of mailed messages includes the Moodle message ID
    • Search users by one or more of Hebrew and English first and last names, email name component, and ID
  • Module settings:
    • Restrict access: Option to restrict access either to authenticated users only, or to enrolled users only
    • Common module settings: Option to place item within a subsection
  • Modules:
    • Assignment:
      • Submission types:
        • File submission:
          • Option to submit only PDF files.
          • If the Moodle assignment is associated with a CSE CourseAdmin assignment, option for files to be automatically processed by the CSE Bodek code-checker as they are submitted. If Bodek is enabled:
            • On uploading a new file into the file picker, any existing file is automatically, deleted
            • Bodek's response file is listed together with the actual submission file (except in the student's File Manager)
            • There are options to limit the number of submissions and for the teacher to regenerate a student's Bodek response file.
            • Option for all submitted files to be batch-processed by an alternative code-checker. This code-checker's response file is listed together with any other feedback files. It can also generate output to the CourseAdmin system.
            • Additional Grading action options: Generate/Regenerate all Bodek submission PDFs and Generate/Regenerate all Bodek feedback PDFs
        • PDF submission (renamed to File submissions (Alternative PDF editor)):
          • Automatically rebuild PDF if version of submitted file cannot be processed
          • Use Maximum number of uploaded files and Maximum submission size of the File submissions plugin (to avoid duplicate entries in the assignment Settings).
        • GIT submission: New submission type available if the Moodle assignment is associated with a CSE CourseAdmin assignment: Triggers the Bodek system to generate a PDF file from the contents of the student's GitHub repository. The PDF is listed together with the actual submission file (except in the student's File Manager).
        The following types of file are rejected:
        • PDF files with pagesize larger than A4/Letter
        • PDF files with irreplaceable fonts (as occastionally generated by CamScanner)
        • If only PDF files are allowed, all other types of file
        • If Bodek is enabled, files that are not archive files
        There is If File submissions is enabled, all other types of file are submitted. If File submissions (Alternative PDF editor) is enabled, the submission fails. Either way, the rejected files are deleted.
        (There is an option to disable the rejection of PDF files.)
        Note: Only one of File submissions and File submissions (Alternative PDF editor) can be enabled.
      • Feedback types:
        • Offline grading worksheet:
          • Detailed explanation on uploading an invalid gradesheet.
        • Built-in PDF editor (aka Annotate PDF):
          • Additional Grading action options: Prepare all PDF images, Save all annotated PDFs
          • Response PDF generated using a UTF-8 font
          • Error message if submitted PDF cannot be processed
          • If the Moodle assignment is associated with a CSE CourseAdmin assignment, option for the final grade to be automatically calculated from comments that are valid CourseAdmin penalty expressions. In place of the grade, both teacher and student see the list of CourseAdmin penalties - including page, points deducted and expression for each item, as well as total deduction. (Optional in View/grade all submissions page). In the response PDF, and the student's view of the online PDF and listing, the expanded version of the penalty expression is shown, as seen in the CourseAdmin website itself. There are Grading action options for the teacher to regenerate all response PDFs and to export all penalty expressions to the CourseAdmin system.
          • For team submissions, added warning that comments and annotations are not propagated to other team members until the submission is saved
          • Button RegeneratePDF alongside button Launch PDF editor... regenerates the page images. (Useful if ghostscript was broken when the images were generated.)
        • PDF feedback (renamed to Alternative PDF editor):
          • Cosmetic changes to Grade page to smoothly integrate Alternative PDF editor with built-in editor
      • Group submissions:
        • In Download all submissions, only one set of files per group is included. The name of each directory begins with the group name
        • In Upload multiple feedback files in a zip, the files are uploaded to all members of the Student's group
        • A Student that does not belong to any group, instead of belonging to the Default group of all such students, effectively belongs to his own group
      • View/grade all submissions page:
        • Show only enrolled users (suspended or otherwise)
        • If option Allow students to choose partners is enabled in the assignment Settings, there is an additional option Team leaders only.
          If enabled and no group is selected, only team leaders and students who do not belong to a team are shown.
          If enabled and a group is selected, only teamleaders who are members of the group, and students who do not belong to a team and are members of the group, are shown.
        • Additional Grading action option: Download filtered submissions (when Marking workflow is enabled)
        • Changes to wording so as to narrow table
      • Grading summary page:
        • If team submissions are enabled but students are not required to submit in teams, in addition to the number of teams and the number of team submissions with status Draft and Submitted, the number of students who do not belong to a team and the number of non-team submissions with status Draft and Submitted are shown
      • New Settings options:
        • Allow students to choose partners: If enabled, students choose their partners from within the assignment. The Grouping and Groups are created automatically and are not visible anywhere else in the course (except in the Groups Overview page). Students that already have partners, or have already submitted, cannot be added or removed from partnerships. However, a Student can delete his group's submsission.
        • Late penalty: Option to set a penalty for assignments submitted after the Due date (or student's Extension date). The penalty is an arithmetic expression. It can be overridden. It is recalculated if the Due date (or Extension date), or expression is changed, or if the override is cancelled. In the Assignment, the grade and Late penalty are shown separately. In the Gradebook, they are combined. If CourseAdmin penalties are used, the Late penalty is effectively a CourseAdmin penalty.
        • Allow submissions after Cut-off date: Option to allow a Student to declare that he will resubmit after the Cut-off date (or his personal Extension date). Useful if Require students click submit button is not set. If enabled, a Student can submit after the Cut-off date if he has not already submitted, or if he made the declaration before the Cut-off date. After the Cut-off date, he is required to indicate whether it is his final submission. The Late penalty expression (see above) can also depend on whether the student submitted after the Cut-off date.
        • Hide graders: Option to hide grader in Student view
        • Link to Personal forum associates the Assignment with a Personal forum. A Students' grade page will include a link to the most recent discussion that he started (or changed) in the forum.
        • Scale type of Submitted/Not submitted. If enabled, additional Grading action option Grade submissions by status sets all grades in Gradebook.
        • Hidden and Hidden until in section Grade: Hide/Show the assignment's item in the Gradebook.
          Note: The options exist also in other modules that use the Gradebook and do not use ratings or control the visibility of the grade item.
      • Bug fixes:
        • Bug in View/grade all assignments whereby collapsing any of the submission or feedback plugin columns broke the Javascript
        • Needs grading and the Require grading filter considered submissions for which the PDF editor had been launched as graded. The Require grading filter considered also submissions for which Save changes had been clicked as graded. Both now consider only submissions with a grade as graded.
        • Major bug whereby if Group submission was optional, all students who did not belong to any group effectively belonged to the same group
      • At least for the moment, continue to use the legacy grade page instead of the new Mustache grading user interface
      • Option for the Teacher to delete a Student's submission
      • Option for a Student to delete his own (and his partners') submission. Currently enabled only if Allow students to choose partners is enabled
      • Legacy grade page shows grader and date of grading
    • Attendance:
      • Radioboxes in Change attendance page can be toggled
      • Fixed bug whereby status was set to to the not marked value if scheduled task did not run until session was over
    • Database:
      • Various features were developed for the Medical and Dental Schools' Pinkas project and are described in Tools for the Medical School
      • In templates:
        • Required icons are displayed to left of label so that labels and input fields are aligned.
        • Bug fix: Align Text and URL labels with top of input field
        • Option to align Radiobuttons horizontally
    • Forum:
      • Anonymous forums
        • Forum may be Anonymous or Optionally anonymous. Default for Optionally anonymous forums can be anonymous or not anonymous.
          (Option to change from default is obviously available in Website only.)
        • If post is anonymous, name of poster is shown everywhere as Anonymous followed by a short identifier which is unique per discussion/user forum/user. No avatar is displayed.
        • Identity of poster is kept in database but never disclosed to any user
      • Message-ID of mailed messages includes the forum post ID
      • Per-post language mode:
        • If language is not forced, language mode that was active when post was created is remembered.
        • Each forum post is displayed according its remembered language
        • Directionality and alignment of HTML mail attachments is according to the post's remembered language
      • Warning message when opening a discussion in a forum with subscribed users in a course that is not available
      • When News forum is automatically created, it is always placed at top of page
      • Option Manual message unread marking: Alternative to Manual message read marking. Messages not marked as unread are taken to be read
      • Mailed posts include fullname (instead of shortname) of course
      • Option Rebuild groups moves discussions to the current group of users who have changed group since they started the discussion
      • Posts by a Teacher, TA or Coordinator are distinguished by a colored border
    • ForumNG:
      • Default Forum type is Study advice (see only own discussions) and activity name is Personal forum (ForumNG)
      • Option Rebuild groups moves discussions to the current group of users who have changed group since they started the discussion
      • Option Link to assignment associates the Personal forum with an Assignment. The discussion page will include a link to the Student's Assignment grade page.
      • If language is not forced, language mode that was active when post was created is remembered.
      • Posts by a Teacher, TA or Coordinator are distinguished by a colored border
    • H5P: Bug fix: Display of field Editor in H5P Settings depends on whether theme is Boost.
      But checked default site theme, rather than current theme. Fixed!
    • IPal:
      • For both Teacher and Student, polling times out and must be restarted every few minutes
      • Numerous bug fixes
    • Lesson:
      • Maximum number of attempts can be unlimited
      • A lesson can be configured to embed other moodle pages (from the same site) i.e. if they are included in an iframe, to display them without their surroundings blocks
    • Quiz:
      • Teacher can submit a saved attempt or unsubmit a submitted attempt.
      • When status of attempt is changed to abandoned, timecheckstate of attempt is not changed. If quiz closing time, or user or group override time, is changed to the future, status of attempts with status abandoned is changed to inprogress.
      • If a quiz slot is associated with a CSE CourseAdmin assignment, option for the grade to be automatically calculated from manual comments that are valid CourseAdmin penalty expressions. The manual comment editor is a plain text editor. In the student's view of the manual comment, the expanded version of the penalty expression is shown, as seen in the CourseAdmin website itself.
      • Results:Manual grading:
        • Main page:
          • Option to select one or more questions and print all selected questions, sorted either by question or by student.
            (Only manually graded questions can be selected.)
          • If any of the slots are associated with a CourseAdmin assignment, there are options to grade/regrade any such slot and export penalties to CourseAdmin.
        • Grading page:
          • Add ordering option Semi-randomly. Unlike option Randomly, ordering does not change between page loads
          • Bug fix: When Attempts to grade was set to Those that need grading, button Save and go to next page skipped as many ungraded attempts as attempts that were graded. Fixed! Also, removed Paging bar (because paging changes as attempts are graded).
          • Changed wording from Save and go to next to Save when all attempts fit into a single page
          • Change options changes to first page
      • Results:Grades
        • Show only enrolled users except when Attempts from option is set to all users who have attempted the quiz
        • If there are any essay questions in the quiz, link Grade essays (below each link Review attempt) opens a page for grading all the essays in the attempt.
          The page can be toggled to show all questions - not just essays.
          (The page is similar to the Manual grading page, but is per quiz attempt rather than per question, and does not include the question text.)
      • Results:Responses
        • Additional optional field: Question name
      • Results:Statistics
        • Bug fix: If first question was random, its breakdown was not calculated or shown
      • If quiz name is changed, name and info of quiz's default question category are changed accordingly
      • Quiz autosave applies only to unprivileged users.
      • Utility to export essay question to Assignment
    • Scorm:
      • Various small fixes
    • Workshop:
      • Utility to import submissions from an Assignment into a Workshop
      • Full support for team submissions if imported from an Assignment
  • Multimedia:
    • Changed rank order of html5audio player to above that of qt and flv players except for specific versions of firefox i.e. prefer browser to embedded player for m4a (audio/mp4) and mp3 (audio/mp3) files.
  • Plugins:
    • Contributed plugins:
      • Mass enrollments: Heavily rewritten
  • Questions:
    • Ganged questions:
      • Alternative to cloze questions but without any of the limitations inherent in the cloze question type. A gang of questions is a group of questions that always remain together, and in the same order (and on the same page), even when the questions in the quiz are shuffled. There can be any number of gangs in a quiz and a random gang is chosen from what is effectively a category of gangs.
    • Changes:
      • Drag and drop onto image:
        • In Student's review, correct answer is shown for answers that are incorrect
      • CodeRunner:
        • Ensured that Full-screen mode and Safe-Exam Browser do not block mouse events in the Ace editor by setting its JavaScript property contentEditable to true
        • Added output of test cases to manual grading pages
        • For C++: Treat syntax error as a failed test, rather than aborting
      • Gapfill::
        • Allow blanks before and after commas in list of Distractors
      • Numerical::
        • Bug fix: Tolerances below smallest floating point number
      • True/False:
        • Both True and False can be correct (EXAM Moodle only).
    • New options:
      • Essay:
        • Include the Student's response in the initial content of the Comments editor
        • Include the word and character counts in the initial content of the Comments editor
      • Multianswer::
        • Option to disallow a negative grade
      • Multichoice:
        • Option for Hebrew numbering
        • Option to allow a negative grade
    • Question edit page:
      • Warning if question is used in any quiz. Link to popup that lists all quizzes in all courses that use the question.
      • Warning if there exist any attempts on the question. Link to popup that lists all attempts including course, quiz, quiz state, question state and correctness
  • Question bank:
    • In kid courses, question bank of parent course is included in hierarchy of question categories
    • Bug fixes:
      • Course restore bombed if multianswer question was missing a subquestion. Course was seemingly restored but question bank of the course was left in a mess. Also, question banks of other courses of which it had copies were corrupted. Now shows problematic question and continues.
  • Reports:
    • Logs:
      • Added option Except view to All actions menu
  • Resources:
    • File:
      • New required fields: Type and source of document. Declarations are logged.
  • Restore from Moodle1:
    • UploadPDF assignment type
    • Subsections
  • Roles: A role is either primary or secondary. A primary role is either an enrollable role or a hidden (aka otheruser) role. In a given course, a user can have no enrolments and no roles, or one enrolment and one enrollable role, or no enrolments and one hidden role. A user with a primary role can have zero or more secondary roles.
    • Enrollable roles: Built-in roles Grader (aka Non-editing teacher), Student and Teacher, plus
      • TA
    • Hidden roles: Built-in roles Manager and Guest, plus
      • Coordinator: Equivalent to Teacher.
      • Secretary, Newsman: Can post to the News forum. Secretary can also export grades
      • Colleague: Can view absolutely everything except for personal user information
      • Visitor: Equivalent to Guest but does not require guest access
      • Various system roles including Profile editor, Help desk and Site coordinator
    • Secondary roles:
      • Editing: Can view and edit everything except personal user information
      • Grading: Has privileges of a Grader
      • Restricted and Very restricted: Sees Mispar Zehut or Moodle ID, respectively, instead of user's first and last names.
        No other user details are shown or are in any way accessible.
        (The role is normally assigned at course level. It can be assigned at activity level but is less useful there because user profile links are course level.)
      • X-ray eyes: Can view absolutely everything except for personal user information
      • Utility: Has no additional privileges. Several such roles exist and can be used to override permissions.
    One can switch only to a primary role. See Enrolled users and Other users
  • Section settings:
    • Restrict access: Option to restrict access either to authenticated only, or to enrolled users only
    • Allow empty section names
  • Search courses: Search by one or more of course ID, course name, chug ID, chug name, faculty, teacher name, degree, year, semester, compulsory and availability. Search words for names may be Hebrew or English, whole or part words, prefixes or words to exclude
  • Sessions:
    • Time session waits for lock is automatically reduced when server is under heavy load
  • Subsections: A subsection item is automatically created (if one does not already exist in that section) when the subsection of an activity or resource is set. The resource or activity is placed below the subsection item. Subsections (i.e. the subsection items together with their activities and resources) are displayed after all other items in the section, and in the order defined in the course Settings. Subsection items have edit icons only for title, deletion and visibility. Clicking on a subsection navigation node displays the course page with only subsections of that type.
  • Test users: Several Test User accounts are available for use when Switch role to.. is inadequate. A Test user can access only courses to which he is enrolled. (He canot self-enrol.) In order to access a course to which he is enrolled, he must supply the course's Access key for test users. Various navigation items are absent for Test Users and profile is limited.
  • Themes:
    • New themes:
      • Huji based on Clean
        • Similar appearance to Formal white
        • Three-column
      • Nuji based on Classic:
        • Similar appearance to Formal white
        • Three-column
        • Collapse/uncollapse of blocks
        • Turn editing on/off button in navbar.
    • Formal white and its base classes:
      • Numerous CSS fixes, including for Moodle versions later than 2.7 and right-to-left languages
      • Support for blocks in main region of frontpage
      • In Moodle2.8 Grade report , ensured that row headers are not scrolled
      • Support for User dropdown menu
    • Bootstrap and Elegance:
      • Several CSS fixes for right-to-left languages
      • Fixed Activity chooser in Hebrew mode
  • User preferences:
    • Docked block preferences are reset on login
    • Assignment grading table preferences are per course
  • User profile:
    • First and last names in the top section of the Edit profile page are the user's names in the current language. Names in the alternative language (Hebrew or English) are in section Other names
    • Users cannot change Hebrew or English names or email except when not available from Maarachot Meida
    • If not available from Maarachot Meida, the user is redirected to the Hebrew or English Edit profile page, according to whether the Hebrew or English names are unavailable
    • New profile field in CSE courses: Login. In Participants page, Assignment View/Grade all submissions page and Gradebook report, new column Login sortable and searchable by initial letter
    • Privileged users see both the picture uploaded by the user and his official HUJI picture
  • User view:
    • Except for Coordinators, list courses only of self and course contacts and only courses in which course contact has contact role

Activity-based moodle (Muddle)
  • When assigning roles, if a valid email address is entered and is unknown to Maarachot Meida, or is no longer authenticatable, an account is automatically created or reactivated. The username is the email address and the password must be changed as soon as the user logs in. Users with such accounts cannot enrol to any courses or change their email address. As soon as such an acccunt no longer has any role, it is automatically deleted.
  • Fasttrack course option: If a user has only a single role assignment and it is as a Student in a course that is configured as Fasttrack, then on authentication he is redirected to the course. If there is only a single activity in the course (besides the News forum), he is redirected straight to it.

EXAM Moodle
EXAM Moodle is a variation of Moodle that, from the point of view of a Student, behaves like an exam system.
Exams are Moodle quizzes. The course and quiz Settings pages shows only options relevant to exams:
  • A quiz can be configured to be active* i.e. an exam. If so:
    • In courses in which registration to exams is through RishumNet, a Moed must be set.
      In other courses, an Opening time must be set.
    • Either a password or a subnet** must be set. The subnet can be a combination of IPs and rooms/WIFIs.
      Instead of the option to enter a Safe Exam Browser (SEB) key, there is an additional Browser security option that allows SEB only with the preconfigured SEB keys (if any) of the selected rooms/WIFIs.
  • A quiz can be released*** for review.
    One can configure whether a student can review all questions or
    • Only questions that he answered and were not disqualified**** (default), or
    • Only questions that he answered incorrectly (or partially correctly) and were not disqualifed.
      (Does not apply to essay questions.)
    Similarly, for Multiple choice questions (or subparts of Close questions), one can configure whether a student can see all answers or
    • Only the answer he chose (default), or
    • Only the answer he chose plus the correct answer
    One can configure whether to show feedback.
    The review can be restricted to a combination of IPs and rooms/WIFIs
  • In addition, there are options to:
    • Set a file with Supplementary documentation
    • Force shuffling of answers, regardless of question settings
    • Show a Save button on every page. (Useful for essay questions.)
    • Allow students to reopen a finished attempt if the time has been extended since it was submitted
Authentication is required. Guest access is not allowed. Ordinary access rules are irrelevant for unprivileged users.
On successful authentication:
  • If the URL path is exactly review (and there is no query string), a user can review any exams that he has taken and have been released*** for review.
  • Otherwise, if the user has an exam at that time***** and location******, he is taken straight to the quiz.
    (If SEB is required and he is not using SEB, he is instead thrown out with an explanatory message.)
    If the user has more more than one such exam and has not started any, he can choose between them.
  • Otherwise, if he has a privileged role in any course (moodle/course:viewhiddencourses), he is logged in as usual but effectively has a role in only those courses
  • Otherwise, he is thrown out with an explanatory message. Likewise, he is thrown out if he attempts to access any page unrelated to his exam.

*****A user is considered to have an exam at that time if
  • There is a quiz that he has started that day and has not yet finished. Or
  • There is an active* quiz in a course to which he is enrolled as a student, and it is not more than an hour after the quiz Opening time. Or
  • He is registered through RishumNet to an exam in a given course and moed, and it is not more than an hour after the time for which he is registered,
******A user is considered to have an exam at that location if his IP is within the subnet** configured.

Additional features available only in EXAM Moodle
  • By default, Teachers, TAs and Graders see only Mispar Zehut - equivalent to the Restricted role. See Secondary roles above.
    This can be waived by assigning the secondary role of Unrestricted.
    Such users can search quiz results table by ID prefix, rather than initials
  • Additional primary roles Extension 25% and Extension 50% assignable at site level and equivalent secondary roles assignable at course level.
    Roles are automatically assigned based on information from Minhal Talmidim..
    Students with one of these roles automatically get a corresponding extension on Quiz and Group override time limits and/or closing times
    The name of a user with one of these roles is marked with a small orange or red flag everywhere within the site or course.
  • Overrides:
    • The subnet** and Browser security can be overridden
    • The User override page lists all Group overrides that would apply to that Student if there was no User override (including any 25%/50% time extension)
      Also, whether the Student is entitled to a 25%/50% time extension if the time limit and/or closing time is not overridden
      Note: A student must be selected before the User override page is opened
  • Option to grade only the first N questions answered in each section (in order of the user's layout). Any additional answers are disqualified****.
    Per question-type heuristics determine whether a question is considered to have been answered.
    Radioboxes in multichoice, multianswer and true/false questions can be toggled.
  • Unanswered and disqualified questions are not included in the number of responses, average and standard deviation, or in the quiz Statistics
  • Option to determine grade for section from M questions with highest grade (where M < N).
  • Full logging of all quiz page forms generated and submitted (NY)
  • In Results page:
    • Column Time limit shows limit that was/will be in effect depending on the then/current Extension role and/or overrides
    • In addition to Average, Standard deviation is also shown
    • Unanswered, disqualified****., and manually-graded (NY) are shown in different colors
  • In Quiz attempt:
    • Fixed (i.e. non-scrolling) header with course name, moed, user name, ID number and picture
    • Links to Supplementary documentation and Instructions (aka Description) popups on every question page.
    • No navigation bar or footer, or other links to anywhere outside the quiz.
    • Wording appropriate to an exam
    • If the student's laptop is connected through the HUJI exam WIFI network, link Recover from lost connection allows the student to continue working after the WIFI connection is restored i.e. without the need to reload the page (as would be required on Windows) and thus lose unsaved answers.
  • Login window does not 'remember' username
  • Option to export grades to HUJI Moodle (NY)
  • Option to create an Assignment from the responses to an Essay question
    Also, to subsequently copy the Assignment's Feedback files back to the Comment field associated with responses (as links).
    (Useful in CSE, for questions that require code, in order to enable the Bodek code-checking system to process the responses.)
  • Review:
    • Teacher can toggle between his view and the Student's view
    • Toggle between paged and unpaged views.
      (In the Student view, empty pages are not shown i.e the Next page or Previous page link points to the next or previous page with viewable questions.)
  • If the quiz Navigation method is Sequential, student cannot move on to next page before he has answered all the questions in the current page.
    (Per question-type heuristics determine whether a question is considered to have been answered.)
  • Option to list all links to, and images on, external sites that may be appear anywhere in the exam.
  • Option in course settings to set the editor for students
  • If IP is in a room/WIFI for which there is a pre-configured SEB key, login page has a Quit SEB button.
    Also, a warning is shown if version of SEB is incorrect, or SEB key is incorrect or not the current version
  • Group override page: Option to create or repopulate a group that includes only students currently taking the exam in any room/WIFI
  • Option to set an Alert on a question.
    If there is any Alert text, it is shown highlighted above the question text and the question is highlighted in the quiz navigation block.
  • Option to shuffle quiz sections
Note: Because EXAM Moodle takes care of redirection, it can be used as the SEB portal, avoiding the need to configure SEBs per exam