PT Calendar Version 4.7 Install

From ADF Docs
Revision as of 18:29, 16 February 2022 by Gcronkright (talk | contribs)
Jump to: navigation, search

Back to PT Calendar

IMPORTANT: v4.7 of this application requires ADF 2.5 or greater and CommonSpot 10.5.2 or 10.6.1 or greater. 
WARNING: If running Adobe ColdFusion 2018 update 13/2021 update 3 or below. You must obtain the QofQ patch from Adobe support (cfsup@adobe.com) or install update release greater than ACF 2018 update 13 or ACF 2021 update 3.

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 2.5 or greater must be installed in the site to run the Calendar 4.7 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");

Styles

There are several out of the box style options for the Calendar application. Most of the styles are defined in the following style sheets located in the /style directory within the ADF Calendar App directory:

  • /ADF/apps/pt_calendar/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 Calendar 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.

Style Customization

If you plan to customize or modify the Calendar application stylesheet, it is recommended that you copy the CSS file from the App's style folder (above) to a site-level directory. Once the file has been moved, you can register the stylesheet at the new location.

Here is the recommended site-level location:

  • /_cs_apps/pt_calendar/style/calendar.css

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 ptCalendar 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:
Global Custom Elemnts

  1. ptCalendar Configuration (ptCalendar-Configuration-Custom-Element.zip)
  2. Calendar Page Mapping (Calendar-Page-Mapping-Custom-Element.zip)
  3. Calendar Organizations (Calendar-Organizations-Custom-Element.zip)
  4. Calendar Event Recurrence (Calendar-Event-Recurrence-Custom-Element.zip)
  5. Calendar Event Details (Calendar-Event-Details-Custom-Element.zip)
  6. Calendar Event DateTime (Calendar-Event-DateTime-Custom-Element.zip)
  7. Calendar Event Categories (Calendar-Event-Categories-Custom-Element.zip)

Local Custom Elements

  1. Calendar Display Properties (Calendar-Display-Properties-Custom-Element.zip)
  2. Calendar Widget Properties Month Grid Single (/widgets/Calendar-Widget-Properties-Month-Grid-Single-Custom-Element.zip)
  3. Calendar Widget Properties Upcoming Events Single (/widgets/Calendar-Widget-Properties-Upcoming-Events-Single-Custom-Element.zip)
  4. Calendar Widget Properties Date Range Single (/widgets/Calendar-Widget-Properties-Date-Range-Single-Custom-Element.zip)
  5. Calendar Widget Properties Events RSS Feed Single (/widgets/Calendar-Widget-Properties-Events-RSS-Feed-Single-Custom-Element.zip)
 Note: If using the Multiple View Page Mode import the widget files with 'Multi' in the name.

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 Calendar Event Categories custom element contains 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.

NOTE: Each custom field type that needs to be updated as described above has already been configured for use in the Calendar app, please review the configuration in the "Other Properties" tab and re-set those settings when switching to the proper field type.

App Configuration

The Calendar App uses a custom element, "ptCalendar Configuration", to store site specific configurations.


Here is a list of most of the available configuration fields:

General Tab

  1. New Event URL - Site relative URL for a public facing form page for submitting a new Event requests. (Example: /new-event-form.cfm)
  2. CS USERS DSN - Where the Calendar will get the Users info for event category notifications. (Default: commonspot-users)
  3. Send New Event Emails to Category Notification Users - a checkbox (Default: unchecked)
  4. Event Notification From Address - The 'From' email address of the notification email sent to event category users (Default: events@ptcalendar.com)
  5. Event Notification Email Subject - The subject of the notification email sent to event category users (Default: Event Submission Notification)
  6. Event Notification Email Message - The standard message for the notification email sent to event category users (Default: A calendar event was submitted and the following Event Categories were selected: [EventCats])
  7. Send Event Approved Email to Contact - a checkbox (Default: unchecked)
  8. Event Approved Label - (Default: Approved)
  9. Event Approved Email Message - (Default: This event has been approved.)
  10. Send Event Denied Email to Contact - a checkbox (Default: unchecked)
  11. Event Denied Label - (Default: Denied)
  12. Event Denied Email Message - (Default: This event has been Denied.)

View Page

  1. calendarViewPageMode - radio buttons (Default: Single)
  2. calenderViews - multiple checkboxes (Default: empty)
  3. defaultCalendarView - selection list (Default: empty)
  4. calendarViewParamName - text field (Default: calview)

