Skip to main content
Kinetic Community

Kinetic Calendar Version 2.0

An interactive tour of the Features and Functions of Kinetic Calendar v2.0. Agenda Current Remedy Version Configuration and Installation File Structures Troubleshooting Themes Click Handlers Questions Current Remedy Version Current version is 1.5.3. Manager Console   Event Type Dialog   No further Remedy versions planned (patches as needed) Differences from version 2.0 Includes a Default Event Type. Allows saving into Remedy forms Requires authentication into Remedy for permissions Limited to interactions with Remedy forms     Configuration and Installation War file only - No Remedy except the API Install video - Installation Page   Web Admin Console Configuration Existing and New Connections Connections relate to the adaptors provided. Out of the box you will have Remedy and Exchange New connections info stored in the connections.json file jar files normally stored in /kineticCalendar/WEB-INF/lib Errors with existing connections Errors after install Default values for Exchange and Remedy will provide errors. Calendars All the configured calendars - active or not and visible or not Community Page   Properties Set the basic Properties of the application Web Admin login Set an external Configuration directory Themes Licensing Community Page   Environment Troubleshooting details, including license expiration Community Page Activity 1 Download and Install Calendar Calendar files are available from the Community Site. License Key is available on the ReadyTech Image. Use the video for help - remember admin/admin for the login Remedy server is matrix.kineticdata.com user = Demo with no password

File Structures

Out of the box, each calendar has its own directory in the following location:

/webserverhome/kineticCalendar/WEB-INF/configuration/calendars

This location can be (should be) changed on the web admin console

There are two major sets of files for each calendar. 

Calendar json

Defines the overall structure of the calendar

One per Calendar

sets name and url, overall theme, and click handlers

Event json

Four major settings

General Event information - name, theme, source (including qualification)

Core Mappings - fields displayed and date/time values used

Detail Mappings - fields displayed when event is clicked

Filter Mappings - fields to filter data by (including colors!)

The formats of these files are set by the adaptors. They read the files, they set the format.

Calendar JSON

Example of calendar.json

 
{
    "name": "Changes - Completed",
    "id": "change_infrastructure_completed",
    "description": "Changes by Completed Date",
    "status": "Active",
    "defaultView": "Month",
    "displayPage": "/themes/derick/calendar.jsp",
    "visibleInListing": true,
    "clickHandler": {},
    "eventTypeOrder": [
    "Scheduled"
    ]
}
 

Here is a link to the extended docs on Community - calendar

Points to remember:

id is unique

displayPage sets the overall theme (changeable in the events)

If you include eventTypeOrder, you must list all events

Event JSON

Example of Event json

{
    "name": "Minor",
    "status": "Active",
    "defaultFilter": "",
    "detailsPage": "/themes/default/event.jsp",
    "color": null,
    "source": {
        "connectionName": "ITSM ARS",
        "configuration": {
         "Form": "KS_SRV_Helper",
          "Qualification": "'Character Field2' = \"Minor\""
        },
        "coreMappings": {
            "Id": "1",
            "Name": "750000001",
            "Description": "750000001",
            "Start": "750000201",
            "End": "750000202"
        },
        "detailMappings": {
            "Category": "750000003",
            "Type": "750000004",
            "Item": "750000005",
         },
        "filterMappings": [
            {
                "name": "Item",
                "value": "750000005",
                "values": {"Item 1": "Red",
                                 "Item 2": "Blue",
                                 "Item 3": "Green"
                                }
            },
        ]
    }
}
 
Link to the extended Docs on Community - Event
 
Points to remember:
 
The file name needs to start with et_ and end with .json. The middle porting of the name is variable.
 
If you have multiple events (files), you need to either list them all in the eventTypeOrder (calendar.json), or remove that parameter.
 
All references to Remedy fields (except the qualification) need to use the database IDs
 
Text file with the database IDs for the KS_SRV_Helper form attached to the end of this article.
 

Activity 2

Update a calendar to use the data in the form KS_SRV_Helper
Update the name of the Calendar
Update the event by changing the qualification and/or filter
 
