online feedbacks

Documentation

Content Management Funktionen

CMS Funktionen

Allgemein

formgen verfügt über leistungsfähige CMS Funktionen. Ähnlich wie in Wordpress oder Typo3 wird der Content über Masken gepflegt und über Templates (Inhalts- und Seitentemplates) hierarchisch gerendert.


Aktivierung

Dazu muss in der web.xml das Websiteservlet auf dem gewünschten Pfad aktiviert werden.

  <servlet>
    <servlet-name>websiteservlet</servlet-name>
    <servlet-class>com.pilodata.formgen.servlet.WebsiteServlet</servlet-class>
  </servlet>
...
  <servlet-mapping>
        <servlet-name>websiteservlet</servlet-name>
        <url-pattern>/de/*</url-pattern>
  </servlet-mapping>

Aus den URL-Komponenten wird nun versucht, eine passenden Fragebogen zu finden:
Ein Aufruf von /de/ sucht nach /index
Ein Aufruf von /de/faq sucht nach /faq
Ein Aufruf von /de/impressum sucht nach /impressum
Ein Aufruf von /de/ueberuns/team sucht nach /ueberuns/team
Wird der Fragebogen nicht gefunden, so wird nach einem /404 gesucht


Rendern im Style

Der erste Schritt besteht aus dem Festlegen des Render-Templates für eine Seite. In formgen ist dies der Style.
Typischerweise sieht der Style so aus:
<HEADER Section/>

[set static]static/pics/website[/set]

<!-- Breadcrumbs -->
[if level1!="index"]
<section class="breadcrumbs-section">
	<div class="container">
	[wsinfo -breadcrumbs/]
	</div>
</section>
[/if]

[wsrender/]

<FOOTER Section/>

[wsrender/] stellt alle Fragen (=Inhaltsblöcke) auf dem Fragebogen nacheinander dar.

Variablen

Diese Variablen werden beim Rendern der Seite global gesetzt
NameBeschreibung
jsp_contextPathDer Context-Path des Servlets
REMOTE_ADDRDie IP des Web-Clients
servletpathDer Context-Path plus ServletPath
langSprache
thispageServer relativer Pfad auf diese Seite
level1Level 1, Stelle 1 des Pfades
level2Level 2, Stelle 2 des Pfades
level3Level 3, Stelle 3 des Pfades
level4Level 4, Stelle 4 des Pfades
levelCSSKombinierter Ausdruck mit allen Levels, z.B. about-references
startTitle1Titel 1
startTitle2Titel 2
startTitle3Titel 3
stylecssCSS Text aus Style

wsrender

wsrender ist der zentrale Befehl zum rendern der Fragen auf einer Seite
<!-- Rendert alle Fragen -->
[wsrender/]
  
<!-- Rendert die Fragen mit der Gruppe left -->
[wsrender -group left/]

Variablen

Diese Variablen werden beim Rendern einer Frage gesetzt
NameBeschreibung
sectionTitleTitel der Section (optional)
questionTitleTitel der Frage
questionText1Text1 der Frage
questionText2Text2 der Frage
questionCodeCode der Frage
KommentarDer Magic <!--do not parse--> am Anfang eines Blocks verhindert das Parsen


wsinfo

Mit wsinfo lassen sich informationen über die Webseite abfragen und Ausgaben erzeugen

wsinfo -breadcrumbs

<!-- Erzeugt eine Breadcrumbs navigation -->
[wsinfo -breadcrumbs/]

wsinfo -list

Mit -list werden alle Seiten ab dem Suchpfad abgefragt und über den Body gerendert
<!-- Beispiel -->
[wsinfo -list /docs/*]
  <div>[out path/]</div>
[/wsinfo]
Folgende Variablen stehen innerhalb des Blocks zur Verfügung:
NameBeschreibung
pathPfad der Seite
title1Titel 1
title2Titel 2
title3Titel 3
abstractSeiten Beschreibung
iscurrentAktuelle Seite? true/false


wsref

wsref sucht eine Seite oder eine Ressource im CMS Baum (absolut oder relativ) und gibt den Pfad aus.
<!-- Sucht die Seite Impressum und gibt den Link dazu aus -->
<a href="[wsref impressum/]"><b>Impressum</b></a>

<!-- Sucht die Ressource Adobe_Stock_45711.jpg in der Seite und gibt den Link aus -->
<img src="[wsref Adobe_Stock_45711.jpg/]">


In Kombinination mit wsinfo lassen sich Link-Listen erstellen
[wsinfo -list /formgen/docs/*]
<div class="toc-entry [if iscurrent]toc-current[/if]">
	<div><a href="[wsref $path/]">[out title1/]</a></div>
</div>
[/wsinfo]