Rendering and Display Tab

  1. App UI Theme - Deprecated field. (Please use CommonSpot 10.x resource loader and the "jQueryUIDefaultTheme" to load the specific UI theme for your app.)
  2. Use Event Details Tooltip - The Calendar app utilizes jQuery qTip for event detail tooltips. (Default: Yes)
  3. Event Details ToolTip Theme - If using event detail tooltips, select one of the 6 pre-packed themes. (Default: Cream)
  4. Calendar Small Grid Cell Width - (Default: 30)
  5. Calendar Small Grid Cell Height - (Default: 24)
  6. Calendar Large Grid Cell Width - (Default: 130)
  7. Calendar Large Grid Cell Height - (Default: 150)
  8. ColdFusion Date Mask - ColdFusion Date Mask used for the display of dates. DateFormat on cfdocs.com (Default: M/D/YYYY)
  9. ColdFusion Time Mask - ColdFusion Time Mask used for the display of times. TimeFormat on cfdocs.com (Default: h:mm tt)
  10. ColdFusion Long Date Mask - ColdFusion Date Mask used for the display of long or full dates. DateFormat on cfdocs.com (Default: yyyy)
  11. Broken Recurrence Event Suffix - Text that is appended to the end of the title of a broken recurrence event that was created from a recurrence pattern. (Default: blank)
  12. Copy Event Suffix - Text that is appended to the end of the title of a copied event. (Default: - Copy)


Performance and Debugging Tab

  1. Calendar Cache Type - selection list:(memory, file, database) (Default: no default selected)
  2. Enable Event Cache - checkbox (Default: unchecked)
  3. Enable Event Cache for Events Management - checkbox (Default: No)
  4. Calendar Cache DSN - (Default: the name of the current site's content datasource')
  5. Max Number of Years for Future Events Cache - (Default: 0)
  6. Max Number of Years for Past Events Cache - (Default: 0)
  7. Enable Verbose Output - (Default: unchecked)

Note: The app configuration fields 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.

  1. If it does not exist, create a new subsite under the site root called webadmin.
  2. Create a new subsite under webadmin called calendar.
  3. Configure the /webadmin/calendar/ subsite Content Security to give 'No Rights' to 'Anonymous Users' and 'Authenticated Users'.
  4. 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.

  1. Create a new subsite under the site root called calendar for an "all events" version of the calendar.
  2. 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.

  1. 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.)
  2. Submit and activate the page.
  3. Save the page as a template.
  4. Submit the template for public use.

Calendar Template

This Calendar template will be used to create the Calendar display page(s) that render the different calendar views.

  1. 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.)
    • For the best results it is recommended to use a 'Two Column' layout. This layout will need one NARROW column with a container element for calendar modules and widgets and one WIDE column with a container element for the main calendar display views.
  2. Submit and activate the page.
  3. Save the page as a template.
  4. Submit the template for public use.
This calendar template will be setup using the SINGLE calendar view page mode. 


Calendar Template Setup

Calendar Display Views (Wide Content Area)

  1. In the WIDE content container element on the template page, add a Custom Script element.
  2. From the Custom Script element interface, click the Edit icon.
  3. Enter the following text into the Explicit Module path:
    • /ADF/apps/pt_calendar/customcf/calendar_view_links.cfm
  4. Next in the WIDE content container, add the Calendar Display Properties Local Custom Element.
  5. To configure the Calendar Display Properties:
    1. Click Data in the element interface.
    2. From the 'Enter Custom Element Data' lightbox window that opens
    3. Under the 'Calendar Display Properties' tab, select the Organizations,Categories and/or check/uncheck the Approved checkbox to the filter the events you want to display.
      • For example, for a Calendar that displays 'ALL APPROVED EVENTS' you would not select any Organizations or Categories, but you would check the Approved checkbox.
  6. Submit the Display properties form.

