Knowledge Base

Events Calendar Installation Guide

Last Modified:
23 May 2019
User Level:
Administrator +

If you would like to display events on your site in a calendar layout, you can use the TERMINALFOUR Events Calendar module.

This article deals with v2 of the Events Calendar.
A zip of the required application files is available here (Community Site log-in required).

The calendar module is a PHP application that is a fully featured events calendar that integrates directly with TERMINALFOUR. It can display events from content that is added through TERMINALFOUR, a Google calendar, or from an iCal feed (or file). Included in the features are event listings, categories, search, recurring events and multi-day events. You can see an example of the Events Calendar on the TERMINALFOUR Sample Site.

Server Requirements

The Events Calendar requires PHP 5.5, 5.6, 7.0, 7.1 or 7.2+ to be installed on the web server that will host the site, and on the staging server (if this is a separate server). The following extensions should also be enabled:

Users should not be able to view or download the PHAR file via the browser. To prevent this, add the following lines to the httpd.conf file or wherever your server configuration is handled. 

Order allow,deny 
Deny from all

General Description

The Events Calendar is a PHP application that displays events from several sources:

  • TERMINALFOUR events: if events are added as content within TERMINALFOUR, they are published as a JSON file, which is used by the Events Calendar as a source of data.
  • Google Calendar: if events are in a Google Calendar, the TERMINALFOUR Events Calendar is provided with the credentials for that calendar to be able to retrieve and display the events.
  • iCal URL: if events are available in an iCal feed, at a particular URL, the TERMINALFOUR Events Calendar is provided with the URL to that feed to be able to retrieve and display the events.
  • iCal File: if an iCal file contains the events, the file is uploaded to the Media Library and referenced by the TERMINALFOUR Events Calendar to display the events from that file.

The PHAR file, a PHP Main Library archive, and the list of views are managed within the Media Library.

The Event Calendar Module uses two Content Types:

  1. Event Calendar Configuration
    • identify the main settings of the events calendar
    • one Content Item using this Content Type for each calendar
  2. Event Calendar View
    • displays a view of the calendar
    • multiple Content Items using this Content Type for each calendar

The main calendar page is made up of the following Content Items:

  1. Event Calendar View
    • Content Layout: text/canonical
      • placed in the tag
      • shows the canonical, prev and next link
      • generates download.php
  2. Event Calendar Configuration
    • Content Layout: text/html
      • generates config.php and event-calendar.json
  3. Event Calendar View x 2
    • Content Layouts: text/html or text/sidebar
      • used to display a single view

Screenshot of Events Calendar with highlighted Content Types

This article will also look at using the Event Calendar to display the Event fulltext page. To do this, place PHP code inside the text/fulltext Content Layout of the Event Content Type, and include the PHP Calendar View content to pass the Event Calendar settings. 

  1. PHP Event Calendar View
    • Content Layout: text/html
  2. Events
    • Content Layout: text/fulltext
      • the fulltext page contains PHP code that is used in PHP Event Calendar View to display the dates correctly

Screenshot of the Events Calendar fulltext page with Content Types highlighted

Required Assets

You must enable the following in your installation, depending on whether the source of the Event content is TERMINALFOUR, a Google Calendar, or an iCal feed. Further details on each asset are provided if required.

File Extensions

These file extensions must be enabled on the Channel you’re using to publish the website containing a PHP Events Calendar.

Extension Description
PHP Required to generate the PHP pages for your calendar.

Media Types

PHP, PHAR and iCal file Media Types must be created, if they do not already exist.

TypeDescriptionRequired for
PHP Required for PHP file  TERMINALFOUR events Google Calendar iCal Events
PHAR File Required for PHAR file  TERMINALFOUR events Google Calendar iCal Events
JavaScript Required for JS file TERMINALFOUR events Google Calendar iCal Events
iCal Required if using an iCal file as the source of the events (the file is uploaded to the Media Library). Not required if you are using a URL that points to an iCal as the source of the events.      iCal Events

Media Files

The required files can be downloaded from the TERMINALFOUR Community Site, which requires authentication through the product. If the event source for the calendar is an iCal file, the iCal file will also be required.

TypeDescriptionRequired for
Views PHP File Required for Section configuration TERMINALFOUR events  Google Calendar  iCal Events 
PHAR File Added to Media Library and required for Section configuration TERMINALFOUR events  Google Calendar  iCal Events 
JS file Runs the AJAX  TERMINALFOUR events  Google Calendar  iCal Events 
iCal File The iCal Events File which contains all events       iCal Events 

