Page 1 of 1

Call for features - MC2 Design's PHP Events Manager App

Posted: Thu Oct 25, 2007 1:02 pm
by Luke
I have started developing an ajaxified php/jquery based events manager (basically like outlook or mozilla sunbird - in fact the interface looks like sunbird quite a bit). I know I've touched on this subject several times, but that was ages ago. We are finally getting to work on this. It is based on the Zend Framework. I am looking for features that the community would find useful. Here are the features I already plan on implementing:

EDIT: To answer Hockey's question, I have highlighted the features that are complete in green. Events that are partially complete are in purple - also, because I can't portray this below, I will say that the interface for adding / editing events is like 80% complete.

Version 1:

Multiple Calendars - calendars can be restricted so that only certain users can see them
Recurring Events - events can recur in any way they can recur in the icalendar standard (RFC 2445)
Import / Export - anything that supports icalendar standard (RFC 2445). This will be implemented via qCal.
Multiple views of calendars - day, month, week, year, ALL events & event detail views
Printable Calendars - via css's print media
User permissions - like I said users can be given permission to add / edit / view any calendar or event
Javascript / Ajax - where it makes sense
Search-able
Custom fields on events - end-user can add "custom fields" to events such as "contact number" etc.
Ability to add events to multiple dates - I don't know that I've seen this done before. This will allow a user to enter an event, then click "add". Then it will take them to a calendar view where they select whatever dates they like. Has it been done?

Version 2:

Pluggable - the app will have a plugin system, although at first it won't be all that robust... probably similar (although more simple even) to wordpress for now, but the plugin system will get better :)
Theme-able - users can easily create "themes" without hackery

There is probably more... anyway... thanks in advance for your input. :)

Posted: Thu Oct 25, 2007 1:14 pm
by alex.barylski
Sweet...

I've always wanted to get developing a applicationlike this, but never got around to it...

Are you going to post the code on google, SF or similar? How much have you done thus far? Can I see what you have thus far?

Posted: Thu Oct 25, 2007 3:09 pm
by Luke
As of right now this project is not open source. If I can convince my boss to make it open source (which I probably can) it will most likely appear on google code. For right now it has a private svn repository on our vps.

Hockey (and anybody else with an interest), keep an eye on our blog (although I'll probably post updates here as well) if you're interested in the project.

Posted: Thu Oct 25, 2007 3:48 pm
by alex.barylski
Cool I'll do that :)

Posted: Thu Oct 25, 2007 4:15 pm
by onion2k
Regarding the first point..
Multiple Calendars - calendars can be restricted so that only certain users can see them
I don't think I'd do that. Events should be restricted rather than calendars. Each user gets their own calendar that displays any events that are public, or that are assigned to any groups they're in, or that they're invited to individually. Having to view different calendars to see all the things that I'm supposed to attend would be annoying.

Of course, that opens up the question what do you do if someone is invited to two events on at the same time...

I guess you could always do both ... have a calendar view that shows everything of a particular type (maybe all the events tagged with a particular keyword?) and another view that shows all the events that I can attend. Or even a calendar that shows all the events I can attend but that I can highlight in different ways so I can see at a glance all the events I'm invited to AND are tagged as "Free Bar" for example.

Obviously to do that you'd have to be able to tag events.

I think I'd let users have plenty of control over their calendar too. I should be able to assign a colour code or an icon to an event, so I can colour all the events that a particular woman I fancy is attending in pink for example. Maybe even let users set up rules to do that automatically. Though that might get really complicated. Maybe that could be an extension to the tagging system ... I could set up a custom tag of "Lisa", and assign it a colour reference, then all the events I tag with "Lisa" appear in the colour I've assigned.

Events should be clone-able (countless meetings end with "lets do this again next week.."), and easy to move around.

People invited to an event (custom email invites?) should be able to notify the event organiser if they're attending or not easily.

</braindump>

Posted: Thu Oct 25, 2007 4:49 pm
by Luke
thank you onion, all of that is fantastic input! I will be sure to add this stuff to my feature list.

I'm going to have to think about what you said about the multiple calendars part. I think I'll keep the multiple calendars, but apply permissions as you have suggested. Reason being, the client who sparked this whole project specifically asked for the system to be capable of maintaining multiple calendars. Now, this may be able to be achieved cleverly with tags and permissions by event... so like I said, I'll have to think about it.