Calendar Modules and Widgets (Narrow Content Area) - Optional Items

  1. Small Calendar Month Grid Widget - Optional
    1. In the NARROW content container element on the template page, add the Calendar Widget Properties-​​Month Grid-​​Single Local Custom Element.
    2. To configure this widget:
      1. Click Data in the element interface.
      2. From the 'Enter Custom Element Data' lightbox window that opens
      3. Under the 'Calendar Display Properties' tab, notice the Linked Calendar Page field leave this blank for now. When we create our Calendar View page we will select this page.
      4. Next select the Organizations,Categories and/or check/uncheck the Approved checkbox to the filter the events you want to display.
        • It is best to select the same options as you selected for the Calendar Display Properties above in the WIDE content column. So following that example only check the Approved checkbox.
    3. Submit the Widget Display properties form.
  2. Event Request Form Button - Optional
    1. Next in the NARROW content container element on the template page, add a Custom Script element.
    2. Enter the following text into the Explicit Module path:
      • /ADF/apps/pt_calendar/customcf/calendar_event_request_form_lb_btn.cfm
    3. Submit the Custom Script Element form.
  3. Month Jump Drop Down Nav - Optional
    1. Next in the NARROW content container element on the template page, add a Custom Script element.
    2. Enter the following text into the Explicit Module path:
      • /ADF/apps/pt_calendar/customcf/month_nav_drop_down.cfm
    3. Submit the Custom Script Element form.
  4. Event Category Checkbox Filters - Optional
    1. Next in the NARROW column container, add the Calendar Event Categories Global Custom Element.
    2. Click Render Mode in the element interface.
    3. Select Display existing element data (content reuse) on the Rendering Mode tab.
      1. Select the Filter tab.
      2. Select Filter Type to Show subset of records.
      3. Select the Field drop-down as the Categories.Active field.
      4. Select the operator as Equals.
      5. For the third value drop-down select 1.
      6. For the Sort Order drop-down select the Category Name field and choose Ascending
      7. Click OK on the render mode window.
    4. Now click More in the element interface. Then the Custom Render Handlers menu option, and select the Render Handler:
      • Calendar Category CheckBox List
    5. Click OK on the custom render handlers window.
  5. Publish the changes to the template page.

Management Pages

Create these 7 Admin pages:

  1. CCAPI Configuration
  2. Manage App Configuration Page
  3. Manage Calendar Organizations Datasheet
  4. Manage Event Categories Datasheet
  5. Manage Events Datasheet
  6. Manage Events Grid
  7. Calendar Events Cache Dashboard
  8. Manage Page Mappings Datasheet - Optional

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.

The steps below use the standard CCAPI Config setup. If this is your first App installation 
it may be good to go ahead and follow these steps for the CCAPI setup. 
Advanced developers with CCAPI experience may want to consider using the new CCAPI Conduit Page Pool 
configuration for populating the Global Custom Elements used in this application.

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 Calendar application. Make sure to update the wsVars section with the correct URLs and username/password.

  1. Create a new page called 'ccapiCalendar'. Recommend creating this page in the /webadmin/calendar/ subsite.
  2. Add each of the following Calendar elements to the page:
    1. Calendar Event Details
    2. Calendar Event DateTime
    3. Calendar Event Recurrence
    4. Calendar Event Categories
    5. Calendar Organizations
  3. For each element that was added, click on the element indicator and go to 'more...'. Select 'Name' from the menu.
  4. In the Element Name field, enter the appropriate name for each element:
    1. ccapiCalendarEventDetailsElement
    2. ccapiCalendarEventDateTimeElement
    3. ccapiCalendarEventRecurrenceElement
    4. ccapiCalendarEventCategoriesElement
    5. ccapiCalendarOrganizationsElement
  5. Publish this page and view in read mode.
  6. Edit the 'ccapi.cfm' file for the site and add the following xml blocks into the <elements> section:
    1. 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 = ####;

Reset the ADF

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.

  1. Create a new page called Manage Configuration in the /webadmin/calendar/ subsite.
  2. In the main content of the page, add a Custom Script element.
  3. Enter the explicit module path for:
    • /ADF/apps/pt_calendar/customcf/manage_configuration_header.cfm
  4. Publish the page.

Create a Calendar Configuration Record We are creating a single Calendar Configuration element record to be used within the application.

  1. Click the Add Configuration button
  2. You can update the following fields:
    1. General Tab
      1. New Event URL - clear this default entry (Only used if you have a public or non-admin event request form.)
      2. Event Notification From Address - add a valid FROM address
    2. View Page
      1. Calendar View Page Mode - set this option to 'Single'
      2. Calendar Views - make sure all 5 options are checked
      3. Default Calendar View - select MonthGrid (you can change this later)
    3. Rendering and Display Tab
      1. App UI Theme - select a UI theme
    4. Performance and Debugging Tab
      1. Enable Event Cache - Uncheck the event cache option. (This option will be re-enabled later in the install process.)
  3. Submit the form to create a configuration record.

