Calcium Web Calendars - Features

Some of the things you can do

- Enterprise version only

Dynamic Calendar Merging ℰ

A calendar can include events from one or more other calendars. For example, you can have a department-level calendar that shows events from multiple employees' calendars. All included data are "live", so when an included calendar is modified, the group calendar will reflect the changes automatically. Calendar security lets you control which calendars can be included, or you can mark specific events on a calendar as private. You can also choose to include only events from specific Event Categories.

Calendar Views and Formats

There are a many ways you can view your calendars. There's the traditional calendar grid format, as well as a List, Time Plan, and Condensed views. There are also special "Planner" views of multiple calendars, for calendars using the Dynamic Include features. You can choose to display a day, week, month, quarter, or year at a time, and opt to display only dates that have events. Different users viewing the same calendar can switch display format without affecting other users.

Email Features

Calcium provides a number of built-in email capabilities:
  • Notification When you create an event, you can choose to have email notification sent to any email adddress. For example, when you schedule a meeting you can have Calcium send email to whoever should attend.
  • Reminders Calcium can automatically send email Reminders before an event occurs. You can select how long before the event the email should be sent; e.g. 1 hour before, and 5 minutes before. These can be set at the time an event is created or edited.
  • Subscriptions Anybody who can view a calendar can sign up to receive email about an event before it occurs. Users can choose to receive mail about all events in a calendar, events in particular categories, or just specific events of their choice. Users can sign up for any event that is scheduled to occur in the future. Calcium admins can disable this option.
  • Auditing Calcium can be configured to send email to the calendar administrator (or anyone else) for any calendar activity. (See Auditing below.)
ℰ Email Aliases can be defined, so you can send mail to a list of addresses with a simple alias (e.g. "Managers") instead of repeatedly entering a long list of addresses.


You have many options for controlling how calendars look, including:
  • the headers and footers for calendars; text, images, forms, or any valid HTML code can be used. This makes it easy to have your calendars fit in with the rest of your web pages.
  • the foreground and background color of almost every display feature; each event can use the calendar's default color, colors based on the category it belongs to, or you can specify the colors for any individual event
  • the font and size of event text, calendar labels, and controls
  • the sorting order for events in the same day
  • whether or not to display weekend days
  • which fields and options are available on the event edit form
  • an image for the background of the calendar page
  • which menus to display below calendars
Calcium also has very good CSS support. Advanced users can have complete control over the styles in calendars; most items have their own class names defined, making it easier to refer to particular items in the display. Each calendar can be configured to refer to its own external style sheet, or style definitions can be included directly in the page.

Custom Event Fields

You can define your own additional fields for events, and each of your calendars can have its own set of custom fields definitions. The input type can be customized for each field; for example, you might want to specify a list of options for a field, and let the user select one of those when adding an event. You can also define custom input and output Templates to use when displaying your custom fields.


You can set up Templates to customize the event input form, event details popup windows, mail messages, the List View details column, and RSS Feeds.

RSS Feeds

Each calendar can provide an RSS feed of upcoming events. Feeds can be in RSS (0.9, 1.0, 2.0), RDF, or Atom formats.

Searching and Filtering

You can specify a Filter string, so that only events which match the string will appear on your calendar. Or, you can search for and display a list of all events matching a string in a given date range. Full Perl regular expression matching is supported. In addition to matching text, you can also search and filter on Event Categories.

ℰ For adding events, it's also possible to search for an open time slot in multiple calendars.

Security and Users

There are four levels of calendar security:
  • Administer allows users to configure the calendar
  • Edit allows users to modify and delete existing events
  • Add allows users to create new events
  • View allows users to view calendars

The permission levels are incremental, so someone with Edit permission can also Add and View events. Security at each level is optional, so you could allow anyone to View a calendar without a password or login, and still require logging in for editing.

The Free and Basic systems use simple per-calendar passwords for authentication; if you want to allow multiple people to Edit a calendar, they'd all use the same password.

ℰ The Enterprise system supports unlimited user accounts, and each user can be assigned different permissions in each calendar. Calcium provides built-in user logins, and it's also possible to use an external LDAP directory for user authentication. There is no limit to the number of different users you can create, and you can define User Groups, to more easily manage large numbers of users and their calendar permissions.

LDAP Authentication ℰ

You can choose to authenticate users against your existing LDAP directory; you still have the option to create and use Calcium's built-in user logins at the same time.

