Skip to content
Lorenzo Nicora edited this page May 21, 2016 · 60 revisions

Attendance Register is an Activity Module for Moodle 2.x

The purpose is calculating the time participants spend in a Course or a group of Courses. It actually does not have any "activity" to do, but extends standard Moodle Logging and Statistics, introducing the "time spent on Course" concept.

Please note that this module is not related to Attendance module. The two plugins are completely different: Attendance Register (this module) automatically calculates time spent online in Moodle courses, while Attendance module allow teachers to explicitly certify attendance to "offline" classes.

Installation

Attendance Register is an activity module. Please see Moodle's docs page about Installing Plugins

Features

Generally speaking, an Attendance Register instance automatically calculate online time spent by Users in the same Course the instance is (or in all Courses of the same Category, or all "meta-linked" Courses, depending on tracking mode. See below).

It also allows Users to declare (self-certificate) offline activity.

ONLINE SESSIONS and SESSION TIMEOUT

Time spent online is calculated in Sessions. A User's Online Session is a span of time spent by the User on online contents, before leaving and returning only after a "long" time.

These kind of "Sessions" are not recorded by Moodle. They are "guessed" by this module using Moodle Log entries and a Session Timeout parameter.

For more details see: Online Sessions guess

ONLINE SESSIONS CALCULATION AND UPDATING

  • Online Sessions are batch-calculated by Moodle's Cron
  • A new Session will appear only some time after the last User's tracked activity (this is not a bug; this is needed to correctly estimate the User's Session).

Please note that when you create a new Register instance in a Course already in use (i.e. with Student's activity), online Sessions will not appear immediately, but only after the first Cron run.

For these reasons, Online Sessions show after a delay (see: Online-Session-delay).

OFFLINE SESSIONS

"Offline" work sessions self-certification may be optionally enabled.

If enabled, in the Register page the tracked user has a form to record a new Session of work offline(and so, not automatically recorded as Online Session).

This new Session is marked as "offline". Its duration is added to the time grand-total and online/offline subtotals are calculated.

The user may also add additional Comments (optionally enabled, optionally mandatory :) )

If the Register is tracking multiple Courses (see below) the User may also select a Course related to her/his offline activity.

Offline Sessions time must obey these rules:

  • May not overlap any existing Session, either online or offline nor current online session
  • May not be in the future
  • Must be less than a given number of days ago ("Days back" setting)
  • Must be shorted than 12 hours (!)

Offline Sessions may be always deleted by the owner, later.

Offline work self-certification may be usefull if "bureaucracy" requires the Student to log every off-classroom activity, including but not limited to the online activity.

If bureaucracy needs a paper log too ;) a printable version is also available (see below).

Note 1: Adding Offline Sessions is NOT allowed when another user (Admin) is "Logged in as..." the tracked User.

Note 2: (New in rel.2.2.1) Adding Offile Sessions for another user is allowed only with the mod/attendanceregister:addotherofflinesess capability (Denied by default)

TRACKED COURSES

Depending on the Attendance Tracking Mode setting, a Register instance will only track User activity in:

  • This Course only: only current Course (the Course the Register instance is in)
  • All Courses in the same Category: the current Course AND all other Courses directly in the SAME Category (if a hierarchy of category exists, Courses in parent, sibling or child Categories are NOT tracked). (See also Tracking-multiple-Courses-in-the-same-Category).
  • All Courses linked by Course meta link: (this is the pre 2.0 Meta-Course) the current Course and all courses that have a Meta-link with this Course (See also Meta-Courses-tracking)

TRACKED USERS

The Register do not record activity of all Users in the tracked Courses. Only Users with 'mod/attendanceregister:tracked' Capability in the Course context will be tracked (See also Meta-Courses-tracking and Tracking-multiple-Courses-in-the-same-Category). By default only Students have this Capability.

STUDENT VIEW

When a Student (actually: any User with "mod/attendanceregister:tracked" and "mod/attendanceregister:viewownregister" Capabilities and without "mod/attendanceregister:viewotherregisters") view the Register, he/she may see only his own Sessions and, if enabled, the Offline Session input form.

TEACHER/ADMIN VIEW

When a Teacher or an Administrator (actually: any User with "mod/attendanceregister:viewotherregisters" Capability) view the Register, he/she see the list of tracked Users (usually Students) with calculated total Session time. If he clicks on a User, enters the User's Sessions detailed view (the same the User himself see), except for the Offline Session input form.

FORCE RECALCULATION

Admins and Teacher (actually: Users with "mod/attendanceregister:recalcsessions" Capability) may force online Session Recalculation. This is normally not needed as Sessions and totals are calculated periodically by the Cron. It is also a time and machine-load expensive operation, expecially for big Courses, so AVOID FORCE RECALCULATING SESSIONS. Recalculating Sessions is only needed when "Attendance Mode" or "Session Timeout" settings changes, as they influence the way Offline Sessions are estimated.

Force Recalculating DOES NOT affect Offline Sessions.

Before rel.2.2.1, if older Log entries are deleted (as in many big sites), force-recalculating loose older Sessions. Since rel.2.2.1 force-recalculation will never delete (nor recalculate) Sessions older than the oldest Log Entry of the User.

Since rel.2.2.1, Session recalculation may also be scheduled for execution by the next cron, instead of executing immediately. This could be better for very crowded Courses. Note: recalculation is automatically scheduled when you change Session Timeout setting of the Register instance.

PRINTABLE VERSION

Printable versions are special version of Users list and User's detail pages, formatted for printing. Also, some data shortened in standard view is fully shown in printable version. Please also note that buttons disappear when printed :)

ACTIVITY COMPLETION TRACKING

Since rel.2.4.3 Attendance Register supports activity completion tracking by user view and by custom completion condition: minimum time tracked by the module.

Minimum time is expressed in minutes.

Total tracked time (i.e. online total time + offline time, if enabled) will be used for completion.

CAPABILITIES

This Activity Module defines these custom Capabilities:

  • mod/attendanceregister:tracked (Default: Allow for Students only) Determine if the User's activity will be tracked by the Register

  • mod/attendanceregister:viewownregister (Default: Allow for all roles) Allow the User to view his/her own calculated Sessions

  • mod/attendanceregister:viewotherregisters (Default: Allow for Teachers and Admins) Allow to view other User's Sessions and the list of tracked Users

  • mod/attendanceregister:addownofflinesess (Default: Allow for all roles) Determine if the User may insert his/her own Offline Sessions. Note that adding Offline Sessions is explicitly disallowed when "Logged in as..." another User

  • mod/attendanceregister:deleteownofflinesess (Default: Allow for Students) Allow deleting an Offline Session he/she previously entered.

  • mod/attendanceregister:deleteotherofflinesess (Default: Disabled for all) Allow deleting an Offline Session of another User ("mod/attendanceregister:viewotherregisters" is also needed, to view the other's session before deleting it)

  • mod/attendanceregister:recalcsessions (Default: Allow for Teachers, Managers and Admins) Allow to force-Recalculate online Sessions. If a User may view other's Sessions ("mod/attendanceregister:viewotherregisters") may recalculate for all Users, otherwise may recalculate only his/her own sessions.

  • mod/attendanceregister:addotherofflinesess (New in rel.2.2.1) (Default: Disabled for all) Allow submitting an Offline Session for another User. "mod/attendanceregister:viewotherregisters" is also needed, to view the other's session before deleting it

KNOWN ISSUES

This module (as many other standard modules) is affected by a Moodle known bug: https://tracker.moodle.org/browse/MDL-38315 I hope it will be soon fixed.