Erweitert Wysiwyg-Text u. Bild (V1.3)

Hinzugefügt:

  • Wysiwyg Text
  • Thumb mit LightBox
  • Link mit Thumb
  • TAG-Steurung: für Vorschaubild: z.B. WxHxCxQ=150x100x0x80 (WIDTHxHEIGHTxCROPxQUALITY)
  • TAG-Template: Ganztägig [ALLDAY]...[/ALLDAY]..[ALLDAY_ELSE]...[/ALLDAY_ELSE] (04.01.2011)
  • 18.01.2011
  • TAG-Steurung: show_past=0|1 [nein|ja] (zeigt die vergangenen Termine im Zeitfenster wenn möglich)
  • TAG-Steurung: date_start=+-XX Tage (Startdatum des Zeitfensters relativ zum aktuellen Tag)
  • Teilt das Template in drei Bereiche auf <!--CALENDAR_HEADER//--> <!--CALENDAR_ENTRY//--> <!--CALENDAR_FOOTER//-->
  • TAG-Template: {TIMEWINDOWSTART:d.m.Y H:i}, {TIMEWINDOWEND:d.m.Y H:i} (START- und ENDdatum des Zeitfensters verfügbar in HEADER/FOOTER)
  • TAG-Template: {DATE:d.m.Y} (Datum des aktuellen Tages)
  • TAG-Template: Aktueller Tag [TODAY]...[/TODAY]..[TODAY_ELSE]...[/TODAY_ELSE]
  • 30.03.2011
  • Bei der internen Zeitabfrage des aktuellen Datums wird nun auch die Uhrzeit berücksichtigt wenn "show_past=0". Ebenso bei der TAG-Eingabe von TODAY.
    Ist dies bei der Eingabe von TODAY nicht gewünscht, wird anstatt TODAY eine “0” eingegeben, die Uhrzeit wird auf 00:00:00 gesetzt.



Geändert: (18.01.2011)

  • Name der php Klasse von "calender.class.php" nach "calender_v13.class.php" in "include/inc_module/mod_calendar/inc/"
  • Name der CSS-Datei von "calender.css" nach "calender_v13.css" in "template/inc_css/specific/"
  • Name der Template-Datei von "my_dates_list_de.html" nach "calender_v13.html" in "template/calendar/"
  • Aufruf der beiden o.g. Dateien in der Datei "init_calendar.php" in "template/inc_script/frontend_render/"



Docu: –
Forum: –

Autor: K.Heermann (flip-flop) http://planmatrix.de
CMS Version: >= V1.4.2 r348
Version: V1.2 (30.11.2010)
Update: V1.2a (04.01.2011)
Update: V1.2a Dateinamen geändert (08.01.2011)
Update: V1.3 mehrere Erweiterungen (18.01.2011)
Verzeichnis: include/inc_module/mod_calendar/inc/ *
Bedingung:



Aufruf des Kalenders im Frontend

In einem CP HTML oder “Einfacher Text” wird folgendes TAG-Set: eingetragen:

{CALENDAR:
items=10
template=calendar_v13.html
lang=de
tag=tag1, tag2
tagmode=OR
date_start=01.01.2011 oder TODAY oder 0 oder -15
date_end=31.12.2011   oder TODAY oder 0 oder 30
href=index.php?XYZ
WxHxCxQ=150x100x0x80
show_past=1
}


Kalenderzeitfenster:

wird mit date_start und date_end eingestellt.

Die Werte können sein:

  • Ein Datum z.B. 03.02.2011
  • Das Wort TODAY für den aktuellen Tag mit aktueller Uhrzeit (gleitendes Zeitfenster)
  • Die Angabe von Anzahl XX Tagen vom aktuellen Datum aus betrachtet: z.B. 15 oder -20
    • Z.B. könnte ein gleitendes Zeitfenster beginnen bei
    • date_start=TODAY
    • und zeigt immer die nächsten 30 Tage ab dem Startdatum
    • date_end=30
    • Anzahl Tage = 0 ist ein Sonderfall, wie TODAY jedoch mit Std.:Min. = 00:00


show_past=1|0

Mit diesem Wert wird bestimmt ob vergangene Termine angezeigt werden oder nicht.
Die Ausgabe (show_past=1) macht nur Sinn wenn entweder ein statisches Zeitfenster (date_start=01.06.2011 und date_start=31.12.2011) oder ein gleitendes Zeitfenster mit Vorlauf zum aktuellen Datum (date_start=-15 und date_start=30) eingestellt ist.


Template V1.3:

Z.B. in template/calendar/TemplateName.html

Hinzugefügt TEXTLONG für den Wysiwyg Text und IMAGE_CALENDAR für das kleine Vorschaubild und Originalbild (LightBox).

[TEXTLONG]{TEXTLONG}[/TEXTLONG]
[IMAGE_CALENDAR]{IMAGE_CALENDAR}[/IMAGE_CALENDAR]

Die Ausführung der LightBox wird im Termin durch den Schalter [x] LightBox gesteuert.
[x] Klick vergrößern ist ohne Funktion.
Ist ein Link im Feld URL unterhalb des Bildes gesetzt, wird die LightBox Ausgabe übersteuert.
Ist ein Link im Feld URL unterhalb des Bildes gesetzt ist dieser nur aktiv wenn die LightBox nicht eingeschaltet ist.

Technik: Die Bilder werden über das Verfahren “cmsimage” geladen.


