PT Calendar Version 3 Install

From ADF Docs
Revision as of 20:03, 19 October 2012 by Gcronkright (talk | contribs) (Import Custom Elements)
Jump to: navigation, search

Back to PT Calendar

IMPORTANT: v3.0 HAS NOT BEEN RELEASED!!

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");

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_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 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 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)

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 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 -
  4. Event Notification From Address - The 'From' email address of the notification email sent to event category users
  5. Event Notification Email Subject - The subject of the notification email sent to event category users
  6. Event Notification Email Message - The standard message for the notification email sent to event category users
  7. Send Event Approved Email to Contact -
  8. Event Approved Label -
  9. Event Approved Email Message -
  10. Send Event Denied Email to Contact -
  11. Event Denied Label -
  12. Event Denied Email Message -

View Page

  1. calendarViewPageMode -
  2. calenderViews -
  3. defaultCalendarView -
  4. calendarViewParamName -

Rendering and Display Tab

  1. App 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.
  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 cfquickdocs.com (Default: M/D/YYYY)
  9. ColdFusion Time Mask - ColdFusion Time Mask used for the display of times. TimeFormat on cfquickdocs.com (Default: h:mm tt)
  10. ColdFusion Long Date Mask - ColdFusion Date Mask used for the display of long or full dates. DateFormat on cfquickdocs.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. Enable Event Cache - (Default: No)
  2. Calendar Cache Type - (Default: blank)
  3. Calendar Cache DSN - (Default: blank)
  4. Enable Verbose Output - (Default: No)

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.

  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 - Optional

The Calendar template will be used to render Calendar display pages.

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

Management Pages

Create these 4 Admin pages:

  1. CCAPI Configuration
  2. Manage App Configuration Page
  3. Manage Calendar Categories
  4. Manage Calendar Events Datasheet
  5. Manage Calendar Events Grid


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.

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

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. 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:

  1. General Configuration Tab
    1. ui_theme
  2. Rendering and Display Tab
    1. ui_theme
  3. Performace and Debugging Tab
    1. 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.

    1. Calendar Organizations Tab

Create a Calendar Organizations Management datasheet


    1. Calendar Page Mapping Tab

Create a Calendar Page Mapping management datasheet

Reset the ADF for the server and site.

Manage Events

Calendar Cache Management

Calendar Event Management Grid