Doing this will save the default field values in the configuration record of the custom element.

See the App Configuration portion of this page for more information on the fields and the correct values.

Reset the ADF

Manage Calendar Organizations Datasheet

The Calendar Organizations element is a global custom element. Managing data for global custom elements can be configured easily through the use of Datasheets. The following steps will describe how to configure the datasheet to manage the Event Organizations element data.

  1. Create a new page called Manage Calendar Organizations from the Base Plus One (or a Web Admin template) and in the /webadmin/calendar/ subsite.
  2. In the main content of the page, add a Custom Script element.
  3. From the Custom Script element interface, click the "Edit" icon.
  4. Enter the following text into the Explicit Module path:
    • /ADF/apps/pt_calendar/customcf/manage_calendar_organizations_header.cfm
  5. From the Datasheet element interface, click the "Datasheet" icon.
  6. From the "Datasheet Views" dialog, follow the "Click here to create a new datasheet view" link.
  7. Enter the following information and then click "Next":
    1. Name: All Event Organizations View
    2. Private: unchecked
    3. Default View: checked
    4. Description: View to manage All Event Organizations
    5. Datasheet Source: Form Result/Custom Element Sheet
  8. From the Datasheet Source dialog choose the "Calendar Organizations" custom element and click "Next".
  9. From the Datasheet View Columns Dialog select the columns UniqueID, Name, Ordinal and Active from the Available Columns list and move them to the Selected Columns list and then click "Finish".
  10. You will be brought to the Datasheet View page; click "Close" to return to your page.
  11. You will see the datasheet element on this page now. Click the Datasheet element interface icon again and this time choose "Edit Columns".
  12. Within the Datasheet View Column Properties dialog choose the UNIQUEID column and click "edit":
    1. In the Render Handler field, select the 'Change' button. Enter the following value into the Explicit Module text box:
      • /ADF/extensions/datasheet-modules/1.0/edit-delete.cfm
    2. Click Finish or Save.
    3. In the Header field, switch the text to 'Edit/Delete'
    4. Click Finish or Save
  13. Now within the Datasheet View Column Properties dialog choose the ACTIVE column and click "edit":
    1. In the Render Handler field, select the 'Change' button. Enter the following value into the Explicit Module text box:
      • /ADF/extensions/datasheet-modules/1.0/value-to-yes-no.cfm
    2. Click Finish or Save
    3. In the Header field, switch the text to 'Active'
    4. Click Finish
  14. Close the Edit Column window.
  15. Go back to the Datasheet element interface, select the Layout button
    1. Default Sorting = ORGANIZATIONNAME Ascending
    2. Uncheck "Show Alphabet Characters for Filtering"
    3. Uncheck "Allow JavaScript data sorting"
    4. Click Save
  16. Publish this page.

Manage Event Categories Datasheet

