DEPRECATION WARNING

This documentation is not using the current rendering mechanism and is probably outdated. The extension maintainer should switch to the new system. Details on how to use the rendering mechanism can be found here.

EXT: JW Calendar

Author:Kasper Skårhøj
Created:2002-11-01T00:32:00
Changed by:Jens Witt
Changed:2005-01-10T15:28:34
Author:Jens Witt
Email:jwitt@witttec.de
Info 3:
Info 4:

EXT: JW Calendar

Extension Key: jw_calendar

Copyright 2000-2002, Jens Witt, <jwitt@witttec.de>

This document is published under the Open Content License

available from http://www.opencontent.org/opl.shtml

The content of this document is related to TYPO3

- a GNU/GPL CMS/Framework available from www.typo3.com

Table of Contents

EXT: JW Calendar 1

Introduction 1

What does it do? 1

Screenshots 1

Users manual 2

Configuration 3

Reference 6

Known problems 7

To-Do list 7

Changelog 7

Introduction

What does it do?

Ein Kalender mit Listen und Monatsansicht, einer Tagesansicht und Einzelansicht der Ereignisse.

  • Ereigniseinträge im Frontend möglich.
  • Kategorienansicht und FE Ereigniseinträge mit Zugriffskontrolle.
  • FE Einträge können direkt ausgegeben oder vorher geprüft werden.
  • Benachrichtigung per Mail wenn FE Eintrag erfolgte.
  • Unterstützung von sich wiederholenden Ereignissen.
  • Ausnahmeereignisse um bestimmte Bereiche in der Monatsansicht hervorzuheben und/oder die Anzeige von sich wiederholenden Ereignissen zu steuern.
  • Typo3 Caching wird unterstützt.
  • Kombinierte Anzeige von z.B. Monatsansicht und einer Tagesansicht des Tages der in der Monatsansicht selektiert wird auf einer Seite.

Screenshots

Users manual

Nach Installation des Kalenders ist dieser mit den Standardeinstellungen sofort lauffähig. Um Ereigniseinträge vorzunehmen muss allerdings mindestens eine Kategorie erstellt werden die dem Ereignis zugeordnet wird.

((generated))

Kalender Kategorien:
Kategorientitel

Feldname

Kategorientitel

Beschreibung

Der Name der Kategorie

Farbe

Feldname

Farbe

Beschreibung

In der Monatsansicht werden Ereignisse dieser Kategorie mit einem Farbbalken dieser Farbe markiert und kenntlich gemacht

FE Eintrag erlauben

Feldname

FE Eintrag erlauben

Beschreibung

Diese Kategorie wird für FE Einträge zugelassen

Zugriff

Feldname

Zugriff

Beschreibung

Einschränkung der Sichtbarkeit von Einträgen auf diese Benutzer

Wirkt sich ebenso auf das FE Eintragsformular aus in der nur angemeldete Benutzer Ereignisse dieser Kategorie hinzufügen können

Kalender Termine:
Kategorie

Feldname

Kategorie

Beschreibung

Auswahl der Kategorie. Es muss!! mindestens eine Kategorie erstellt werden

Ereignistyp

Feldname

Ereignistyp

Beschreibung

Auswahl des Ereignistypes (siehe) weiter unten

Beginn

Feldname

Beginn

Beschreibung

Anfang des Ereignisses, dieser Eintrag ist zwingend erforderlich.

Ende

Feldname

Ende

Beschreibung

Kann leergelassen werden

Veranstaltungsort

Feldname

Veranstaltungsort

Beschreibung

Veranstalter

Feldname

Veranstalter

Beschreibung

Email

Feldname

Email

Beschreibung

Titel

Feldname

Titel

Beschreibung

Sichtbar in Monats und Listenansicht

Teaser

Feldname

Teaser

Beschreibung

Sichtbar in der Listenansicht

Terminbeschreibung

Feldname

Terminbeschreibung

Beschreibung

Sichtbar in der Einzelansicht

Kalender Termine Ereignistypen
Ereignistyp

Feldname

Ereignistyp

Beschreibung

Täglich, wöchentlich usw.

Tages Typ

Feldname

Tages Typ

