PT Calendar Version 3 Install
Back to PT Calendar
IMPORTANT: v3.0 HAS NOT BEEN RELEASED!!
Contents
Download
Download the Calendar Application from the Community Site Project or from the SVN Repository.
Extract the zip files into the following directory: /ADF/apps/pt_calendar/
Site Configuration
The Calendar Application is built within the ADF. The ADF 1.5.3 or greater must be installed in the site to run the Calendar Application, follow the ADF Installation instructions.
- Make sure the ADF is setup and running on the site. If the ADF is not setup, then follow the instructions for ADF Installation.
- Open the sites 'ADF.cfc' (See Site Configuration (ADF.cfc) for more info) file (located in your site's /_cs_apps/ directory) in a text editor. Locate the Load the ADF Application into application space comment in the file. Add (or uncomment) the following command under the comment section:
loadApp("ptCalendar");
- Reset the ADF for the server and site.
Styles
There are several out of the box style options for the Social Media application. Most of the styles are defined in the following style sheets located in the /style directory within the ADF Social Media App directory:
- /ADF/apps/pt_social_media/style/calendar.css
You have two options: you can either load them into your Base Plus One (recommended) or your can load them into the Calendar Templates you create.
Note: the classes and styles defined for the Calendar app are targeted tightly for the layout generated by the Social Media application and should not interfere with your site styles. However, it is a good idea to give these styles sheets higher precedence in your style definitions.
Import Custom Elements
The Calendar App has several Custom Components defined within CommonSpot. These components are available in the Calendar's "exported-objects" folder located at the root of the Social Media application directory (e.g. /ADF/apps/pt_calendar/exported-objects/)
To import these objects, you will need to be an administrator for your site.
Create a "PT Calendar App Elements" category and import all portions of each component in the order listed.
Import Custom Elements:
- ptCalendar Configuration (ptCalendar-Configuration-Custom-Element.zip)
- Calendar Page Mapping (Calendar-Page-Mapping-Custom-Element.zip)
- Calendar Organizations (Calendar-Organizations-Custom-Element.zip)
- Calendar Event Recurrence (Calendar-Event-Recurrence-Custom-Element.zip)
- Calendar Event Details (Calendar-Event-Details-Custom-Element.zip)
- Calendar Event DateTime (Calendar-Event-DateTime-Custom-Element.zip)
- Calendar Event Categories (Calendar-Event-Categories-Custom-Element.zip)
- Calendar Display Properties (Calendar-Display-Properties-Custom-Element.zip)
Verify Imports
The imported components' render handlers and custom field types must be verified. During the import process, the render handler and custom field types paths may have been changed to reflect the current site's path.
Review and update these paths to reference the ADF path. In most cases, this will just require to be unlocked and a change in the path from the site name to 'ADF'. Check the paths for the custom field types that were imported with the custom elements by unlocking them and fixing the explicit paths to point to "/ADF/extensions/".
If the custom elements that are imported contain custom field types that are already in the site, the naming convention for the custom field type will be unique. To resolve this, unlock the field types and elements, and reassign the element field type to the pre-existing field type.
Example: The SocialMedia Selector custom element contains two uses of the General Chooser field type, if the General Chooser field type is already installed on the site then the import process will attempt to import another General Chooser but with a new name such as "General Chooser_import_1250003208472." To resolve this issue, open the custom element and assign the field type (General Chooser_import_1250003208472) to the field type with the simple name General Chooser. After reassigning the field type, delete the new imported field from the list of custom field types.
App Configuration
The Social Media App uses a custom element to store site specific configurations.
Most of these configuration fields will not need to be modified from their default values. Although, there are a few fields that the values will need to be customized for your specific install of the application. These fields are be listed below.
There are several configuration fields:
General Configuration Tab
- CS USERS DSN - Where the Calendar will get the Users info for event category notifications. (Example: commonspot-users)
- Calendar UI Theme - The Calendar app utilizes jQueryUI Themes for styling of buttons, etc. There are some pre-installed themes that come with the ADF in the Thirdparty folder.
- Calendar App Use Event Tooltip - The Calendar app utilizes jQuery qTip for event detail tooltips. (Default: Yes)
- Calendar App ToolTip Theme - If using event detail tooltips, select one of the 6 pre-packed themes. (Default: Cream)
- Manage Event New URL - Site relative URL for adding new events via a lightbox page.(Example: /webadmin/lightbox/calendar/manage-add-new-event.cfm)
- Manage Event Copy URL - Site relative URL for copying new events via a lightbox page.(Example: /webadmin/lightbox/calendar/manage-copy-new-event.cfm)
- New Event URL - Site relative URL for a public facing form page for submitting a new Event requests. (Example: /new-event-form.cfm)
- Event Notification From Address - The 'From' email address of the notification email sent to event category users
- Event Notification Email Subject - The subject of the notification email sent to event category users
- Event Notification Email Message - The standard message for the notification email sent to event category users
- Calendar Small Grid Cell Width - (Default: 30)
- Calendar Small Grid Cell Height - (Default: 24)
- Calendar Large Grid Cell Width - (Default: 130)
- Calendar Large Grid Cell Height - (Default: 150)
Rendering and Display Tab
- CS USERS DSN - Where the Calendar will get the Users info for event category notifications. (Example: commonspot-users)
- Calendar UI Theme - The Calendar app utilizes jQueryUI Themes for styling of buttons, etc. There are some pre-installed themes that come with the ADF in the Thirdparty folder.
- Calendar App Use Event Tooltip - The Calendar app utilizes jQuery qTip for event detail tooltips. (Default: Yes)
- Calendar App ToolTip Theme - If using event detail tooltips, select one of the 6 pre-packed themes. (Default: Cream)
- Manage Event New URL - Site relative URL for adding new events via a lightbox page.(Example: /webadmin/lightbox/calendar/manage-add-new-event.cfm)
- Manage Event Copy URL - Site relative URL for copying new events via a lightbox page.(Example: /webadmin/lightbox/calendar/manage-copy-new-event.cfm)
- New Event URL - Site relative URL for a public facing form page for submitting a new Event requests. (Example: /new-event-form.cfm)
- Event Notification From Address - The 'From' email address of the notification email sent to event category users
- Event Notification Email Subject - The subject of the notification email sent to event category users
- Event Notification Email Message - The standard message for the notification email sent to event category users
- Calendar Small Grid Cell Width - (Default: 30)
- Calendar Small Grid Cell Height - (Default: 24)
- Calendar Large Grid Cell Width - (Default: 130)
- Calendar Large Grid Cell Height - (Default: 150)
Performace and Debugging Tab
- CS USERS DSN - Where the Calendar will get the Users info for event category notifications. (Example: commonspot-users)
- Calendar UI Theme - The Calendar app utilizes jQueryUI Themes for styling of buttons, etc. There are some pre-installed themes that come with the ADF in the Thirdparty folder.
- Calendar App Use Event Tooltip - The Calendar app utilizes jQuery qTip for event detail tooltips. (Default: Yes)
- Calendar App ToolTip Theme - If using event detail tooltips, select one of the 6 pre-packed themes. (Default: Cream)
- Manage Event New URL - Site relative URL for adding new events via a lightbox page.(Example: /webadmin/lightbox/calendar/manage-add-new-event.cfm)
- Manage Event Copy URL - Site relative URL for copying new events via a lightbox page.(Example: /webadmin/lightbox/calendar/manage-copy-new-event.cfm)
- New Event URL - Site relative URL for a public facing form page for submitting a new Event requests. (Example: /new-event-form.cfm)
- Event Notification From Address - The 'From' email address of the notification email sent to event category users
- Event Notification Email Subject - The subject of the notification email sent to event category users
- Event Notification Email Message - The standard message for the notification email sent to event category users
- Calendar Small Grid Cell Width - (Default: 30)
- Calendar Small Grid Cell Height - (Default: 24)
- Calendar Large Grid Cell Width - (Default: 130)
- Calendar Large Grid Cell Height - (Default: 150)
Note: The other API fields in the configuration element (not listed here) should NOT need to be modified from their default values.
Subsites
It is highly recommended to have a Web Admin subsite that contains a Calendar subsite that will contain the Management pages for the calendar administrators. This allows security to be setup for the subsite to allow only administrators access for the webadmin subsite.
Your site may already have a webadmin subsite. The steps below will add a calendar subsite into the webadmin subsite.
Web Admin
The Calendar Web Admin subsite will be used house the Calendar Management Pages.
- If it does not exist, create a new subsite under the site root called webadmin.
- Create a new subsite under webadmin called calendar.
- Configure the /webadmin/calendar/ subsite Content Security to give 'No Rights' to 'Anonymous Users' and 'Authenticated Users'.
- Configure the /webadmin/calendar/ subsite Content Security to give permissions to the group of administrators who will manage the Calendar.
Calendar
The Calendar subsite will be used house the Calendar Display Pages.
- Create a new subsite under the site root called calendar for an "all events" version of the calendar.
- Create additional subsites under the calendar subsite for any organizations that will have filtered versions of the calendar.
Templates
Web Admin Template - Optional
The Web Admin template will be used to render web admin management pages.
- If it does not exist, create a CommonSpot page called 'Web Admin' from the Base Plus One template. (The subsite for this is not critical but it may be a good idea to place this template int the webadmin subsite.)
- Submit and activate the page.
- Save the page as a template.
- Submit the template for public use.
Calendar Template - Optional
The Calendar template will be used to render Calendar display pages.
- Create a CommonSpot page called 'Calendar' from the Base Plus One template. (The subsite for this is not critical but it may be a good idea to create this template in the 'calendar' subsite.)
- Submit and activate the page.
- Save the page as a template.
- Submit the template for public use.
Management Pages
Create these 4 Admin pages:
CCAPI Configuration
The Calendar Application uses the ADF CCAPI to populate and modify the calendar app element records. The CCAPI needs to be configured to handle this calendar functionality.
First, follow the steps to set up the CCAPI Config file for the site. Once that configuration is complete, follow the steps below to set up the CCAPI config for the Photo Gallery application. Make sure to update the wsVars section with the correct URLs and username/password.
- Create a new page called 'ccapiCalendar'. Recommend creating this page in the /webadmin/calendar/ subsite.
- Add each of the following Forums elements to the page:
- For each element that was added, click on the element indicator and go to 'more...'. Select 'Name' from the menu.
- In the Element Name field, enter the appropriate name for each element:
- ccapiCalendarEventDetailsElement
- ccapiCalendarEventDateTimeElement
- ccapiCalendarEventRecurrenceElement
- ccapiCalendarEventCategoriesElement
- ccapiCalendarOrganizationsElement
- Publish this page and view in read mode.
- Edit the 'ccapi.cfm' file for the site and add the following xml blocks into the <elements> section:
- an example 'ccapi.cfm' file is in the pt_calendar > site-files > _cs_apps > config folder
<CalendarEventDetails>
<pageID>####</pageID>
<subsiteID>##</subsiteID>
<elementType>custom</elementType>
<controlName>ccapiCalendarEventDetailsElement</controlName>
</CalendarEventDetails>
<CalendarEventDateTime>
<pageID>####</pageID>
<subsiteID>##</subsiteID>
<elementType>custom</elementType>
<controlName>ccapiCalendarEventDateTimeElement</controlName>
</CalendarEventDateTime>
<CalendarEventRecurrence>
<pageID>####</pageID>
<subsiteID>##</subsiteID>
<elementType>custom</elementType>
<controlName>ccapiCalendarEventRecurrenceElement</controlName>
</CalendarEventRecurrence>
<CalendarEventCategories>
<pageID>####</pageID>
<subsiteID>##</subsiteID>
<elementType>custom</elementType>
<controlName>ccapiCalendarEventCategoriesElement</controlName>
</CalendarEventCategories>
<CalendarOrganizations>
<pageID>####</pageID>
<subsiteID>#</subsiteID>
<elementType>custom</elementType>
<controlName>ccapiCalendarOrganizationsElement</controlName>
</CalendarOrganizations>
To populate the <pageID> and <subsiteID> tags, view the 'source' code for the 'ccapiCalendar' page that was just created.
Identify the following line in the source code and enter this numeric value into the <subsiteID> tag:
var jsSubSiteID = ##;
Identify the following line in the source code and enter this numeric value into the <pageID> tag:
var jsPageID = ####;
Manage App Configuration Page
The Calendar Configuration Page will be used to manage the ptCalendar Configuration custom element. Follow these steps to configure the datasheet and page for adding the configuration settings.
- Create a new page called 'Manage Configuration' in the /webadmin/calendar/ subsite.
- In the main content of the page, add a Custom Script element.
- Enter the explicit module path for:
- /ADF/apps/pt_calendar/customcf/manage_calendar_config_tabs.cfm
- Publish the page.
- App Configuration Tab
Create a Calendar Configuration Record
We are creating a single Calendar Configuration element record to be used within the application.
- Click the Add Configuration button
- Submit the form to create a configuration record.
Doing this will save the default field values in the configuration record of the custom element.
You can also update the following fields:
- General Configuration Tab
- ui_theme
- Rendering and Display Tab
- ui_theme
- Performace and Debugging Tab
- ui_theme
See the App Configuration portion of this page for more information on the fields and the correct values.
Reset the ADF for the server and site.
- Calendar Organizations Tab
Create a Calendar Organizations Management datasheet
- Calendar Page Mapping Tab
Create a Calendar Page Mapping management datasheet
Reset the ADF for the server and site.