Note: You are currently viewing documentation for Moodle 3.9. Up-to-date documentation for the latest stable version of Moodle may be available here: Using Calendar.

Using Calendar

From MoodleDocs
Revision as of 05:36, 12 October 2011 by Helen Foster (talk | contribs) (Adding an event)

Adding an event

To add a calendar event:

  1. Click month on Calendar to get an expanded month view
  2. In Calendar view click the New Event button
  3. On a New Event page select the type of event
    • A User Event will only be visible by the user currently logged in (i.e. the one creating the event)
    • A Group Event will be visible to a particular Group on the course (chosen from a drop-down list)
    • A Course Event will be visible to participants on the course in question. Only users with the capability to manage calendar entries at the course level can add course events.
    • A Site Event is a "global" event - visible in every course and on the calendar on the home page. Only users with the capability to manage calendar entries at the system level can add site events.
  4. Set the event properties
  5. Click Save changes

The different types of events can be visually filtered.

For example, if you (as a teacher) wanted to hide Group event dates (events assigned to learner Groups you create), click "Group events" on the bottom of the Calendar. This would hide all group events, and the color code would disappear from the link on the calendar. To show the events again, click the Group Events link again. This can make the calendar easier to read (especially if there are many events on the calendar).

Other features

  • Adding closing dates to course activities — assignments, quizzes etc. will cause them to show up in the calendar block as course events.
  • View previous or future months.
  • Current date is outlined.

Importing multiple events

Currently there is no way to import data to create multiple events. All events must be individually entered through the New Event button. Because the New Event data entry screen only allows drop down selection rather than typed entries, it is very difficult to design a macro for quick repeated input of New Events.

The only other option is to directly connect to the central moodle [SQL] database and directly enter data into the events table. Great care needs to be taken with this approach as alterations to the data structure may cause your moodle site to crash! To convert MS Excel dates to moodle Unix dates use: Unix date integer =((Excel date integer)-25569)*86400

List format

The calendar displays event lists one day at a time. There is no capacity to display a list of all site or course events over an extended period. To obtain date lists for publications, the only option is to link directly to the SQL database, select by the "courseid" and perform calculations to convert the UNIX "timestart" to a publishable date format:

Using a Microsoft Access query, collect data from the mdl_event table and create 2 calculated fields:

  • calcdate: DateValue("1/1/1970")+[timestart]/60/60/24+10/24
  • daysavdate: IIf([calcdate] Between #2/04/2006# And #29/10/2006#,[calcdate],[calcdate]+1/24)

Then, use additional calculated fields to separate the date, day of week and time (if needing to be formatted separately:

  • Dte: Format([daysavdate],"mmm dd")
  • DayName: Format([daysavdate],"ddd")
  • Tme: Format([daysavdate],"hh:nn am/pm")
TIP: The dates for daylight saving need to be changed each year to match your location.
TIP: Very brief summary process for creating connection to moodle database in Windows environment: Install MySQL ODBC Driver 3.51 / Start settings control panel / admin tools/ Data Sources/ ODBC / add new service/ select MySQL ODBC driver/ follow prompts for User & password/ open access/ get external data/ point to MySQL ODBC connection

Navigating months

There is no easy way to jump to a specific month in the year other than to directly edit the URL variable for month "m=" : calendar/view.php?view=month&cal_d=1&cal_m=02&cal_y=2006

Display Current Day Events

Use link: http://moodle.org/calendar/view.php?view=day

See also