Create the MySQL database to store the NIC Cal data. Contact your hosting provider if they do not provide a tool for you to do this directly.
- Place the compressed download file in the Web accessible directory you wish to install NIC Cal and uncompress it. If installing on a Linux or Unix server, the command is:tar xzf NIC_Cal-1.0.5.tar.gz
Point your Web browser to the directory of the NIC Cal installation, it should redirect you to "install.php," the Installation page.
Enter your database information, e-mail address and password into the Installation page and click "Install." The script will generate the necessary tables in the database and display the code for your configuration file. Cut and paste this code into a new file and save it as "config.php." Upload "config.php" to the main directory of your NIC Cal installation.
The following are explanations to the variables found in the configuration file, "config.php"
$h,$d,$u and $p correspond to the host name, database name, user name and password of the database.
$calendar_title is the title of calendar that is displayed.
$calendar_email is the e-mail of the calendar administrator.
$calendar_url is the url address of the calendar, used for notification functions.
$table_prefix is the text amended to the front of the default table names to differentiate installations of NIC Cal on the same database.
$default_module is the id of the default calendar view to be displayed.
$include_child_categories indicates whether events listed under sub-categories of the current category should be displayed. Set to either "true" or "false".
$include_parent_categories indicates whether events listed in categories in which the current category is nested should be displayed. Set to either "true" or "false".
$week_titles, $week_titles_s, $week_titles_ss are the arrays containing the names of each day of the week to be displayed, starting with Sunday.
$fck_editor_path specifies the url path to your installation of the HTML editor, "FCKeditor." For information on integrating FCKeditor, see below.
$fck_editor_toolbar indicates which FCKeditor toolbar configuration to use.
$start_category_id specifies the default category shown in NIC Cal.
$language specifies the path to the language file.
$day_week_start_hour specifies the first full time block on the day and week views.
Basic FCKeditor Integration
Place the compressed FCKeditor download file in your main NIC Cal directory and uncompress it. If installing on a Linux or Unix server, the command is:tar xzf FCKeditor*
Edit the NIC Cal configuration file, "config.php," and change the value of $fck_editor_path to the url path of newly created FCKeditor directory. For example, if your calendar is found at: "http://www.example.com/calendar/" you will set $fck_editor_path = "fckeditor/";.
- For more HTML formating tools, $fck_editor_path can be set to "Default" Please see the FCKeditor documentation for more information on using FCKeditor.
Managing the Calendar
In order to set up categories for the calendar and add events, you must click the "Log In" link at the top right corner of the screen. This will bring you to the log in screen. Enter the e-mail address and password you used during Installation. If you forget your password, click on the link to have a new password generated and e-mailed to you.
A good place to start in managing your calendar is to create various categories for your events. While not required, adding categories might be desirable if you have a whole lot of events or want users to be able the filter the calendar to only show certain types of events. Be sure to take a look at the configuration variables; $include_child_categories and $include_parent_categories to determine how nested categories are to be displayed.
The initial installation has only one category which is named after the title of the calendar. All new categories must be subcategories of this default, parent category. To create a new category, click on the "add new category" link. This brings us a short form for you to enter the details of your new category.
In addition to entering a category name, you can select which category your new category is going to be a subcategory. Again, all additional categories need to be a subcategory of the default, parent category, but there are no limits to how many levels of subcategories can be created. Its also possible to rearrange the nesting of your categories in the future without loosing any event data. The order in which categories of the same generation are displayed is determined by the Sequence field.
Optional fields are the Text Color and Background fields. You can pick the colors that will determine the foreground and background of those events listed in the category. Currently, the Description field is not used but is likely to be utilized in future display modules.
Groups are separate calendars. They are nested similarly to categories. However, unlike categores, there is no way to show events of different groups within the same page. This feature was put in place so that users could have both private and publicly accessible calendars within the same installation, or provide separate calendars for different departments or individuals within the same organization.
Event calendars typically include venue and contact information for the events they feature, and these are often repeated from event to event. Thus, NIC Cal stores repeated location and contact information in the database, referenced under the tab, "Links." Here you can add commonly used venue and contact information to be showed with your events, which can be included in an event using drop down, select menus featured in the Add Event and Edit Event screens.
Currently, the link e-mail address is not displayed in the event description. Also, the Web site address must be the full url address, such as "http://www.example.com/", not just "www.example.com".
Add Event / Edit Event
Clicking the Add Event or Edit Event link will bring up a pop-up window where you can enter event information, such as the Title, Group and Category. Venue and Sponsor fields are drop-down, select fields where you can add previously entered contact information under the Links tab, or alternately leave these blank and enter the information in your main description.
When posting to a Group, the user can either propose or post events to a calendar, and indicate whether to notify other subscribed users of the addition or change. This will then send an e-mail to those users informing them of the event. Other users, depending on their permission, can subsequently approve or change the event.
Below this general event information is a four column table for scheduling dates for the event. The first column will include a checkbox for any existing events which, when checked, will delete the date when the "Add/Edit Dates" button is clicked. The next column indicates the dates of the event and can be added or edited directly or by clicking the calendar icon to bring up a pop-up calendar. The next column indicates whether it is an all day event, To Be Announced (TBA) or has time entered to the right. The final two columns indicate the start and end times for the event, which also have pop-up select menus to assist with data entry. The end time field is optional.
When starting with a new event, only one row is present in the dates table. This is the row used to Add a new date and time to the event by clicking the "Add/Edit Dates" button. Once added, the Add Event screen will refresh and show the added event in the row directly above the Add Event row. Additional dates and times can be added, and any existing dates and times edited, until all occurrences of the event have been entered.
The final field is the description, which can be used for any additional information and details for your event. Once all the dates have been entered and you are finished with the event, click on the "Add Event" or "Update Event" button at the bottom of the screen to save your event. The main calendar screen will automatically refresh to show your changes.
Deleting an event will delete all instances of the event, not just a specific date in question. If only one date is to be deleted then click the "Edit Event" link next to it and delete the specific date using the Edit Event screen.
CSV Upload Instructions
This form provides for uploading of event data in a Comma Separated Values (CSV) text file to the NIC Cal Calendar.
Order of columns is; title, venue id, contact id, category id, date, start time, end time and description. The first row of the CSV file, used for column descriptions, is ignored.
A sample CSV file can be downloaded here.
Table of Venues/Contacts
The CSV file uses id numbers to specify venues and contacts. These correspond to entries in the Links section. For your calendar, the table of Links is as follows:
|1||Default: Information shown in event description.|
Table of Categories
The CSV file also uses id numbers to specify categories. These correspond to entries in the Categories section. For your calendar, the table of Categories is as follows:
Table of Groups
The CSV file also uses id numbers to specify groups. These correspond to entries in the Groups section. For your calendar, the table of Groups is as follows:
The users menu allows you to add and edit users and their privileges for using NIC Cal. There are three main areas that can be edited including their e-mail address/password, access privileges and individual category permissions to view, post and moderate other users entries.
The two main access privileges include the ability to add/edit/remove the NIC Cal categories and whether or not the user can edit other users. If a user has category editing privileges, you can select which categories each user can post or moderate (edit) other users posts. Permission to moderate a category also implies the ability to post events to that category.
Subscribe indicates whether the visitor is notified of posted or proposed events.
To save changes, either click "Add Profile" or "Update Profile"
The modules menu is used to add, edit and delete "modules" used to display information on the calendar.
The first column, Delete, has a checkbox that, if checked, will delete the module from the calendar. The next two columns, heading and link name, correspond to the headline and navigation link name which are shown to the user. Active indicates whether the module is currently displayed and Sequence indicates the relative order of each module.
Year, month, week and day correspond to the module id that certain links imbedded in that module should link to. Some of these links are not used, depending on the module.
Click "Update Modules" in order to make finalize changes to the modules.
In addition, any module files that are found in the modules directory, but not yet installed, will be shown with a description. Click on the Add link at the bottom of each description to install the new module. To install a new module from scratch, upload the module and supporting files to the modules directory first, then visit the modules page to add it.
To log out of your calendar management session, click the "Log Out" link.