Zum Inhalt

Templates

Template-System

Templates (.tmpl-Dateien) sind wiederverwendbare HTML-Bausteine mit WebEdition-spezifischen Tags. Sie werden auf Dokumente angewendet und steuern Ausgabe und Verhalten.

we-Tags (Auswahl)

Tag Zweck
<we:master name="..."> Master-Template einbinden
<we:include> Anderes Template/Dokument einbetten
<we:content name="..."> Frei bearbeitbarer Content-Block im Dokument
<we:listview> Liste aus Objekten / SQL-Query rendern
<we:sessionStart /> Session starten
<we:ifNotEditmode> Block nur außerhalb des Editors ausführen
<we:field type="..."> Objekt-Feld rendern

Grundschema eines Templates

<we:ifNotEditmode>
  <?php header('Content-type: text/html; charset=UTF-8'); ?>
  <we:sessionStart />
  <we:content name="php" />
  <we:master name="content-main">
    <!-- Seiten-Inhalt -->
  </we:master>
</we:ifNotEditmode>

→ Details zur Integration portierter Module: Modulkapselung

Template-Struktur der Sachpool-Instanz

Templates liegen in der WebEdition-Backend-Hierarchie unter /:

/
├── _include-module/           → Wiederverwendbare Inhaltsbausteine
│   ├── _login/
│   ├── _ansprechpartner-inc.tmpl
│   ├── _kontakt-daten-inc.tmpl
│   ├── _kontaktormular-inc.tmpl
│   ├── anmeldung-form-inc.tmpl
│   ├── email.tmpl
│   ├── partnerversicherung-inc.tmpl
│   └── software-tools-inc.tmpl
├── _include-temp/             → Temporäre / experimentelle Includes
├── _login/                    → Templates des internen Bereichs
├── _modules-box/              → Box-Bausteine
├── aktuelles/                 → News-/Veranstaltungs-Templates
├── master-template/           → Seitenrahmen (siehe unten)
├── produktwelt/               → Templates für die Produktseiten
├── sachpool-portal/           → Portal-Logik und portierte Module (siehe unten)
├── vorlagen/                  → Allgemeine Vorlagen
├── bestaetigung-anmeldung.tmpl
├── count_aktive_makler.tmpl
├── index.tmpl
├── secureDownload.tmpl
├── sidebar.tmpl
└── suche.tmpl

master-template/

Das zentrale Seitengerüst. Jede Seite bindet dieses Template ein.

Template Rolle
master.tmpl Hauptrahmen (Head, Navigation, Content-Slot, Footer)
head.tmpl Kopfbereich (Meta, CSS, Logo)
tail.tmpl Scripts, Footer-Einbindung
footer.tmpl Fußzeile
login.tmpl Login-Formular
login_success.tmpl Seite nach erfolgreichem Login

sachpool-portal/

Portal-Logik und portierte Module. Kern der migrierten der-sachpool.net-Funktionalität.

sachpool-portal/
├── appriori/                      appRIORI-Integration
├── BiPro/                         BiPRO-Schnittstellen (Ausbaustufe)
├── compatiblity-layer/            Kompatibilitätslayer (siehe unten)
├── cron/                          Cron-Jobs
├── datenschutzdialog/             Nutzungsvereinbarung / Einwilligung
├── email/                         E-Mail-Templates
├── gdv-abrechnungen-courtage-daten/   GDV + Courtagen
├── kennzeichen/                   Mopedkennzeichen-Bestellung
├── makler-newsmodul/              News vom/für Makler
├── nachrichtendialog/             Nachrichten-UI
├── partnermodule/                 Tarifrechner, Vergleichsportale, Partnerintegration
├── vertragsauskunft/              Vertragsauskunft (Kernmodul)
├── weiterbildung/                 Weiterbildungs-Nachweise
└── werbeeinblendung/              Dynamische Werbung

Tippfehler im Ordner-Namen

