plugin:calendoku
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
plugin:calendoku [2015-07-23 15:38] – [IMPORTANT] 92.103.142.28 | plugin:calendoku [2023-03-07 02:51] (current) – 165.231.67.56 | ||
---|---|---|---|
Line 7: | Line 7: | ||
type : Syntax | type : Syntax | ||
lastupdate : 2014-11-05 | lastupdate : 2014-11-05 | ||
- | compatible : Hrun, Ponder Stibbons | + | compatible : Elenor Of Tsort, Detritus, |
depends | depends | ||
conflicts | conflicts | ||
- | similar | + | similar |
tags : calendar, date, ical, icalendar | tags : calendar, date, ical, icalendar | ||
Line 21: | Line 21: | ||
---- | ---- | ||
- | ^_^===== IMPORTANT ===== | + | ===== IMPORTANT ===== |
:!: Calendoku is still considered a beta or late alpha. Bugs are probable, and it will have very rough edges. Do **not** install it on production machines unless you already tested that it works! :!: | :!: Calendoku is still considered a beta or late alpha. Bugs are probable, and it will have very rough edges. Do **not** install it on production machines unless you already tested that it works! :!: | ||
Line 28: | Line 28: | ||
:!: **External requirements: | :!: **External requirements: | ||
- | * [[plugin: | + | * [[plugin: |
- | Install | + | Search and install |
Note that you need at least PHP 5.3.0 to use calendoku! | Note that you need at least PHP 5.3.0 to use calendoku! | ||
Line 36: | Line 36: | ||
===== Examples/ | ===== Examples/ | ||
- | See the plugin in action on the [[https:// | + | See the plugin in action on the [[https:// |
In calendoku, much of the work is based on namespaces. A " | In calendoku, much of the work is based on namespaces. A " | ||
Line 42: | Line 42: | ||
In this namespace, you just insert the icalendar files directly as the pages. It is important that the pages **start** and **end** exactly with the icalendar content, i.e. no trailing newlines or spaces! | In this namespace, you just insert the icalendar files directly as the pages. It is important that the pages **start** and **end** exactly with the icalendar content, i.e. no trailing newlines or spaces! | ||
- | You have to configure a template which is used for rendering icalendar files. Otherwise, the user would just see bare icalendar, which is not really readable. Then, for every namespace you configured to be handled by calendoku, if calendoku finds an icalendar page, it will attempt to render it and replace it with the template. See [[#Templating|Templating]] for how to use the templates. | + | You have to configure a template which is used for rendering icalendar files. Otherwise, the user would just see bare icalendar, which is not really readable. Then, for every namespace you configured to be handled by calendoku, if calendoku finds an icalendar page, it will attempt to render it and replace it with the template. See [[# |
You can also create overviews of the calendars. For this, the '' | You can also create overviews of the calendars. For this, the '' | ||
- | The last important part about calendoku is the input. Since icalendar is unbearable to write directly, you should setup a form with the [[plugin: | + | The last important part about calendoku is the input. Since icalendar is unbearable to write directly, you should setup a form with the [[plugin: |
===== Walk-Through ===== | ===== Walk-Through ===== | ||
Line 52: | Line 52: | ||
To setup a working calendar with entry form, do the following: | To setup a working calendar with entry form, do the following: | ||
- | - Install the calendoku plugin | + | - Install the Calendoku Plugin |
- | - Install the [[plugin: | + | - Install the [[plugin: |
- [[# | - [[# | ||
- Configure the templates. We will use '' | - Configure the templates. We will use '' | ||
Line 64: | Line 64: | ||
===== Templating ===== | ===== Templating ===== | ||
- | To display a single calendar entry inside one of the designated namespaces, you have to use a template. Once specified (see [[# | + | To display a single calendar entry inside one of the designated namespaces, you have to use a template. Once specified (see [[# |
- | On this page, you can also use '' | + | On this page, you can also use '' |
< | < | ||
Line 79: | Line 79: | ||
URL: @@URL@@ | URL: @@URL@@ | ||
</ | </ | ||
+ | |||
This is an easy example which will plainly show everything. | This is an easy example which will plainly show everything. | ||
You can also make more sophisticated templates, e.g.: | You can also make more sophisticated templates, e.g.: | ||
+ | |||
< | < | ||
===== [[@@URL@@|@@SUMMARRY@@]] ===== | ===== [[@@URL@@|@@SUMMARRY@@]] ===== | ||
Line 92: | Line 94: | ||
===== Calendar Overviews ===== | ===== Calendar Overviews ===== | ||
- | To create an overview of the calendar files in one namespace, you have to use the | + | To create an overview of the calendar files in one namespace, you have to use the '' |
- | < | + | |
- | {{calendoku}} | + | |
- | </ | + | |
- | command. You have to specify attributes to actually make it useful. Attributes are separated by ''>'' | + | |
The following attributes are available: | The following attributes are available: | ||
^ Attribute | ^ Attribute | ||
| NAMESPACE | | NAMESPACE | ||
- | | FIELDS | + | | FIELDS |
| FIELDDESCS | Specifies the table headers for the fields, in the same order. Formatting can also be applied. | '' | | FIELDDESCS | Specifies the table headers for the fields, in the same order. Formatting can also be applied. | '' | ||
| START | Specifies the start of the calendar. If you enter '' | | START | Specifies the start of the calendar. If you enter '' | ||
Line 150: | Line 148: | ||
attached, so the page cache will be flushed. | attached, so the page cache will be flushed. | ||
- | E.g., flushing the cache for a site '' | + | E.g., flushing the cache for a site '' |
===== Bureaucracy Forms ===== | ===== Bureaucracy Forms ===== | ||
- | To have a nice form for entering new events, the [[plugin: | + | To have a nice form for entering new events, the [[plugin: |
* the form for entering the events | * the form for entering the events | ||
Line 163: | Line 161: | ||
The form for entering the events could e.g. be: | The form for entering the events could e.g. be: | ||
- | <code php bureaucracytemplate> | + | <code php bureaucracytemplate.txt> |
< | < | ||
action template calendar: | action template calendar: | ||
Line 192: | Line 190: | ||
This will create a form which enables you to enter an event happening somewhere, along with a description, | This will create a form which enables you to enter an event happening somewhere, along with a description, | ||
- | As a template, '' | + | As a template, '' |
==== Templating the Forms ==== | ==== Templating the Forms ==== | ||
Line 239: | Line 237: | ||
END: | END: | ||
</ | </ | ||
- | |||
===== Configuration and Settings ===== | ===== Configuration and Settings ===== | ||
Line 247: | Line 244: | ||
* the '' | * the '' | ||
* the '' | * the '' | ||
- | * the '' | + | * the '' |
- | * the '' | + | * the '' |
- | * the '' | + | * the '' |
* the '' | * the '' | ||
- | * the '' | + | * the '' |
===== Development ===== | ===== Development ===== | ||
Line 288: | Line 285: | ||
* Not all attributes in the overview examples end with > | * Not all attributes in the overview examples end with > | ||
* I struggled to get the right number of @s in the input template. In the end I moved this into another namespace. | * I struggled to get the right number of @s in the input template. In the end I moved this into another namespace. | ||
- | * I was struggling to get the dates and times to show correctly. Modified my input template to create YYYYMMDDTHHMMSS date-times, and configured calendoku to write date-time as I wanted and to write date as YYYYMMDD (so that I got that date-time structure. | + | * I was struggling to get the dates and times to show correctly. Modified my input template to create YYYYMMDDTHHMMSS date-times, and configured calendoku to write date-time as I wanted and to write date as YYYYMMDD (so that I got that date-time structure.\\ I hope that might help somebody else. |
- | I hope that might help somebody else. | + | |
+ | ==== Date/Time bug and double substitution workaround ==== | ||
+ | |||
+ | Also I can confirm the trouble, and found the following workarounds: | ||
+ | |||
+ | <code text termine> | ||
+ | {{calendoku> | ||
+ | NAMESPACE=calendar> | ||
+ | FIELDDESCS=Start **Titel**> | ||
+ | FIELDS=@@DTSTART@@ @@SUMMARY@@> | ||
+ | START=0> | ||
+ | }} | ||
+ | </ | ||
+ | |||
+ | <code php newpage> | ||
+ | < | ||
+ | action template calendar: | ||
+ | |||
+ | fieldset " | ||
+ | date " | ||
+ | time " | ||
+ | textbox " | ||
+ | textbox " | ||
+ | textarea " | ||
+ | submit | ||
+ | </ | ||
+ | </ | ||
+ | |||
+ | <code text inputtemplate> | ||
+ | BEGIN: | ||
+ | VERSION: | ||
+ | PRODID: | ||
+ | BEGIN: | ||
+ | CREATED: | ||
+ | DTSTAMP: | ||
+ | LAST-MODIFIED: | ||
+ | DTSTART: | ||
+ | SUMMARY:## | ||
+ | LOCATION:## | ||
+ | DESCRIPTION:## | ||
+ | END: | ||
+ | END: | ||
+ | </ | ||
+ | |||
+ | <code text template> | ||
+ | **Start:** @@DTSTART@@\\ | ||
+ | **Titel:** @@SUMMARY@@\\ | ||
+ | **Ort:** @@LOCATION@@\\ | ||
+ | **Description: | ||
+ | @@DESCRIPTION@@ | ||
+ | </ | ||
+ | |||
+ | **Details**: | ||
+ | |||
+ | See [[plugin: | ||
+ | |||
+ | As placeholder, | ||
+ | |||
+ | Conversion of the date/time values can be specified with double escaped strftime format tags, '' | ||
+ | |||
+ | If the placeholder has a '' | ||
+ | |||
+ | See [[plugin: | ||
+ | |||
+ | There is also a '' | ||
+ | |||
+ | trailing '' | ||
+ | |||
+ | **Bug description**: | ||
+ | |||
+ | Actually there is a double bug. | ||
+ | |||
+ | This is independent of using the '' | ||
+ | |||
+ | [[plugin: | ||
+ | |||
+ | On alternatively using '' | ||
+ | |||
+ | Helmut 2017/ | ||
+ | |||
+ | ==== Suggestions ==== | ||
- | Any chance of having icons or differential formatting based on some category variable at some point in the future? | + | - Any chance of having icons or differential formatting based on some category variable at some point in the future? |
+ | - Is it possible to supply a tool to parse a multi-event ical (*.ics) file for adding to a calendoku calendar? For example, I have calendars from elsewhere (football fixtures, work appointments) that I'd like to include. This would also work well with a category label/ | ||
plugin/calendoku.1437658738.txt.gz · Last modified: 2015-07-23 15:38 by 92.103.142.28