Tenon Intersystems Please see text links at bottom of page for navigation Please see text links at bottom of page for navigation
Please see text links at bottom of page for navigation Please see text links at bottom of page for navigation Please see text links at bottom for navigation
Please see text links at bottom of page for navigation
Search this site:

iTools - A Beginner's Guide - Installing an advanced web calendar

by Terry Allen

In a previous guide, I covered installing eventcalendar.pl, a fairly basic web calendar script which allows the addition of events to be displayed in an HTML based web calendar. While it's pretty good, there are in fact better solutions around & this guide covers the installation of one such alternative - Acal, written by Arthur Weibe. Where eventcalendar.pl required Perl to run, Acal require PHP, but in similar fashion, we don't need MySQL for Acal either, which is something I liked.

Installation of this script is excellent & requires little intervention, though there is one minor bug which requires fixing up to have everything smoothly running. While it is possible to fix the bug prior to installation, we'll leave that until the end.

So, head on over to http://acalproj.sourceforge.net & grab the latest version (2.2.3 as I write this) from the download link. It's a pretty tiny download.

Once expanded, you'll see a single folder within, accompanied by a couple of files. Take a look at these if you wish, but the basic installation of the calendar is very easy.

So, to install, we need to simply copy the 'Calendar' folder across into your webserving directory.

What you will need to decide is where you are going to serve the calendar from, so for example, we want or iTools server to serve the calendar out of http://www.mysite.com

This will probably equate to the directory on your iTools server as /Library/Tenon/WebServer/WebSites/mysite.com

So, load up your favourite FTP client application & upload the Calndar directory within from the Acal-2.2.3 folder. Assuming you have the iTools PHP installed, we're just about set to go. Just make sure that index.php files are a default serving option on your server for the host which is serving your calendar or you'll need to manually load the PHP file in question.

So, head on into your favourite web browser & enter the URL which will correspond to your new Web calendar, like so: http://www.mysite.com/calendar

Assuming everything is working correctly, you should see this:

From here, it's pretty easy, insert the username & password of your choice, click 'Start Install' & you're away. After a few seconds, you should see the successful installation screen appear. If you see this, then you are well underway & we have only some minor bugs.

If installation is indeed successful, then clicking on the 'Visit Calendar' link will produce the calendar in it's default form as shown here:

As you'll see, it's a very nice layout. With a lot of calendars, the current day is outlined - Acal is no different & you can see that the current day is outlined in white. Clicking on the day's date will show a full day view with an event editor, while clicking on the little '+' button will generate an event editor in a pop-up window. Nice features here include the ability to add recurring events over a period of days wthout the need to individually add them.

At the bottom of the calendar, there's a link to the administration, which allows you to change things like style etc..., add users & so on, as well as provide security for the entire calendar or for the administration only.

So, you're pretty much finished apart from that minor pesky bug mentioned earlier, as well as a minor modification I wanted to change during login.

The bug itself is actually to do with Javascript & affects Internet Explorer on both the Mac & Windows, but doesn't seem to worry any other browsers I have used. The bug is that the little '+' buttons on the calendar should pop open the event editor in the calendar, but this doesn't happen in IE, so we need to change a script file. Whatever the case, you'll want it working with the majority of your users, so here's the fix.

In the main directory of your newly installed calendar, you'll find a file called e_edit.js - to fix it, you'll want to open it in your favourite text editor & replace the entire contents of that file with this piece of Javascript code:

function popUp(URL) {  
var windowReference;  
day = new Date();  
id = day.getTime();  
windowReference = window.open(URL,"", 'toolbar=0,scrollbars=1,location=0,statusbar=0,menubar=0,resizable=1,width=400,height=400,left = 312,top = 184');  
if (!windowReference.opener)  
windowReference.opener = self;  

Save it & your calendar will now be fixed. This bug will be fixed in future versions, so if you're using this guide after a new version, ignore this section.

There was indeed one other change I wanted to make. In the adminstration, I found that after using the 'Protect Everything' security measure, entering the login brought you into the administration screen, rather than the calendar itself. So, there's one other file which needs editing, which is the file Login.php

Again, in your favourite text editor, open Login.php & find the line which contains

header("Location: admin/");

Within that line, change it so it reads:

header("Location: calendar.php");

Save the file & now when you log in, you'll head into the calendar.

Hopefully, this guide will gve you insight into a little PHP editing & also some graps of Javascript.

Terry Allen runs the current version of Tenon's iTools along with a variety of different software & scripts. You can visit some of his sites at http://heard.com.au or http://itavservices.com

| Tenon Home | Products | Order | Contact Us | About Tenon | Register | Tech Support | Resources | Press Room | Mailing Lists |

Powered By iTools

Copyright©2013 Tenon Intersystems, 232 Anacapa Street, Suite 2A, Santa Barbara, CA 93101. All rights reserved.
Questions about our website - Contact: webmaster@tenon.com.

Tenon Home  Tenon Home  Tenon Home  Tenon Home Product Info  Tenon Ordering Contact About Register Support Resources Press Mailing Lists