YaleSTC / shifts

Application to easily track shifts, reports, and payforms for employees.
MIT License
23 stars 18 forks source link

Shifts Shifts View #230

Open caseywatts opened 10 years ago

caseywatts commented 10 years ago

The current way Shifts displays shifts is at the core of the app's functionality, but the code is very bulky and difficult to maintain/edit. We should look into packages that can help us display shifts. (this is an understatement, I once spent the better part of a month trying to understand the code and didn't get very far - it's a partial in a partial in a partial in a...)

Some things we would want improved

I found one tool that might help us do that! It seems to be a pretty tight google calendar clone interface-wise. However, that interface is significantly different from what we have now, and it may or may not help meet our needs. It might be well documented enough that we could extend the package to meet our needs? http://arshaw.com/fullcalendar/

It's a pretty popular GitHub project. For us it would just be importing their js file we wouldn't need node.js on the server to run this.

Let's look for other options too!

Timeline

We should probably put any work on this off until the summer, I just wanted to deposit my thoughts now while I had them

caseywatts commented 10 years ago

One thing that worried me when I looked at FullCalendar was event overlapping, but they've got that covered! http://arshaw.com/fullcalendar/docs/agenda/slotEventOverlap/

caseywatts commented 10 years ago

We can probably have it render our data without much heavy lifting - it interfaces with Google Calendar feeds so it would probably interface well with our .ics feeds we already have if we just connect the two. Even a read-only view or login-only view that's faster might be useful to have lol.

General Usage: http://arshaw.com/fullcalendar/docs/usage/ Using Google Calendar: http://arshaw.com/fullcalendar/docs/google_calendar/ Providing our own json data: http://arshaw.com/fullcalendar/docs/event_data/Event_Object/

(but again, I'm not sure I want to spend developer resources on this yet)