Beschreibung

Je nach Ereignistyp

Ereignis X mal

Feldname

Ereignis X mal

Beschreibung

Das Ereignis soll X mal wiederholt werden.

Wichtig Der Kalender arbeitet auch ohne Angabe eines Enddatums der Ereignisfolge. Wenn kein Enddatum angegeben wird dieses Ereignis in der Zukunft bei jeder Kalenderberechnung aus der Datenbank abgerufen um zu prüfen ob es noch darzustellen ist. Dies kann bei vielen Ereignissen auf Dauer zu einer unnötigen Belastung des Datenbankservers führen. Daher die Empfehlung zusätzlich ein Enddatum einzutragen.

Ereignisfolge Enddatum

Feldname

Ereignisfolge Enddatum

Beschreibung

Das Ereignis soll bis zu diesem Datum wiederholt werden.

Wichtig Diese Datum hat Priorität vor der Angabe X mal wiederholen. Es wird kein Ereignis nach diesem Datum angezeigt!

Ausnahmeereignis

Feldname

Ausnahmeereignis

Beschreibung

Ein Ereignis welches in den Kalenderausnahmeereignissen definiert sein muss.

Fällt das Datum des Ausnahmeereignisses und des eigentlichen Ereignisses zusammen wird diese Datum oder dieser Zeitraum übersprungen. Die Anzahl der Ereignisswiederholungen bleibt erhalten!

Ausnahmeereignis Gruppe

Feldname

Ausnahmeereignis Gruppe

Beschreibung

Ausnahmeereignisse lassen sich in einer Gruppe zusammenfassen. Z.B. die einzelnen Ferientermine zu der Gruppe Ferien. Alle Ausnahmen der Gruppe werden übersprungen.

Gruppe und ein Ausnahmeereignis sind zulässig

Ereignistyp wöchentlich

Feldname

Ereignistyp wöchentlich

Beschreibung

Beim Ereignistyp Wöchentlich heißt X mal wiederholen. X mal die Wochenereignisse wiederholen.

Werden 2 Tage der Woche ausgewählt und X mal auf 10 gesetzt erscheint das Ereignis 20mal im Kalender. Fällt ein Ausnahmetermin in eine Woche werden Ereignisse vor dem Ereignis oder danach ausgegeben. Die Berechnung der Xmal Wiederholung richtet sich nach dem Anfangstermin. Wird als Anfangstermin ein Mittwoch angegeben und ein Dienstag, Mittwoch, Donnerstag angegeben und das Ausnahmeereignis beginnt am Donnerstag werden Mittwoch und Dienstag angezeigt, der donnerstag jedoch nicht und diese Woche wird gezählt. Fällt der Anfangstermin auf einen Donnerstag bleibt die Anzeige identisch, diese Woche wird aber als übersprungen gewertet und nicht gezählt!

Kalender Ausnahmeereignisse
Titel

Feldname

Titel

Beschreibung

Anfang

Feldname

Anfang

Beschreibung

Erforderlich

Ende

Feldname

Ende

Beschreibung

Erforderlich

Gruppe

Feldname

Gruppe

Beschreibung

Ereignisse lassen sich zu Gruppen zusammenfassen.

Beispiel: : die einzelnen Schulferientermine werden als Ausnahmeereignis eingetragen und als Gruppe Ferien zusammengefaßt. Gruppen können in der ihr zugeordneten Farbe in der Monatsansicht die Hintergrundfarbe des Tages ändern. So lassen sich die Ferientermine hervorheben.

Priorität

Feldname

Priorität

Beschreibung

Gibt es zusätzlich eine Gruppe Feiertage so fallen Ferien und Feiertage meist zusammen. Ostern z.B. mit den Osterferien. Wird dem Ausnahmeereignis Ostern eine höhere Priorität zugewiesen wie dem Ausnahmeereignis Osterferien, wird Ostern in seiner Gruppenfarbe in der Monatsansicht gezeigt. Andernfalls ist es unbestimmt.

Kalender Ausnahmeereignis Gruppe
Titel

Feldname

Titel

Beschreibung

Farbe

Feldname

Farbe

Beschreibung