Page Layouts

No specific Page Layouts are required, but it will be necessary to add some additional navigation objects and code to an existing layout.

Lists

NameDescriptionRequired for
Event Category A List of the main event categories, e.g., "University Events," "Student Events" TERMINALFOUR events    
Recurs Every A List of the recurrence values,  e.g., "1 Day", "1 Month", "1 Year" TERMINALFOUR events    
PHP Events Calendar Sources Source List for PHP Events Calendar Content Type TERMINALFOUR events Google Calendar iCal Events
PHP Events Calendar Views A List of the different Views for PHP Events Calendar TERMINALFOUR events   Google Calendar   iCal Events
PHP Events Calendar View Positions A List of the various positions that a Calendar View may display within a Page Layout TERMINALFOUR events Google Calendar iCal Events
Yes Determines whether an event is an all-day event or not. An exiting List can be used.  TERMINALFOUR events      

Content Types

NameDescriptionRequired for
Event Adds events to the PHP Events Calendar TERMINALFOUR events     
PHP Events Calendar Configuration Holds the code and configuration for the PHP Events Calendar TERMINALFOUR events Google Calendar iCal Events
PHP Events Calendar View Displays all single PHP Events Calendar View TERMINALFOUR events Google Calendar iCal Events

Navigation Objects 

NameDescriptionRequired for
Current Section Path A Section Details Navigation Object used to get the current Section path. This is used to get the full event-calendar.json path if it does not exist already. TERMINALFOUR events  Google Calendar  iCal Events
Events Calendar:
get JSON version from Event
A Top Content Navigation Object that is used to create a JSON file of events for the Calendar TERMINALFOUR events    
Events Calendar:
create event-calendar.json
A Generate File Navigation Object used to create the file to display the Events Calendar: get JSON version from Event content TERMINALFOUR events    
Events Calendar:
create config.php
A Generate File Navigation Object used to create the file that has the Event Calendar Configuration PHP script TERMINALFOUR events Google Calendar iCal Events
Events Calendar:
create download.php
A Generate File Navigation Object used to create the file that has the Event Calendar View PHP script for download the event TERMINALFOUR events   iCal Events
Events Calendar:
get Canonical Links
A Related Content Navigation Object used to get the canonical links code in PHP Event Calendar View TERMINALFOUR events Google Calendar iCal Events

Structure 

NameDescriptionRequired for
Calendar Holds the main module to list all events. The Content Types used are “PHP Events Calendar View”, “PHP Events Calendar Configuration TERMINALFOUR events   Google Calendar  iCal Events 
Events Holds the list of "Events" Content Type and a “PHP Events Calendar View” content to set the fulltext options view.
The Content Types used are "Events" and "PHP Events Calendar View".
In the Sample Site, there are two Sections "Sample Site » Home » Alumni » Events" and "Sample Site » Home » Alumni » Dummy Events"
TERMINALFOUR events     

Create Required Assets

File Extensions: PHP

If you haven't already, set up PHP as a file extension and enable the extension on your Channel.

Media Layouts

Path Content Layout

Go to Assets > Content Types and search for the Media System Content Type. If it does not already exist, add a Content Layout named "path/*". In the Content Layout code field add the following:

<t4 type="content" name="Media" output="file" />

Screenshot of the Content Layout Code for Media System Content Type

JavaScript Content Layout

If it does not already exist, add another Content Layout to the Media System Content Type named "javascript/*". In the Content Layout code field add the following:

<script type="text/javascript" src="<t4 type="content" name="Media" output="file" />"></script>

Media Types

When the Content Layout has been created, go to System Administration > System Settings > Media Library and, in the Media Types tab, add the following Media Types:

PHP File

Create a PHP Media Type and associate the "path/*" Content Layout with it:

Screenshot of the PHP Media File with associated Content Layout

PHAR File

Create a PHAR Media Type and associate the "path/*" Content Layout with it:

Screenshot of a PHAR Media File with an associated Content Layout

iCal File

Not required if you have an external iCal URL.

Create an iCal Media Type and associate the "path/*" Content Layout with it:

Screenshot of a iCal Media File with associated Content Layout JavaScript

If it does not already exist, create a JavaScript Media Type and associate the "javascript/*" Content Layout with it:

Screenshot of the JavaScript Media Type with an associated Content Layout

Configure the Media Publish on the Channel