The Calendar Event Categories element is a global custom element. Managing data for global custom elements can be configured easily through the use of Datasheets. The following steps will describe how to configure the datasheet to manage the Event Categories element data.

  1. Create a new page called Manage Event Categories from the Base Plus One (or a Web Admin template) and in the /webadmin/calendar/ subsite.
  2. In the main content of the page, add a Custom Script element.
  3. From the Custom Script element interface, click the "Edit" icon.
  4. Enter the following text into the Explicit Module path:
    • /ADF/apps/pt_calendar/customcf/manage_event_categories_header.cfm
  5. From the Datasheet element interface, click the "Datasheet" icon.
  6. From the "Datasheet Views" dialog, follow the "Click here to create a new datasheet view" link.
  7. Enter the following information and then click "Next":
    1. Name: All Event Categories View
    2. Private: unchecked
    3. Default View: checked
    4. Description: View to manage All Event Categories
    5. Datasheet Source: Form Result/Custom Element Sheet
  8. From the Datasheet Source dialog choose the "Calendar Event Categories" custom element and click "Next".
  9. From the Datasheet Columns Dialog select the columns CatID, Name, CategoryIcon, OrgIDlist, Active and NotificationUserIDs from the Available Columns list and move them to the Selected Columns list and then click "Finish".
  10. You will be brought to the Datasheet View page; click "Close" to return to your page.
  11. You will see the datasheet element on this page now. Click the Datasheet element interface icon again and this time choose "Edit Columns".
  12. Within the Datasheet View Column Properties dialog choose the CatID column and click "edit":
    1. In the Render Handler field, select the 'Change' button. Enter the following value into the Explicit Module text box:
      • /ADF/extensions/datasheet-modules/1.0/edit-delete.cfm
    2. Click Finish or Save.
    3. In the Header field, switch the text to 'Edit/Delete'
    4. Click Finish or Save
  13. Now within the Datasheet View Column Properties dialog choose the Name column and click "edit":
    1. In the Render Handler field, select the 'Change' button. Enter the following value into the Explicit Module text box:
      • /ADF/apps/pt_calendar/datasheet-modules/convert-cat-names-with-icon.cfm
    2. Click Finish or Save.
  14. Now within the Datasheet View Column Properties dialog choose the CategoryIcon column and click "edit":
    1. Check the checkbox of the field called "Hidden".
    2. Click Finish or Save.
  15. Now within the Datasheet View Column Properties dialog choose the OrgIDList column and click "edit":
    1. In the Render Handler field, select the 'Change' button. Enter the following value into the Explicit Module text box:
      • /ADF/apps/pt_calendar/datasheet-modules/convert-id-list-to-org-names.cfm
    2. Click Finish or Save.
    3. In the Header field, switch the text to 'Organizations'
    4. Click Finish or Save
  16. Now within the Datasheet View Column Properties dialog choose the ACTIVE column and click "edit":
    1. In the Render Handler field, select the 'Change' button. Enter the following value into the Explicit Module text box:
      • /ADF/extensions/datasheet-modules/1.0/value-to-yes-no.cfm
    2. Click Finish or Save
  17. Now within the Datasheet View Column Properties dialog choose the NotificationUserIDs column and click "edit":
    1. In the Render Handler field, select the 'Change' button. Enter the following value into the Explicit Module text box:
      • /ADF/apps/pt_calendar/datasheet-modules/manage-convert-id-list-cs-usernames.cfm
    2. Click Finish or Save.
    3. In the Header field, switch the text to 'Notify Users'
    4. Click Finish or Save
  18. Close the Edit Column window.
  19. Go back to the Datasheet element interface, select the Layout button
    1. Default Sorting = Category Name Ascending
    2. Uncheck "Show Alphabet Characters for Filtering"
    3. Uncheck "Allow JavaScript data sorting"
    4. Click Save
  20. Publish this page.

Manage Events Datasheet

