%TIMETABLE% and creates a weekly timetable.
The timetable is rendered with HTML tables and should work with all modern web browsers. Please take a look at the feature list for more information.
It also handles the tag %TTCM% (TimeTable Compatibilty Mode). The compatibility mode allows the usage of all Foswiki:Extensions.CalendarPlugin event types. The %TTCM% tag should be placed into the description field of an event and must contain a time range and
optional colors in a comma separated list (<time range>[[','<foreground color>][','<background color>]]),
e.g:
* 22 May 2006 - %TTCM{"7:00-1:00pm,white,black"}% Meeting
* 23 May 2006 - 24 May 2006 - %TTCM{"7am-4pm,yellow"}% Conference
you get: %TTTOPICSETUP% (TimeTable Topic Setup) tag allows you
to define default foreground/background colors (eventfgcolor/eventbgcolor attributes)
and a time zone (timezone attribute) for all events on a topic. Please use it only once on a topic.
Examples: (png images):
timeformat)
timezone, timezoneabbr)
compatmode="on")
compatmode="on")
%TTCM% tag of the compatibility mode)
topic) - including override of the time zone (e.g. topic="EvenTopic2:-3)
name, headerformat, ...)
days, startdate, timeinterval, showtimeline, ...)
%TTTOPICSETUP% tag)
ttp_<attribute>=<value>), e.g. TimeTablePlugin?ttp_days=14;ttp_tableborder=10;ttp_descrlimit=7
Events are defined with bullets. Following event types are supported to define entries for the timetable:
| Event Type | Syntax | Example(s) |
|---|---|---|
| Single | * DDD - HH:MM - HH:MM - description |
* Mon - 09:00 - 11:00 - Meeting |
* DDD - HH:MM - HH:MM - description - background color |
* Mon - 09:00 - 11:00 - Meeting - green |
|
* DDD - HH:MM - HH:MM - description - foreground color, background color |
* Mon - 09:00 - 11:00 - Meeting - white,black |
|
| List | * DDD, DDD,... - HH:MM - HH:MM - description |
* Mon,Tue - 08:00 - 8:15 - Breakfast |
* DDD, DDD,... - HH:MM - HH:MM - description - background color |
* Mon,Tue - 08:00 - 8:15 - Breakfast - yellow |
|
* DDD, DDD,... - HH:MM - HH:MM - description - foreground color, background color |
* Mon,Tue - 08:00 - 8:15 - Breakfast - white,black |
|
| Interval | * DDD - DDD - HH:MM - HH:MM - description |
* Mon - Fri - 12:15 - 13:00 - Lunch |
* DDD - DDD - HH:MM - HH:MM - description - background color |
* Mon - Fri - 12:15 - 13:00 - Lunch - green |
|
* DDD - DDD - HH:MM - HH:MM - description - foreground color, background color |
* Mon - Fri - 12:15 - 13:00 - Lunch - white,black |
|
| Duration | instead of an end time (HH:MM) in a time range of a single/list/interval event you can define an event duration in days (d), hours (h) and/or minutes (m), e.g. one day: 1d ; one day and two hours: 1:2d ; one day, two hours and 30 minutes: 1:2:30d ; two hours: 2h ; two yours and 30 minutes: 2:30h ; 30 minutes: 30m |
* Mon - 10:00 - 2h - every Monday 2 hours at 10 o'clock |
%TIMETABLE{compatmode="1" startdate="12 Jun 2006"}%
* 12 Jun - %TTCM{"10am-5pm,yellow"}% Every 12th of June between 10am and 5pm
* E Wed - Every Wednesday (whole-time)
* 12 Jun 2006 - 19 Jun 2006 - %TTCM{"12:15pm-1pm,white,black"}% Lunch with Mary
* 13 Jun 2006 - 10:00-12:00 Meeting
* 14 Jun 2006 - Meeting - 01pm-03pm,green
Notes: Example: %TIMETABLE{lang="Deutsch" timeinterval="15" }%
| Attribute | Comment | Default/Example |
|---|---|---|
| Behavior: | ||
| clicktooltip | if enabled JavaScript tooltips are only shown with a mouse click to the table cell instead of 'mouse over' (related: clicktooltiptext) | clicktooltip="off" |
| compatmode | if set to "1" all Foswiki:Extensions.CalendarPlugin event types are supported (related: compatibility mode attributes); %TTCM{"7:00-1:00pm,white,black"}% ) with a time range and optional foreground and background color and without any whitespaces |
compatmode="0" |
| days | days to show | days="7" |
| endtime | a end time, e.g. 18:00, 6:00pm, … | endtime="8:00pm" |
| lang | Language used for weekdays in the table header and for event entries (e.g: English, Deutsch, Français, Español, Nederlands, Dansk, suomi, …) | lang="English" |
| rotatetable | enables/disables table rotation | rotatetable="off" |
| showweekend | show weekend if set to '1' | showweekend="1" |
| starttime | a start time, e.g. 7:00, 8a.m., 9:15a.m. … | starttime="7:00am" |
| textwrapper | sets the text wrapper for the event entry text (default: browser); plugin: text is wrapped by the TimeTablePlugin (old behavior but stable); browser: text is wrapped by the web browser |
textwrapper="plugin" |
| timeformat | time format; allowed values: 12, 12am, 12p.m., 12a.m, 12p.m. and 24 | timeformat="24" |
| timeinterval | interval steps in minutes for the timeline | timeinterval="30" |
| timezone | a hour offset (allowed values: -12 … 0 … +12) for time correction or a time zone abbreviation (e.g. UTC, CET …) | timezone="0" |
| timezoneabbr | a comma separated list of time zone abbreviations with UTC offsets; the standard time zone abbreviations will be extended with this user defined abbreviations | timezoneabbr="CET:+1, MEST:+2" |
| topic | a comma separated list of source topics; you can add a time zone to any source topic name by adding a ':' and a hour offset (-12 … +12) or a time zone abbreviation, e.g: topic="MySourceTopic:-2" timezone attribute of a %TTTOPICSETUP% tag |
topic="%TOPIC%" |
| wholetimerow | enables/disables a whole-time event row (related attributes: wholetimerowtext, wholetimerowtitle) | wholetimerow="0" |
| workingendtime | working hours end time | workingendtime="5:00pm" |
| workingstarttime | working hours start time | workingstarttime="9:00am" |
| Compatibility Mode: ( compatmode="on" is required |
||
| cmheaderformat | table header format of a day; a subset of strftime conversion specifiers is supported (only date not time specifiers; see manual page or Foswiki:Development.ConvergeDateTimeFormattingModels) | cmheaderformat="<font title=\"%A - %d %b %Y\" size=\"-2\">%a<br/>%e</font>" |
| daynames | custom day names (a list separated by a '¦' and starting on Monday; overrides lang attribute) | daynames="M¦T¦W¦T¦F¦S¦S" |
| forcestartdate | if set to 1 the timetable starts with the given startdate ('0' means: the timetable view starts with Monday') | forcestartdate="0" |
| month | set a month (e.g. Jan, Feb … or 01, 02, … 12 ) or a month offset (e.g. +0, +1, -2,...) | month="+1" |
| monthnames | custom month names (a list separated by '¦' and starting on January; overrides lang attribute) | monthnames="J¦F¦M¦A¦M¦J¦J¦A¦S¦O¦N¦D" |
| navnext | navigation button to the next n days | navnext=">>" |
| navnexttitle | title text (tooltip text) for the navigation button to the next n days | navnexttitle="Next %n day(s)" |
| navprev | navigation button to the previous n days | navprev="<<" |
| navprevtitle | title text (tooltip text) for the navigation button to the previous n days | navprevtitle="Previous %n day(s)" |
| startdate | a start date (e.g. '1 Oct 2005') or a day offset (e.g. '10', '+30' or '-30') | startdate="+0" |
| year | set a year (e.g. 2005, 2006 …) or a year offset (e.g. +0, +1, -1, …) | year="+0" |
| Table formatting: | ||
| clicktooltiptext | tooltip text of table entries if clicktooltip is enabled |
clicktooltiptext="Click me for more information" |
| descrlimit | per line character limit for the description (textwrapper attribute: if textwrapper="plugin" this limit is a character limit; if textwrapper="browser" the width of a event entry table cell is set to <descrlimit>em) |
descrlimit="10" |
| displaytime | display time in the event description of the timetable | displaytime="0" |
| eventbgcolor | default background color of an event cell (you can override this with an event entry) | eventbgcolor = "#AAAAAA" |
| eventfgcolor | default text color of an event cell (you can override this with an event entry) | eventfgcolor = "black" |
| fontsize | default font size (see Known Issues and Bugs) | fontsize="xx-small" |
| headerformat | table header format of a day; a subset of strftime conversion specifiers is supported (only date not time specifiers; see manual page or Foswiki:Development.ConvergeDateTimeFormattingModels) | headerformat="<font title=\"%A - %d %b %Y\" size=\"-2\">%a</font>" |
| monthheaderbgcolor | month header background color (default: tableheadercolor) | monthheaderbgcolor="%WEBBGCOLOR%" |
| monthheaderfgcolor | month header text (foreground) color (default: black) | monthheaderfgcolor="black" |
| monthheaderformat | month header format (related: showmonthheader) |
monthheaderformat="%B" |
| name | header content of the first column | name = " " |
| nowbgcolor | highlight current time in the timeline with a background color | nowbgcolor="black" |
| nowfgcolor | highlight current time in the timeline with a forgeround color | nowfgcolor="white" |
| showmonthheader | enables/disables monthheader; if compatmode=on the montheader is shown by default |
showmonthheader="off" |
| showtimeline | show timeline left, right, or on both sides |
showtimeline="both" |
| tablebgcolor | table background color | tablebgcolor="white" |
| tableborder | table border (default: undefined) | tableborder="1" |
| tablecellpadding | table cell padding (default: 0) | tablecellpadding="5" |
| tablecellspacing | table cell spacing (default: 1) | tablecellspacing="1" |
| tablecaption | table caption shown above the timetable | tablecaption="Timetable" |
| tablecolumnwidth | width of a table column (default: undefined) | tablecolumnwidth="80px" |
| tabledatacellwidth | width of an entry cell (default:undefined); |
tabledatacellwidth="80px" |
| tableheadercolor | color of the table header | tableheadercolor="%WEBBGCOLOR%" |
| tablewidth | table width (default: undefined) | tablewidth="100%" |
| todaybgcolor | highlight today column with a background color | todaybgcolor="black" |
| todayfgcolor | highlight today column with a foreground color | todayfgcolor="white" |
| tooltipdateformat | tooltip date format (for %DATE% substition of tooltipformat); a subset of strftime conversion specifiers is supported (only date not time specifiers; see manual page or Foswiki:Development.ConvergeDateTimeFormattingModels) | tooltipdateformat="%y/%d/%m" |
| tooltipfixleft | positive or negative offset from the left to fix tooltip position | tooltipfixleft="-163" |
| tooltipfixtop | positive or negative offset from the top to fix tooltip position | tooltipfixtop="0" |
| tooltipformat | format of a tooltip (substituted variables: %DATE% - date (see tooltipdateformat attribute), %TIMERANGE% - time range, %DESCRIPTION% - description field, %LONGDESCRIPTION% - complete entry) | tooltipformat="%DATE%<br/>%TIMERANGE%<br/> %DESCRIPTION% " |
| weekendbgcolor | highlight weekends with a column background color | weekendbgcolor="%WEBBGCOLOR%" |
| weekendfgcolor | highlight weekends with a column foreground color | weekendfgcolor="black" |
| wholetimerowpos | whole-time event row position (default: top), allowed values: top, bottom, both | wholetimerowpos="top" |
| wholetimerowtext | text in the time line of the whole-time event row | wholetimerowtext="24h" |
| wholetimerowtitle | alternate text for the wholetimerowtext | wholetimerowtitle="whole-time events" |
| workingbgcolor | highlight working hours in the timeline with a background color | workingbgcolor="white" |
| workingfgcolor | highlight working hours in the timeline with a foreground color | workingfgcolor="black" |
ttp_<attribute>=<value>), e.g. if you add a ?ttp_days=30 to the topic URL the TimeTablePlugin shows 30 days.
| << | Mai | >> | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Mo 12 | Di 13 | Mi 14 | Do 15 | Fr 16 | Sa 17 | So 18 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
24h | 24h | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| << >> | Mo 8 | ||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
05:00 | 06:00 | 07:00 | 08:00 | 09:00 | 10:00 | 11:00 | 12:00 | 13:00 | 14:00 | 15:00 | 16:00 | 17:00 | 18:00 | 19:00 | 20:00 | 21:00 | 22:00 | 23:00 | |
| MONTEST1 | |||||||||||||||||||
| MONTEST2 | |||||||||||||||||||
| MONTEST3 | |||||||||||||||||||
| MONTEST4 | |||||||||||||||||||
| << >> | 05:00 | 06:00 | 07:00 | 08:00 | 09:00 | 10:00 | 11:00 | 12:00 | 13:00 | 14:00 | 15:00 | 16:00 | 17:00 | 18:00 | 19:00 | 20:00 | 21:00 | 22:00 | 23:00 |
| Mo 8 | |||||||||||||||||||
%<plugin>_<setting>%, i.e. %NEWPLUGIN_SHORTDESCRIPTION%
data/debug.txt) left, right or both sides (default: both): %RED% Sorry, some parameters are unknown: %UNKNOWNPARAMSLIST% %ENDCOLOR% <br/> Allowed parameters are (see %SYSTEMWEB%.TimeTablePlugin topic for more details): %KNOWNPARAMSLIST%) 1em) may cause non matching timelines (browser dependent); fontsizes larger than 1em; or use px units; or set textwrapper to plugin (e.g. %TIMETABLE{textwrapper="plugin" fontsize="18pt"}%)
textwrapper="browser" (default) textwrapper="plugin" attribute
TimeTablePlugin.zip in your Foswiki installation directory. Do not forget to change file permissions. Content: | File: | Description: |
|---|---|
data/System/TimeTablePlugin.txt | Plugin topic |
data/System/VarTIMETABLE.txt | Documentation |
data/System/VarTTCM.txt | Documentation |
data/System/VarTTTOPICSETUP.txt | Documentation |
lib/Foswiki/Plugins/TimeTablePlugin.pm | Plugin Perl module |
lib/Foswiki/Plugins/TimeTablePlugin/TimeTable.pm | Plugin Perl library |
pub/System/TimeTablePlugin/timetabletooltips.js | JavaScript library |
pub/System/TimeTablePlugin/example.png | example image 1 |
pub/System/TimeTablePlugin/example2.png | example image 2 |
| Plugin Author: | Foswiki:Main.DanielRohde |
| Copyright: | © 2006, Foswiki:Main.DanielRohde |
| License: | GPL (GNU General Public License) |
| Plugin Version: | V1.017 (23 Oct 2009) |
| Change History: | |
| V1.017 (23 Oct 2009) | Foswiki:Main.DanielRohde: added hidettcm attribute requested by TWiki:Main.StevenCorfman; fixed line breakes in rotated tables; |
| V1.016 (14 Nov 2008) | Foswiki:Main.DanielRohde: added overflow:auto style; fixed unknownparamsmsg bug; |
| V1.015 (29 Jul 2008) | Foswiki:Main.DanielRohde: fixed rotated table bugs (tooltips, showweekend="off") |
| V1.014 (10 Jul 2008) | Foswiki:Main.DanielRohde: added documentation requested by TWiki:Main.PeterThoeny; added rotated table feature requested by TWiki:Main.VickiBrown; fixed doc bug reported by TWiki:Main.JoeGainey |
| V1.013 (24 May 2007) | Foswiki:Main.DanielRohde: fixed major time parsing bug reported by Foswiki:Main.LarsEik; fixed major bug: events with a time range before start time should not be displayed; fixed major TTCM bug reported by Foswiki:Main.ArthurClemens; added URL parameter feature; added new attributes (textwrapper, tableborder, tablewidth, tablecell…); added browser based text wrapping feature requested by Foswiki:Main.ArthurClemens |
| V1.012 (14 May 2007) | Foswiki:Main.DanielRohde: fixed readTopicText bug reported TWiki:Main.JoachimRahn; added month header feature (attributes: showmonthheader, monthheader…); added new tooltip feature (clicktooltip…) |
| V1.011 (1 Mar 2007) | Foswiki:Main.DanielRohde: added fontsize attribute; fixed HTML bug (validation); |
| V1.010 (19 Feb 2007) | Foswiki:Main.DanielRohde: added tablecolumnwidth and tabledatacellwidth attributes requested by TWiki:Main.VickiBrown; added tooltip feature (tooltip… attributes); |
| V1.009 (7 Aug 2006) | Foswiki:Main.DanielRohde: added duration feature; added time zone abbreviations; improved performance; fixed conflict rendering bug; fixed time zone bugs (whole-time event handling, topic include) |
| V1.008 (2 Aug 2006) | Foswiki:Main.DanielRohde: added timezone feature requested by TWiki:Main.BenWatts; fixed major midday/midnight (12pm/12am) bug reported by TWiki:Main.BenWatts; fixed overlapping day bug; fixed periodic event bug; fixed minor bugs (stylesheet bug: annoying JavaScript errors; empty event row) |
| V1.007 (23 Jun 2006) | Foswiki:Main.DanielRohde: fixed major bug (wholetimerow: empty column) |
| V1.006 (23 Jun 2006) | Foswiki:Main.DanielRohde: fixed major mod_perl bug (paging in compatmode); added whole-time row feature; fixed minor bugs (empty column color; cutted text) |
| V1.005 (8 Jun 2006) | Foswiki:Main.DanielRohde: fixed typos (documentation); added new features (compatmode only): inline time range feature and navigation; minor improvements (table header, …) |
| V1.004 (31 May 2006) | Foswiki:Main.DanielRohde: fixed typos (documentation, timeformat); added new attributes (days, forcestartdate, nowfgcolor, nowbgcolor); fixed minor bug (periodic repeater); added new event type (list) |
| V1.003 (24 May 2006) | Foswiki:Main.DanielRohde: added compatibility mode (Foswiki:Extensions.CalendarPlugin event types); added documentation and new attributes; fixed bugs (bgcolor bug; conflict rendering; documentation; error logs; warnings); |
| V1.002 (22 May 2006): | Foswiki:Main.DanielRohde: fixed major bugs (conflict handling, preferences); added documentation; |
| V1.001 (19 May 2006): | Foswiki:Main.DanielRohde: fixed some major bugs (conflict entries, parameter handling, long descriptions); added documentation; |
| V1.000 (16 May 2006): | Foswiki:Main.DanielRohde: Initial version |
| Foswiki Dependency: | $Foswiki::Plugins::VERSION 1.021 |
| CPAN Dependencies: | CPAN:Date::Calc CPAN:POSIX |
| Other Dependencies: | none |
| Perl Version: | 5.005 |
| Plugin Home: | http://foswiki.org/Extensions/TimeTablePlugin |
| Feedback: | http://foswiki.org/Extensions/TimeTablePluginDev |
| I | Attachment | Action | Size | Date | Who | Comment |
|---|---|---|---|---|---|---|
| |
example.png | manage | 32 K | 2009-10-23 - 12:32 | AlexanderWeimer | |
| |
example2.png | manage | 13 K | 2009-10-23 - 12:32 | AlexanderWeimer | |
| |
timetabletooltips.js | manage | 1 K | 2009-10-23 - 12:32 | AlexanderWeimer |