Ensure that Media Type extensions will publish in the Channel by going to System administration > Setup sites & channels > Channels,  edit the Channel settings and go to Publish Options: 

Screenshot of Enable Publish Outputs in Channels setings

Add Media Files

In the unzipped "PHP Event Calendar.zip," the "Media Library" directory contains the following files that will be uploaded to the Media Library: 

Views PHP File

The "views.zip" file is not a TERMINALFOUR Package so you must create one with it. To do this go to Content > Content Migration > Packages, select Create New Package and then select Media Archive. Select PHP as the Media Type and Import:

Animated GIF showing PHP files being added as a Media Package

Note where it's located in the Media Library.

PHAR File

Upload the events-calendar-source.phar file to the "PHP Events Calendar" Category selecting PHAR as the Media Type:

Screenshot of the Events Calendar PHAR file uploaded to the Media Library JavaScript 

The "php-events-calendar.js" file can be uploaded to any Media Category. Select JavaScript as the Media Type.

iCal

If you intend to use the iCal source, you will need to load your .ics file here. This file can be added to any Media Category. Select iCal as the Media Type. Note where it's located in the Media Library.

Lists

The following lists must be created.

Event Category

The Events Content Type uses this, if the calendar is showing Events that are managed through TERMINALFOUR, and will contain all of your main event category types, examples are shown below, though anything may be used:

NameValueSelectedSublist
... ...   ...
Category 1 Category 1   Events Subcategory (optional)

Recurs Every

The Events Content Type uses this, if the calendar is showing Events that are managed through TERMINALFOUR, and will contain some or all of the following values:

NameValueSelectedSublist
Daily 1 day    
Weekly 1 week    
Every 2 weeks  2 weeks    
Monthly 1 month    
Every 2 months 2 months    
Every weekday 1 weekday    
Every Wednesday next Wednesday    
First Monday of each month first Monday    
Never Never Yes  
Ad-Hoc Ad-Hoc    

Never and Ad-hoc are required values; all other values are optional.

Single events that recur on multiple days in recurring intervals are not supported (e.g. an event that takes place each Monday, Wednesday, Friday). To do this, you will need to create three different events with three different recursive intervals.

PHP Events Calendar Sources

This List is the source List for the PHP Events Calendar Configuration Content Type:

NameValueSelectedSublist
T4 Events TerminalFourEvents    
Google Calendar Events GoogleCalendarEvents    
iCal Events IcalEvents     

PHP Events Calendar View Positions

This List is used by the PHP Events Calendar Views Content Type and defines where the view will appear in the Page Layout. In the sample site, the General View uses the default Content Layout (text/html) and the calendar in the sidebar uses another (text/sidebar).

Your List name and values should refer to the Content Layouts included on your page.

The default value is the main Channel Content Layout (e.g. text/html).

NameValueSelectedSublist
Default text/html Yes   
Sidebar text/sidebar    

PHP Events Calendar Views

This List is used by the PHP Events Calendar Views Content Type and is a List of the required modules for the Events Calendar. The list values should contain all the Views/Modules names without the "blade.php" suffix.

Screengrab of List Values for PHP Events Calendar Views

NameValueSelectedSublist
Calendar Switches Calendar-Switches    
Event Fulltext Settings Results-Single    
Event iCal Link Download-Ical    
General Page (Heading + List) Results-Page Yes  
Go To Dropdown Search-GoToDropdown    
Headings Results-Headings    
Large Calendar View Calendar-Page    
List Results-OnlyList    
Mini Calendar Calendar-Mini    
Search > Categories Search-RadioCategories    
Search > General Field Search-GenericField    
Search > General Field + Categories Search-GenericFieldandRadioCategories    

Yes

This is a List with one list entry called "Yes" that is used by the Events Content Type to configure whether an Event is an all-day event. An existing (matching) list can be re-used, if preferred.

NameValueSelectedSublist
Yes Yes    

Content Types

Events

Create an "Events" Content Type using the following General options (anything not mentioned may be left at default):

Name: Event

Description: Use this to add an event to an Events Calendar

NameDescriptionTypeMax SizeUse as filenameRequired

Title

Enter the Title for the Event Plain Text 200   Yes
Category Select Categories from list Multi-select List (Event Category List) Default   Yes
Start Date and Time Select the Start date & time for the Event Date Default   Yes
End Date and Time Select the End date & time for the Event Date Default   Yes
All Day Event? Check if this is an all-day event Check Box (Yes List) Default    
Recurs Every Select recurring state form the list

