emeyekayee/Timeline
Folders and files
| Name | Name | Last commit date | ||
|---|---|---|---|---|
Repository files navigation
Timeline is a schedule widget built for Rails that uses Javascript/
jQuery/AJAX to display how some set of resources are used over time.
The building-block is a schedule for a single resource, which is a DOM
div (a resource row) containing a label and a timespan:
+-------+----------------------+
| label | timespan |
| | block | ... | block |
+-------+----------------------+
The timespan contains a set of "use blocks", each describing the use of that
resource for an interval in that timespan. If the resource is "Channel 3"
and each block is a "tv program" you have one row of a tv schedule. See the
example Rails app in tv/ and Screenshot.png.
Resource rows stack atop one-another and the timespans scroll left or right.
All the timespans in a schedule scroll in lock-step and new blocks are fetched
from the server as needed, AJAX-style.
Time is represented in the usual seconds-since-Jan-1-1970-GMT. The only thing
time-specific about this as the X-axis is that it maps to an continuous
integer range.
The representation is flexible. For example, headers showing time-of-day (See
the example app.) are just another kind of resource -- one whose label is
simply the text "Hour" and whose blocks are time segments with text: "9:30",
"9:45"... Same applies for the date header.
Time blocks of all resources are clipped to the visible part of the
schedule. This means you can also create toolbars or headers that
_appear_ not to scroll with time -- just make a resource with a single
time block that has a very small starttime and large endtime.