Features unique to HUJI moodle

Table of contents

1. Activity-base moodle (Muddle)



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.
  • Option for Sister courses, Kid courses and Extra courses where required mapping from Shnaton courses to Moodle course is not one-to-ones. Also built and maintained automatically.
  • Additional hierarchy of Moodle courses, termed Rooms. See My rooms below
  • Various features are available in CSE courses only

  • 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, PAM and SAML authentication plugins set the session's security level according to the authentication tokens provided. (Many users own several tokens.) Function require_login() can optionally set the security level required.The user is redirected to the login page if he attempts to perform an action that requires security of a higher level than his current session. If higher than the mininum, the level of security required is specified.
    • A higher level of security 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.)
    • Single sign-on with CSE CourseAdmin system
  • 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
  • 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. 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.
    • 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
    • Login block:
      • If SAML authentication is enabled, block contents is an embedded SAML login window (plus a Login to this web site only link). On successful authentication, the page is reloaded.
    • 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 (but public profiles of users show only courses in categories in which their role of Coordinator is assigned or inherited)
        • Various bugfixes; Title change
    • Bug fixes: Moving blocks in three-column themes in right-to-left mode
  • Bug fixes and other minor fixes: Numerous
  • Course categories:
    • Allow courses to have more than one parent category
  • 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
  • Editor:
    • Fixed problem with cutting and pasting of internal links from one editor window to another. See e.g. http://moodle.org/mod/forum/discuss.php?d=202500
    • Ensure that id and name tags are not stripped before editing
    • Atto:
      • Ensure that font tags are not stripped
    • 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 and Other users
    • Enrolled users main page:
      • In column Roles: Only secondary roles can be assigned and unassigned. See Roles
      • Various cosmetic changes
    • 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 assigned a role
      • 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.
      • 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.
    In the Participants page, Gradebook, and Quiz and Assignment results pages, a red or green asterisk indicates that the user's enrolment is Manual or Self, respectively.
  • 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 &, and modified More help page
    • Grader report page:
      • Added mouseover bubbles (aka tooltips) with 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
    • 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 display type Real or Percentage: Grade items are displayed as Real; Category and Course totals are displayed as a Percentage.
  • Groups: Cannot add members to, or remove members from, automatically-maintained groups
  • 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 and default question_categories are displayed in the current language. (Achieved without use of multilang filter)
  • Logging:
    • Full logging of enrolments and unenrolments, role assignments and unassignments
  • Messages:
    • List also messages sent to self.
    • Message-ID of mailed messages includes the Moodle message 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 submissions:
          • 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 option: Prepare all PDF images
        • 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).
        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
        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.
        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):
          • 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.
        • PDF feedback (renamed to Alternative PDF editor):
          • Cosmetic changes to Grade page to smoothly integrate Alternative PDF editor with built-in editor
      • Group submissions:
        • Option to Allow students to choose partners. If enabled, students choose their partners from within the assignment. The Grouping and Groups are created automatically.
        • In Download all submissions, only files of one member of group are downloaded
        • In Upload multiple feedback files in a zip, files of one member of group are uploaded to all members of group
      • View/grade all submissions page:
        • Show only enrolled users (suspended or otherwise)
        • Additional Grading action option: Download filtered submissions (when Marking workflow is enabled)
      • 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 depend on whether the student submitted after the Cut-off date.
      • Hide graders: Option to hide grader in Student view
      • 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.
    • Attendance:
      • Report show also student ID number
    • Forum:
      • Anonymous forums
        • Forum may be Anonymous or Optionally anonymous
        • If post is anonymous, name of poster is shown everywhere as Anonymous followed by a short identifier which is unique per discussion/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
    • 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
    • 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.
      • In report table (Results:Grades): Show only enrolled users except when Attempts from option is set to all users who have attempted the quiz
    • Scorm:
      • Various small fixes
  • 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.
  • 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
  • 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:
      • Editor: Can view and edit everything except personal user information
      • Restricted and Very restricted: Sees Mispar Zehut or Moodle ID, respectively, instead of user's first and last names. Email addresses and links to the messaging system are also not shown. The role can be assigned at course level only.
      • 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
  • 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:
    • 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:
      • Fixed Activity chooser in Hebrew mode
  • User preferences:
    • Docked block preferences are reset on login
    • Assignment grading table preferences are per course
  • User profile:
    • Cannot change Hebrew or English names or email except when not available from Maarachot Meida
    • New profile field CSE login. In Participants page, Assignment View/Grade all submissions page and Gradebook report, new column Login sortable and searchable by initial letter
  • User view:
    • Except for Coordinators, list courses only of self and course contacts and only courses in which course contact has contact role

Activity-base moodle (Muddle)

  • When assigning roles, if a valid email address is entered and is unknown to Maarachot Meida, or is no longer authenticable, an account is automatically created. 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. If such accounts have no role, they are automatically deleted.



HUJI Moodle is a project of the System group of the School of Computer Science & Engineering
Configuration, development, management and documentation by Chana Slutzkin





HUJI Moodle is a project of the System group of the School of Computer Science & Engineering
Configuration, development, management and documentation by Chana Slutzkin