Select Box (Recurs Every List)

Default

  Yes

Recurrence End Date

Enter when recurring it will finish

Date

Default

   

Ad-hoc Recurrence 1

Select custom recurring date

Date

Default

   

Ad-hoc Recurrence 2

Select custom recurring date

Date

Default

   

Ad-hoc Recurrence 3

Select custom recurring date

Date

Default

   

Brief Description

Enter a small description

Plain Text

1000

   

Main Text

Enter long description

HTML

10000

  Yes

Venue

Enter the location for the Event

Plain Text

200

   
Location Lattitude Enter the coordinate for the map Plain Text 80    
Location Longitude Enter the coordinate for the map Plain Text 80    
Image Enter the image of the Event Media n/a    

Content Layouts

  • Name: text/html
  • File extension: (Default)
  • Syntax Type: HTML/XML
  • Content Layout Processor: T4 Standard Content
  • Content Layout Code: <t4 type="content" name="Title" output="fulltext" use-element="true" filename-element="Title" modifiers="striptags,htmlentities" />

 

  • Name: text/calendar-json
  • File extension: (Default)
  • Syntax Type: JAVA
  • Content Layout Processor JavaScript Content
  • Content Layout Code: In "PHP Event Calendar.zip", you can find the code in "Content Types/Event/calendar-json.java"

The code inside calendar-json.java can be customized. While you should avoid deleting elements, you can add as many as necessary. 

  • Name: text/fulltext
  • File extension: PHP
  • Syntax type: PHP
  • Content Layout Processor: T4 Standard Content
  • Content Layout Code: In "PHP Event Calendar.zip", you can find sample code inside "Content Types/Event/fultext.php".
    Customize as required:

Screengrab of Calendar modules Content Types

PHP Events Calendar Configuration

  • Name: PHP Events Calendar Configuration
  • Description: Content to show PHP for the Events Calendar configuration

The Main View Section element refers to the Section where the Main View of PHP Event Calendar Views is located. (see Views to understand which type of view are considered the Main View).

The Main View Section is where a Search will change the results (in a General Page or a Month View). Where the events links in a Mini Calendar should displays.

Check Box(PHP Events Calendar Sources)