The Calendar Event Details element is a global custom element. Managing data for global custom elements can be configured easily through the use of Datasheets. The following steps will describe how to configure the datasheet to manage the Calendar Events.

  1. Create a new page called 'Manage Calendar Events' from the Base Plus One (or a Web Admin template) and in the /webadmin/calendar/ subsite.
  2. In the main content container of the page, add a Custom Script element.
  3. From the Custom Script element interface, click the "Edit" icon.
  4. Enter the following text into the Explicit Module path:
    • /ADF/apps/pt_calendar/customcf/manage_events_filtering_tools.cfm
  5. Add another Custom Script element to main content container of the page.
  6. From the Custom Script element interface, click the "Edit" icon.
  7. Enter the following text into the Explicit Module path:
    • /ADF/apps/pt_calendar/customcf/manage_calendar_event_details_header.cfm
  8. From the Datasheet element interface, click the "Datasheet" icon.
  9. From the "Datasheet Views" dialog, follow the "Click here to create a new datasheet view" link.
  10. Enter the following information and then click "Next":
    1. Name: All Event Details View
    2. Private: unchecked
    3. Default View: checked
    4. Description: View to manage events
    5. Datasheet Source: Form Result/Custom Element Sheet
  11. From the Datasheet Source dialog choose the "Calendar Event Details" custom element and click "Next".
  12. From the Datasheet Columns Dialog select the columns UniqueID, Title, EventDateTimeIDList, EventRecurrenceID, Category, Organization, EventApproved and ApprovalUserID from the Available Columns list and move them to the Selected Columns list and then click "Finish".
  13. You will be brought to the Datasheet View page; click "Close" to return to your page.
  14. You will see the datasheet element on this page now. Click the Datasheet element interface icon again and this time choose "Filter".
    1. Select the "Subset of records" filter type.
    2. Apply the following filter:
      1. Field = Calendar_Event_Details.uniqueID
      2. Operator = Value Contained In List
      3. Value = request.ptCalendar.eventManager.eventIDlist (note: use the UDE button)
    3. Click Finish or Save
  15. You will see the datasheet element on this page now. Click the Datasheet element interface icon again and this time choose "Edit Columns".
  16. Within the Datasheet View Column Properties dialog choose the UniqueID column and click "edit":
    1. In the Render Handler field, select the 'Change' button. Enter the following value into the Explicit Module text box:
      • /ADF/apps/pt_calendar/datasheet-modules/event-edit-delete-copy.cfm
    2. Click Finish or Save.
    3. In the Header field, switch the text to 'Edit/Delete/Copy'
    4. Click Finish or Save
  17. Now within the Datasheet View Column Properties dialog choose the EventDateTimeIDList column and click "edit":
    1. In the Render Handler field, select the 'Change' button. Enter the following value into the Explicit Module text box:
      • /ADF/apps/pt_calendar/datasheet-modules/convert-id-list-to-date-time-blocks.cfm
    2. Click Finish or Save.
    3. In the Header field, switch the text to 'Event Dates/Times'
    4. Click Finish or Save
  18. Now within the Datasheet View Column Properties dialog choose the EventRecurrenceID column and click "edit":
    1. In the Render Handler field, select the 'Change' button. Enter the following value into the Explicit Module text box:
      • /ADF/apps/pt_calendar/datasheet-modules/convert-id-list-to-recurrence-properties.cfm
    2. Click Finish or Save.
    3. In the Header field, switch the text to 'Recurrence Properties'
    4. Click Finish or Save
  19. Now within the Datasheet View Column Properties dialog choose the Category column and click "edit":
    1. In the Render Handler field, select the 'Change' button. Enter the following value into the Explicit Module text box:
      • /ADF/apps/pt_calendar/datasheet-modules/convert-id-list-to-cat-names-with-icons.cfm
    2. Click Finish or Save.
    3. In the Header field, switch the text to 'Categories'
    4. Click Finish or Save
  20. Now within the Datasheet View Column Properties dialog choose the Organization column and click "edit":
    1. In the Render Handler field, select the 'Change' button. Enter the following value into the Explicit Module text box:
      • /ADF/apps/pt_calendar/datasheet-modules/convert-id-list-to-org-names.cfm
    2. Click Finish or Save.
    3. In the Header field, switch the text to 'Organizations'
    4. Click Finish or Save
  21. Now within the Datasheet View Column Properties dialog choose the EventApproved column and click "edit":
    1. In the Render Handler field, select the 'Change' button. Enter the following value into the Explicit Module text box:
      • /ADF/apps/pt_calendar/datasheet-modules/convert-approval-status.cfm
    2. Click Finish or Save.
    3. In the Header field, switch the text to 'Approval Status'
    4. Click Finish or Save
  22. Now within the Datasheet View Column Properties dialog choose the AppovalUserID column and click "edit":
    1. In the Render Handler field, select the 'Change' button. Enter the following value into the Explicit Module text box:
      • /ADF/extensions/datasheet-modules/1.0/userID-to-name.cfm
    2. Click Finish or Save.
    3. In the Header field, switch the text to 'Approver'
    4. Click Finish or Save
    5. Click Finish or Save
  23. Close the Edit Column window.
  24. Go back to the Datasheet element interface, select the Layout button
    1. Default Sorting = EVENTS DATES AND TIMES Ascending
    2. Uncheck "Show Alphabet Characters for Filtering"
    3. Uncheck "Allow JavaScript data sorting"
    4. Click Save
  25. Publish this page.

Manage Events Grid

The Calendar Event can also be managed using the Calendar Event Grid view. This a custom management interface that does NOT use a datasheet. This view will be used to manage recurring events. The following steps will describe how to configure the custom scripts to manage the Calendar Events.

  1. Create a new page called 'Manage Calendar Events Grid' from the Base Plus One (or a Web Admin template) and in the /webadmin/calendar/ subsite.
  2. In the main content container of the page, add a Custom Script element.
  3. From the Custom Script element interface, click the "Edit" icon.
  4. Enter the following text into the Explicit Module path:
    • /ADF/apps/pt_calendar/customcf/manage_events_filtering_tools.cfm
  5. On the Parameters tab of the custom script element add following parameter:
    • editType=Grid        <---This is a very important
  6. Click Save
  7. Add another Custom Script element to main content container of the page.
  8. From the Custom Script element interface, click the "Edit" icon.
  9. Enter the following text into the Explicit Module path:
    • /ADF/apps/pt_calendar/customcf/manage_calendar_events_month_grid.cfm
  10. Click Save
  11. Publish this page.

