theme, plugins und config für die Webseite der Baptisten Hohenacker
https://baptisten-hohenacker.de
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
149 lines
4.7 KiB
149 lines
4.7 KiB
<?php |
|
namespace Grav\Plugin; |
|
//mb_internal_encoding("iso-8859-15"); |
|
//echo mb_internal_encoding(); |
|
class LosungTwigExtension extends \Twig_Extension |
|
{ |
|
public function getName() |
|
{ |
|
return 'LosungTwigExtension'; |
|
} |
|
public function getFunctions() |
|
{ |
|
return [ |
|
new \Twig_SimpleFunction('losung', [$this, 'losungFunction']) |
|
]; |
|
} |
|
public function losungFunction() |
|
{ |
|
// ================================= |
|
// Script zum Einfügen der Losungen: |
|
// ================================= |
|
|
|
|
|
// Einstellungen: |
|
// ============== |
|
|
|
// Bibeltext fett ausgeben: (1 = fett 0 = nicht fett) |
|
$LphpBibeltextFett = 1; |
|
|
|
// Stellenangabe als Link zur Internetbibel: (1 = Link 0 = kein Link) |
|
$LphpBibelLink = 1; |
|
|
|
// Überschrift einfügen: ("" = keine Überschrift) |
|
$LphpTitelText = mb_convert_encoding("Losung und Lehrtext für","iso-8859-15","UTF-8"); |
|
|
|
// Datumsangabe allein oder hinter Überschrift: |
|
$LphpTitelDatum = 2; |
|
|
|
// mögliche Werte: (Beispiel 04.02.2008) |
|
// 0 = (keine Datumsangabe) |
|
// 1 = "04.02.2008" |
|
// 2 = "Montag, 4. Februar 2008" |
|
// 3 = "4. Februar 2008" |
|
|
|
// Doppelpunkt hinter Überschrift / Datum (1 = Doppelpunkt 0 = keiner) |
|
$LphpTitelDoppelpunkt = 1; |
|
|
|
|
|
// ================================================================= |
|
// Den nachfolgenden Code bitte nur ändern, wenn Sie sich auskennen! |
|
// ================================================================= |
|
|
|
// Datendatei zum aktuellen Jahr ermitteln: |
|
//$LphpDatei = $_SERVER['DOCUMENT_ROOT'].'/user/losungphp'. date("Y") .'.dat'; |
|
//$LphpDatei = $_SERVER['DOCUMENT_ROOT'].'/grav/user/losungphp'. date("Y") .'.dat'; |
|
//$LphpDatei = '/mnt/web103/c1/41/53451241/htdocs/grav/user/losungphp'. date("Y") .'.dat'; |
|
|
|
$LphpDatei = dirname(__FILE__) . '/losungphp'. date("Y") .'.dat'; |
|
|
|
if (!file_exists($LphpDatei)){ |
|
return "file not found: " . $LphpDatei; |
|
} |
|
// Die Daten aus der Datendatei einlesen: |
|
$LphpFp = @fopen($LphpDatei,"rb"); |
|
|
|
if ($LphpFp){ |
|
$LphpTagID = date("z") +1; |
|
fseek ($LphpFp, ($LphpTagID * 12) - 12); |
|
$LphpPoLa = fread($LphpFp, 12); |
|
$LphpPo = intval(substr($LphpPoLa, 0, 6)) -1; |
|
$LphpLa = intval(substr($LphpPoLa, 6, 6)); |
|
fseek ($LphpFp, $LphpPo); |
|
$LphpText = fread($LphpFp, $LphpLa); |
|
//$LphpText = utf8_encode(fread($LphpFp, $LphpLa)); |
|
$Lphp = explode("§", $LphpText); |
|
//$Lphp = explode("§", $LphpText); |
|
fclose($LphpFp); |
|
} |
|
//var_dump($LphpDatei); |
|
//var_dump($LphpFp); |
|
|
|
// Variablen für die Datumsangabe in der Überschrift |
|
// Wochentagsname: (z.B.: "Montag") |
|
$LphpWT = array("Sonntag", "Montag", "Dienstag", "Mittwoch", "Donnerstag", "Freitag", "Samstag"); |
|
$LphpWochentagName = $LphpWT[date("w")]; |
|
|
|
// Monatsname: (z.B.: "Februar") |
|
$LphpM = array("", "Januar", "Februar", "März", "April", "Mai", "Juni", "Juli", "August", "September", "Oktober", "November", "Dezember"); |
|
$LphpMonatName = htmlentities($LphpM[date("n")]); |
|
|
|
// Tag als Zahl: (z.B.: kurz = "4" / lang = "04") |
|
$LphpTagKurz = date("j"); |
|
$LphpTagLang = date("d"); |
|
|
|
// Monat als Zahl: (z.B.: kurz = "2" / lang = "02") |
|
$LphpMonatKurz = date("n"); |
|
$LphpMonatLang = date("m"); |
|
|
|
// Jahr als Zahl: (z.B.: kurz = "08" / lang = "2008") |
|
$LphpJahrKurz = date("y"); |
|
$LphpJahrLang = date("Y"); |
|
|
|
// Bibeltext ggf. Fett: |
|
if($LphpBibeltextFett==1){ |
|
$Lphp[1] = "<b>" . $Lphp[1] . "</b>"; |
|
$Lphp[5] = "<b>" . $Lphp[5] . "</b>"; |
|
} |
|
|
|
|
|
// Stellenangabe ggf. als Link zur Internetbibel |
|
if($LphpBibelLink==1){ |
|
$Lphp[2] = "<a title='Zum Bibeltext' href='" . $Lphp[3] . "' target='_blank' rel='noopener'>" . $Lphp[2] . "</a>"; |
|
$Lphp[6] = "<a title='Zum Bibeltext' href='" . $Lphp[7] . "' target='_blank' rel='noopener'>" . $Lphp[6] . "</a>"; |
|
} |
|
|
|
// Überschrift zusammenstellen: |
|
$LphpTitel = ""; |
|
if($LphpTitelText != ""){$LphpTitel = htmlentities(trim($LphpTitelText));} |
|
|
|
// Datum zusammenstellen: |
|
$LphpDatum = ""; |
|
if($LphpTitelDatum <1 or $LphpTitelDatum >3){ |
|
$LphpDatum = ""; |
|
}elseif($LphpTitelDatum==1){ |
|
$LphpDatum = $LphpTagLang . "." . $LphpMonatLang . "." . $LphpJahrLang; |
|
}elseif($LphpTitelDatum==2){ |
|
$LphpDatum = $LphpWochentagName . ", " . $LphpTagKurz . ". " . $LphpMonatName . " " . $LphpJahrLang; |
|
}elseif($LphpTitelDatum==3){ |
|
$LphpDatum = $LphpTagKurz . ". " . $LphpMonatName . " " . $LphpJahrLang; |
|
} |
|
|
|
if($LphpTitel != "" and $LphpDatum != ""){$LphpTitel = $LphpTitel . " ";} |
|
$LphpTitel = $LphpTitel . $LphpDatum; |
|
if($LphpTitel != "" and $LphpTitelDoppelpunkt==1){$LphpTitel=$LphpTitel . ":";} |
|
$retstring = ""; |
|
if($LphpTitel != ""){$retstring .= $LphpTitel . "<br><br>\n";} |
|
$retstring .= $Lphp[0] . $Lphp[1] . "<br>\n"; |
|
$retstring .= $Lphp[2] . "<br><br>\n"; |
|
$retstring .= $Lphp[4] . $Lphp[5] . "<br>\n"; |
|
$retstring .= $Lphp[6]; |
|
//$retstring .= $LphpDatei; |
|
//$retstring .= $LphpText; |
|
return $retstring; |
|
//return 'losung teerst'; |
|
//return $Lphp[0]; |
|
//return mb_internal_encoding(); |
|
//return $LphpText; |
|
} |
|
}
|
|
|