NameDescriptionTypeMax sizeUse as filenameRequired
Events JSON or XML Source The Navigation Object that returns the URL of the JSON or XML events source file (the one created with text/calendar-json) Plain Text 200    
Google API Token For Google Calendar Events - Google API JSON Token file Plain Text 256    
Google Calendar IDs For Google Calendar Events - Calendar IDs (Multiple file spit by |, to specify the Category: Category 1=Calendar ID 1|Category 2=Calendar ID 2) Plain Text 5000    
Google Email For Google Calendar Email - Google API Account Email Plain Text 256    
iCal Sources For iCal Events - iCal .ics source file or iCal URLs (Multiple file split by new line) Plain Text 5000    
Main View Section This variable set where the single link inside the view needs to redirect. Section/Content Link Default    
Max Events per Page Max element in a page Whole Number 10   Yes
Options Optional PHP Variables Plain Text 5000    
PHAR File Link to the PHAR File Media Default   Yes
Sources Multi Check to choose which Source load Check Box (PHP Events Calendar Sources) Default   Yes
Timezone Timezone (if it's not set, it is Europe/Dublin - see this guide to timezones for the available ones) Plain Text 80    

 

To set Google Calendar API and get Google API Token and Google Calendar IDs follow these instructions.

Content Layouts

  • Name: text/html (must match the Type set on the Channel)
  • File extension: PHP (.php)
  • Syntax type: PHP
  • Content Layout Code: In "PHP Event Calendar.zip", use the code in "Content Types/PHP Event Calendar Configration/html.php""

This Content Layout contains two Navigation Objects. We'll modify these later.

  • Name: text/config
  • File extension: PHP (.php)
  • Syntax type: PHP 
  • Content Layout Code: In "PHP Event Calendar.zip",use the code in "Content Types/PHP Event Calendar Configration/config.php"

 

  • Name: text/json-ptof
  • File extension: Default
  • Syntax type: HTML/XML
  • Content layout code: I In "PHP Event Calendar.zip",use the code in "Content Types/PHP Event Calendar Configration/json-ptof.json"

 This Content Layout contains a Navigation Object. We'll modify this later.

PHP Events Calendar Views

  • Name: PHP Events Calendar Views 
  • Description: PHP Events Calendar Views to show only the modules you need

See Views to understand the View Content Type.

NameDescriptionTypeMax sizeUse as filenameRequired
PHP Events Calendar Config Link PHP Events Calendar Section Link Section/Content Link Default   Yes
View View that you want to see Select Box (PHP Events Calendar Views) Default   Yes
Positions in the page Select where the view will appear in the Page Layout Select Box (PHP Events Calendar View Positions) Default    
Main View Section Use when you load the module in a different page Section/Content Link Default    
Options Optional PHP Variables Plain text 5000    

Content Layouts

  • Name: text/canonical
  • File extension: PHP (.php)
  • Syntax type: PHP
  • Content Layout code:  In "PHP Event Calendar.zip", use the code in "Content Types/PHP Event Calendar View/canonical.php"
  • Name: text/download
  • File extension: PHP (.php)
  • Syntax type: PHP
  • Content Layout code: In "PHP Event Calendar.zip", use the code in "Content Types/PHP Event Calendar View/download.php"
  • Name: text/html (must match the Type set on the Channel) 
  • File extension: PHP (.php)
  • Syntax type: PHP
  • Content Layout code: In "PHP Event Calendar.zip", use the code in "Content Types/PHP Event Calendar View/html.php"

    Make sure the following variable is updated to reflect the current Content Layout name (so replace 'text/html' with the name of the current Content Layout):
    $current_content_layout_name = 'text/html';

You can add any additional Content Layouts that are listed in the PHP Event Calendar View Position List so you could add this additional one as well:

  • Name: text/sidebar (example of secondary position)
  • File extension: PHP (.php)
  • Syntax type: PHP
  • Content Layout Code: In "PHP Event Calendar.zip", use the code in "Content Types/PHP Event Calendar View/html.php"

    Make sure the following variable is updated to reflect the current Content Layout name (so replace 'text/html' with the name of the current Content Layout):
    $current_content_layout_name = 'text/html';

Navigation Objects

Current Section Path

If it does not already exist, create a Section Details Navigation Object to get the current Section path (used to get the full event-calendar.json path).

Name Current Section Path
Details method Current section
Output detail Section path


Make a note of the T4 tag for this Navigation Object. It will be placed in the "Events JSON or XML Source" element of the PHP Event Calendar Configuration Content Type when creating a Content Item using this Content Type (e.g. event-calendar.json)

Events Calendar: get JSON version from Event

This uses the Top Content Navigation Object. Set it up using the options in the table below. Unlisted options should be left at their default values.

Name

Events Calendar: get JSON version from Event

Fetch Method Use Branch
Select Section Select your Events Section in the Site Structure.
Content Type Names The Calendar Event Content Type from above or All Content Types if there is more than one
Channel Select the channel/s where the Event Calendar is/are publishing.
Content dates Use current content
Ignore data ordering Return content in the order TERMINALFOUR displays it [x] : check this option to ensure that ALL content displays, not just future/past content.
Number of pieces of content to display 99999
Which piece of content to start at? 0
Content Layouts? Use alternate content layout [x]: check this option
Alternate Content Layout text/calendar-json
Before HTML {"events": {"event": [
After HTML ]}}

 

Go to PHP Event Calendar Configuration > text/json-ptof layout and change the ID in the T4 Tag to be the ID for this navigation object.

Events Calendar: create event-calendar.json

A Generate File Navigation Object is used to create the file to display the Events Calendar: get JSON version from Event content.

Name Events Calendar: create event-calendar.json
File name event-calendar
File extension json
Output directory Use the current directory
Content Layout text/json-ptof

 

Go to PHP Event Calendar Configuration > text/html layout and change the ID in the T4 Tag to be the ID for this navigation object.

Events Calendar: create config.php

A Generate File Navigation Object is used to create the file that has the Event Calendar Configuration PHP script

Name Events Calendar: create config.php
File name config
File extension php
Output directory Use the current directory
Content Layout text/config

 

Go to PHP Event Calendar Configuration > text/html layout and change the ID in the T4 Tag to be the ID for this navigation object.

Events Calendar: create download.php

A Generate File Navigation Object is used to create the file that has the Event Calendar Configuration PHP script

Name Events Calendar: create download.php
File name download
File extension php
Output directory Use the current directory
Content Layout text/download

 

Go to PHP Event Calendar Configuration > text/canonical layout and change the ID in the T4 Tag to be the ID for this navigation object.

Events Calendar: get Canonical Links

A Related Content Navigation Object is used to get the canonical links code in PHP Event Calendar View

Name Events Calendar: get Canonical Links
Fetch method Use current
File extension php
Content Layouts Use alternate Content Layout
Content Layout text/canonical

 

Go to your Page Layout and add the Navigation Object in the header, within the <head> tag.

Page Layout

Any Page Layout can use the event calendar.

Remember to add:

Site Structure

Calendar Section

Create a section in the Site Structure that will contain the Calendar. This Section outputs the general List to show all searched events or just a monthly view. Depending on how your design retrieves the various parts of the page (e.g., the sidebar), it may require additional sub-sections to be created.

Screenshot of Calendar Section

  • Name: Calendar
  • Show in navigation: [X] Yes (it can be no as well)
  • Page Layout: Inherited, or select the Page Layout created for the calendar page

Enable the following Content Types (either on the Branch or the Section, depending on your requirements):

Content TypeGroupBranchSectionDisabled
PHP Events Calendar Views   [X] Yes No No
PHP Events Calendar Configuration   No [X] Yes No

Events Section  

If event content is being managed through TERMINALFOUR (as opposed to a Google Calendar Feed or an iCal feed), create a Section for your Events content. This may be anywhere in your Site Structure but is most commonly below the Calendar Section above.

Screenshot of Events Section in Site Structure

This Section will contain all your Event Content Items

  • Name: Events
  • Show in navigation: No
  • Page Layout: Inherited, or select the Page Layout created for the calendar page

Enable the following Content Types (either on the Branch or the Section, depending on your requirements):

Content TypeGroupBranchSectionDisabled
Events   No [X] Yes No
PHP Events Calendar Views   No [X] Yes No

Content Items

Add the following content to the sections.

Section: Calendar

Add a Content Item to configure the calendar:

<t4 type="navigation" name="Current Section Path" id="x" />event-calendar.json
  • Max Events per Page: the number of events to list per page (e.g. 10)
  • Main View Section: a link to the Calendar Section (current section, in this case)
  • Google Email: If displaying events from a Google Calendar, enter the Google API Account Email
  • Google API Token: If displaying events from a Google Calendar, enter the absolute path to the Google API JSON Token File. Refer to separate documentation on Google Calendar Events.
  • Google Calendar IDs: Multiple Google Calendar IDs, split by | to specify categories:

Title Calendar 1=xxxxxxxxxxxxxxxxxxx@group.calendar.google.com|Title Calendar 2=xxxxxxxxxxxxxxxxxxx@group.calendar.google.com

  • iCal Sources: You can add more than one iCal Source and add each to a new line. The title specified is read-only if the iCal does not have its own. iCal Sources can be Media Files or URLs.

The Events Calendar accepts http:// and https:// protocols, not webcal://. Check if the webcal:// protocol can be replaced by http:// or https://

Title Calendar 1=<t4 type="media" id="*Add iCal File ID HERE*" formatter="path/*" />
Title Calendar 2=<t4 type="media" id="*Add iCal File ID 2 HERE*" formatter="path/*" />
Title Calendar 3=http://icalurl.com/index.ics|https://icalurl.com/index2.ics

Add a Content Item to configure the events listing:

  • Content Type: PHP Events Calendar View
  • Name: Event Listing
  • PHP Events Calendar Config Link: link to the Calendar Section (current section, in this case)
  • View: General Page (Heading + List)
  • Position in the page: Default
  • Main View Section: link to the Calendar Section (current section, in this case) (It overwrites Main View Section element of Calendar Configuration)
  • Options: see PHP Events Calendar Configurable Options for more information (It overwrites the Options element of Calendar Configuration)

Section: Items (or Events)

This Section outputs the Events Content and their fulltext.

Add a Content Item as below:

Add Content Items for each individual event using the Events Content Type.

Other Modules

Any Page Layout header and footer can be used and it does not have to include PHP however it must use a .php extension. The additional modules, like Mini Calendar or search, are different PHP Events Calendar Views.

For example, for the Mini Calendar, you can add:

See the article on Views to understand all views available.

Add the download iCal Version link

To provide a link to the iCal of an event, use the following code in the fulltext layout of the Events Content Type:

<?php echo $t4_module['allevents']; ?>download.php?event_id=<t4 type="meta" meta="content_id" />

 

If you want to add this to a different view you will need to change:

<?php echo $t4_module['allevents']; ?>  

to include a Section Details Navigation Object pointing to the Calendar Section.

Back to top