Manage Events Filtering Parameters (Optional)

The optional Filtering Tools custom script parameters can be used to create a Calendar Events management page that only displays Events from a specific Organization and/or Calegory and also limits what filtering options are available.

  • "OrganizationName" - Add a valid Organization Name to only show events for a specific organization
  • "OrganizationID" - Add a valid OrganizationID to only show events for a specific organization
  • "CategoryName" - Add a valid Category Name to only show events for a specific category
  • "CategoryID" - Add a valid CategoryID to only show events for a specific category
  • "hideOrganizationFilter" (true/false - default:false) -
  • "hideCategoryFilter" (true/false - default:false) -
  • "showAdvancedFilter" (true/false - default:true) -
Custoim Script Parameters List Example (with Names only showing the Category filter):
organizationID=Athletics
categoryID=Soccer
hideOrganizationFilter=false
hideCategoryFilter=true
showAdvancedFilters=true
Custoim Script Parameters Grid Example (with only a category ID and all the Advanced fitlers hidden):
editType=Grid
categoryID=DDD4997D-DEED-E699-7912617222570D25
showAdvancedFilters=false
Note: If an Organization paramter is used with a Category parameter, it must be a valid category for that specific organization

Calendar Events Cache Dashboard

To view or reset the Calendar Events Cache you will want to setup the 'Calendar Events Cache Dashboard' utility page.

  1. Create a new page called 'Calendar Events Cache Dashboard' from the Base Plus One (or a Web Admin template) and in the /webadmin/calendar/configuration subsite.
  2. In the main content container of the page, add a Custom Script element.
  3. From the Custom Script element interface, click the "Edit" icon.
  4. Enter the following text into the Explicit Module path:
    • /ADF/apps/pt_calendar/customcf/manage_events_cache_dashboard.cfm
  5. Click Save
  6. Publish this page.

Manage Page Mappings Datasheet - Optional

Only used with the Multiple View Page Mode

The Calendar Page Mapping element is a global custom element. Managing data for global custom elements can be configured easily through the use of Datasheets. The following steps will describe how to configure the datasheet to manage the Calendar Page Mapping element data.

  1. Create a new page called 'Manage Calendar Page Mappings' from the Base Plus One (or a Web Admin template) and in the /webadmin/calendar/ subsite.
  2. In the main content of the page, add a Custom Script element.
  3. From the Custom Script element interface, click the "Edit" icon.
  4. Enter the following text into the Explicit Module path:
    • /ADF/apps/pt_calendar/customcf/manage_page_mappings_header.cfm
  5. From the Datasheet element interface, click the "Datasheet" icon.
  6. From the "Datasheet Views" dialog, follow the "Click here to create a new datasheet view" link.
  7. Enter the following information and then click "Next":
    1. Name: All Page Mappings View
    2. Private: unchecked
    3. Default View: checked
    4. Description: View to manage All Page Mappings View
    5. Datasheet Source: Form Result/Custom Element Sheet
  8. From the Datasheet Source dialog choose the "Calendar Page Mapping" custom element and click "Next".
  9. From the Datasheet View Columns Dialog select the columns MapID, Subsite, OrgID, MonthlyGridPage, MonthlyListPage, WeeklyGridPage, WeeklyListPage, DailyPage and DetailsPage from the Available Columns list and move them to the Selected Columns list and then click "Finish".
  10. You will be brought to the Datasheet View page; click "Close" to return to your page.
  11. You will see the datasheet element on this page now. Click the Datasheet element interface icon again and this time choose "Edit Columns".
  12. Within the Datasheet View Column Properties dialog choose the MapID column and click "edit":
    1. In the Render Handler field, select the 'Change' button. Enter the following value into the Explicit Module text box:
      • /ADF/extensions/datasheet-modules/1.0/edit-delete.cfm
    2. Click Finish or Save.
    3. In the Header field, switch the text to 'Edit/Delete'
    4. Click Finish or Save
  13. Now within the Datasheet View Column Properties dialog choose the Subsite column and click "edit":
    1. In the Render Handler field, select the 'Change' button. Enter the following value into the Explicit Module text box:
      • /ADF/apps/pt_calendar/datasheet-modules/manage-convert-subsiteid-subsiteurl.cfm
    2. Click Finish or Save
  14. Now within the Datasheet View Column Properties dialog choose the OrgID column and click "edit":
    1. In the Render Handler field, select the 'Change' button. Enter the following value into the Explicit Module text box:
      • /ADF/apps/pt_calendar/datasheet-modules/convert-id-list-to-org-names.cfm
    2. Click Finish or Save
    3. In the Header field, switch the text to 'Organizations'
    4. Click Finish or Save
  15. Now within the Datasheet View Column Properties dialog choose the MonthlyGridPage column and click "edit":
    1. In the Render Handler field, select the 'Change' button. Enter the following value into the Explicit Module text box:
      • /ADF/extensions/datasheet-modules/1.0/pageID-to-link.cfm
    2. Click Finish or Save
  16. With the remaining columns MonthlyGridPage, MonthlyListPage, WeeklyGridPage, WeeklyListPage, Daily Page and DetailsPage repeat the steps from MonthlyGridPage
  17. Close the Edit Column window.
  18. Go back to the Datasheet element interface, select the Layout button
    1. Default Sorting = SUBSITE Ascending
    2. Uncheck "Show Alphabet Characters for Filtering"
    3. Uncheck "Allow JavaScript data sorting"
    4. Click Save
  19. Publish this page.

