Difference between revisions of "PT Calendar Version 3 Install"
Gcronkright (talk | contribs) (→Manage Events Grid) |
Gcronkright (talk | contribs) |
||
(154 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
Back to [[PT_Calendar|PT Calendar]] | Back to [[PT_Calendar|PT Calendar]] | ||
− | IMPORTANT: v3.0 HAS NOT BEEN RELEASED!! | + | <!-- IMPORTANT: v3.0 HAS NOT BEEN RELEASED!! --> |
− | <!-- IMPORTANT: '''ADF 1. | + | <!-- IMPORTANT: '''ADF 1.6''' or greater is '''REQUIRED''' for this application. --> |
+ | |||
+ | IMPORTANT: PT Calender '''v3.0''' requires '''ADF 1.6''' or greater. | ||
== Download == | == Download == | ||
− | Download the Calendar Application from the [http://community.paperthin.com/projects/ | + | Download the Calendar Application from the [http://community.paperthin.com/projects/pt_calendar2/index.cfm Community Site Project] or from the SVN Repository. |
Extract the zip files into the following directory: | Extract the zip files into the following directory: | ||
Line 11: | Line 13: | ||
== Site Configuration == | == Site Configuration == | ||
− | The Calendar Application is built within the ADF. The ADF 1. | + | The Calendar Application is built within the ADF. The ADF 1.6 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]]. | * 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' ([[Site Configuration (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: | * Open the sites 'ADF.cfc' ([[Site Configuration (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"); | + | loadApp("ptCalendar"); |
− | |||
− | |||
== Styles == | == Styles == | ||
− | There are several out of the box style options for the | + | 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 | + | * '''/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. | 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 | + | '''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 == | == Import Custom Elements == | ||
Line 47: | Line 54: | ||
Local Custom Elements | Local Custom Elements | ||
#[[Calendar Display Properties]] (Calendar-Display-Properties-Custom-Element.zip) | #[[Calendar Display Properties]] (Calendar-Display-Properties-Custom-Element.zip) | ||
+ | #[[Calendar Widget Properties Month Grid Single]] (/widgets/Calendar-Widget-Properties-Month-Grid-Single-Custom-Element.zip) | ||
+ | #[[Calendar Widget Properties Upcoming Events Single]] (/widgets/Calendar-Widget-Properties-Upcoming-Events-Single-Custom-Element.zip) | ||
+ | #[[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 == | == Verify Imports == | ||
Line 57: | Line 69: | ||
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. | 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. | ||
+ | |||
+ | * [[Reset ADF|Reset the ADF]] for the server and site. | ||
== App Configuration == | == App Configuration == | ||
Line 154: | Line 168: | ||
# Submit the template for public use. | # Submit the template for public use. | ||
− | ===Calendar Template | + | === Calendar Template === |
− | + | This Calendar template will be used to create the Calendar display page(s) that render the different calendar views. | |
− | # 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.) | + | # 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. | ||
# Submit and activate the page. | # Submit and activate the page. | ||
# Save the page as a template. | # Save the page as a template. | ||
# Submit the template for public use. | # Submit the template for public use. | ||
+ | |||
+ | This calendar template will be setup using the '''SINGLE''' calendar view page mode. | ||
+ | |||
+ | <!-- For the steps to | ||
+ | setup the Calendar using the '''MULTIPLE''' calendar view page mode see below. | ||
+ | [[ADD LINK HERE]] --> | ||
+ | |||
+ | === Calendar Template Setup === | ||
+ | |||
+ | ==== Calendar Display Views (Wide Content Area) ==== | ||
+ | |||
+ | # In the '''WIDE''' content container element on the template page, add a Custom Script element. | ||
+ | # From the Custom Script element interface, click the ''Edit'' icon. | ||
+ | # Enter the following text into the Explicit Module path: | ||
+ | #* ''/ADF/apps/pt_calendar/customcf/calendar_view_links.cfm'' | ||
+ | # Next in the '''WIDE''' content container, add the '''Calendar Display Properties''' Local Custom Element. | ||
+ | # To configure the '''Calendar Display Properties''': | ||
+ | ## Click '''Data''' in the element interface. | ||
+ | ## From the 'Enter Custom Element Data' lightbox window that opens | ||
+ | ## 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. | ||
+ | # Submit the Display properties form. | ||
+ | |||
+ | ==== Calendar Modules and Widgets (Narrow Content Area) - ''Optional Items'' ==== | ||
+ | <!-- Add these 5 modules and widgets to your template: | ||
+ | #[[#Small Calendar Month Grid Widget|Small Calendar Month Grid Widget]] | ||
+ | #[[#Event Request Form Button|Event Request Form Button]] | ||
+ | #[[#Month Jump Drop Down Nav|Month Jump Drop Down Nav]] | ||
+ | #[[#Event Request Form Button|Event Request Form Button]] | ||
+ | #[[#Event Category Checkbox Filters|Event Category Checkbox Filters]] --> | ||
+ | |||
+ | # '''Small Calendar Month Grid Widget''' - Optional | ||
+ | ## In the '''NARROW''' content container element on the template page, add the '''Calendar Widget Properties-Month Grid-Single''' Local Custom Element. | ||
+ | <!-- ##* ''/ADF/apps/pt_calendar/exported-objects/widgets/Calendar-Widget-Properties-Month-Grid-Single-Custom-Element.zip'' --> | ||
+ | <!-- ##* When using the multiple calendar view page mode... use the '''-Multi''' Local Custom Element (see --> | ||
+ | ## To configure this widget: | ||
+ | ### Click '''Data''' in the element interface. | ||
+ | ### From the 'Enter Custom Element Data' lightbox window that opens | ||
+ | ### 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. | ||
+ | ### 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. | ||
+ | ## Submit the Widget Display properties form. | ||
+ | # '''Event Request Form Button''' - Optional | ||
+ | ## Next in the '''NARROW''' content container element on the template page, add a Custom Script element. | ||
+ | ## Enter the following text into the Explicit Module path: | ||
+ | ##* ''/ADF/apps/pt_calendar/customcf/calendar_event_request_form_lb_btn.cfm'' | ||
+ | ## Submit the Custom Script Element form. | ||
+ | # '''Month Jump Drop Down Nav''' - Optional | ||
+ | ## Next in the '''NARROW''' content container element on the template page, add a Custom Script element. | ||
+ | ## Enter the following text into the Explicit Module path: | ||
+ | ##* ''/ADF/apps/pt_calendar/customcf/month_nav_drop_down.cfm'' | ||
+ | ## Submit the Custom Script Element form. | ||
+ | # '''Event Category Checkbox Filters''' - Optional | ||
+ | ## Next in the '''NARROW''' column container, add the '''Calendar Display Properties''' Local Custom Element. | ||
+ | ## Next add the '''Calendar Event Categories''' Global Custom Element. | ||
+ | ## Click '''Render Mode''' in the element interface. | ||
+ | ## Select '''Display existing element data (content reuse)''' on the '''Rendering Mode''' tab. | ||
+ | ### Select the '''Filter''' tab. | ||
+ | ### Select Filter Type to '''Show subset of records'''. | ||
+ | ### Select the '''Field''' drop-down as the '''Categories.Active''' field. | ||
+ | ### Select the operator as '''Equals'''. | ||
+ | ### For the third value drop-down select '''1'''. | ||
+ | <!-- ###* For instructions to filter the listed categories by specific organizations [[ADD LINK HERE]] --> | ||
+ | ### For the '''Sort Order''' drop-down select the '''Category Name''' field and choose '''Ascending''' | ||
+ | ### Click '''OK''' on the render mode window. | ||
+ | ## Now click ''More'' in the element interface. Then the ''Custom Render Handlers'' menu option, and select the Render Handler: | ||
+ | ##* '''Calendar Category CheckBox List''' | ||
+ | ## Click '''OK''' on the custom render handlers window. | ||
+ | # Publish the changes to the template page. | ||
== Management Pages == | == Management Pages == | ||
− | Create these | + | Create these 7 Admin pages: |
#[[#CCAPI Configuration|CCAPI Configuration]] | #[[#CCAPI Configuration|CCAPI Configuration]] | ||
#[[#Manage App Configuration Page|Manage App Configuration Page]] | #[[#Manage App Configuration Page|Manage App Configuration Page]] | ||
− | #[[#Manage Calendar | + | #[[#Manage Calendar Organizations Datasheet|Manage Calendar Organizations Datasheet]] |
− | #[[#Manage | + | #[[#Manage Event Categories Datasheet|Manage Event Categories Datasheet]] |
− | #[[#Manage | + | #[[#Manage Events Datasheet|Manage Events Datasheet]] |
− | + | #[[#Manage Events Grid|Manage Events Grid]] | |
− | + | #[[#Manage Page Mappings Datasheet - Optional|Manage Page Mappings Datasheet]] - Optional | |
− | #[[#Manage | + | === CCAPI Configuration === |
− | #[[# | + | The Calendar Application uses the [[CCAPI_Library_Component|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|CCAPI Config]] setup. If this is your first App installation | |
− | The | + | 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|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|CCAPI Config]] file for the site. Once that configuration is complete, follow the steps below to set up the CCAPI config for the | + | First, follow the steps to set up the [[CCAPI Config|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. |
# Create a new page called 'ccapiCalendar'. Recommend creating this page in the ''/webadmin/calendar/'' subsite. | # Create a new page called 'ccapiCalendar'. Recommend creating this page in the ''/webadmin/calendar/'' subsite. | ||
− | # Add each of the following | + | # Add each of the following Calendar elements to the page: |
##[[Calendar Event Details]] | ##[[Calendar Event Details]] | ||
##[[Calendar Event DateTime]] | ##[[Calendar Event DateTime]] | ||
Line 203: | Line 286: | ||
## an example 'ccapi.cfm' file is in the '''pt_calendar > site-files > _cs_apps > config''' folder | ## an example 'ccapi.cfm' file is in the '''pt_calendar > site-files > _cs_apps > config''' folder | ||
− | < | + | <pre> |
<CalendarEventDetails> | <CalendarEventDetails> | ||
<pageID>####</pageID> | <pageID>####</pageID> | ||
Line 234: | Line 317: | ||
<controlName>ccapiCalendarOrganizationsElement</controlName> | <controlName>ccapiCalendarOrganizationsElement</controlName> | ||
</CalendarOrganizations> | </CalendarOrganizations> | ||
− | </ | + | </pre> |
To populate the <pageID> and <subsiteID> tags, view the 'source' code for the 'ccapiCalendar' page that was just created. | 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: | Identify the following line in the source code and enter this numeric value into the <subsiteID> tag: | ||
− | < | + | <pre> |
var jsSubSiteID = ##; | var jsSubSiteID = ##; | ||
− | </ | + | </pre> |
Identify the following line in the source code and enter this numeric value into the <pageID> tag: | Identify the following line in the source code and enter this numeric value into the <pageID> tag: | ||
− | < | + | <pre> |
var jsPageID = ####; | var jsPageID = ####; | ||
− | </ | + | </pre> |
[[Reset ADF|Reset the ADF]] | [[Reset ADF|Reset the ADF]] | ||
Line 273: | Line 356: | ||
## '''Rendering and Display Tab''' | ## '''Rendering and Display Tab''' | ||
### '''App UI Theme''' - select a UI theme | ### '''App UI Theme''' - select a UI theme | ||
− | |||
## '''Performance and Debugging Tab''' | ## '''Performance and Debugging Tab''' | ||
### '''Enable Event Cache''' - Uncheck the event cache option. (This option will be re-enabled later in the install process.) | ### '''Enable Event Cache''' - Uncheck the event cache option. (This option will be re-enabled later in the install process.) | ||
Line 287: | Line 369: | ||
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. | 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. | ||
− | #Create a new page called 'Manage Calendar Organizations' from the Base Plus One (or a Web Admin template) and in the ''/webadmin/calendar/'' subsite. | + | #Create a new page called '''Manage Calendar Organizations''' from the Base Plus One (or a Web Admin template) and in the ''/webadmin/calendar/'' subsite. |
#In the main content of the page, add a Custom Script element. | #In the main content of the page, add a Custom Script element. | ||
#From the Custom Script element interface, click the "Edit" icon. | #From the Custom Script element interface, click the "Edit" icon. | ||
Line 318: | Line 400: | ||
# Close the Edit Column window. | # Close the Edit Column window. | ||
#Go back to the Datasheet element interface, select the Layout button | #Go back to the Datasheet element interface, select the Layout button | ||
− | ##Default Sorting = | + | ##Default Sorting = ORGANIZATIONNAME Ascending |
##Uncheck "Show Alphabet Characters for Filtering" | ##Uncheck "Show Alphabet Characters for Filtering" | ||
##Uncheck "Allow JavaScript data sorting" | ##Uncheck "Allow JavaScript data sorting" | ||
Line 328: | Line 410: | ||
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. | 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. | ||
− | #Create a new page called 'Manage Event Categories' from the Base Plus One (or a Web Admin template) and in the ''/webadmin/calendar/'' subsite. | + | #Create a new page called '''Manage Event Categories''' from the Base Plus One (or a Web Admin template) and in the ''/webadmin/calendar/'' subsite. |
#In the main content of the page, add a Custom Script element. | #In the main content of the page, add a Custom Script element. | ||
#From the Custom Script element interface, click the "Edit" icon. | #From the Custom Script element interface, click the "Edit" icon. | ||
Line 342: | Line 424: | ||
## Datasheet Source: Form Result/Custom Element Sheet | ## Datasheet Source: Form Result/Custom Element Sheet | ||
# From the Datasheet Source dialog choose the "Calendar Event Categories" custom element and click "Next". | # From the Datasheet Source dialog choose the "Calendar Event Categories" custom element and click "Next". | ||
− | # 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". | + | # 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". |
# You will be brought to the Datasheet View page; click "Close" to return to your page. | # You will be brought to the Datasheet View page; click "Close" to return to your page. | ||
# You will see the datasheet element on this page now. Click the Datasheet element interface icon again and this time choose "Edit Columns". | # You will see the datasheet element on this page now. Click the Datasheet element interface icon again and this time choose "Edit Columns". | ||
Line 356: | Line 438: | ||
##Click Finish or Save. | ##Click Finish or Save. | ||
#Now within the Datasheet View Column Properties dialog choose the '''CategoryIcon''' column and click "edit": | #Now within the Datasheet View Column Properties dialog choose the '''CategoryIcon''' column and click "edit": | ||
− | # | + | ##Check the checkbox of the field called "Hidden". |
##Click Finish or Save. | ##Click Finish or Save. | ||
#Now within the Datasheet View Column Properties dialog choose the '''OrgIDList''' column and click "edit": | #Now within the Datasheet View Column Properties dialog choose the '''OrgIDList''' column and click "edit": | ||
Line 377: | Line 459: | ||
# Close the Edit Column window. | # Close the Edit Column window. | ||
#Go back to the Datasheet element interface, select the Layout button | #Go back to the Datasheet element interface, select the Layout button | ||
− | ##Default Sorting = | + | ##Default Sorting = Category Name Ascending |
##Uncheck "Show Alphabet Characters for Filtering" | ##Uncheck "Show Alphabet Characters for Filtering" | ||
##Uncheck "Allow JavaScript data sorting" | ##Uncheck "Allow JavaScript data sorting" | ||
Line 405: | Line 487: | ||
## Datasheet Source: Form Result/Custom Element Sheet | ## Datasheet Source: Form Result/Custom Element Sheet | ||
# From the Datasheet Source dialog choose the "Calendar Event Details" custom element and click "Next". | # From the Datasheet Source dialog choose the "Calendar Event Details" custom element and click "Next". | ||
− | # From the Datasheet Columns Dialog select the columns '''UniqueID'', '''Title''', '''EventDateTimeIDList''', '''EventRecurrenceID''', '''Category''', '''Organization''', '''EventApproved''' and ''' | + | # 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". |
# You will be brought to the Datasheet View page; click "Close" to return to your page. | # You will be brought to the Datasheet View page; click "Close" to return to your page. | ||
+ | # You will see the datasheet element on this page now. Click the Datasheet element interface icon again and this time choose "Filter". | ||
+ | ## Select the "Subset of records" filter type. | ||
+ | ## Apply the following filter: | ||
+ | ### Field = Calendar_Event_Details.uniqueID | ||
+ | ### Operator = Value Contained In List | ||
+ | ### Value = request.ptCalendar.eventManager.eventIDlist (note: use the UDE button) | ||
+ | ## Click Finish or Save | ||
# You will see the datasheet element on this page now. Click the Datasheet element interface icon again and this time choose "Edit Columns". | # You will see the datasheet element on this page now. Click the Datasheet element interface icon again and this time choose "Edit Columns". | ||
#Within the Datasheet View Column Properties dialog choose the '''UniqueID''' column and click "edit": | #Within the Datasheet View Column Properties dialog choose the '''UniqueID''' column and click "edit": | ||
Line 453: | Line 542: | ||
# Close the Edit Column window. | # Close the Edit Column window. | ||
#Go back to the Datasheet element interface, select the Layout button | #Go back to the Datasheet element interface, select the Layout button | ||
− | ##Default Sorting = | + | ##Default Sorting = EVENTS DATES AND TIMES Ascending |
##Uncheck "Show Alphabet Characters for Filtering" | ##Uncheck "Show Alphabet Characters for Filtering" | ||
##Uncheck "Allow JavaScript data sorting" | ##Uncheck "Allow JavaScript data sorting" | ||
Line 469: | Line 558: | ||
#* /ADF/apps/pt_calendar/customcf/manage_events_filtering_tools.cfm | #* /ADF/apps/pt_calendar/customcf/manage_events_filtering_tools.cfm | ||
# On the '''Parameters''' tab of the custom script element add following parameter: | # On the '''Parameters''' tab of the custom script element add following parameter: | ||
− | #* '''editType=Grid''' | + | #* '''editType=Grid''' <---''This is a very important'' |
#Click Save | #Click Save | ||
#Add another Custom Script element to main content container of the page. | #Add another Custom Script element to main content container of the page. | ||
Line 479: | Line 568: | ||
===Manage Page Mappings Datasheet - ''Optional''=== | ===Manage Page Mappings Datasheet - ''Optional''=== | ||
− | ''Only used with the Multiple View Page Mode'' | + | ''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. | ||
+ | |||
+ | #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. | ||
+ | #In the main content of the page, add a Custom Script element. | ||
+ | #From the Custom Script element interface, click the "Edit" icon. | ||
+ | #Enter the following text into the Explicit Module path: | ||
+ | #* /ADF/apps/pt_calendar/customcf/manage_page_mappings_header.cfm | ||
+ | # From the Datasheet element interface, click the "Datasheet" icon. | ||
+ | # From the "Datasheet Views" dialog, follow the "Click here to create a new datasheet view" link. | ||
+ | # Enter the following information and then click "Next": | ||
+ | ## Name: All Page Mappings View | ||
+ | ## Private: unchecked | ||
+ | ## Default View: checked | ||
+ | ## Description: View to manage All Page Mappings View | ||
+ | ## Datasheet Source: Form Result/Custom Element Sheet | ||
+ | # From the Datasheet Source dialog choose the "Calendar Page Mapping" custom element and click "Next". | ||
+ | # 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". | ||
+ | # You will be brought to the Datasheet View page; click "Close" to return to your page. | ||
+ | # You will see the datasheet element on this page now. Click the Datasheet element interface icon again and this time choose "Edit Columns". | ||
+ | #Within the Datasheet View Column Properties dialog choose the '''MapID''' column and click "edit": | ||
+ | ##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 | ||
+ | ##Click Finish or Save. | ||
+ | ##In the Header field, switch the text to 'Edit/Delete' | ||
+ | ##Click Finish or Save | ||
+ | #Now within the Datasheet View Column Properties dialog choose the '''Subsite''' column and click "edit": | ||
+ | ##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 | ||
+ | ## Click Finish or Save | ||
+ | #Now within the Datasheet View Column Properties dialog choose the '''OrgID''' column and click "edit": | ||
+ | ##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 | ||
+ | ## Click Finish or Save | ||
+ | ## In the Header field, switch the text to 'Organizations' | ||
+ | ##Click Finish or Save | ||
+ | #Now within the Datasheet View Column Properties dialog choose the '''MonthlyGridPage''' column and click "edit": | ||
+ | ##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 | ||
+ | ##Click Finish or Save | ||
+ | #With the remaining columns '''MonthlyGridPage''', '''MonthlyListPage''', '''WeeklyGridPage''', '''WeeklyListPage''', '''Daily Page''' and '''DetailsPage''' repeat the steps from '''MonthlyGridPage''' | ||
+ | # Close the Edit Column window. | ||
+ | #Go back to the Datasheet element interface, select the '''Layout''' button | ||
+ | ##Default Sorting = '''SUBSITE''' Ascending | ||
+ | ##Uncheck "Show Alphabet Characters for Filtering" | ||
+ | ##Uncheck "Allow JavaScript data sorting" | ||
+ | ##Click Save | ||
+ | # Publish this page. | ||
+ | |||
+ | == Calendar View Pages == | ||
+ | # 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 is the '''Calendar Display Properties''' as described in the [[#Calendar Display Views (Wide Content Area)|Calendar Display Views (Wide Content Area)]] section. | ||
+ | # 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. | ||
+ | |||
+ | # If you haven't already done so, go to your Calendar App '''Manage Configuration''' page and click the button to '''Add Configuration''' data. | ||
+ | # Update the fields listed on the [[#App Configuration|App Configuration]] with your customized information | ||
+ | # Reset the ADF | ||
+ | |||
+ | === Calendar Organizations Configuration === | ||
+ | Organizations are used to build filtered sub-calendars on your site. | ||
+ | <!-- For example, a top level calendar would contain all events but under an 'Athletics' subsite you would build an calendar filtered by an 'Athletics' organization. The calendar would only display Events assigned to the 'Athletics' organization. --> | ||
+ | |||
+ | Add a Organization via the '''Manage Calendar Organization''' datasheet: | ||
+ | # Go to your Web Admin '''Manage Calendar Organizations''' page | ||
+ | # 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.) | ||
+ | # Check the 'Active' checkbox to enable the organization. | ||
+ | # Optional - Select a '''Website''' URL for this Organization. | ||
+ | # Optional - Set the '''Ordinal''' for this Organization. (This field is only used if you Organizations will NOT be sorted by the Organization Name.) | ||
+ | # 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: | ||
+ | # Go to your Web Admin '''Manage Event Categories''' page | ||
+ | # Give the new record an '''Category Name'''. | ||
+ | # Check the 'Active' checkbox to enable the category. | ||
+ | # Optional - Select a '''Category Icon''' for this category. Category Icons are small (20x20) icons that represent a category. | ||
+ | # Optional - Set the '''Ordinal''' for this Category. (This field is only used if you Caegories will NOT be sorted by the Category Name.) | ||
+ | # 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. | ||
+ | |||
+ | # Go to the web admin page you created for "Calendar Page Mappings Manager" | ||
+ | # Click "Add New Page Mapping" | ||
+ | # From the "Choose Main Subsite" drop down select the subsite where the calendar view pages will reside. | ||
+ | # 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. | ||
+ | # Click Submit |
Latest revision as of 23:16, 17 February 2022
Back to PT Calendar
IMPORTANT: PT Calender v3.0 requires ADF 1.6 or greater.
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.6 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 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
- 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)
Local Custom Elements
- Calendar Display Properties (Calendar-Display-Properties-Custom-Element.zip)
- Calendar Widget Properties Month Grid Single (/widgets/Calendar-Widget-Properties-Month-Grid-Single-Custom-Element.zip)
- Calendar Widget Properties Upcoming Events Single (/widgets/Calendar-Widget-Properties-Upcoming-Events-Single-Custom-Element.zip)
- 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.
- Reset the ADF for the server and site.
App Configuration
The Calendar App uses a custom element to store site specific configurations.
Here is a list of most of the available configuration fields:
General Tab
- New Event URL - Site relative URL for a public facing form page for submitting a new Event requests. (Example: /new-event-form.cfm)
- CS USERS DSN - Where the Calendar will get the Users info for event category notifications. (Default: commonspot-users)
- Send New Event Emails to Category Notification Users -
- 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
- Send Event Approved Email to Contact -
- Event Approved Label -
- Event Approved Email Message -
- Send Event Denied Email to Contact -
- Event Denied Label -
- Event Denied Email Message -
View Page
- calendarViewPageMode -
- calenderViews -
- defaultCalendarView -
- calendarViewParamName -
Rendering and Display Tab
- 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.
- Use Event Details Tooltip - The Calendar app utilizes jQuery qTip for event detail tooltips. (Default: Yes)
- Event Details ToolTip Theme - If using event detail tooltips, select one of the 6 pre-packed themes. (Default: Cream)
- 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)
- ColdFusion Date Mask - ColdFusion Date Mask used for the display of dates. DateFormat on cfquickdocs.com (Default: M/D/YYYY)
- ColdFusion Time Mask - ColdFusion Time Mask used for the display of times. TimeFormat on cfquickdocs.com (Default: h:mm tt)
- ColdFusion Long Date Mask - ColdFusion Date Mask used for the display of long or full dates. DateFormat on cfquickdocs.com (Default: yyyy)
- 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)
- Copy Event Suffix - Text that is appended to the end of the title of a copied event. (Default: - Copy)
Performance and Debugging Tab
- Enable Event Cache - (Default: No)
- Calendar Cache Type - (Default: blank)
- Calendar Cache DSN - (Default: blank)
- Enable Verbose Output - (Default: No)
Note: The app configuration fields not listed here should NOT need to be modified from their default values.
IMPORTANT: Follow the steps below to configure the App UI Theme Field for your site.
Configure the App UI Theme Field
- Go to your CommonSpot Site Administration
- From the menu on the left open Element & Forms
- Click Elements
- A Manage Elements window will open
- From the Category drop down filter the list elements by selecting the Calendar App Elements
- Click the Filter button
- Scroll to the bottom of the Calendar App Elements list
- Find the ptCalendar Configuration global custom element
- Click the "Lock" icon to unlock the ptCalendar Configuration Element
- Click the "Pencil" icon and select field definitions to open the configuration fields
- A 'Custom Element Field Definitions' window will open
- Go to the 'Rendering and Display' tab
- Edit the 'App UI Theme (ui_theme)' field that uses the UI Theme Selector CFT
- Click the 'Other Properties' Tab
- From the "Select an installed jQuery UI Version:" drop down list select the latest jQuery UI library that is available in your install of the ADF. (ie. jquery-ui-1.8)
- Click Save
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
This Calendar template will be used to create the Calendar display page(s) that render the different calendar views.
- 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.
- Submit and activate the page.
- Save the page as a template.
- 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)
- In the WIDE content container element on the template page, add a Custom Script element.
- From the Custom Script element interface, click the Edit icon.
- Enter the following text into the Explicit Module path:
- /ADF/apps/pt_calendar/customcf/calendar_view_links.cfm
- Next in the WIDE content container, add the Calendar Display Properties Local Custom Element.
- To configure the Calendar Display Properties:
- Click Data in the element interface.
- From the 'Enter Custom Element Data' lightbox window that opens
- 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.
- Submit the Display properties form.
Calendar Modules and Widgets (Narrow Content Area) - Optional Items
- Small Calendar Month Grid Widget - Optional
- In the NARROW content container element on the template page, add the Calendar Widget Properties-Month Grid-Single Local Custom Element.
- To configure this widget:
- Click Data in the element interface.
- From the 'Enter Custom Element Data' lightbox window that opens
- 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.
- 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.
- Submit the Widget Display properties form.
- Event Request Form Button - Optional
- Next in the NARROW content container element on the template page, add a Custom Script element.
- Enter the following text into the Explicit Module path:
- /ADF/apps/pt_calendar/customcf/calendar_event_request_form_lb_btn.cfm
- Submit the Custom Script Element form.
- Month Jump Drop Down Nav - Optional
- Next in the NARROW content container element on the template page, add a Custom Script element.
- Enter the following text into the Explicit Module path:
- /ADF/apps/pt_calendar/customcf/month_nav_drop_down.cfm
- Submit the Custom Script Element form.
- Event Category Checkbox Filters - Optional
- Next in the NARROW column container, add the Calendar Display Properties Local Custom Element.
- Next add the Calendar Event Categories Global Custom Element.
- Click Render Mode in the element interface.
- Select Display existing element data (content reuse) on the Rendering Mode tab.
- Select the Filter tab.
- Select Filter Type to Show subset of records.
- Select the Field drop-down as the Categories.Active field.
- Select the operator as Equals.
- For the third value drop-down select 1.
- For the Sort Order drop-down select the Category Name field and choose Ascending
- Click OK on the render mode window.
- Now click More in the element interface. Then the Custom Render Handlers menu option, and select the Render Handler:
- Calendar Category CheckBox List
- Click OK on the custom render handlers window.
- Publish the changes to the template page.
Management Pages
Create these 7 Admin pages:
- CCAPI Configuration
- Manage App Configuration Page
- Manage Calendar Organizations Datasheet
- Manage Event Categories Datasheet
- Manage Events Datasheet
- Manage Events Grid
- 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.
- Create a new page called 'ccapiCalendar'. Recommend creating this page in the /webadmin/calendar/ subsite.
- Add each of the following Calendar 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_configuration_header.cfm
- Publish the page.
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
- You can update the following fields:
- General Tab
- New Event URL - clear this default entry (Only used if you have a public or non-admin event request form.)
- Event Notification From Address - add a valid FROM address
- View Page
- Calendar View Page Mode - set this option to 'Single'
- Calendar Views - make sure all 5 options are checked
- Default Calendar View - select MonthGrid (you can change this later)
- Rendering and Display Tab
- App UI Theme - select a UI theme
- Performance and Debugging Tab
- Enable Event Cache - Uncheck the event cache option. (This option will be re-enabled later in the install process.)
- General Tab
- 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.
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.
- Create a new page called Manage Calendar Organizations from the Base Plus One (or a Web Admin template) and in the /webadmin/calendar/ subsite.
- In the main content of the page, add a Custom Script element.
- From the Custom Script element interface, click the "Edit" icon.
- Enter the following text into the Explicit Module path:
- /ADF/apps/pt_calendar/customcf/manage_calendar_organizations_header.cfm
- From the Datasheet element interface, click the "Datasheet" icon.
- From the "Datasheet Views" dialog, follow the "Click here to create a new datasheet view" link.
- Enter the following information and then click "Next":
- Name: All Event Organizations View
- Private: unchecked
- Default View: checked
- Description: View to manage All Event Organizations
- Datasheet Source: Form Result/Custom Element Sheet
- From the Datasheet Source dialog choose the "Calendar Organizations" custom element and click "Next".
- 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".
- You will be brought to the Datasheet View page; click "Close" to return to your page.
- You will see the datasheet element on this page now. Click the Datasheet element interface icon again and this time choose "Edit Columns".
- Within the Datasheet View Column Properties dialog choose the UNIQUEID column and click "edit":
- 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
- Click Finish or Save.
- In the Header field, switch the text to 'Edit/Delete'
- Click Finish or Save
- In the Render Handler field, select the 'Change' button. Enter the following value into the Explicit Module text box:
- Now within the Datasheet View Column Properties dialog choose the ACTIVE column and click "edit":
- 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
- Click Finish or Save
- In the Header field, switch the text to 'Active'
- Click Finish
- In the Render Handler field, select the 'Change' button. Enter the following value into the Explicit Module text box:
- Close the Edit Column window.
- Go back to the Datasheet element interface, select the Layout button
- Default Sorting = ORGANIZATIONNAME Ascending
- Uncheck "Show Alphabet Characters for Filtering"
- Uncheck "Allow JavaScript data sorting"
- Click Save
- 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.
- Create a new page called Manage Event Categories from the Base Plus One (or a Web Admin template) and in the /webadmin/calendar/ subsite.
- In the main content of the page, add a Custom Script element.
- From the Custom Script element interface, click the "Edit" icon.
- Enter the following text into the Explicit Module path:
- /ADF/apps/pt_calendar/customcf/manage_event_categories_header.cfm
- From the Datasheet element interface, click the "Datasheet" icon.
- From the "Datasheet Views" dialog, follow the "Click here to create a new datasheet view" link.
- Enter the following information and then click "Next":
- Name: All Event Categories View
- Private: unchecked
- Default View: checked
- Description: View to manage All Event Categories
- Datasheet Source: Form Result/Custom Element Sheet
- From the Datasheet Source dialog choose the "Calendar Event Categories" custom element and click "Next".
- 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".
- You will be brought to the Datasheet View page; click "Close" to return to your page.
- You will see the datasheet element on this page now. Click the Datasheet element interface icon again and this time choose "Edit Columns".
- Within the Datasheet View Column Properties dialog choose the CatID column and click "edit":
- 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
- Click Finish or Save.
- In the Header field, switch the text to 'Edit/Delete'
- Click Finish or Save
- In the Render Handler field, select the 'Change' button. Enter the following value into the Explicit Module text box:
- Now within the Datasheet View Column Properties dialog choose the Name column and click "edit":
- 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
- Click Finish or Save.
- In the Render Handler field, select the 'Change' button. Enter the following value into the Explicit Module text box:
- Now within the Datasheet View Column Properties dialog choose the CategoryIcon column and click "edit":
- Check the checkbox of the field called "Hidden".
- Click Finish or Save.
- Now within the Datasheet View Column Properties dialog choose the OrgIDList column and click "edit":
- 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
- Click Finish or Save.
- In the Header field, switch the text to 'Organizations'
- Click Finish or Save
- In the Render Handler field, select the 'Change' button. Enter the following value into the Explicit Module text box:
- Now within the Datasheet View Column Properties dialog choose the ACTIVE column and click "edit":
- 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
- Click Finish or Save
- In the Render Handler field, select the 'Change' button. Enter the following value into the Explicit Module text box:
- Now within the Datasheet View Column Properties dialog choose the NotificationUserIDs column and click "edit":
- 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
- Click Finish or Save.
- In the Header field, switch the text to 'Notify Users'
- Click Finish or Save
- Click Finish or Save
- In the Render Handler field, select the 'Change' button. Enter the following value into the Explicit Module text box:
- Close the Edit Column window.
- Go back to the Datasheet element interface, select the Layout button
- Default Sorting = Category Name Ascending
- Uncheck "Show Alphabet Characters for Filtering"
- Uncheck "Allow JavaScript data sorting"
- Click Save
- 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.
- Create a new page called 'Manage Calendar Events' from the Base Plus One (or a Web Admin template) and in the /webadmin/calendar/ subsite.
- In the main content container of the page, add a Custom Script element.
- From the Custom Script element interface, click the "Edit" icon.
- Enter the following text into the Explicit Module path:
- /ADF/apps/pt_calendar/customcf/manage_events_filtering_tools.cfm
- Add another Custom Script element to main content container of the page.
- From the Custom Script element interface, click the "Edit" icon.
- Enter the following text into the Explicit Module path:
- /ADF/apps/pt_calendar/customcf/manage_calendar_event_details_header.cfm
- From the Datasheet element interface, click the "Datasheet" icon.
- From the "Datasheet Views" dialog, follow the "Click here to create a new datasheet view" link.
- Enter the following information and then click "Next":
- Name: All Event Details View
- Private: unchecked
- Default View: checked
- Description: View to manage events
- Datasheet Source: Form Result/Custom Element Sheet
- From the Datasheet Source dialog choose the "Calendar Event Details" custom element and click "Next".
- 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".
- You will be brought to the Datasheet View page; click "Close" to return to your page.
- You will see the datasheet element on this page now. Click the Datasheet element interface icon again and this time choose "Filter".
- Select the "Subset of records" filter type.
- Apply the following filter:
- Field = Calendar_Event_Details.uniqueID
- Operator = Value Contained In List
- Value = request.ptCalendar.eventManager.eventIDlist (note: use the UDE button)
- Click Finish or Save
- You will see the datasheet element on this page now. Click the Datasheet element interface icon again and this time choose "Edit Columns".
- Within the Datasheet View Column Properties dialog choose the UniqueID column and click "edit":
- 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
- Click Finish or Save.
- In the Header field, switch the text to 'Edit/Delete/Copy'
- Click Finish or Save
- In the Render Handler field, select the 'Change' button. Enter the following value into the Explicit Module text box:
- Now within the Datasheet View Column Properties dialog choose the EventDateTimeIDList column and click "edit":
- 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
- Click Finish or Save.
- In the Header field, switch the text to 'Event Dates/Times'
- Click Finish or Save
- In the Render Handler field, select the 'Change' button. Enter the following value into the Explicit Module text box:
- Now within the Datasheet View Column Properties dialog choose the EventRecurrenceID column and click "edit":
- 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
- Click Finish or Save.
- In the Header field, switch the text to 'Recurrence Properties'
- Click Finish or Save
- In the Render Handler field, select the 'Change' button. Enter the following value into the Explicit Module text box:
- Now within the Datasheet View Column Properties dialog choose the Category column and click "edit":
- 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
- Click Finish or Save.
- In the Header field, switch the text to 'Categories'
- Click Finish or Save
- In the Render Handler field, select the 'Change' button. Enter the following value into the Explicit Module text box:
- Now within the Datasheet View Column Properties dialog choose the Organization column and click "edit":
- 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
- Click Finish or Save.
- In the Header field, switch the text to 'Organizations'
- Click Finish or Save
- In the Render Handler field, select the 'Change' button. Enter the following value into the Explicit Module text box:
- Now within the Datasheet View Column Properties dialog choose the EventApproved column and click "edit":
- 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
- Click Finish or Save.
- In the Header field, switch the text to 'Approval Status'
- Click Finish or Save
- In the Render Handler field, select the 'Change' button. Enter the following value into the Explicit Module text box:
- Now within the Datasheet View Column Properties dialog choose the AppovalUserID column and click "edit":
- 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
- Click Finish or Save.
- In the Header field, switch the text to 'Approver'
- Click Finish or Save
- Click Finish or Save
- In the Render Handler field, select the 'Change' button. Enter the following value into the Explicit Module text box:
- Close the Edit Column window.
- Go back to the Datasheet element interface, select the Layout button
- Default Sorting = EVENTS DATES AND TIMES Ascending
- Uncheck "Show Alphabet Characters for Filtering"
- Uncheck "Allow JavaScript data sorting"
- Click Save
- 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.
- 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.
- In the main content container of the page, add a Custom Script element.
- From the Custom Script element interface, click the "Edit" icon.
- Enter the following text into the Explicit Module path:
- /ADF/apps/pt_calendar/customcf/manage_events_filtering_tools.cfm
- On the Parameters tab of the custom script element add following parameter:
- editType=Grid <---This is a very important
- Click Save
- Add another Custom Script element to main content container of the page.
- From the Custom Script element interface, click the "Edit" icon.
- Enter the following text into the Explicit Module path:
- /ADF/apps/pt_calendar/customcf/manage_calendar_events_month_grid.cfm
- Click Save
- 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.
- 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.
- In the main content of the page, add a Custom Script element.
- From the Custom Script element interface, click the "Edit" icon.
- Enter the following text into the Explicit Module path:
- /ADF/apps/pt_calendar/customcf/manage_page_mappings_header.cfm
- From the Datasheet element interface, click the "Datasheet" icon.
- From the "Datasheet Views" dialog, follow the "Click here to create a new datasheet view" link.
- Enter the following information and then click "Next":
- Name: All Page Mappings View
- Private: unchecked
- Default View: checked
- Description: View to manage All Page Mappings View
- Datasheet Source: Form Result/Custom Element Sheet
- From the Datasheet Source dialog choose the "Calendar Page Mapping" custom element and click "Next".
- 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".
- You will be brought to the Datasheet View page; click "Close" to return to your page.
- You will see the datasheet element on this page now. Click the Datasheet element interface icon again and this time choose "Edit Columns".
- Within the Datasheet View Column Properties dialog choose the MapID column and click "edit":
- 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
- Click Finish or Save.
- In the Header field, switch the text to 'Edit/Delete'
- Click Finish or Save
- In the Render Handler field, select the 'Change' button. Enter the following value into the Explicit Module text box:
- Now within the Datasheet View Column Properties dialog choose the Subsite column and click "edit":
- 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
- Click Finish or Save
- In the Render Handler field, select the 'Change' button. Enter the following value into the Explicit Module text box:
- Now within the Datasheet View Column Properties dialog choose the OrgID column and click "edit":
- 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
- Click Finish or Save
- In the Header field, switch the text to 'Organizations'
- Click Finish or Save
- In the Render Handler field, select the 'Change' button. Enter the following value into the Explicit Module text box:
- Now within the Datasheet View Column Properties dialog choose the MonthlyGridPage column and click "edit":
- 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
- Click Finish or Save
- In the Render Handler field, select the 'Change' button. Enter the following value into the Explicit Module text box:
- With the remaining columns MonthlyGridPage, MonthlyListPage, WeeklyGridPage, WeeklyListPage, Daily Page and DetailsPage repeat the steps from MonthlyGridPage
- Close the Edit Column window.
- Go back to the Datasheet element interface, select the Layout button
- Default Sorting = SUBSITE Ascending
- Uncheck "Show Alphabet Characters for Filtering"
- Uncheck "Allow JavaScript data sorting"
- Click Save
- Publish this page.
Calendar View Pages
- 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 is the Calendar Display Properties as described in the Calendar Display Views (Wide Content Area) section.
- 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.
- If you haven't already done so, go to your Calendar App Manage Configuration page and click the button to Add Configuration data.
- Update the fields listed on the App Configuration with your customized information
- 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:
- Go to your Web Admin Manage Calendar Organizations page
- 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.)
- Check the 'Active' checkbox to enable the organization.
- Optional - Select a Website URL for this Organization.
- Optional - Set the Ordinal for this Organization. (This field is only used if you Organizations will NOT be sorted by the Organization Name.)
- 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:
- Go to your Web Admin Manage Event Categories page
- Give the new record an Category Name.
- Check the 'Active' checkbox to enable the category.
- Optional - Select a Category Icon for this category. Category Icons are small (20x20) icons that represent a category.
- Optional - Set the Ordinal for this Category. (This field is only used if you Caegories will NOT be sorted by the Category Name.)
- 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.
- Go to the web admin page you created for "Calendar Page Mappings Manager"
- Click "Add New Page Mapping"
- From the "Choose Main Subsite" drop down select the subsite where the calendar view pages will reside.
- 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.
- Click Submit