Farbe in der diese Gruppe den Hintergrund in der Monatsansicht färbt. Zulässig sind Angaben wie in CSS Vorlagen.Sie werden in folgender Form ins Template eingefügt:

<td class="inside" style="background-color:#C5FAD8">
Farbe ale Hintergrundfarbe

Feldname

Farbe ale Hintergrundfarbe

Beschreibung

Erlaubt das setzen der Farbe als Hintergrund

Configuration

((generated))

Caching:

Der Kalender benutzt die Typo3 Cachingfunktion, dies beschleunigt den Seitenaufbau erheblich und entlastet den Server. Wird ein neuer Eintrag im Frontend vorgenommen wird der Cache der Seite auf der der Kalender ist gelöscht damit das neue Ereignis angezeigt wird. Wenn die Einzelansicht auf einer anderen Seite angezeigt wird wird auch der Cache dieser Seite gelöscht. Wichtig! Werden Einträge im Backend auf einer anderen Seite wie der, auf der der Kalender liegt vorgenommen. Wird zwar der Cache dieser Seite gelöscht aber nicht der der Kalenderseite, mit der Folge das der Termin nicht angezeigt wird. In diesem Fall muss der Typo3 Cache manuell gelöscht werden. Daher sollten nach Möglichkeit die Kalenderdaten auf der Seite verwaltet werden auf der der Kalender sich befindet.

Das Caching läßt sich abstellen: In der Datei “ext_localconf.php” im Verzeichnis der Kalenderext. Zeile 16 in:

t3lib_extMgm::addPItoST43($_EXTKEY,"pi1/class.tx_jwcalendar_pi1.php","_pi1","list_type",1);

Die 1 auf 0 setzen. Danach die Kalenderextension deinstallieren und wieder neu installieren.

FE Einträge:

Das Erstellen von Kalenderterminen läßt sich auf eine Benutzergruppe/Gruppen einschränken. Dazu ein Kalenderplugin auf einer zugriffsgeschützen Seite mit der Ansicht FE Einträge einrichten. Von der Allgemein zugänglichen Seite mit der Kalenderansicht auf diese Seite in den Einstellungen verweisen ( FE Eintragsseite ) und FE Einträge erlauben. Danach erscheint in der Kalenderansicht der Button “Eintrag hinzufügen” nur dann wenn ein berechtigter Benutzer angemeldet ist.Hat sich ein Nutzer im Typo3 Frontend angemeldet kann er im Frontend vorher von ihm erstellte Ereignisse editieren und löschen. Dafür ist es nicht erforderlich die Ansicht FE Einträge auf einer geschützten Seite zu installieren. Die editierbaren Ereignisse werden in der Listenform unterhalb des Eingabefeldes angezeigt. Jedes Ereignis ist mit einem Bleistift- und einem Mülleimersymbol versehen zum bearbeiten und löschen. In der Monatsansicht werden vom angemeldeten Nutzer eingetragene Ereignisse mit einem Bleistiftsymbol versehen und können direkt bearbeitet werden, wenn dieses in den Einstellungen freigegeben ist.

Kategorien:

Die Ansicht einer Kategorie läßt sich auf berechtigte Benutzer einschränken. So läßt sich sehr detailiert steuern wer was sieht. Die Zugriffsbeschränkung der Kategorien im Kalender wirkt auch wenn der Kalender auf einer allgemein zugänglichen Seite installiert ist. Wird eine Kategorie auf Benutzer eingeschränkt kann auch im Frontend nur ein Nutzer dieser Gruppe Termine dieser Kategorie erstellen.

Kombination von Kalenderansichten auf einer Seite:

Beispiel: Eine Webseite mit mehreren Spalten. Links soll eine kleine Monartsansicht, in der Hauptspalte die Ansicht aktueller Ereignisse des Tages erscheinen. Nach Auswahl eines Tages in der Monatsansicht soll die Tagesansicht entsprechend die Ereignisse des gewählten Tages anzeigen:Jeweils ein Kalender Plugin in die entsprechende Spalte einfügen. In der Mitte Tagesansicht wählen. Links Monatsansicht auswählen. Die Checkbox Monatsansicht ohne Ereignisanzeige anklicken. Unter dem Reiter Tagesansicht wird im Feld “Tagesansicht Plugin Uid” auf das Plugin mit der Tagesansicht verwiesen.