Tentative Events

A calendar can be configured so that newly submitted events require approval before they appear. Users with "Add" permission will be allowed to add events, but they won't actually show up in the calendar until a user with "Edit" or "Admin" permission approves them.

iCalendar Support

Calcium supports the standard iCalendar data format. This makes it easy to share data with other calendar products, like Google's calendar, Apple Calendar, Microsoft Outlook, and many other calendar systems. Calcium uses iCalendar to let you:
  • Subscribe to remote calendars, to display events from other web sites in a Calcium calendar
  • Subscribe from remote calendars, to display events from your Calcium calendar in an external application
  • Publish events to a Calcium calendar
  • Import and Export events using iCalendar files

Event Categories

You can define your own Categories to use for events. They can be used to:
  • define default color settings for events
  • sort events
  • restrict which events are included via Dynamic Calendar Merging
  • specify criteria for Searching and Filtering
  • select events for email subscription notification
  • select events for bulk deleting, or exporting
Any number of categories can be assigned to each event. Each calendar can have its own categories, and categories can also be defined System-wide for all calendars. ℰ

Defined Time Periods

Pre-defined Time Periods can be set up, and used when entering and displaying events. For example, a school might want to define "Period 1", "Period 2", etc. Then, instead of having to enter "8:00 - 8:50" for an event, you could just select "Period 1". You can choose what to display with events - the Time Period name, the actual times, both, or neither.

Fiscal Dates

Calcium can display calendars using Fiscal Years. You can use a Fixed Year, which always starts on the same date, or a Floating Year, which is always 364 days/52 weeks long. You can (of course) specify the start of your year, and view by Fiscal Period, Fiscal Quarter, or Fiscal Year.

Event Editing Restrictions and Validation

You can choose to specify that:
  • Only the user that created an event can edit or delete it ℰ
  • Events that have a time conflict with existing events cannot be added
  • "Historical" events cannot be added; no events which occur before the current date are allowed to be added.
  • Events that are "too far in the future" cannot be added. You specify the future limit.
  • No "last minute" changes are allowed; you can configure the size of of the allowable time window
  • Events must meet maximum or minimum duration criteria
  • Certain fields - like category, location, etc. - are required

Flexible and Powerful Calendar Entries

A simple form is used to create new events, making it easy to specify times, colors, etc. If you like, you can enter extra text that will appear in a separate pop-up window, or have the event text be a link to another web page. Calcium will automatically detect web links and email addresses in event text, and automatically make them active hyperlinks. Event and popup text can also include HTML, so your events can display with whatever formatting you like, including images, animations, etc. (An administration option can be used if you want to prevent users from including HTML in events.)

Repeating Events

Events can occur just once, or you can enter repeating events in a variety of ways. An event can repeat every day, every other day, every 3rd week on Tuesdays, the First and Third Saturday and Sunday of Every Other Month, etc. Simple pull-down menus on the event entry form make it easy.

Remote Calendars

Your Calcium calendar can subscribe to calendars from other web sites - this is another way to add events to your calendars. These remote calendars are often used to display holidays, phases of the moon, birthdays, sports team schedules, paydays, etc. You can specify colors and labels to use for events from each subscribed calendar.

Headers and Footers

Customized header and footer text, images, forms, or any HTML can be assigned for each calendar. This makes it easy to have your calendars fit in with the rest of the pages on your site, if you're using the calendar on your own web site.
Simple links provide easy navigation to other months, to other calendars ℰ, to alternate views of the calendar, to event editing forms, and to administration screens.

Multi-Language Support

A language can be set for each calendar, so users can see all text, prompts, and labels in their native language. If your language isn't already included, let us know and we'll add it!

Calendar Groups ℰ

You can define Calendar Groups, and assign any calendar to one or more groups. You can use these groups for assigning user permissions, restricting calendar inclusion by group, and limiting which groups are displayed in the Calendar Selection list.


You can keep track of who is doing what with your calendars; notification of operations can be emailed to an administrator, or logged to a file. You can choose to audit any combination of View, Add, Edit, or Administration operations.

Event Import/Export

Event data can be imported and exported in various ASCII formats, including iCalendar and CSV files, suitable for spreadsheets or Microsoft Outlook. Data can be imported into calendars from uploaded files, using your web browser.


We also provide consulting services and custom programming. If you have specialized needs or require certain features which are missing, please drop us a note - there's a good chance we can help!