Ergänzt zu Template V1.2:

  • [ALLDAY] . . . [/ALLDAY] - [ALLDAY_ELSE] . . . [/ALLDAY_ELSE] um bestimmte Einträge für den Schalter “Ganztägig” ein/auszublenden.
[ALLDAY] . . . [/ALLDAY]
[ALLDAY_ELSE] . . . [/ALLDAY_ELSE]


  • {TIMEWINDOWSTART:d.m.Y} . . . {TIMEWINDOWEND:d.m.Y} gibt die Anfangs/endzeit des Zeitfensters aus (im HEADER und FOOTER verfügbar).
  • {DATE:d.m.Y} gibt das aktuelle Datum im gesamten Template aus.
  • Unterteilung des Templates in drei Bereiche:
    • <!--CALENDAR_HEADER_START//--> ... <!--CALENDAR_HEADER_END//-->
    • <!--CALENDAR_ENTRY_START//--> ... <!--CALENDAR_ENTRY_END//-->
    • <!--CALENDAR_FOOTER_START//--> ... <!--CALENDAR_FOOTER_END//-->
<!--CALENDAR_HEADER_START//-->

<div class="calendar_all">
<p>Datum heute: <b>{DATE:d.m.Y}</b></p>
<p>Terminausgabe von <b>{TIMEWINDOWSTART:d.m.Y}</b> bis <b>{TIMEWINDOWEND:d.m.Y}</b></p>

<!--CALENDAR_HEADER_END//-->


  • [TODAY][/TODAY] - [TODAY_ELSE][/TODAY_ELSE] kennzeichnet den aktuellen Tag.
    <div class="date [TODAY]today[/TODAY]">
      .....
      .....
    </div>

mit z.B.

.calendar div.left .date {
    background-color: lightgrey;
    ...
    ...
}
.calendar div.left .today{
    background-color: #D0C2EF;
}


Beispiel gesamtes Template:

calendar_v13.html

<!-- calender_v13 //-->
 
<!--CALENDAR_HEADER_START//-->
 
<div class="calendar_all">
<p>Datum heute: <b>{DATE:d.m.Y}</b></p>
<p>Terminausgabe von <b>{TIMEWINDOWSTART:d.m.Y}</b> bis <b>{TIMEWINDOWEND:d.m.Y}</b></p>
<!--CALENDAR_HEADER_END//-->
 
<!--CALENDAR_ENTRY_START//-->
<div class="calendar">
  <div class="left">
    <div class="date [TODAY]today[/TODAY]">
      <p><strong>[ALLDAY]Datum: [/ALLDAY][ALLDAY_ELSE]Startdatum: [/ALLDAY_ELSE]{STARTDATE:d.m.}</strong><strong class="year">{STARTDATE:Y}</strong></p>
      [ALLDAY_ELSE]<p><strong>Enddatum: {ENDDATE:d.m.}</strong><strong class="year">{ENDDATE:Y}</strong></p>[/ALLDAY_ELSE]
    </div>
  </div>
  <div class="detail">
    <div class="image">
      [IMAGE_CALENDAR]{IMAGE_CALENDAR}[/IMAGE_CALENDAR]
    </div>
    <div class="teaser">
      [TITLE]<h2>{TITLE}</h2>[/TITLE]
      [PLACE]<p class="place">Ort: {PLACE}</p>[/PLACE]
      [HREF]<div class="other">HREF: {HREF}</div>[/HREF]
      [URL]<div class="other">AID/Alias/URL: {URL}[TARGET]{TARGET}[/TARGET]</div>[/URL]
 
      [TEXT]Einleitungstext: <div class="textlong">{TEXT}</div>[/TEXT]
      [TEXTLONG]Beschreibung: <div class="textlong">{TEXTLONG}</div>[/TEXTLONG]
    </div>
  </div>
  <div style="clear:both;"><!--nop//--></div>
</div>
<!--CALENDAR_ENTRY_END//-->
 
<!--CALENDAR_FOOTER_START//-->
</div>
<!--CALENDAR_FOOTER_END//-->

Download V1.3:

  • include/inc_module/mod_calendar/inc/calendar_v13.class.php (Update 18.01.2011 mehrere Änderungen)
  • template/inc_script/frontend_render/init_calendar.php (Update 18.01.2011)
  • template/calendar/calendar_v13.html (Update 18.01.2011 mehrere Änderungen)
  • template/inc_css/specific/calendar_v13.css (Update 18.01.2011 Anpassung an neue TAGs)

calendar_v13.zip (9.52 KiB, 52 downloads)



Download V1.3 komplett:

Das komplette Modul mit allen Dateien.

Inkl. einer kleine Erweiterung im BE: Monatsbuttons

<note important> Installation: Das alte Modul in include/inc_module/mod_calendar muss komplett gelöscht werden, bzw. mit dieser Version überschrieben werden.
Bitte nicht den Pfad umbenennen und die alte Version parken, das funktioniert nicht.

Die bisherige Datei "template/inc_script/frontend_render/init-calendar.php" löschen oder umbenennen nach "init-calendar.php_" !! </note>

mod_calendar_v13_all.zip (50.3 KiB, 57 downloads)


Knut Heermann (flip-flop) 2010/11/30 01:37

deutsch/module/kalender/erweitert-v13.txt · Last modified: 2018/06/03 18:09 (external edit)
www.planmatrix.de www.chimeric.de Creative Commons License Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0