Sicherheit:

Daten wie z.B. Die Kennung eines Eintrags werden von einer zur anderen Ansicht mit den HTML Methoden POST und GET übertragen. Gerade mit GET übertragene Daten lassen sich leicht manipulieren. Bei jedem Seitenaufbau des Kalenders wird die Gültigkeit der übergebenen Daten geprüft um z.B. Zu verhindern, das durch eine veränderte Eintragskennung ein nicht zulässiger Eintrag in der Einzelansicht gezeigt wird. Auch kann es durch Benutzen der history:back Funktion des Browsers dazu kommen, das unter dem FE Eintragsformular alle möglichen Einträge aufgelistet werden. In diesem Fall sind diese aber nicht editierbar. Wenn Sicherheitsprobleme auftreten bitte ein Mail an den Autor.

Allgemeine Einstellungen:
Kalender Ansicht

CODE

Kalender Ansicht

Description

Auswahl der Ansicht

Monatsansicht

CODE

Monatsansicht

Description

Ansicht in Monatsform

Listenansicht

CODE

Listenansicht

Description

Alle Ereignisse werden in einer fortlaufenden Liste dargestellt. Beginnend ab dem aktuellen Datum.

Tagesansicht

CODE

Tagesansicht

Description

FE Ereigniseintrag

CODE

FE Ereigniseintrag

Description

Form in der im Frontend neue Ereignisse hinzugefügt werden.

Wird das Plugin in einer Seite mit Zugriffsberechtigunginstalliertund diese Ansicht gewählt, haben ausschliesslich berechtigte Nutzer Zugriff auf die Frontend Ereigniseintragsseite.

Einzelansicht

CODE

Einzelansicht

Description

Auch diese Seite kann auf einer anderen Seite liegen als der eigentliche Kalender. Nützlich um eine andere Gestaltung der Seite mit Einzelansicht vorzunehmen. Diese Seite sollte natürlich vom Menu ausgenommen werden. Zusätlich muss von der Kalenderseite im Parameter singleView Seite darauf verwiesen werden.

Ansicht wechseln Zwischen

CODE

Ansicht wechseln Zwischen

Description

Es darf im Frontend zwischen den ausgewählten Ansichten gewechselt werden.

Kategorien im Kopf des Kalenders anzeigen

CODE

Kategorien im Kopf des Kalenders anzeigen

Description

Kategorien anzeigen in der Tagesansicht

Auswahl des Verhaltens der Kategorienauswahl

CODE

Auswahl des Verhaltens der Kategorienauswahl

Description

?

Kategorienauswahl

CODE

Kategorienauswahl

Description

Filter

Template Datei

CODE

Template Datei

Description

Upload einer Template Datei.

Die Festlegung einer Template Datei in den Constants ist ebenso möglich.

Reihenfolge der Templatedateiauswahl

  1. Template Datei im upload Verzeichnis
  2. Template Datei im Verzeichnis welches in den Constants steht
  3. Template Datei im Verzeichnis der Kalenderextension
plugin.tx_jwcalendar_pi1 {
   templateFile = fileadmin/calendar/jw_calendar.tmpl
}
Ausgangspunkt:

CODE

Ausgangspunkt:

Description

Auswahl der Datensätze einer bestimmten Seite

Steht hier nichts werden sämtliche Datensätze benutzt

Rekursiv

CODE

Rekursiv

Description

Monatsansicht:
Zeige Woche in der Reihe (def:Spalte)

CODE

Zeige Woche in der Reihe (def:Spalte)

Description

Wechsel der Monatsansicht Woche inder Reihe oder in der Spalte (voeingestellt)

((Unknown Property))

CODE

Description

Tage außerhalb des akt. Monats nicht anzeigen(Monatsansicht)

CODE

Tage außerhalb des akt. Monats nicht anzeigen(Monatsansicht)

Description

?

Tag Format in Monatsansicht (def:"%d")

CODE

Tag Format in Monatsansicht (def:"%d")

Description

