header-xh-01 header-xh-02 header-xh-03 header-xh-04 header-xh-05 header-xh-06 header-xh-07 header-xh-08 header-xh-09 header-xh-10 header-xh-11 header-xh-12 header-xh-13 header-xh-14 headerimage1 headerimage2 headerimage3 headerimage4 headerimage5 headerimage6
Sie sind hier: Startseite > Plugins > SimplePlugins_XH Edition KRL > Beschreibung
Letzte Bearbeitung:

SimplePlugins_XH Edition KRL

Dieses Plugin ist eine sehr einfache Script-Bibliothek.

 

Bitte lesen Sie diese Dokumentation, bevor Sie auf Probleme stoßen!

Wichtiger Hinweis

Die aktuelle Version ist lediglich ein Entwurf. Alles kann sich noch ändern, und es können schwerwiegende Fehler und Einschränkungen vorhanden sein, da sie kaum getestet ist. Es handelt sich um eine so genannte Alpha-Version. Verwenden Sie sie mit äußerster Vorsicht!

Hinweis: Nicht zum Original-Plugin parallel installieren!
Note: Do not install in parallel to the original plugin!

Anforderungen

SimplePlugins_XH ist ein Plugin für CMSimple_XH.

Installation

Die Installation erfolgt wie bei vielen anderen CMSimple_XH-Plugins. Weitere Details finden Sie im CMSimple_XH wiki.

  1. Sichern Sie die Daten auf Ihrem Server.
  2. Entpacken Sie die Distribution auf Ihrem Computer.
  3. Laden Sie das gesamte Verzeichnis auf Ihren Server in das Plugin-Verzeichnis CMSimple_XH hoch.
    • plugins/simpleplugins_xh/* ----> plugins/simpleplugins_xh/*.
  4. Die Funktion no_cookies_text erfordert die Installation des Plugins Privacy_XH.

Enthaltene Bibliotheken

  1. 404
  2. add_qrcode : Anzeige des QR-Codes
  3. admin_only : Dies wird nur angezeigt, wenn der Admin eingeloggt ist.
  4. bclock : Show Clock | Server muss python installiert haben; Script kollidiert u.U. im Editor-Modus mit bestimmten Templates
  5. eingliedern : Bindet reinen HTML-Code aus einer auf dem Server befindlichen Datei in den Inhalt ein (in der Art von Textbausteinen).
  6. hellomyplugin: Blindfunktion gibt hier nur 'Hello My Plugin!' aus. Kann verwendet werden, um eigene Funktionen zu realisieren. Kann auch als Vorlage verwendet werden. Anleitung am Ende der Datei.
  7. mailaddress_hide : Wandelt einen Teil der Zeichen einer E-Mail-Adresse in HTML-Entities um, um einfache Spam-Bots zu blockieren (hilft nicht gegen ausgefeilte Bots).
  8. make_ruby : Anzeige des Ruby-Codes (Lautschrift über dem Text)
  9. no_cookies_text : Zeigt den einen oder den anderen Text an. Abhängig vom Wert (true/false) der Funktion privacy_agreed() des Privacy-Plugins. Der erste Text wird angezeigt, wenn Cookies nicht erlaubt sind, der zweite Text wird angezeigt, wenn Cookies erlaubt sind.
  10. recently_changed : Liste der zuletzt geänderten Seiten mit Angabe des Änderungszeitpunktes und des Menüpfades
  11. recently_changed_pure : Liste der zuletzt geänderten Seiten (einfache unordered list, nur die Seitennamen werden angezeigt)
  12. responsive_iframe : zeigt die angegebene Datei innerhalb eines responsiven Frames an.
  13. viewhtml : Gibt den Inhalt einer HTML-Datei so umgewandelt aus, dass das Listing der Datei im Browser angezeigt werden kann ohne als HTML wirksam zu werden.

Einstellungen

  1. Wählen Sie "Simpleplugins_xh" aus "Plugins".
  2. "Sprache" wählen, Ihre Übersetzung erstellen.
  3. "Konfiguration" wählen ,Ihre Konfigurationerstellen.

Für Entwickler: Sie möchten auch ein einfaches Plugin erstellen

Schauen wir uns simpleplugins_xh/simpleplugins_library/***/index.php an. Sehr einfacher Code!

Das einfachste Plugin ist simpleplugins_library/hellomyplugin/index.php

License

Software License terms GPLv3. © 2015 T. Uchiyama,  © 2021 K.R. Lembach für 'eingliedern', 'no_cookies_text' und 'responsive_iframe'

Liste der Ordner / Dateien

