Plugin: monthcalendar
Author: Louis
Included in ikiwiki: no
Enabled by default: no
Included in goodstuff: no
Currently enabled: no
Monthcalendar
This plugin displays a calendar, containing in each of its day the list of links of pages published on this day. It can be used, for example, to display archives of blog posts, or to announce events.
The difference between this plugin and the calendar plugin is that the calendar displayed by this plugin is a big one, containing the full title of every page indexed in it.
Usage
Directive
[[!monthcalendar type="month" year="2012" month="06" pages="events/*"]]
Automation
By using the following line in template calendarmonth.tmpl
, you can have ikiwiki-calendar
using this plugin to display monthly archives.
[[!monthcalendar type="month" year="<TMPL_VAR YEAR>" month="<TMPL_VAR MONTH>" pages="<TMPL_VAR PAGESPEC>"]]
CSS
Here is an example of CSS properly rendering the calendar produced by this plugin. CSS
/* Calendar */
.monthcalendar
{
color:#aaa;
/* font-size:18pt; */
margin-top:1em;
margin-bottom:1em;
width: 100%;
}
.monthcalendar table,
.monthcalendar td,
.monthcalendar th
{
border: 1px solid #ccc;
}
#content .monthcalendar td
{
padding: 0;
position: relative;
}
.monthcalendar td div
{
min-height: 10ex;
height: 100%;
position: relative;
}
.monthcalendar th
{
vertical-align: middle;
}
.monthcalendar td ul
{
padding-left: 0.5em;
list-style: dot;
list-style-position: inside;
text-align: left;
font-size: 8pt;
position: relative;
z-index: 10;
font-weight: bold;
}
table.monthcalendar
{
table-layout: fixed;
}
.monthcalendar .selflink
{
color:#444444;
}
.monthcalendar-day-head {
text-transform:capitalize;
}
.monthcalendar-head {
text-transform:capitalize;
}
.monthcalendar-daynumber
{
float: left;
position: absolute;
display: block;
font-size: 7ex;
color: #ccc;
line-height: 100%;
z-index: 5;
padding-top: 0.3ex;
text-align: right;
width: 1.8em;
}
/* List of pages */
.monthcalendar-pagelist {
display: flex;
flex-direction: column;
}
.monthcalendar-item {
opacity: 0;
height: 0;
}
.monthcalendar-item:target {
opacity: 1;
height: initial;
}
Code
Code and documentation can be found here : https://atelier.gresille.org/projects/gresille-ikiwiki/wiki/Monthcalendar.