Mögliche Einträge siehe http://de2.php.net/manual/de/function.strftime.php

Woche des Jahres nicht anzeigen (Monatsansicht)

CODE

Woche des Jahres nicht anzeigen (Monatsansicht)

Description

?

Monatsansicht ohne Ereignisanzeige(für kleine Ansichten)

CODE

Monatsansicht ohne Ereignisanzeige(für kleine Ansichten)

Description

Die Ereignisse werden als Tooltip angezeigt. Die Tageszahl dient als link zur Tagesübersicht.

Ereignisse in einfacher Art anzeigen(def: 0)

CODE

Ereignisse in einfacher Art anzeigen(def: 0)

Description

In der Templatedatei Abschnitt SINGLE_ITEM wird festgelegt wie jedes Ereignis in der Monatsansicht dargestellt wird. Jeder Kategorie kann eine Farbe zugeordet werden. Diese wird default als schmaler Streifen über dem Ereignistext gezeigt um die Ereignisse unterscheidbarer zu machen. SINGLE_ITEM1 als anderes Gestaltungsbeispiel. (In SINGLE_ITEM umbenennen)

Wird hier ein Haken gemacht wird nur der Ereignistext dargestellt.

Anzahl Zeichen der Kategorie (def: 0)

CODE

Anzahl Zeichen der Kategorie (def: 0)

Description

Anzahl Zeichen die vom Kategoriennamen im Farbstreifen angezeigt werden. (Wird mit titletag (tooltip)) versehen. Empfehlung 3 oder mehr)

Listenansicht:
Anzahl Ereignisse in Listenansicht def: 8

CODE

Anzahl Ereignisse in Listenansicht def: 8

Description

Anzahl der Ereignisse die in der Listenansicht angezeigt werden. Es kann durch alle Ereignisse geblättert werden.

Tagesansicht:
Tagesansicht Plugin Uid

CODE

Tagesansicht Plugin Uid

Description

Tagesansicht Seite

CODE

Tagesansicht Seite

Description

Datums format im Titel

CODE

Datums format im Titel

Description

Ereignisse groß anzeigen (wie Einzelansicht)

CODE

Ereignisse groß anzeigen (wie Einzelansicht)

Description

Zeige num Ereignisse groß

CODE

Zeige num Ereignisse groß

Description

Eine Kombination von Listenansicht und Einzelansicht(mit Bild und Inhalt).

Finde ersten Tag mit Ereignissen

CODE

Finde ersten Tag mit Ereignissen

Description

Wenn am aktuellen oder gewählten Tag kein Ereignis vorliegt wird der nächste Tagm mit Ereignissen gesucht und dargestellt.

Max Anzahl Tage vor/nach durchsuchen (def.:30)

CODE

Max Anzahl Tage vor/nach durchsuchen (def.:30)

Description

Bei zeitlich weit auseinanderliegenden Ereignissen (>1 Monat) dieses entsprechend höher stellen.

Einzelansicht:
Einzelansicht Plugin Uid

CODE

Einzelansicht Plugin Uid

Description

singleView Seite

CODE

singleView Seite

Description

Siehe Einzelansicht

max. Bildbreite in Singleview def:100

CODE

max. Bildbreite in Singleview def:100

Description

?

FE Einträge:
FE Einträge erlaubt

CODE

FE Einträge erlaubt

Description

FE Eintragsseite def.: akt. Seite

CODE

FE Eintragsseite def.: akt. Seite

Description

Verweis auf Kalender Plugin auf einer anderen Seite. FE Ansicht hier ausgewählt

FE Einträge unter dieser Seite speichern def.: akt. Seite

CODE

FE Einträge unter dieser Seite speichern def.: akt. Seite

Description

FE Einträge werden erst als verborgen markiert

CODE

FE Einträge werden erst als verborgen markiert

Description

Schrittweite in Minuten

CODE

Schrittweite in Minuten

Description

Betrifft das Selectfeld in der FE Form zur Auswahl der Zeit

Zurückliegende Jahre def:0

CODE

Zurückliegende Jahre def:0

Description

Betrifft das Selectfeld in der FE Form zur Auswahl des Jahres

Zukünftige Jahre def:2