Create at least one calendar with multiple events
 
Add colors and orders to the events and the filters
 
 
 

Troubleshooting

There are two basic methods for troubleshooting, Logs and Debugging.

Logs

Log files are available either from the admin Console, or directly from the web server.

The easiest way to get the logs are from the Admin Console. There are links to either a single log, or a zip of all the logs.

Along with the All logs you get an environment description like the following:

===============================================================================
ENVIRONMENT DETAILS
===============================================================================
  Application Directory: /home/kinetic/tomcat/webapps/kineticCalendar/
  Available Processors: 1
  Host OS: Linux 2.6.9-42.0.8.plus.c4 (i386)
  Java Library Path: /home/kinetic/tomcat/shared/lib
  Java Location: /usr/java/jdk1.5.0_09/jre
  Java Version: Java(TM) 2 Runtime Environment, Standard Edition (1.5.0_09-b03)
  JVM Min Heap: 253 MB
  JVM Max Heap: 506 MB
  Web Server: Apache Tomcat/5.5.20

This file was generated at Mon Feb 18 15:57:25 CST 2013.

 

Debugging

When you are looking at java script files, the application minimizes things to make loading faster. However, this makes debugging the files nearly impossible. If you need to see all the js files add the following to the end of the URL - debugjs=true

 

Admin Console

As you see when you load the Web Admin Console, it contains some minor troubleshooting information on the Configuration tab. The Errors section will try to provide information about errors in either the calendars or events json files.

Example of eventTypeOrder error:

configuration_error.JPG

Activity 3

If you have made it through activity 2 without any errors, create some obvious errors and see how they are reported in the Web Admin Console

Open and look at the logs as both working and non-working calendars load.

 

Themes

This version of Calendar is made to take advantage of themes in a way similar to themes in Kinetic Request and Kinetic Survey. The application comes with a default theme - what I like to call the green theme - but it is configurable in many ways through CSS.

Here is an example of the base directory for the default theme:

calendar_theme_directory.JPG

Here is an example of the calendar jsp. You can see the links to both style sheets and jsp fragments:

calendar_jsp.JPG

The calendars.jsp renders the list of available calendars.

 

Default Theme CSS

The CSS for the default theme is in the following directory:

/kineticCalendar/themes/default/resources/css and is just called theme.css

The developers have done a great job of commenting the file. Here is an example:

default css.JPG

Creating Your Own Theme

The best way to create your own theme is to copy the existing default theme, and then update the theme parameters in the calendar and event json. From above, the calendar theme holds the main display properties of the calendars, and each event can theme its jsp.

 

Language Settings

Calendar includes the option to display different languages per calendar. The default is US English, but you can include different options as needed. The calendar.jsp file can override the default language called from the applicationHeadContent.jspf file (<%@ include file="../../resources/lang/en/en_US.jsp" %>)

Here is a sample of the language file:

english lang example.JPG

If you make changes, you will likely need to delete the "work" directory to refresh the jsp.

Activity 4

Copy and Create your own theme

Look through the calendas.jsp and calendar.jsp files to see the pattern of includes

Update colors or other settings through the default.css or in the jsps

Update part of the language used, either add a new language or update the english language settings

Click Handlers

Click handlers are defined as having an action take place based upon a "click" on some portion of the calendar. We are going to talk about two examples. The first is a click handler that launches a URL based. The second is a click on an event that opens the underlying record.

URL Based Click Handler

This example will show you how to open a specific Remedy form when clicking on an open area in a Week or Day view of a calendar.

Here is the link to the specific article on Community.

We can use this to open a form in Remedy to either enter the data directly, or perhaps bring the data from the calendar and fill in the fields on the form.

Event Based Handler

This example will add a link to an event that displays the underlying record. It also introduces the concept of configuration values.

The example is set out very well on community here

At the very least, you can add a URL to the event jsp. Using the example above, you can set some config values that can be passed to the URL. Making the correct ticket show in mid-tier may require some workflow or customizing the URL further.

Activity 5

Add a click handler to your calendar. Either one is fine.