Forum OpenACS Development: dotWRK: instead of room-reservations...

Collapse
Posted by Jade Rubick on
This is an idea:

Instead of porting room-reservations to OpenACS for dotWRK (which I believe nobody has done), make a more general scheduling application:

Here's what it would do:

It would allow you to schedule:

rooms
users
etc..

It would need some sort of service contract for you to use new "types", like users, with it.

Imagine this for an Intranet. You want people to schedule when they're available, and for how long. You set it up to automatically schedule people in for their schedules, 9-5, 5 days a week for full-timers. Then other apps, like our project manager, could query it through the API, and see how available that resource is.

This would have to be written carefully. It is very similar to the calendar app in a lot of ways. You want to be able to have almost any time of object be able to be "scheduled".

Anybody willing to write this for dotWRK?

Collapse
Posted by Malte Sussdorff on
Technically I'd suggest to create a general scheduling solution for CR items or even ACS Objects. And it would be fairly basic system:

- start_date
- end_date
- status_for_this_period
- repetitive
- object_id
- approved
- ....

Every package could make us of this in their own way. A room reservation system would set the status of a room to "booked,reserved, free". The calendar could make use of it for people and the CMS could use it for displaying content.

And yes, we might take this on, end of the year 🤔.

Collapse
Posted by Jade Rubick on
Malte, this is a great idea! It is similar to acs-rels, except that it is scheduling specific. Perhaps we should call it acs-schedule?

I think this is a really important item for dotWRK -- we can't compute how long a project will take to accomplish if we don't keep track of people's schedules, for example.

It looks pretty simple to code. I think we should probably make this a small package of its own. It seems like a candidate for inclusion in the core, but I guess that's not my call.

acs-events doesn't handle any of this, does it?