The calendar I set up is all done by hand, but maybe it gives some ideas for this project, which I am really looking forward to.
I have different "categories" of events that get styled in different ways. It would be neat to have those categories set up as a calendar "key" in the sidebar (I probably could have done this, but took the easy route).
I have two links sometimes: one to the forum, and another to the site for more info, though I think the second could be contained in the forum post. What do you think of having an icon for the link to the forum post?
I've seen calendars that show an "edit" icon if you have admin/privileges to edit the event. While I think that can be useful I'd rather have a sidebar option to show/hide such things so you can be logged in and have a decent looking calendar. The idea is if you're logged and have privileges to edit the calendar you would have a css property to display:none. Someone with no privileges to edit the calendar would not be served a calendar output with any editing code hidden away.
If you're thinking of doing it that way of course. I'd rather see it in working form than delayed a year for feature requests.
I know MySchizoBuddy is on vacation...but I came across this cool date picker: http://datetime.toolbocks.com/
It supports simple English word input such, "next Fri", "last year", "ten days from now" etc.
Just to add to the discussion - could the calendar have a feature where users can "join" the event thats taking place? For example every now and then we have car meet ups, it would be great if we could see how many people intend on joining the event. Similarly if would be good if users can not only "join" the event on the forum, but also change their mind and "un-join" the event. This would give us a very accurate number and help us organise better.
Similarly this functionality could be used for parties, football practice, and anything really where groups of online users meet offline.
Just read the whole thread and I think this is a great idea, particularly attaching event dates and auto-sink/expiry to discussions, as you're building off vanilla's own architecture, which means it has the greatest flexibility to be tailored to different uses.
If you make your new pane essentially a different kind of discussion overview for a specific category/set of categories and set it up with its own theme files as a basis (analogue to discussions.php and discussion.php for the discussions view) then anyone can tailor it to their specific needs. For example, some may like simply a list of upcoming events, others a calendar-view. This way users can choose/change/adapt this simply by dropping in a different theme file. In your add-on you wouldn't have to worry about the exact HTML output so much, just which information you provide for the repeating elements (i.e. discussions with start and end date, author and category) and the order in which it is output (e.g. as list of event-articles, or as date matrix with discussions pulled-in where they match the date). This could be controlled by a settings switch between list and calendar view in the add-on.
The good thing about using vanilla's architecture, is you can then tap into everything else that already exists for it, e.g. a calendar rss-feed is just a normal category topic feed. Extra features can then be modularised as associated add-ons, e.g. things like join/unjoin as suggested by mark_b link users to discussions and are essentially just a duplicate of the built-in bookmarking system with an added "this thread is 'bookmarked' by (=has been joined by) ..." display in the thread.
As different people in the thread have suggested different and multiple uses, it might be worth considering whether the add-on can refer to one or more categories set up in vanilla (perhaps via a checkbox against the relevant categories in the add-on settings, event/party/meet/birthday). The styling for different kinds of events can then be controlled via css classes (class=category) much like the category colour-changer/category icon add-ons already do for normal discussions.
Just some thoughts ... I'd love to see this much more than the gallery ;-P
BTW: you could use microformats to cater for export to iCal and co.
Take a look at http://microformats.org and the hcalendar microformat: http://microformats.org/wiki/hcalendar and scroll down to the example to get a quick overview. Essentially it's structured way of assigning relevant information on your HTML-page the correct class names, then having a script or a browser plug-in extract these out of the page and provide them in a vcalendar-compatible form. There's a ready-made script on technorati or brian suda's page (http://suda.co.uk/projects/X2V/) that you can use to process your page and make a "get calendar entry" link.
Basically, all you need to do is assign the correct CSS-classes in the right places, the script or browser plug-in does the rest. This is, of course, only for export purposes not import.
Re: calendar
I'd add a (tiny) bit of money ($25-100?) depending on the implementation.
Without re-reading the whole thread, my basic needs are:
- add/remove/*revise* event
- RSVP ('yes/no/maybe')
- list view (upcoming, current and recent events)
- calendar view
Ideally included:
- admin back-end to email some or all of those people who RSVPd
- iCal download
- repeat events with flexible date definition, e.g. last friday of the month
Re: microformats/vCard/hCard/iCal
I can tell you from experience that IMPORTING iCal events for direct download into outlook/ical and other apps is a b*tch.
Exporting is slightly less complex, but you'd be surprised how many tools are not standards-compliant, so you easily end
up with a 'min features/max compatibility' implementation.
I have some more notes (related to Events and MicroFormats) here:
http://lussumo.com/community/discussion/5659/predefined-posting-templates-with-markup-thickbox-stash/
Did this move any further along?? Its definatly a killer application for Vanilla. If I could do vanilla plugins with .NET I'd be on it already. It might be a possible that I could do the actual data stuff in .NET and have someone else program a bit of Jscript/PHP to ajaxify it to appear in Vanilla. However I'm not sure that is a good solution because it doesn't integrate tight enough and people would need .NET and php on their servers and I know not everyone has this.
As another thought would it be possible to put an events location in and have it interact with the google maps profile extension so you can find events near you (if they have a location).
Comments
I have different "categories" of events that get styled in different ways. It would be neat to have those categories set up as a calendar "key" in the sidebar (I probably could have done this, but took the easy route).
I have two links sometimes: one to the forum, and another to the site for more info, though I think the second could be contained in the forum post. What do you think of having an icon for the link to the forum post?
I've seen calendars that show an "edit" icon if you have admin/privileges to edit the event. While I think that can be useful I'd rather have a sidebar option to show/hide such things so you can be logged in and have a decent looking calendar. The idea is if you're logged and have privileges to edit the calendar you would have a css property to display:none. Someone with no privileges to edit the calendar would not be served a calendar output with any editing code hidden away.
If you're thinking of doing it that way of course.
*waits paitently for more updates*
working on a Gallery extension :S
Similarly this functionality could be used for parties, football practice, and anything really where groups of online users meet offline.
Just my thoughts though...
If you make your new pane essentially a different kind of discussion overview for a specific category/set of categories and set it up with its own theme files as a basis (analogue to discussions.php and discussion.php for the discussions view) then anyone can tailor it to their specific needs. For example, some may like simply a list of upcoming events, others a calendar-view. This way users can choose/change/adapt this simply by dropping in a different theme file. In your add-on you wouldn't have to worry about the exact HTML output so much, just which information you provide for the repeating elements (i.e. discussions with start and end date, author and category) and the order in which it is output (e.g. as list of event-articles, or as date matrix with discussions pulled-in where they match the date). This could be controlled by a settings switch between list and calendar view in the add-on.
The good thing about using vanilla's architecture, is you can then tap into everything else that already exists for it, e.g. a calendar rss-feed is just a normal category topic feed. Extra features can then be modularised as associated add-ons, e.g. things like join/unjoin as suggested by mark_b link users to discussions and are essentially just a duplicate of the built-in bookmarking system with an added "this thread is 'bookmarked' by (=has been joined by) ..." display in the thread.
As different people in the thread have suggested different and multiple uses, it might be worth considering whether the add-on can refer to one or more categories set up in vanilla (perhaps via a checkbox against the relevant categories in the add-on settings, event/party/meet/birthday). The styling for different kinds of events can then be controlled via css classes (class=category) much like the category colour-changer/category icon add-ons already do for normal discussions.
Just some thoughts ... I'd love to see this much more than the gallery ;-P
BTW: you could use microformats to cater for export to iCal and co.
BTW: you could use microformats to cater for export to iCal and co.
How?