Calendar View Pages

  1. Create a CommonSpot page with a name index and the page title of Events Calendar using the Calendar Template and place it in the Calendar subsite.
    • Since the this page is being created from the Calender Template which already contains all of the needed calendar elements, widgets and modules this All Events calendar page is complete.
    • If you are making a sub-calendar which will have filtered events by organization or by category, then select the organization or category to filter by from the options in the Calendar Display Properties element as described in the Calendar Display Views (Wide Content Area) section.
  2. Submit the Page.

Getting Started Guide

After the the PT Calendar App has been installed there a few initial tasks that will need to be done before events can be added.

Calendar App Configuration

Make sure your App Configuration has been saved and the ADF reset.

  1. If you haven't already done so, go to your Calendar App Manage Configuration page and click the button to Add Configuration data.
  2. Update the fields listed on the App Configuration with your customized information
  3. Reset the ADF

Calendar Organizations Configuration

Organizations are used to build filtered sub-calendars on your site.

Add a Organization via the Manage Calendar Organization datasheet:

  1. Go to your Web Admin Manage Calendar Organizations page
  2. Give the new record an Organization Name. This normally correlates to a subsite with a similar name. (For a filtered calendar in an 'Athletics' subsite you would create an 'Athletics' calendar organization.)
  3. Check the 'Active' checkbox to enable the organization.
  4. Optional - Select a Website URL for this Organization.
  5. Optional - Set the Ordinal for this Organization. (This field is only used if you Organizations will NOT be sorted by the Organization Name.)
  6. Click Submit

Event Categories Configuration

Event categories are a second level of grouping events. They are used to filter Events for a specific Organization on on your site. Categories can be assigned to specific organizations. Add the Event Categories via the Manage Event Categories datasheet:

  1. Go to your Web Admin Manage Event Categories page
  2. Give the new record an Category Name.
  3. Check the 'Active' checkbox to enable the category.
  4. Optional - Select a Category Icon for this category. Category Icons are small (20x20) icons that represent a category.
  5. Optional - Set the Ordinal for this Category. (This field is only used if you Caegories will NOT be sorted by the Category Name.)
  6. Click Submit

Calendar Page Mapping Configuration - Optional

Only used with the Multiple View Page Mode

When the Calendar is in Multiple View Page mode (see configuration) each Calendar View (month list, month grid, event details, etc.) is created on its own Page. This is how view pages were setup in the previous version of the PT Calendar (v2).

The Calendar View Page Mapping is used to store the mappings that are used to connect the links on the different calendar view pages to the correct calendar views by registering each page that contains the various calendar render handlers.

To configure Calendar Page Mappings for the All Events Pages complete the following steps.

  1. Go to the web admin page you created for "Calendar Page Mappings Manager"
  2. Click "Add New Page Mapping"
  3. From the "Choose Main Subsite" drop down select the subsite where the calendar view pages will reside.
  4. In each of the Calendar View select list fields (Detail, Daily, Weekly list, Weekly grid, Monthly list, Monthly grid) choose the page that contains the render handler was used for that the listed view page. In most cases the page selected for each will be in the same subsite that was selected in the "Choose Main Subsite" select list above.
  5. Click Submit