%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"}% Conferenceyou 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,greenNotes:
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); the description field can contain a time range (without any whitespaces, e.g. 1pm-2pm) or a %TTCM%-Tag (e.g. %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" this time zone feature overrides the 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 ( depends on the 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); it has no effect if a tablecolumnwidth was set | 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.
<< | April | Mai | >> | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Mo 29 | Di 30 | Mi 1 | Do 2 | Fr 3 | Sa 4 | So 5 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
24h | 24h | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
<< >> | Do 18 | ||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
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 | |
THUTEST1 | |||||||||||||||||||
THUTEST2 | |||||||||||||||||||
<< >> | 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 |
Do 18 |
%<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 |
---|---|---|---|---|---|---|
png | example.png | manage | 32 K | 2009-10-23 - 12:32 | AlexanderWeimer | |
png | example2.png | manage | 13 K | 2009-10-23 - 12:32 | AlexanderWeimer | |
js | timetabletooltips.js | manage | 1 K | 2009-10-23 - 12:32 | AlexanderWeimer |