simpleplugins_xh
|- config
|- help
|- languages
|- simpleplugins_library
| |- 404
| |- add_qrcode
| |- admin_only
| |- bclock
| |- eingliedern
| |- hellomyplugin
| |- mailadoress_hide
| |- make_ruby
| |- no_cookies_text
| |- recently_changed
| |- recently_changed_pure
| |- responsive_iframe
| |- viewhtml
|- admin.php
|- index.php
|- README.txt
+- Simpleplugins_view.php

Bibliothek Erklärende Hinweise

404

Useage : nur durch das CMS, kein sonstiger Aufruf
Diese Funktion dient ausschließlich dazu die Benutzeranfrage mit einer nicht existierenden URL auf die URL '/?404' umzuleiten.

Demzufolge muss es eine Seite 404 geben (wird in der Regel als versteckte Seite angelegt). Üblicherweise ist der Inhalt dieser Seite ein mehr oder weniger origineller Text, der die Tatsache kommentiert, dass eine nicht existierende Seite aufgerufen werden sollte. Ausserdem ist meist eine Eingabemaske für eine Website-Interne Suche und ein Link zur Start-Seite und evtl. ein Link zur Sitemap vorhanden.

add_qrcode

Useage :
Example : QR Code

Ausgabe des definierten Textes als QR-Code in der festgelegten Größe.

admin_only

Useage :
Example :

Ausgabe des definierten Textes erfolgt ausschließlich in der Administrator-Ansicht. Der Stil der Ausgabe entspricht der angegebenen Format-Klasse.

bclockMain

Useage : your browser does not support HTML5 canvas, or Javascript is turned off

Dieses Pyton-Script soll die Uhrzeit als Darstellung einer laufenden Analohuhr mit Datumsanzeige ausgeben. Dazu muß auf dem Server Python installiert sein. Das Script kollidiert u. U. im Editor-Modus mit bestimmten Templates.

eingliedern

Useage :
Example : Plugin EINGLIEDERN meldet: Kann die Datei pfad/datei.htm nicht finden!

Bindet reinen HTML-Code aus einer auf dem Server befindlichen Datei in den Content ein (in der Art von Textbausteinen). 

hellomyplugin

Useage : Hello My Plugin!
Example : Hello My Plugin!

Blind-Funktion gibt hier nur 'Hello My Plugin!' aus. Kann benutzt werden um eigene Funktionen zu realisieren. Kann auch als Vorlage benutzt werden.

Instruktionen: Simpleplugins_xh um eigene Funktionen erweitern (addnew.htm)

mailaddress_hide

Useage :
Example : yyy@xxxx.xxx

Der Funktion wird die E-Mail-Adresse als String übergeben (also 'empfängername@domin-name.tld') und gibt dafür HTML-Code mit einem DIV-Kontainer und einem E-Mail-Link aus. Der resultierende Quellcode enthält allerdings die E-Mailadresse im Klartext. Sie ist daher für heutige Spider auslesbar. Ich kann nicht erkennen wodurch hier ein Schutz der E-Mailadresse realisiert werden soll.

make_ruby

Useage : ()
Example : Guten Tag (guutn taak)

Die Funktion dient zur Ausgabe der Lautschrift über einem Text. Der erste Parameter ist der String (z.B. 'Guten Tag') der als normaler Fließtext ausgegeben wird. Der zweite Parameter ist der Lautschrift-String (z.B. 'guutn taak') der als kleine Lautschrift über dem ersten Text ausgegeben wird.

no_cookies_text

Usage :
Example : Bitte erlauben Sie das Setzen von Cookies

Ergänzung zum Plugin Privacy_XH

