Index headline

Download phpMyCal

download link

Be sure to check out PHP iCalendar at sourceforge.net. That project is the reason for this one, as well as a super clean nice great interface and parser for vCalendar (.ics) files.
phpMyCal 0.3 8/1/2004
Copyright © 2002, 2003, 2004 Benjamin Levy, benlevy@neb.net

About phpMyCal

phpMyCal is an interface for a schedule database using MySQL. The core set of functionality provides a php class for creating, editing, and deleting calendars and events, and generating iCalendar data. An add on bridge allows direct interaction with PHP iCalendar. This project is pretty new, so expect some rough edges. If you use (or otherwise adapt) phpMyCal, I would very much appreciate feedback, suggestions, and friendly criticism.

Upgrading

If you've previously used phpMyCal 0.1.5 prerelease or later, you can keep your current calendar data but start using new features by replacing all the files using those from this package (make sure to update your config.phpMyCal.php settings) and then using the init.phpMyCal.php file to alter and add any new database tables. Loading it through your server in the following manner will make any needed updates.

http://yourserver/path/to/phpMyCal/init.phpMyCal.php?cal_update=<oldversion>

Supported values for <oldversion> include: 0.1.5 (no data update needed for 0.2 to 0.3)

Installation

phpMyCal is split into two directories. The "calcore" directory contains only the files required for the phpMyCal class to support storing and retrieving calendar data in the database. The "bridge" directory contains files for adding phpMyCal support to PHP iCalendar. If you are using phpMyCal with PHP iCalendar, combine both directories into one within your PHP iCalendar installation (typically a directory called phpMyCal). If you are not using PHP iCalendar, simply place the files from the "core" directory wherever you need them.

phpMyCal requires a MySQL database, and you will need to know the connection information to access the database. These and some other settings should be entered in the file named config.phpMyCal.php. Once the settings have been entered, the database tables need to be created. The easiest way to do this is through the included init.phpMyCal.php file. Loading it through your server in the following manner will create the needed tables (or give an error message if something is not quite right).

http://yourserver/path/to/phpMyCal/init.phpMyCal.php?cal_initialize=yes

At this point the phpMyCal class functions will be working and if you are not using PHP iCalendar you are done. The class documentation is in the main phpMyCal.php file.

Access and Authorization

Calendar access controlled with a simple password design. There is an admin password required for creating, editing, or deleting calendars. Each calendar can optionally have its own password set. Having no calendar password means anyone can make changes, otherwise the password is required for each change.

Adapting PHP iCalendar

With the phpMyCal distribution is a third directory named "phpicalendar_edits" which contains edited versions of the source files from PHP iCalendar 0.9.3. If, and only if, you are using the release version 0.9.3 of PHP iCalendar, you may simply copy these files over the corresponding ones in your phpicalendar installation. I have marked very clearly where the edits were made, and have made these changes as minimal as possible. In every case there is only code added to the files in small labeled sections. It should be fairly easy to look at my changes and make the appropriate changes to a new release of PHP iCalendar if needed, and I will try and release updates of phpMyCal shortly after each release of PHP iCalendar.

At this point phpMyCal only supports the most basic of event details. There are no attendees or alarms. Also the interface is completely unpolished. Dates are expected to be "month/day/year" and times "24hour:minutes" and no work has gone in to making things look nice

I added "New Event" and "New To Do" links in the list with "Go to Today," etc. and links for editing and deleting events to the event popup window. To add, delete, or import entire calendars, there is a link by the PHP iCalendar version information which brings up an about page and a list of available calendars.

Importing Calendar Files

You can import any normal calendar file that can be displayed with PHP iCalendar to the phpMyCal database from the About phpMyCal page. When importing you need the admin password and to choose whether to import to a new calendar or to add the events to an existing phpMyCal calendar.

There are two known issues with the importing process. First, the admin password is currently shown in the URL when submitting the import form. Second, when importing to an existing phpMyCal calendar, if the time zones are different the dates and times are not corrected to take the differences into account.

Version History

0.3 2004-08-01
Updated for PHP iCalender 1.1 release.
0.2 2003-08-30
Updated for PHP iCalender 0.9.3 release.
Added support for simple recurring events, thanks to Brian Marquis of Orion Group Software Engineers for getting this started.
0.1.5 2002-12-21
Added support for To Do items on par with PHP iCalendar 0.9.
Added the ability to import from .ics calendar files.
0.1.1 2002-12-15
Updated for PHP iCalendar 0.9 release.
0.1 2002-11-30
Initial release.

Empty Blue Box

Well...

It's not entirely empty,
now is it?

New

PHP iCalendar 1.1 support, RSS feeds now work

Feedback

If you use phpMyCal, make improvements to it, or have ideas to make it more useful to you, please let me know.

benlevy@neb.net