Der Ordner heißt in WebEdition compatiblity-layer (ohne erstes „i"). Dieser Schreibfehler ist historisch und zieht sich durch alle Includes.

Kompatibilitätslayer (sachpool-portal/compatiblity-layer/)

Die Kernschicht zwischen WebEdition und den portierten Modulen:

Template Funktion
authorization.tmpl Authentifizierungsdaten bereitstellen ($sach_user, $ownerid, …)
data-filter.tmpl Platzhalter in Texten/Links ersetzen (%SACHUSER%, …)
database.tmpl $db = new DB_WE() und Hilfsroutinen
encoding.tmpl UTF-8-Kontext sicherstellen
migration/ Einmalige Migrations-Skripte (z. B. newscat-conversion.tmpl)

→ Konzept und Motivation: Kompatibilitätslayer

Vertragsauskunft (sachpool-portal/vertragsauskunft/)

16 Templates – 1:1-Abbildung der portierten Funktionalität:

Template Rolle
searchstart.tmpl Hauptansicht, neue Dokumente
searchresult.tmpl Suchergebnisse
searchmask.tmpl / searchmask2.tmpl Suchmasken (Includes)
contractlist.tmpl Vertragsliste
contractlistperson.tmpl Verträge einer Person
contractdetails.tmpl Vertragsdetails
contractbasedetails.tmpl Basis-Details
customerlist.tmpl Kundenliste
documentdownload.tmpl Einzeldokument-Download
downloadmultifiles.tmpl Massen-Download
new-documents.tmpl Neues-Dokumente-Fenster
phpfunctions.tmpl Hilfsfunktionen
birthdaylist.tmpl Geburtstagsliste (separates Modul)
abrechnungsuebersicht.tmpl Courtage-Abrechnungen
footer.tmpl Fußzeile

→ Modul-Dokumentation: Vertragsauskunft

Partnermodule (sachpool-portal/partnermodule/)

partnermodule/
├── partnerintegration/    Individuelle Authentifizierungs-Templates (Adcuri, CIF)
├── tarifrechner/          Standard-Tarifrechner
└── vergleichsportale/     Lizenzbasierte Vergleichsportale

Tarifrechner, Vergleichsportale

_include-module/

Kleine wiederverwendbare Bausteine, typischerweise in mehreren Seiten eingebunden:

Template Einsatz
_ansprechpartner-inc.tmpl Kontakt-Kachel mit Objektdaten aus Klasse ansprechpartner
_kontakt-daten-inc.tmpl Kontaktblock (Adresse/Telefon/Mail)
_kontaktormular-inc.tmpl Kontaktformular (Tippfehler im Namen: „formular" → „ormular")
anmeldung-form-inc.tmpl Anmeldeformular für neue Partner
partnerversicherung-inc.tmpl Rendert Partnerversicherungs-Objekte
software-tools-inc.tmpl Rendert Software-Tools-Objekte
email.tmpl E-Mail-Rahmen

_login/ – Interner Bereich

Templates des Login-Bereichs (Unterscheidung zum Doku-Ordner /_login/):

Template Rolle
index_login.tmpl Dashboard nach Login
_dash_sortable.tmpl Sortierbare Dashboard-Kacheln
tarifrechner-index.tmpl Tarifrechner-Übersicht
_detail-tarifrechner.tmpl Einzelner Tarifrechner
vergleichsportal-index.tmpl Vergleichsportale-Übersicht
_detail-vergleichsportal.tmpl Einzelnes Vergleichsportal
index-branchennews_intern.tmpl News für eingeloggte Nutzer
index-weiterbildung_intern.tmpl Weiterbildung (intern)
edit-weiterbildung.tmpl Weiterbildungseintrag bearbeiten
ausdruck-weiterbildung-pdf.tmpl PDF-Export Weiterbildungs-Nachweis
aenderung-kv.tmpl Kundenverwaltungs-Änderung
software-email.tmpl Software-Bestellmail
passwort-vergessen/ Passwort-Reset-Flow
produkte/ Produkt-Templates
```