yasp - Yet Another Simple PHP Calendar

Printer-friendly version
Does the world need another simple PHP calendar? Not really. But here you go. No database, no user management, no group functionality, no templating system, not css skinnable. Just a small, easily-modified script and a text file for data. Great for what I use it for.

Status: Neglected

Features:

  • Displays a calendar.
  • Can display "text" on any day.
  • Highlights current day (easily "commented" out).
  • Navigation between months dependent on items in that month.
  • Data stored in text file for easy manual entry.
  • A very simple admin interface geared torwards bulk entry of items also provided.
  • Fully customizable via HTML and PHP.

Features Not So Simple and You Probably Won't Need:

  • Week can start on any day (only Sunday and Monday really (sorta) tested though). Default is Sunday.
  • Can have one day of week missing. Default is none.

Requirements:

  • A purpose similar to mine.
  • PHP 4.x (?)**
  • If you want to use the provided admin interface (not required), the ability to control access to a directory (e.g. .htaccess).

** I developed it under 4.2 and run it under 4.0.4pl1. Requires --enable-calendar if <=4.0.5 (although there's a simple hack to get around this). Your mileage may vary.

Example:

Well, now, I actually use a modified version of this under Drupal: http://www.arizmendibakery.com/pizza. This is how I use it. Notice how our week starts on Monday, but hey, we're closed Mondays so we don't show it. This is not the default setup.

Install Instructions:

  • Put on a webserver that runs the required version of PHP.
  • If you are going to use the admin interface (not required), make sure the "user" that the webserver runs under can write to your data file.
  • Use admin interface or just modify calendar.dat file to your liking.
    Format: YEAR::MONTH::DAY::ITEM
  • Put this somewhere in a php file: <? include("calendar.inc") ?>

History:

I work at a bakery. I had been modifying an HTML document each month for our pizza schedule. It was tedious and I didn't want to do it anymore. But everyone at the bakery is, um, a baker, and not a computer person. So I needed something simple that anyone could use. Of course, I searched around and nothing quite fit the bill, but I found one that was close (http://www.danagas.com/php/calendar/) and modified it.

Over the years I modified it more to make it easier (unfortunately, I never released a new version), and just recently I made it a Drupal module with some nifty DHTML drag and drop so no more typing in all the pizzas. But that's another program I'll probably never get around to releasing.

License:

Uh, GPL, sure, why not.