Ausgabe von Text abhängig davon, ob Cookies zugelassen sind oder nicht in Privacy_XH.
Der Aufruf der Funktion im Artikeltext erfolgt wie jeder Funktionsaufruf:
Text wenn Cookies abgelehnt sind
Vorsicht mit einfachen Anführungszeichen! (') Sind solche im auszugebenden Text führt das zu einem schwerwiegenden Fehler, weil der PHP-Code zerstört wird.
Wenn man ' unbedingt benötigt, dann mit Maskierung angeben: \'
Das scheint in den Tests zu funktionieren.
Formatierungen, die per STYLE-Argumente erzeugt werden, enthalten möglicherweise einfache Anführungszeichen!
Unbedingt vermeiden!
Wenn eine Formatierung notwendig ist, bei der nicht bekannt ist ob sie KEINE einfachen Anführungszeichen enthält, dann unbedingt über den gesamten Funktionsaufruf hinweg.
Also so, dass alle Angaben zur Formatierung außerhalb des Funktionsaufrufes liegen.
D.h. entweder vor den drei öffnenden geschweiften Klammern {{{ oder nach den schließenden geschweiften Klammern }}}.

recently_changed

Useage :
Example :

Die Funktion gibt eine Link-Liste der n zuletzt geänderten Seiten aus, wobei die max. Länge des Links auf m festgelegt werden kann. Dabei ist n der der Funktion übergebene Parameter für die Anzahl der aufgelisteten Seiten und m die maximale Länge der Zeichenkette für jeden Link-Listen-Eintrag. 
Die Liste wird nach Datum geordnet. Die Listeneinträge mit dem gleichen Änderungszeitpunkt werden zusammengefasst. Ihnen wird als Überschrift der Änderungszeitpunkt vorangestellt. Ein Formatierungsvorschlag ist im Ordner der Funktion enthalten.

Der Default-Wert für n ist 5 und der für m ist 100.

recently_changed_pure

Useage :


Example :

Die Funktion gibt eine Link-Liste (sortiert nach Datum) der n zuletzt geänderten Seiten im Aussehen einer 'unordered list' aus. Dabei ist n der der Funktion übergebene Parameter und legt die Anzahl der aufgelisteten Seiten fest. 

Der Default-Wert für n ist 5.

responsive_iframe

Useage :
Example :


Die ursprüngliche Funktion wurde durch eine allgemeine IFrame-Funktion ersetzt. Als Parameter reicht schon die URL zur Datei, die im iframe angezeigt werden soll, alle anderen sind optional.
Die URL kann sich auch auf eine Adresse im eigenen Server beziehen. Dann sollte sie als vollständige Adresse vom root des Servers aus angegeben werden.
Die Hintergrundfarbe des IFrame (default: #F8F8F8) ist als Hex-Zahl anzugeben (egal ob mit oder ohne #).
Das Styling des Rahmens (default: 1px solid #FFF) muss komplett mit Einheitenbenennung (px oder em) und Typ der Farbfestlegung (#, rgb, rgba, benannte Farbe) angegeben werden.
Es erfolgt keine Fehlerabfangung! Fehlerhafte Angaben schießen u. U. das Templat ab!
Die max. Breite (default: 1920px) und min. Breite (default: 300px) sowie die min. Höhe (default: 10px) können, müssen aber nicht angegeben werden.
Die Werte sind in px als reine Zahl anzugeben!

viewhtml

Useage :
Example :

Dateiname: templates/krl-3col-flex/template.htm

<!DOCTYPE HTML>
<?php
/*
*** krl-3col-flex-V1 - last update 24.07.2021 ***
(c) 2021 by Karl Richard Lembach, https://lembach-kr.de, lembach-cmsimple.de, E-Mail siehe Kontaktformular der vorstehenden Webseiten,
Dieses Template basiert auf der Arbeit von Frank Seidel http://fhseidel.de/cmsxh/fhs-basic/.
Alle Kommentare werden in diesem Template als PHP-Kommentare implementiert. An den Browser wird nur der generierte HTML-Code ausgeliefert.
Es werden keine Schriften mitgeliefert. Damit wird der Umfang der Datenmenge verkleinert und somit die Ladezeit der Seite ein klein wenig verkürzt.
Demzufolge sind außer dem Font Awesome (via Plugin in CMSimple_XH enthalten) nur die in Helvetica (https://de.wikipedia.org/wiki/Helvetica_(Schriftart))
und sans-serif (https://de.wikipedia.org/wiki/Grotesk_(Schrift)) enthaltenen Schriftzeichen im Template vorgesehen.
Andere Schriften lassen sich natürlich im Editor wählen.
*/

if (is_readable($pth['folder']['plugins'].'cnc/index.php')) {
die('Das Template <b>krl-3col-flex</b> ist in dieser Version nicht mehr mit dem Plugin CnC kompatibel.');
}
// if jQuery4CMSimple is installed, include its jQuery library
if (is_readable($pth['folder']['plugins'].'jquery/jquery.inc.php')) {
include_once $pth['folder']['plugins'].'jquery/jquery.inc.php';
include_jQuery();
}
// Plugin FA_XH
if (function_exists('fa_require')) {
fa_require();
} else {
echo '<p style="color: black; background-color: white;"></p>Das Template "krl-3col-flex" benötigt das Fa_XH-Plugin.<br>Das Fa_XH-Plugin kann hier heruntergeladen werden: <a href="https://github.com/cmb69/fa_xh/releases" target="_blank">Download</a><br>Installieren Sie das Plugin!</p>'."\n";
}
// Plugin Morepagedata
if (!function_exists('getPageDataFields')) {
echo '<p style="color: black; background-color: white;"></p>Das Template "krl-3col-flex" benötigt das Morepagedata-Plugin.<br>Das Morepagedata-Plugin kann hier heruntergeladen werden: <a href="https://github.com/cmsimple-xh/morepagedata/releases/" target="_blank">Download</a><br>Installieren Sie das Plugin!</p>'."\n";
}
// Plugin Slideshow
if ((!function_exists('slideshow')) and (!isset($NoSlideShow))) {
echo '<p style="color: black; background-color: white;">Das Template "fhs-simple-all" benötigt das Slideshow-Plugin.<br>Das Slideshow-Plugin kann hier heruntergeladen werden: <a href="https://github.com/cmb69/slideshow_xh/releases/" target="_blank">Download</a><br>Installieren Sie das Plugin!</p>'."\n";
}
// Plugin SimplePlugins_XH Edition KRL
if (!function_exists('recently_changed')) {
echo '<p style="color: black; background-color: white;">Das Template "fhs-simple-all" benötigt das "SimplePlugins_XH Edition KRL"-Plugin.<br>Das "SimplePlugins_XH Edition KRL"-Plugin kann hier heruntergeladen werden: <a href="https://lembach-cmsimple.de/?Download/Plugins-Modifikationen" target="_blank">Download</a><br>Installieren Sie das Plugin!</p>'."\n";
}
// Templateerweiterung changeFontSizeByUser
if (is_readable($pth['folder']['template'].'fontsize.inc.php')) {
include 'fontsize.inc.php';
$changeFontSize = true;
}
// Texte in der aktiven Sprache einlesen
// Wenn die Sprachdatei nicht existiert wird die englische Sprachdatei als Default-Datei in die Ziel-Sprachdatei kopiert.
if (is_readable($pth['folder']['template'].'languages/'.$sl.'.php')) {
include $pth['folder']['template'].'languages/'.$sl.'.php';
}
else
{
include $pth['folder']['template'].'foreign-language.php';
}

echo '<html lang="'.$sl.'">'."\n";
echo '<head>'."\n";
echo '<meta name="viewport" content="width=device-width, initial-scale=1">'."\n";
// Im Admin-Modus wird der Browser-Cash abgeschaltet
if (XH_ADM) {
echo '<meta http-equiv="cache-control" content="max-age=0" />
<meta http-equiv="cache-control" content="no-cache" />
<meta http-equiv="cache-control" content="max-stale=0" />
<meta http-equiv="cache-control" content="min-refresh=0" />
<meta http-equiv="cache-control" content="no-store" />
<meta http-equiv="cache-control" content="no-transform" />
<meta http-equiv="expires" content="0" />
<meta http-equiv="expires" content="Tue, 01 Jan 1980 1:00:00 GMT" />
<meta http-equiv="pragma" content="no-cache" />
';
}
echo head();

// *** Spezial - Formate nachladen, wenn die Seite im Front-End-Modus ist.
// *** Dadurch wird bei bestimmten Formaten die Editor-Darstellungs-Version überschrieben.
if ((!$edit) or (!XH_ADM)) {
echo '<link rel="stylesheet" type="text/css" href="'.$pth['folder']['template'].'noeditmode.css">'."\n";
}

// *** Benutzerdefinierte Modifikationen der stylesheet-Formate ***
echo '<link rel="stylesheet" type="text/css" href="'.$pth['folder']['template'].'usermodify.css">'."\n";

// *** Benutzerdefinierte Aenderung der Fontgroesse
if (isset($changeFontSize)) {
echo '<link rel="stylesheet" type="text/css" href="'.$pth['folder']['template'].'fontsize.css.php" media="all" />'."\n";
}

// *** favicon.php enthält den HTML-Code zur Festlegung der Favivons, der sich nicht ändert, auch wenn das Template ein Update erhält ***
include 'favicon.php';

// *** wenn das Plugin privacy installiert ist
if (function_exists('privacy')) {
// *** Wenn die Zustimmung zu Cookies gegeben wurde, Aufruf der cookie-perm-tools.php ***
if (privacy_agreed()) {
if (is_readable($pth['folder']['template'].'cookie-perm-tools.php')) {
include $pth['folder']['template'].'cookie-perm-tools.php';
}
}
}

echo "<script>
document.write('<style>#noScript { display: none; }<\/style>')
</script>\n";

// *** Wenn der Variablen $MainColor2019 ein Wert zugewiesen wurde, wird der Default-Wert der stylesheet.css überschrieben ***
if (isset($MainColor2019)) {
// umrechnen der Hex-Farbe in RGB-Werte
$maxbrightness = 221; // max. erlaubter dezimaler Helligkeitswert der RGB-Einzelfarbe
$color = str_replace("#", "", $MainColor2019);
$r = 1;
$g = 2;
$b = 3;
if (strlen($color) <> 6) { // wenn statt eines 6-stelligen Farbwertes nur ein kürzerer angegeben wurde, wird ein 3-stelliger angenommen und die einzelnen Stellen verdoppelt: a => aa
$r1 = substr($color, 0, 1);
$r1 = $r1.$r1;
$g1 = substr($color, 1, 1);
$g1 = $g1.$g1;
$b1 = substr($color, 2, 1);
$b1 = $b1.$b1;
$main = array(
$r => hexdec($r1),
$g => hexdec($g1),
$b => hexdec($b1)
);
}
else {
$main = array(
$r => hexdec(substr($color, 0, 2)),
$g => hexdec(substr($color, 2, 2)),
$b => hexdec(substr($color, 4, 2))
);
}
if ($main[$r]>$maxbrightness) $main[$r]=$maxbrightness;
if ($main[$g]>$maxbrightness) $main[$g]=$maxbrightness;
if ($main[$b]>$maxbrightness) $main[$b]=$maxbrightness;
$MainColor2019 = '#'.sprintf("%02X%02X%02X", $main[$r], $main[$g], $main[$b]);
/* echo 'MainColor2019 = '.$MainColor2019."<br>\n"; */

echo '<style type="text/css">
.secHeader, #searchform input { background: '.$MainColor2019.' }
#footer, span.footnote { border-top-color: '.$MainColor2019.' }
hr, hr.hrdot, #header, div.Headline_Fussnote { border-bottom-color: '.$MainColor2019.' }
#logoTxt {color: '.$MainColor2019.' }
@media only screen and (min-width : 1920px) {
body {
background-image: linear-gradient( to right, '.$MainColor2019.' 0%, rgba(0, 0, 0, 0.199) 50%, '.$MainColor2019.' 100%);
}
}
</style>'."\n";
}

// *** Wenn der Variablen $MenuBGColor2021 ein Wert zugewiesen wurde, wird der Default-Wert von .secmenu li 'background' in der stylesheet.css überschrieben ***
// *** Berechnung der Hintergrundfarben im Haupt-Navigations-Menü ***
if (isset($MenuBGColor2021)) {
// umrechnen der Hex-Farbe in RGB-Werte
$maxbrightness = 221;
$minbrightness = 68;
$color = str_replace("#", "", $MenuBGColor2021);
if (substr($color, 0, 3) == '---') {
$color = str_replace("#", "", $MainColor2019);
}
$r = 1;
$g = 2;
$b = 3;
if (strlen($color) <> 6) {
$r1 = substr($color, 0, 1);
$r1 = $r1.$r1;
$g1 = substr($color, 1, 1);
$g1 = $g1.$g1;
$b1 = substr($color, 2, 1);
$b1 = $b1.$b1;
$hover = array(
$r => hexdec($r1),
$g => hexdec($g1),
$b => hexdec($b1)
);
}
else {
$hover = array(
$r => hexdec(substr($color, 0, 2)),
$g => hexdec(substr($color, 2, 2)),
$b => hexdec(substr($color, 4, 2))
);
}
if ($hover[$r]<$minbrightness) $hover[$r]=$minbrightness;
if ($hover[$g]<$minbrightness) $hover[$g]=$minbrightness;
if ($hover[$b]<$minbrightness) $hover[$b]=$minbrightness;
if ($hover[$r]>$maxbrightness) $hover[$r]=$maxbrightness;
if ($hover[$g]>$maxbrightness) $hover[$g]=$maxbrightness;
if ($hover[$b]>$maxbrightness) $hover[$b]=$maxbrightness;
$MenuBGColor2021 = '#'.sprintf("%02X%02X%02X", $hover[$r], $hover[$g], $hover[$b]);
/* echo 'MenuBGColor2021 = '.$MenuBGColor2021."<br>\n"; */

echo '<style type="text/css">
.secmenu li a:hover { background: '.$MenuBGColor2021.'; }
.secmenu li a { background: rgb('.($hover[$r]-($minbrightness/2)).','.($hover[$g]-($minbrightness/2)).','.($hover[$b]-($minbrightness/2)).'); }
.secmenu li span { background: rgb('.($hover[$r]-$minbrightness).','.($hover[$g]-$minbrightness).','.($hover[$b]-$minbrightness).'); }
</style>'."\n";
}
// *** Ende der Berechnung der Hintergrundfarben im Haupt-Navigations-Menü ***

// *** Cookie-Erlaubnis abhängige Text-Formate ***
if (function_exists('privacy')) {
if (privacy_agreed()) {
echo '<style type="text/css">
p.no_cookies_text, div.no_cookies_text { display: none; }
p.cookies_text, div.cookies_text { display: block; }
</style>'."\n";
}
else {
echo '<style type="text/css">
p.cookies_text, div.cookies_text { display: none; }
p.no_cookies_text, div.no_cookies_text { display: block; }
</style>'."\n";
}
}

// *** Wenn Silbentrennung für das ganze Web / die ganze Seite aktiviert wird ***
// * strpos gibt 'false' für nicht gefunden zurück, bei Fund die Position, erstes Zeichen = 0!!!
// * Damit bei Fund immer ein Ergebnis größer Null herauskommt, wird dem zu durchsuchenden String ein einzelnes Blank voraus gestellt.
$heustapel = ' '.$tx['template']['text3'];
$nadel = 'Silbentrennung';
if ((strpos($heustapel,$nadel)) or (isset($GlobaleSilbentrennung))) {
echo '<style type="text/css">
body {hyphens: auto; }
</style>'."\n";
}

// *** externe Scripte einbauen ***
if (is_readable($pth['folder']['template'].'scriptimporter.php')) {
if (isset($ScriptImporter2021)) {
include $pth['folder']['template'].'scriptimporter.php' ;
}
}

echo '</head>'."\n";
echo '<body '.onload().'>'."\n";
echo '<div class="body">'."\n";
// *** Ausgabe vom Logo und dem Motto-Text ***
echo '<header class="row-full-width" id="header">'."\n";
echo '<div class="header-cont">'."\n";

// *** Wenn die Variable keinen Wert hat und die Date logo.css vorhanden ist, wird der Text und/oder das Logo ausgegeben. ***
if ((!isset($keinLogoAnzeigen)) and (is_readable($pth['folder']['template'].'logo.css'))) {
echo '<div id="logo"><a href="./" class="logo">&nbsp;</a></div>'."\n";
// *** Wenn die Variable keinen Wert hat, wird der Text ausgegeben ***
if (!isset($keinLogoTextAnzeigen)) {
echo '<div id="logoTxt">'.$tx['template']['text1'].'</div>'."\n";
}
}

echo '</div>
</header>'."\n";

// *** Nur wenn keiner eingelogt ist oder der Vorschau-Modus aktiv ist kann die Slideshow angezeigt werden ***
if (XH_ADM && !$edit || !XH_ADM) {
echo '<div class="row-full-width">'."\n";
// *** Wenn keine Slideshow angezeigt werden soll, wird der Abschnit übersprungen. ***
if (!isset($NoSlideShow)) {
// *** Wenn der Variablen $SliderFolder2019 ein Wert zugewiesen wurde wird die Slideshow mit dem dadurch festgelegten Bilderordner ausgeführt, sonst mit dem Stanard-Ordner ***
if (isset($SliderFolder2019)) {
echo slideshow($SliderFolder2019);
}
else {
echo slideshow('headerimages');
}
}
echo '</div>'."\n";
}

// *** Ausgabe Brot-Krümel-Navigation, Such-Form, Burger-Menü und Multilanguage-Flaggen ***
echo '<div class="row-full-width secHeader">'."\n";
echo ' <div class="locator">
'.$tx['locator']['text'] . ' ' . locator().'
</div>'."\n";
echo ' <div class="floatRight">'."\n";
// *** Bei floatRight wird das erste in der Reihenfolge am weitesten rechts ausgegeben, alles Folgende rückt nach links ein. ***
echo ' <div class="langSwitch">'.languagemenu().'</div>'."\n";
echo ' <div class="burger"> </div>'."\n";
echo ' <div class="searchBox">'."\n";
echo ' <form method="post" id="searchform" action="'.$sn.'">'."\n";
echo ' <input accesskey="f" title="'.$tx['search']['button'].'" id="searchfield" type="text" name="search" placeholder="&#xf002;">'."\n";
echo ' <input type="hidden" name="function" value="search"><span class="searchLabel">'.$tx['search']['button'].'</span>'."\n";
echo ' </form>'."\n";
echo ' </div>'."\n";
echo ' <div class="changeFontsize">'."\n";
print(get_fontsize_link('dec', '<span class="fa fa-minus-square-o"><span>'));
echo ' ';
print(get_fontsize_link('base', '<strong>A</strong>'));
echo ' ';
print(get_fontsize_link('inc', '<span class="fa fa-plus-square-o"></span>'));
echo ' </div>'."\n";
if (function_exists('recently_changed')) {
echo ' <div class="lastChanged"><a href="./?last-changed">'.$text['last_modified'].'</a></div>'."\n";
}
echo '</div>
</div>'."\n";
// *** Ende der Zeile unter Slideshow, Begin maincontent ***

echo '<div class="row-full-width" id="wrapper" lang="'.$sl.'">'."\n"; // *** Definition der Sprache des Inhaltes, damit die Silbentrennung funktioniert ***
echo '<nav class="secmenu c6">'.toc(); // *** <- Menüspalte links ***

// *** Zusätzliche Menüpunkte vorherige Seite und nächste Seite ***
echo '<ul class="menulevel1"><li class="doc">'.previouspage().'</li><li>'.nextpage()."</li></ul>\n";

// *** Wenn memberpages installiert ist und die Loginanzeige erfolgen soll ***
if ((is_readable($pth['folder']['plugins'].'memberpages/memberlist.php')) and (isset($MembersLogin))) {
$Privacy2021 = 1;
if (privacy_agreed()) {
echo '<ul class="menulevel1"><li class="doc"><div class="memberslogin"> '."\n";
echo memberslogin()."\n";
echo '</div></li></ul>'."\n";
}
}
echo '</nav>'."\n";

// *** Mittlere Spalte für Content und evtl. News-Boxen darunter ***
// *** Wenn die Variablen für die Newsboxen leer sind und kein Untermenü vorhanden ist, wird die Breite der mittleren Spalte auf c18 (74,938%) gesetzt. ***
// *** Ebenfalls wenn durch Anhaken der Variablen $TwoColumn2021 das Template auf 2 Spalten umgeschaltet wird. ***
// *** Dies alles gilt nur, wenn die Seite nicht im Editormodus ist und das fhs-adminmenu nicht aktiv ist!
echo '<'.'main class="maincont';
if (((!isset($NewsBox2019A)
and !isset($NewsBox2019B)
and !isset($SubmenuRight2021))
or (isset($TwoColumn2021)))
and
(!is_readable($pth['folder']['plugins'].'fhs_adminmenu/fhs_adminmenu.js')
or ($cf['editmenu']['external'] != 'fhs_adminmenu')
or (!$edit))
) {
echo ' c18';
} else {
echo ' c12';
}
echo '">'."\n";

// *** Wenn in der Bit-Maske der Variablen zum Scriptimport ein falsches Zeichen enthalten ist ***
if (isset($ImporterError)) {
echo '<p style="color: white; background-color: red; border-radius: .2em; padding: 5px; font-weight: 600;">Fehler bei der Eingabe der Bit-Maske zum Scriptimport! Von 0 und 1 abweichendes Zeichen verwendet:<br>Maske: <?=$ScriptImporter2021;?></p>'."\n";
}

// *** Wenn die Variable gesetzt ist wird das Cookie-Formular ausgegeben ***
if ((function_exists('privacy')) and (isset($Privacy2021))) {
if ($Privacy2021) {
echo privacy();
}
}

echo content();
echo '<hr>'."\n".'<p>'.previouspage().' | '.top().' | '.nextpage()."\n";

// *** Wenn das Plugin crazystat installiert ist, wird die Zählergrafik ausgegeben ***
if (function_exists('crazystat')) {
echo " | ", crazystat();
}

echo '</p>'."\n";

// *** Beginn des Bereichs News-Boxen unter dem Content ***
// *** Wenn in der rechten Spalte ein Submenu angezeigt werden soll, dann soll es nicht unter den Content angezeigt werden ***
if ((!isset($SubmenuRight2021)) or (isset($TwoColumn2021))) {
echo '<div class="submenDiv">'.submenu('<span>%s</span>').'</div>'."\n";
}
echo '<'.'aside id="newsboxes2" class="clear"';

// *** Wenn das Layout auf 2 Spalten umgeschaltet ist, sollen die Newsboxen unter den Content angezeigt werden ***
if (isset($TwoColumn2021)) {
echo ' style="display: block;"';
}

echo '>'."\n";

// *** Wenn in der rechten Spalte ein Submenu angezeigt werden soll (class 'news' um .news ul {...} erweitert), bei schmäleren Viewports alternative Position und Darstellung des Submenüs
if ((isset($SubmenuRight2021)) and (!isset($TwoColumn2021))) {
echo '<section class="news">'.submenu('%s').'</section>'."\n";
}

// *** Die News-Boxen werden mit den durch $NewsBox2019A und $NewsBox2019B festgelegten versteckten Seiten dargestellt. ***
// *** Haben die Variablen keinen Wert, werden keine News-Boxen angezeigt. Die Ausblendung erfolgt sowohl per CSS als auch durch PHP. ***
echo '<'.'div';
if (isset($TwoColumn2021)) { // *** Wenn das Template auf 2 Spalten eingestellt ist ***
echo ' class="flexContainer"'; // *** Dadurch werden die beiden Newsboxen nebeneinander ausgegeben ***
}
echo '>'."\n";
if (isset($NewsBox2019A)) {
echo '<section class="news">'.newsbox($NewsBox2019A).'</section>'."\n";
}
if (isset($NewsBox2019B)) {
echo '<section class="news">'.newsbox($NewsBox2019B).'</section>'."\n";
}
echo '</div>'."\n".'</aside>'."\n".'</main>'."\n";

// *** Beginn des Bereichs News-Boxen rechts vom Content in der 3. Spalte ***
// *** Wenn die Newsboxen nicht definiert sind und kein Untermenü vorhanden ist, wird die dritte Spalte nicht angezeigt. ***
// *** Die 3. Spalte soll jedoch angezeigt werden, wenn der Editormode aktiv ist ***
echo '<'.'aside id="newsboxes" class="c6"'."\n";
// *** Wenn keine 3. Spalte angezeigt werden soll, wird style="display: none" ausgegeben ***
if (((!isset($NewsBox2019A) and !isset($NewsBox2019B) and !isset($SubmenuRight2021)) or (isset($TwoColumn2021))) and !$edit) {
echo ' style="display: none"';
}
echo '>'."\n";

// *** alternative Position und Darstellung des Submenüs (class 'news' um .news ul {...} erweitert ***

if (isset($SnipetsBox2021) and $edit) {
echo '<section class="news">'.newsbox($SnipetsBox2021).'</section>'."\n";
}
if (isset($SubmenuRight2021)) {
echo '<section class="news">'.submenu('%s').'</section>'."\n";
}
if (isset($NewsBox2019A)) {
echo '<section class="news">'.newsbox($NewsBox2019A).'</section>'."\n";
}
if (isset($NewsBox2019B)) {
echo '<section class="news">'.newsbox($NewsBox2019B).'</section>'."\n";
}
echo '</aside>'."\n".'</div>'."\n";

// *** Beginn des Bereichs Footer ***
echo '<div class="row-full-width" id="footer">'."\n";
include 'footer.php';
echo '<div><a id="topLink" href="#"><i class="fa fa-angle-up fa-3x"></i></a></div>'."\n";
echo '<div id="noScript">'."\n".' <p>Please activate JavaScript in your browser.</p>'."\n";
echo ' <p><a href="?&amp;sitemap">&raquo; Sitemap</a></p>'."\n";
echo '</div>'."\n";

// *** Wenn das Plugin privacy installiert ist ***
if (function_exists('privacy')) {
// *** Wenn die Zustimmung zu Cookies gegeben wurde, Aufruf der cookie-permission.php ***
if (privacy_agreed()) {
if (is_readable($pth['folder']['template'].'cookie-permission.php')) {
include $pth['folder']['template'].'cookie-permission.php';
}
}
}
echo '<script>
';
?>
// *** scroll to top ***
jQuery(document).ready(function() {
var offset = 200; // start position
var duration = 600; // scroll speed
jQuery(window).scroll(function() {
if (jQuery(this).scrollTop() > offset) {
jQuery('#topLink').fadeIn(duration);
} else {
jQuery('#topLink').fadeOut(duration);
}
});
jQuery('#topLink').click(function(event) {
event.preventDefault();
jQuery('html, body').animate({scrollTop: 0}, duration);
return false;
})

// *** mobile menu ***
mobNavHeight = function () {
if ($(window).innerWidth() > 768) {
$('nav.secmenu').css({'display': 'block'});
$('.burger').addClass('active');
}
}
mobNavHeight();
$(window).resize(function () {
mobNavHeight();
});
$('.burger').click(function () {
$('nav.secmenu').fadeToggle();
$('.burger').toggleClass('active');
});
});
</script>
</div>
</body>
</html>


Wandelt den Inhalt einer Datei so um, dass HTML-Tags und HTML-Entities, sowie der restliche Inhalt als normaler Text zwischen <code> und </code> ausgegeben wird. Somit können Listings von HTML-Dateien im Browser dargestellt werden ohne als HTML wirksam zu werden.

 

Enthält das eingebundene html-Dokument nicht nur den Teil zwischen <body> und </body> sondern auch Teile oder den ganzen <head> bis </head> Bereich, so gibt es plötzlich einen doppelten <head>-Bereich im Dukument. => ganz schlechte Medizin!

Ist jedoch ganz sicher nur Text und HTML-Tags, die normalerweise innerhalb des Body-Bereiches einer Website stehen, im Dokument enthalten, kann die Funktion schon jetzt verwendet werden. Vorsicht sollte bei Inline-Styles gewahrt werden, da diese unter Umständen das Layout der Website stören.


| Seitenanfang | |  - - - By CrazyStat - - -

Please activate JavaScript in your browser.

» Sitemap