CODE

Zukünftige Jahre def:2

Description

Betrifft das Selectfeld in der FE Form zur Auswahl des Jahres

FE Einräge mit Bild erlauben (def.: false)

CODE

FE Einräge mit Bild erlauben (def.: false)

Description

Bild upload mit überschreiben erlauben (def.: false)

CODE

Bild upload mit überschreiben erlauben (def.: false)

Description

Es kann ein Bild mehrfach hochgeladen werden. Es wird allerdings nicht das bereits vorhandene Bild überschrieben, sondern das neue verworfen und das alte dafür benutzt. Angenommen ein Nutzer möchte seine Veranstaltungen mit seinem Logo zieren so müßte er bei Default Einstellung jedesmal ein neues Bild hochladen (Zumindest mit neuem Namen). Hat ein anderer Nutzer bereits ein Bild gleichen Namens hochgeladen würde dies überschrieben werden. Um dies zu verhindern

wird kein existierendes Bild überschrieben.

Max. Größe des Bildes zum hochladen def:50000

CODE

Max. Größe des Bildes zum hochladen def:50000

Description

Mail Benachrichtigung bei neuem FE Eintrag

CODE

Mail Benachrichtigung bei neuem FE Eintrag

Description

Nicht der Eintragende Nutzer wird benachrichtigt.

Mail Empfänger

CODE

Mail Empfänger

Description

Empfänger der Benachrichtigungsmail

Mail subject

CODE

Mail subject

Description

Mail von

CODE

Mail von

Description

Tooltips
Zeige Tooltips in der Monatsansicht

CODE

Zeige Tooltips in der Monatsansicht

Description

Zeitformat Anfang def: From %H:%M

CODE

Zeitformat Anfang def: From %H:%M

Description

Zeitformat Anfang Events > 24h def: From %d.%b: %H:%M

CODE

Zeitformat Anfang Events > 24h def: From %d.%b: %H:%M

Description

Zeitformat Ende Events > 24h def:to %d.%b: %H:%M

CODE

Zeitformat Ende Events > 24h def:to %d.%b: %H:%M

Description

Zeige Titel in tooltip

CODE

Zeige Titel in tooltip

Description

Zeige teaser in tooltip

CODE

Zeige teaser in tooltip

Description

Zeige Beschreibung in tooltip

CODE

Zeige Beschreibung in tooltip

Description

Wordumbruch in tooltip (IExplorer) def:60

CODE

Wordumbruch in tooltip (IExplorer) def:60

Description

Reference

templateFile

Property

templateFile

Data type

string

Description

Default

wrapColorSingleView

Property

wrapColorSingleView

Data type

string

Description

Default style="background-color:|;float:left;font-size:24px"

Default

wrapColorListView

Property

wrapColorListView

Data type

string

Description

style="background:|;font-size:4px"

Default

((generated))
Example

To define your own Templatefile set this in the Constants

plugin.tx_jwcalendar_pi1 {
   templateFile = fileadmin/calendar/jw_calendar.tmpl
}

To use your own stylesheet, disable first in the Setup

plugin.tx_jwcalendar_pi1._CSS_DEFAULT_STYLE >

and add your own stylesheet

page.headerData.20 = TEXT
page.headerData.20.value =   <link href="fileadmin/calendar/jw_calendar.css" rel="stylesheet"media="screen" />

Known problems

The template is not perfect. It breaks the borders, if its too small. E.g. in the month view

Please report

To-Do list

This manual must be rewriten in a better english and completed.

Some parts of the code have to optimized and cleaned.

Changelog

1.2.0 Fixes language problemsSome simplification in the database queriesThe guestentry have now the feature to upload one image. (changes in the templatefile -> section “guestForm” !!)There is a new parameter entryPeriod explained in the reference.All boolean Constant Values changed from true to 1 and false to 0 for easier handling in the php codeA new MONTH view in combination with LIST view added (Parameter D in the Typo3 CODE field)The displayed categories have now a link, after click the events are filtered, only events from the selected category are shown.Some Tabletypes are changed. Image from blob to tinytext, teaser, title from text to tinytext.

img-1 EXT: JW Calendar - 7