v1.3.0 #124
11
init.php
11
init.php
@ -7,8 +7,19 @@
|
|||||||
|
|
||||||
|
|
||||||
// PREPARE CLASSES FOR STATE STORAGE //
|
// PREPARE CLASSES FOR STATE STORAGE //
|
||||||
|
// lang reference
|
||||||
|
class Lang_Ref {
|
||||||
|
public static object $dict;
|
||||||
|
}
|
||||||
|
|
||||||
// nav
|
// nav
|
||||||
class Nav {
|
class Nav {
|
||||||
public static ?string $active = null;
|
public static ?string $active = null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// footer
|
||||||
|
class Footer {
|
||||||
|
public static array $lang_href;
|
||||||
|
public static bool $cookieaccept_but_no_lang = false;
|
||||||
|
}
|
||||||
?>
|
?>
|
||||||
|
@ -1,34 +0,0 @@
|
|||||||
<?php
|
|
||||||
declare(strict_types = 1);
|
|
||||||
namespace Kimendisch\Sbgg_Jetzt;
|
|
||||||
use Flake\Project;
|
|
||||||
use Flake\File;
|
|
||||||
use Flake\Cookieaccept;
|
|
||||||
?>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<div id="footer" class="footer">
|
|
||||||
<div class="brand">
|
|
||||||
<img src="<?= File::file("./asset/logo-256.png") ?>" alt="logo" />
|
|
||||||
<span>SBGG.jetzt</span>
|
|
||||||
<a href="https://git.tjdev.de/kimendisch/sbgg.jetzt" target="_blank"><?= $dict->get("text_sourcecode") ?> <i class="ti ti-external-link"></i></a>
|
|
||||||
<span class="version">v<?= Project::version() ?></span>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<?php if(Cookieaccept::is_accepted()){ ?>
|
|
||||||
<div class="cookierevoke">
|
|
||||||
<a href="?cookieaccept=0">Revoke Cookie Permission</a>
|
|
||||||
</div>
|
|
||||||
<?php } ?>
|
|
||||||
|
|
||||||
<div class="legal">
|
|
||||||
<span>© 2024 Kim Endisch</span>
|
|
||||||
<span class="delimiter">|</span>
|
|
||||||
<a href="<?= $dict->get("link_imprint") ?>" target="_blank"><?= $dict->get("text_imprint") ?> <i class="ti ti-external-link"></i></a>
|
|
||||||
<span class="delimiter">|</span>
|
|
||||||
<a href="<?= $dict->get("link_privacy_policy") ?>" target="_blank"><?= $dict->get("text_privacy_policy") ?> <i class="ti ti-external-link"></i></a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
@ -3,8 +3,6 @@
|
|||||||
namespace Kimendisch\Sbgg_Jetzt;
|
namespace Kimendisch\Sbgg_Jetzt;
|
||||||
use Flake\Url_Redirect;
|
use Flake\Url_Redirect;
|
||||||
use Flake\Request;
|
use Flake\Request;
|
||||||
use Flake\Lang;
|
|
||||||
use Flake\Lang_Dict;
|
|
||||||
use Flake\Page;
|
use Flake\Page;
|
||||||
use Flake\Cookieaccept;
|
use Flake\Cookieaccept;
|
||||||
use Flake\Csrf;
|
use Flake\Csrf;
|
||||||
@ -25,34 +23,18 @@
|
|||||||
// LANGUAGE MANAGER //
|
// LANGUAGE MANAGER //
|
||||||
// hack: fake get param from constant
|
// hack: fake get param from constant
|
||||||
$_GET["lang"] = "en";
|
$_GET["lang"] = "en";
|
||||||
|
require("./page/lang_base.php");
|
||||||
// initialize
|
|
||||||
$lang = new Lang(list: ["de", "en"], default: "en");
|
|
||||||
|
|
||||||
// load dict
|
|
||||||
$dict = new Lang_Dict($lang);
|
|
||||||
require("./page/strings.php");
|
|
||||||
|
|
||||||
|
|
||||||
// PAGE INIT //
|
// PAGE INIT //
|
||||||
Page::start();
|
Page::start();
|
||||||
|
|
||||||
Page::title("SBGG.jetzt - Admin Area");
|
Page::title("SBGG.jetzt - Admin Area");
|
||||||
Page::icon("./asset/logo-256.png");
|
|
||||||
|
|
||||||
Page::lang($lang->get());
|
|
||||||
Page::viewport(scale: 1, zoom: true);
|
|
||||||
|
|
||||||
Page::robots(index: false, follow: false);
|
Page::robots(index: false, follow: false);
|
||||||
Page::author("Kim Endisch");
|
Page::$head["og_title"] = '<meta property="og:title" content="SBGG.jetzt - Admin Area" />';
|
||||||
|
|
||||||
Page::$head["analytics"] = '<script defer data-domain="sbgg.jetzt" src="https://analytics.tjdev.de/js/script.js"></script>';
|
require("./page/page_base.php");
|
||||||
Page::css("./page/start/style.css");
|
|
||||||
Page::css("./page/start/style.css.php", eval: true);
|
|
||||||
Page::css(__DIR__ . "/style.css");
|
Page::css(__DIR__ . "/style.css");
|
||||||
|
|
||||||
Page::font("ubuntu");
|
|
||||||
Page::font("tabler");
|
|
||||||
?>
|
?>
|
||||||
|
|
||||||
|
|
||||||
@ -122,4 +104,7 @@
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
<?php require(dirname(__DIR__) . "/footer.php"); ?>
|
<?php
|
||||||
|
Footer::$cookieaccept_but_no_lang = true;
|
||||||
|
require("./page/footer.php");
|
||||||
|
?>
|
||||||
|
@ -1,8 +1,6 @@
|
|||||||
<?php
|
<?php
|
||||||
declare(strict_types = 1);
|
declare(strict_types = 1);
|
||||||
namespace Kimendisch\Sbgg_Jetzt;
|
namespace Kimendisch\Sbgg_Jetzt;
|
||||||
use Flake\Lang;
|
|
||||||
use Flake\Lang_Dict;
|
|
||||||
use Flake\Page;
|
use Flake\Page;
|
||||||
use Flake\Project;
|
use Flake\Project;
|
||||||
use Flake\Excuse;
|
use Flake\Excuse;
|
||||||
@ -47,36 +45,20 @@
|
|||||||
// LANGUAGE MANAGER //
|
// LANGUAGE MANAGER //
|
||||||
// hack: fake get param from constant
|
// hack: fake get param from constant
|
||||||
$_GET["lang"] = "en";
|
$_GET["lang"] = "en";
|
||||||
|
require("./page/lang_base.php");
|
||||||
// initialize
|
|
||||||
$lang = new Lang(list: ["de", "en"], default: "en");
|
|
||||||
|
|
||||||
// load dict
|
|
||||||
$dict = new Lang_Dict($lang);
|
|
||||||
require("./page/strings.php");
|
|
||||||
|
|
||||||
|
|
||||||
// PAGE INIT //
|
// PAGE INIT //
|
||||||
Page::start();
|
Page::start();
|
||||||
|
|
||||||
Page::title("SBGG.jetzt - Admin Area");
|
Page::title("SBGG.jetzt - Admin Area");
|
||||||
Page::icon("./asset/logo-256.png");
|
|
||||||
|
|
||||||
Page::lang($lang->get());
|
|
||||||
Page::viewport(scale: 1, zoom: true);
|
|
||||||
|
|
||||||
Page::robots(index: false, follow: false);
|
Page::robots(index: false, follow: false);
|
||||||
Page::author("Kim Endisch");
|
Page::$head["og_title"] = '<meta property="og:title" content="SBGG.jetzt - Admin Area" />';
|
||||||
|
|
||||||
Page::$head["analytics"] = '<script defer data-domain="sbgg.jetzt" src="https://analytics.tjdev.de/js/script.js"></script>';
|
require("./page/page_base.php");
|
||||||
Page::css("./page/start/style.css");
|
|
||||||
Page::css("./page/start/style.css.php", eval: true);
|
|
||||||
Page::js(__DIR__ . "/iframe_magic.js");
|
Page::js(__DIR__ . "/iframe_magic.js");
|
||||||
Page::js(__DIR__ . "/send_one.js");
|
Page::js(__DIR__ . "/send_one.js");
|
||||||
Page::js(__DIR__ . "/send_all.js");
|
Page::js(__DIR__ . "/send_all.js");
|
||||||
|
|
||||||
Page::font("ubuntu");
|
|
||||||
Page::font("tabler");
|
|
||||||
?>
|
?>
|
||||||
|
|
||||||
|
|
||||||
@ -227,4 +209,7 @@
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
<?php require(dirname(__DIR__) . "/footer.php"); ?>
|
<?php
|
||||||
|
Footer::$cookieaccept_but_no_lang = true;
|
||||||
|
require("./page/footer.php");
|
||||||
|
?>
|
||||||
|
@ -2,8 +2,6 @@
|
|||||||
declare(strict_types = 1);
|
declare(strict_types = 1);
|
||||||
namespace Kimendisch\Sbgg_Jetzt;
|
namespace Kimendisch\Sbgg_Jetzt;
|
||||||
use DateTimeImmutable;
|
use DateTimeImmutable;
|
||||||
use Flake\Lang;
|
|
||||||
use Flake\Lang_Dict;
|
|
||||||
use Flake\Page;
|
use Flake\Page;
|
||||||
|
|
||||||
// HANDLE AUTHENTICATION //
|
// HANDLE AUTHENTICATION //
|
||||||
@ -13,33 +11,17 @@
|
|||||||
// LANGUAGE MANAGER //
|
// LANGUAGE MANAGER //
|
||||||
// hack: fake get param from constant
|
// hack: fake get param from constant
|
||||||
$_GET["lang"] = "en";
|
$_GET["lang"] = "en";
|
||||||
|
require("./page/lang_base.php");
|
||||||
// initialize
|
|
||||||
$lang = new Lang(list: ["de", "en"], default: "en");
|
|
||||||
|
|
||||||
// load dict
|
|
||||||
$dict = new Lang_Dict($lang);
|
|
||||||
require("./page/strings.php");
|
|
||||||
|
|
||||||
|
|
||||||
// PAGE INIT //
|
// PAGE INIT //
|
||||||
Page::start();
|
Page::start();
|
||||||
|
|
||||||
Page::title("SBGG.jetzt - Admin Area");
|
Page::title("SBGG.jetzt - Admin Area");
|
||||||
Page::icon("./asset/logo-256.png");
|
|
||||||
|
|
||||||
Page::lang($lang->get());
|
|
||||||
Page::viewport(scale: 1, zoom: true);
|
|
||||||
|
|
||||||
Page::robots(index: false, follow: false);
|
Page::robots(index: false, follow: false);
|
||||||
Page::author("Kim Endisch");
|
Page::$head["og_title"] = '<meta property="og:title" content="SBGG.jetzt - Admin Area" />';
|
||||||
|
|
||||||
Page::$head["analytics"] = '<script defer data-domain="sbgg.jetzt" src="https://analytics.tjdev.de/js/script.js"></script>';
|
require("./page/page_base.php");
|
||||||
Page::css("./page/start/style.css");
|
|
||||||
Page::css("./page/start/style.css.php", eval: true);
|
|
||||||
|
|
||||||
Page::font("ubuntu");
|
|
||||||
Page::font("tabler");
|
|
||||||
?>
|
?>
|
||||||
|
|
||||||
|
|
||||||
@ -97,4 +79,7 @@
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
<?php require(dirname(__DIR__) . "/footer.php"); ?>
|
<?php
|
||||||
|
Footer::$cookieaccept_but_no_lang = true;
|
||||||
|
require("./page/footer.php");
|
||||||
|
?>
|
||||||
|
@ -1,8 +1,6 @@
|
|||||||
<?php
|
<?php
|
||||||
declare(strict_types = 1);
|
declare(strict_types = 1);
|
||||||
namespace Kimendisch\Sbgg_Jetzt;
|
namespace Kimendisch\Sbgg_Jetzt;
|
||||||
use Flake\Lang;
|
|
||||||
use Flake\Lang_Dict;
|
|
||||||
use Flake\Page;
|
use Flake\Page;
|
||||||
|
|
||||||
// HANDLE AUTHENTICATION //
|
// HANDLE AUTHENTICATION //
|
||||||
@ -12,33 +10,17 @@
|
|||||||
// LANGUAGE MANAGER //
|
// LANGUAGE MANAGER //
|
||||||
// hack: fake get param from constant
|
// hack: fake get param from constant
|
||||||
$_GET["lang"] = "en";
|
$_GET["lang"] = "en";
|
||||||
|
require("./page/lang_base.php");
|
||||||
// initialize
|
|
||||||
$lang = new Lang(list: ["de", "en"], default: "en");
|
|
||||||
|
|
||||||
// load dict
|
|
||||||
$dict = new Lang_Dict($lang);
|
|
||||||
require("./page/strings.php");
|
|
||||||
|
|
||||||
|
|
||||||
// PAGE INIT //
|
// PAGE INIT //
|
||||||
Page::start();
|
Page::start();
|
||||||
|
|
||||||
Page::title("SBGG.jetzt - Admin Area");
|
Page::title("SBGG.jetzt - Admin Area");
|
||||||
Page::icon("./asset/logo-256.png");
|
|
||||||
|
|
||||||
Page::lang($lang->get());
|
|
||||||
Page::viewport(scale: 1, zoom: true);
|
|
||||||
|
|
||||||
Page::robots(index: false, follow: false);
|
Page::robots(index: false, follow: false);
|
||||||
Page::author("Kim Endisch");
|
Page::$head["og_title"] = '<meta property="og:title" content="SBGG.jetzt - Admin Area" />';
|
||||||
|
|
||||||
Page::$head["analytics"] = '<script defer data-domain="sbgg.jetzt" src="https://analytics.tjdev.de/js/script.js"></script>';
|
require("./page/page_base.php");
|
||||||
Page::css("./page/start/style.css");
|
|
||||||
Page::css("./page/start/style.css.php", eval: true);
|
|
||||||
|
|
||||||
Page::font("ubuntu");
|
|
||||||
Page::font("tabler");
|
|
||||||
?>
|
?>
|
||||||
|
|
||||||
|
|
||||||
@ -90,4 +72,7 @@
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
<?php require(dirname(__DIR__) . "/footer.php"); ?>
|
<?php
|
||||||
|
Footer::$cookieaccept_but_no_lang = true;
|
||||||
|
require("./page/footer.php");
|
||||||
|
?>
|
||||||
|
7
page/copylink_dict.js.php
Normal file
7
page/copylink_dict.js.php
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
<?php
|
||||||
|
declare(strict_types = 1);
|
||||||
|
namespace Kimendisch\Sbgg_Jetzt;
|
||||||
|
|
||||||
|
// `copylink_hint_text`
|
||||||
|
echo("let copylink_hint_text = " . json_encode(Lang_Ref::$dict->get("copylink_hint_text")) . ";");
|
||||||
|
?>
|
44
page/footer.php
Normal file
44
page/footer.php
Normal file
@ -0,0 +1,44 @@
|
|||||||
|
<?php
|
||||||
|
declare(strict_types = 1);
|
||||||
|
namespace Kimendisch\Sbgg_Jetzt;
|
||||||
|
use Flake\File;
|
||||||
|
use Flake\Project;
|
||||||
|
use Flake\Cookieaccept;
|
||||||
|
?>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<div id="footer" class="footer">
|
||||||
|
<div class="brand">
|
||||||
|
<img src="<?= File::file("./asset/logo-256.png") ?>" alt="logo" />
|
||||||
|
<span>SBGG.jetzt</span>
|
||||||
|
<a href="https://git.tjdev.de/kimendisch/sbgg.jetzt" target="_blank"><?= $dict->get("text_sourcecode") ?> <i class="ti ti-external-link"></i></a>
|
||||||
|
<span class="version">v<?= Project::version() ?></span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<?php if(Footer::$cookieaccept_but_no_lang){ ?>
|
||||||
|
<?php if(Cookieaccept::is_accepted()){ ?>
|
||||||
|
<div class="cookierevoke">
|
||||||
|
<a href="?cookieaccept=0">Revoke Cookie Permission</a>
|
||||||
|
</div>
|
||||||
|
<?php } ?>
|
||||||
|
|
||||||
|
<?php } else { ?>
|
||||||
|
<div class="lang">
|
||||||
|
<span><i class="ti ti-world"></i></span>
|
||||||
|
<a <?= ($lang->get() === "de" ? "class=\"selected\"" : "") ?> href="<?= Footer::$lang_href["de"] ?>">DE</a>
|
||||||
|
<span class="delimiter">|</span>
|
||||||
|
<a <?= ($lang->get() === "en" ? "class=\"selected\"" : "") ?> href="<?= Footer::$lang_href["en"] ?>">EN</a>
|
||||||
|
</div>
|
||||||
|
<?php } ?>
|
||||||
|
|
||||||
|
<div class="legal">
|
||||||
|
<span>© 2024 Kim Endisch</span>
|
||||||
|
<span class="delimiter">|</span>
|
||||||
|
<a href="<?= $dict->get("link_imprint") ?>"><?= $dict->get("text_imprint") ?></a>
|
||||||
|
<span class="delimiter">|</span>
|
||||||
|
<a href="<?= $dict->get("link_privacy_policy") ?>"><?= $dict->get("text_privacy_policy") ?></a>
|
||||||
|
</div>
|
||||||
|
</div>
|
@ -1,10 +1,7 @@
|
|||||||
<?php
|
<?php
|
||||||
declare(strict_types = 1);
|
declare(strict_types = 1);
|
||||||
namespace Kimendisch\Sbgg_Jetzt;
|
namespace Kimendisch\Sbgg_Jetzt;
|
||||||
use Flake\Lang;
|
|
||||||
use Flake\Lang_Dict;
|
|
||||||
use Flake\Page;
|
use Flake\Page;
|
||||||
use Flake\Project;
|
|
||||||
use Flake\Request;
|
use Flake\Request;
|
||||||
use Flake\File;
|
use Flake\File;
|
||||||
|
|
||||||
@ -14,36 +11,22 @@
|
|||||||
"impressum" => "de",
|
"impressum" => "de",
|
||||||
"imprint" => "en",
|
"imprint" => "en",
|
||||||
])[Request::path()[0] ?? null] ?? "de";
|
])[Request::path()[0] ?? null] ?? "de";
|
||||||
|
require("./page/lang_base.php");
|
||||||
// initialize
|
|
||||||
$lang = new Lang(list: ["de", "en"], default: "de");
|
|
||||||
|
|
||||||
// load dict
|
|
||||||
$dict = new Lang_Dict($lang);
|
|
||||||
require("./page/strings.php");
|
|
||||||
|
|
||||||
|
|
||||||
// PAGE INIT //
|
// PAGE INIT //
|
||||||
Page::start();
|
Page::start();
|
||||||
|
|
||||||
Page::title($dict->get("legal_imprint_page_title"));
|
Page::title($dict->get("legal_imprint_page_title"));
|
||||||
Page::icon("./asset/logo-256.png");
|
Page::$head["alternate_de"] = '<link rel="alternate" hreflang="de" href="/impressum" />';
|
||||||
|
Page::$head["alternate_en"] = '<link rel="alternate" hreflang="en" href="/imprint" />';
|
||||||
Page::lang($lang->get());
|
|
||||||
Page::viewport(scale: 1, zoom: true);
|
|
||||||
|
|
||||||
Page::robots(index: false, follow: false);
|
Page::robots(index: false, follow: false);
|
||||||
Page::author("Kim Endisch");
|
|
||||||
|
|
||||||
Page::$head["analytics"] = '<script defer data-domain="sbgg.jetzt" src="https://analytics.tjdev.de/js/script.js"></script>';
|
Page::$head["og_title"] = '<meta property="og:title" content="' . $dict->get("legal_imprint_page_title") . '" />';
|
||||||
Page::$head["mastodon_verify"] = '<link rel="me" href="https://lsbt.me/@sbggjetzt" />';
|
Page::$head["mastodon_verify"] = '<link rel="me" href="https://lsbt.me/@sbggjetzt" />';
|
||||||
|
|
||||||
Page::css("./page/start/style.css");
|
require("./page/page_base.php");
|
||||||
Page::css("./page/start/style.css.php", eval: true);
|
|
||||||
Page::css(__DIR__ . "/style.css");
|
Page::css(__DIR__ . "/style.css");
|
||||||
|
|
||||||
Page::font("ubuntu");
|
|
||||||
Page::font("tabler");
|
|
||||||
?>
|
?>
|
||||||
|
|
||||||
|
|
||||||
@ -72,26 +55,10 @@
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
<div id="footer" class="footer">
|
<?php
|
||||||
<div class="brand">
|
Footer::$lang_href = [
|
||||||
<img src="<?= File::file("./asset/logo-256.png") ?>" alt="logo" />
|
"de" => "/impressum",
|
||||||
<span>SBGG.jetzt</span>
|
"en" => "/imprint",
|
||||||
<a href="https://git.tjdev.de/kimendisch/sbgg.jetzt" target="_blank"><?= $dict->get("text_sourcecode") ?> <i class="ti ti-external-link"></i></a>
|
];
|
||||||
<span class="version">v<?= Project::version() ?></span>
|
require("./page/footer.php");
|
||||||
</div>
|
?>
|
||||||
|
|
||||||
<div class="lang">
|
|
||||||
<span><i class="ti ti-world"></i></span>
|
|
||||||
<a <?= ($lang->get() === "de" ? "class=\"selected\"" : "") ?> href="/impressum">DE</a>
|
|
||||||
<span class="delimiter">|</span>
|
|
||||||
<a <?= ($lang->get() === "en" ? "class=\"selected\"" : "") ?> href="/imprint">EN</a>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="legal">
|
|
||||||
<span>© 2024 Kim Endisch</span>
|
|
||||||
<span class="delimiter">|</span>
|
|
||||||
<a href="<?= $dict->get("link_imprint") ?>"><?= $dict->get("text_imprint") ?></a>
|
|
||||||
<span class="delimiter">|</span>
|
|
||||||
<a href="<?= $dict->get("link_privacy_policy") ?>"><?= $dict->get("text_privacy_policy") ?></a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
16
page/lang_base.php
Normal file
16
page/lang_base.php
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
<?php
|
||||||
|
declare(strict_types = 1);
|
||||||
|
namespace Kimendisch\Sbgg_Jetzt;
|
||||||
|
use Flake\Project;
|
||||||
|
use Flake\Lang;
|
||||||
|
use Flake\Lang_Dict;
|
||||||
|
|
||||||
|
// LANGUAGE MANAGER //
|
||||||
|
// initialize
|
||||||
|
$lang = new Lang(list: ["de", "en"], default: "de");
|
||||||
|
|
||||||
|
// load dict
|
||||||
|
$dict = new Lang_Dict($lang);
|
||||||
|
Lang_Ref::$dict = $dict;
|
||||||
|
require("./page/strings.php");
|
||||||
|
?>
|
@ -1,14 +1,10 @@
|
|||||||
<?php
|
<?php
|
||||||
declare(strict_types = 1);
|
declare(strict_types = 1);
|
||||||
namespace Kimendisch\Sbgg_Jetzt;
|
namespace Kimendisch\Sbgg_Jetzt;
|
||||||
use Flake\Lang;
|
|
||||||
use Flake\Lang_Dict;
|
|
||||||
use Flake\Page;
|
use Flake\Page;
|
||||||
use Flake\Project;
|
|
||||||
use Flake\Url;
|
use Flake\Url;
|
||||||
use Flake\Url_Redirect;
|
use Flake\Url_Redirect;
|
||||||
use Flake\Request;
|
use Flake\Request;
|
||||||
use Flake\File;
|
|
||||||
|
|
||||||
// COLLECT REQUEST DATA //
|
// COLLECT REQUEST DATA //
|
||||||
// mail address
|
// mail address
|
||||||
@ -22,35 +18,18 @@
|
|||||||
// hack: fake get param from url path
|
// hack: fake get param from url path
|
||||||
$param_lang = $_GET["slang"] ?? "de";
|
$param_lang = $_GET["slang"] ?? "de";
|
||||||
$_GET["lang"] = $param_lang;
|
$_GET["lang"] = $param_lang;
|
||||||
|
require("./page/lang_base.php");
|
||||||
// initialize
|
|
||||||
$lang = new Lang(list: ["de", "en"], default: "de");
|
|
||||||
|
|
||||||
// load dict
|
|
||||||
$dict = new Lang_Dict($lang);
|
|
||||||
require("./page/strings.php");
|
|
||||||
|
|
||||||
|
|
||||||
// PAGE INIT //
|
// PAGE INIT //
|
||||||
Page::start();
|
Page::start();
|
||||||
|
|
||||||
Page::title($dict->get("newsletter_subscribe_page_title"));
|
Page::title($dict->get("newsletter_subscribe_page_title"));
|
||||||
Page::icon("./asset/logo-256.png");
|
|
||||||
|
|
||||||
Page::lang($lang->get());
|
|
||||||
Page::viewport(scale: 1, zoom: true);
|
|
||||||
|
|
||||||
Page::robots(index: false, follow: false);
|
Page::robots(index: false, follow: false);
|
||||||
Page::author("Kim Endisch");
|
Page::$head["og_title"] = '<meta property="og:title" content="' . $dict->get("newsletter_subscribe_page_title") . '" />';
|
||||||
|
|
||||||
Page::$head["analytics"] = '<script defer data-domain="sbgg.jetzt" src="https://analytics.tjdev.de/js/script.js"></script>';
|
require("./page/page_base.php");
|
||||||
|
|
||||||
Page::css("./page/start/style.css");
|
|
||||||
Page::css("./page/start/style.css.php", eval: true);
|
|
||||||
Page::js(__DIR__ . "/main.js");
|
Page::js(__DIR__ . "/main.js");
|
||||||
|
|
||||||
Page::font("ubuntu");
|
|
||||||
Page::font("tabler");
|
|
||||||
?>
|
?>
|
||||||
|
|
||||||
|
|
||||||
@ -115,26 +94,10 @@
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
<div class="footer">
|
<?php
|
||||||
<div class="brand">
|
Footer::$lang_href = [
|
||||||
<img src="<?= File::file("./asset/logo-256.png") ?>" alt="logo" />
|
"de" => Url::query_modify(remove: ["slang"], add: ["slang=de"]),
|
||||||
<span>SBGG.jetzt</span>
|
"en" => Url::query_modify(remove: ["slang"], add: ["slang=en"]),
|
||||||
<a href="https://git.tjdev.de/kimendisch/sbgg.jetzt" target="_blank"><?= $dict->get("text_sourcecode") ?> <i class="ti ti-external-link"></i></a>
|
];
|
||||||
<span class="version">v<?= Project::version() ?></span>
|
require("./page/footer.php");
|
||||||
</div>
|
?>
|
||||||
|
|
||||||
<div class="lang">
|
|
||||||
<span><i class="ti ti-world"></i></span>
|
|
||||||
<a <?= ($lang->get() === "de" ? "class=\"selected\"" : "") ?> href="<?= Url::query_modify(remove: ["slang"], add: ["slang=de"]) ?>">DE</a>
|
|
||||||
<span class="delimiter">|</span>
|
|
||||||
<a <?= ($lang->get() === "en" ? "class=\"selected\"" : "") ?> href="<?= Url::query_modify(remove: ["slang"], add: ["slang=en"]) ?>">EN</a>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="legal">
|
|
||||||
<span>© 2024 Kim Endisch</span>
|
|
||||||
<span class="delimiter">|</span>
|
|
||||||
<a href="<?= $dict->get("link_imprint") ?>" target="_blank"><?= $dict->get("text_imprint") ?> <i class="ti ti-external-link"></i></a>
|
|
||||||
<span class="delimiter">|</span>
|
|
||||||
<a href="<?= $dict->get("link_privacy_policy") ?>" target="_blank"><?= $dict->get("text_privacy_policy") ?> <i class="ti ti-external-link"></i></a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
@ -1,11 +1,7 @@
|
|||||||
<?php
|
<?php
|
||||||
declare(strict_types = 1);
|
declare(strict_types = 1);
|
||||||
namespace Kimendisch\Sbgg_Jetzt;
|
namespace Kimendisch\Sbgg_Jetzt;
|
||||||
use Flake\Lang;
|
|
||||||
use Flake\Lang_Dict;
|
|
||||||
use Flake\Page;
|
use Flake\Page;
|
||||||
use Flake\File;
|
|
||||||
use Flake\Project;
|
|
||||||
use Flake\Url;
|
use Flake\Url;
|
||||||
use Flake\Url_Redirect;
|
use Flake\Url_Redirect;
|
||||||
use Flake\Request;
|
use Flake\Request;
|
||||||
@ -22,35 +18,18 @@
|
|||||||
// hack: fake get param from url path
|
// hack: fake get param from url path
|
||||||
$param_lang = $_GET["slang"] ?? "de";
|
$param_lang = $_GET["slang"] ?? "de";
|
||||||
$_GET["lang"] = $param_lang;
|
$_GET["lang"] = $param_lang;
|
||||||
|
require("./page/lang_base.php");
|
||||||
// initialize
|
|
||||||
$lang = new Lang(list: ["de", "en"], default: "de");
|
|
||||||
|
|
||||||
// load dict
|
|
||||||
$dict = new Lang_Dict($lang);
|
|
||||||
require("./page/strings.php");
|
|
||||||
|
|
||||||
|
|
||||||
// PAGE INIT //
|
// PAGE INIT //
|
||||||
Page::start();
|
Page::start();
|
||||||
|
|
||||||
Page::title($dict->get("newsletter_unsubscribe_page_title"));
|
Page::title($dict->get("newsletter_unsubscribe_page_title"));
|
||||||
Page::icon("./asset/logo-256.png");
|
|
||||||
|
|
||||||
Page::lang($lang->get());
|
|
||||||
Page::viewport(scale: 1, zoom: true);
|
|
||||||
|
|
||||||
Page::robots(index: false, follow: false);
|
Page::robots(index: false, follow: false);
|
||||||
Page::author("Kim Endisch");
|
Page::$head["og_title"] = '<meta property="og:title" content="' . $dict->get("newsletter_unsubscribe_page_title") . '" />';
|
||||||
|
|
||||||
Page::$head["analytics"] = '<script defer data-domain="sbgg.jetzt" src="https://analytics.tjdev.de/js/script.js"></script>';
|
require("./page/page_base.php");
|
||||||
|
|
||||||
Page::css("./page/start/style.css");
|
|
||||||
Page::css("./page/start/style.css.php", eval: true);
|
|
||||||
Page::js(__DIR__ . "/main.js");
|
Page::js(__DIR__ . "/main.js");
|
||||||
|
|
||||||
Page::font("ubuntu");
|
|
||||||
Page::font("tabler");
|
|
||||||
?>
|
?>
|
||||||
|
|
||||||
|
|
||||||
@ -106,26 +85,10 @@
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
<div class="footer">
|
<?php
|
||||||
<div class="brand">
|
Footer::$lang_href = [
|
||||||
<img src="<?= File::file("./asset/logo-256.png") ?>" alt="logo" />
|
"de" => Url::query_modify(remove: ["slang"], add: ["slang=de"]),
|
||||||
<span>SBGG.jetzt</span>
|
"en" => Url::query_modify(remove: ["slang"], add: ["slang=en"]),
|
||||||
<a href="https://git.tjdev.de/kimendisch/sbgg.jetzt" target="_blank"><?= $dict->get("text_sourcecode") ?> <i class="ti ti-external-link"></i></a>
|
];
|
||||||
<span class="version">v<?= Project::version() ?></span>
|
require("./page/footer.php");
|
||||||
</div>
|
?>
|
||||||
|
|
||||||
<div class="lang">
|
|
||||||
<span><i class="ti ti-world"></i></span>
|
|
||||||
<a <?= ($lang->get() === "de" ? "class=\"selected\"" : "") ?> href="<?= Url::query_modify(remove: ["slang"], add: ["slang=de"]) ?>">DE</a>
|
|
||||||
<span class="delimiter">|</span>
|
|
||||||
<a <?= ($lang->get() === "en" ? "class=\"selected\"" : "") ?> href="<?= Url::query_modify(remove: ["slang"], add: ["slang=en"]) ?>">EN</a>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="legal">
|
|
||||||
<span>© 2024 Kim Endisch</span>
|
|
||||||
<span class="delimiter">|</span>
|
|
||||||
<a href="<?= $dict->get("link_imprint") ?>" target="_blank"><?= $dict->get("text_imprint") ?> <i class="ti ti-external-link"></i></a>
|
|
||||||
<span class="delimiter">|</span>
|
|
||||||
<a href="<?= $dict->get("link_privacy_policy") ?>" target="_blank"><?= $dict->get("text_privacy_policy") ?> <i class="ti ti-external-link"></i></a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
35
page/page_base.php
Normal file
35
page/page_base.php
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
<?php
|
||||||
|
declare(strict_types = 1);
|
||||||
|
namespace Kimendisch\Sbgg_Jetzt;
|
||||||
|
use Flake\Page;
|
||||||
|
use Flake\File;
|
||||||
|
use Flake\Url;
|
||||||
|
|
||||||
|
// PAGE INIT //
|
||||||
|
Page::icon("./asset/logo-256.png");
|
||||||
|
Page::description($dict->get("description"));
|
||||||
|
Page::lang($lang->get());
|
||||||
|
Page::viewport(scale: 1, zoom: true);
|
||||||
|
|
||||||
|
Page::author("Kim Endisch");
|
||||||
|
Page::keywords("selbstbestimmungsgesetz-jetzt", "sbgg-jetzt", "selbstbestimmungsgesetz", "selbstbestimmung", "sbgg", "SBGG", "tsg", "transsexuellengesetz", "trans", "nicht-binär", "non-binary", "deutschland", "gender", "geschlecht", "identität", "roadmap", "timeline", "stand", "aktuell", "aktueller stand", "wann", "wann kommt", "inkrafttreten", "referentenentwurf");
|
||||||
|
|
||||||
|
Page::$head["og_description"] = '<meta property="og:description" content="' . $dict->get("description") . '" />';
|
||||||
|
Page::$head["og_type"] = '<meta property="og:type" content="website" />';
|
||||||
|
$banner_file_path = ([
|
||||||
|
"de" => "./asset/banner-de-bg-1920.png",
|
||||||
|
"en" => "./asset/banner-en-bg-1920.png",
|
||||||
|
])[$lang->get()] ?? "./asset/banner-de-bg-1920.png";
|
||||||
|
Page::$head["og_image"] = '<meta property="og:image" content="' . File::file($banner_file_path) . '" />';
|
||||||
|
Page::$head["og_url"] = '<meta property="og:url" content="' . Url::full() . '" />';
|
||||||
|
|
||||||
|
Page::$head["analytics"] = '<script defer data-domain="sbgg.jetzt" src="https://analytics.tjdev.de/js/script.js"></script>';
|
||||||
|
|
||||||
|
Page::css("./page/style.css");
|
||||||
|
Page::css("./page/style.css.php", eval: true);
|
||||||
|
Page::js("./page/copylink_dict.js.php", eval: true);
|
||||||
|
Page::js("./page/copylink.js");
|
||||||
|
|
||||||
|
Page::font("ubuntu");
|
||||||
|
Page::font("tabler");
|
||||||
|
?>
|
@ -1,10 +1,7 @@
|
|||||||
<?php
|
<?php
|
||||||
declare(strict_types = 1);
|
declare(strict_types = 1);
|
||||||
namespace Kimendisch\Sbgg_Jetzt;
|
namespace Kimendisch\Sbgg_Jetzt;
|
||||||
use Flake\Lang;
|
|
||||||
use Flake\Lang_Dict;
|
|
||||||
use Flake\Page;
|
use Flake\Page;
|
||||||
use Flake\Project;
|
|
||||||
use Flake\Request;
|
use Flake\Request;
|
||||||
use Flake\File;
|
use Flake\File;
|
||||||
|
|
||||||
@ -14,36 +11,22 @@
|
|||||||
"datenschutz" => "de",
|
"datenschutz" => "de",
|
||||||
"privacy" => "en",
|
"privacy" => "en",
|
||||||
])[Request::path()[0] ?? null] ?? "de";
|
])[Request::path()[0] ?? null] ?? "de";
|
||||||
|
require("./page/lang_base.php");
|
||||||
// initialize
|
|
||||||
$lang = new Lang(list: ["de", "en"], default: "de");
|
|
||||||
|
|
||||||
// load dict
|
|
||||||
$dict = new Lang_Dict($lang);
|
|
||||||
require("./page/strings.php");
|
|
||||||
|
|
||||||
|
|
||||||
// PAGE INIT //
|
// PAGE INIT //
|
||||||
Page::start();
|
Page::start();
|
||||||
|
|
||||||
Page::title($dict->get("legal_privacy_page_title"));
|
Page::title($dict->get("legal_privacy_page_title"));
|
||||||
Page::icon("./asset/logo-256.png");
|
Page::$head["alternate_de"] = '<link rel="alternate" hreflang="de" href="/datenschutz" />';
|
||||||
|
Page::$head["alternate_en"] = '<link rel="alternate" hreflang="en" href="/privacy" />';
|
||||||
Page::lang($lang->get());
|
|
||||||
Page::viewport(scale: 1, zoom: true);
|
|
||||||
|
|
||||||
Page::robots(index: false, follow: false);
|
Page::robots(index: false, follow: false);
|
||||||
Page::author("Kim Endisch");
|
|
||||||
|
|
||||||
Page::$head["analytics"] = '<script defer data-domain="sbgg.jetzt" src="https://analytics.tjdev.de/js/script.js"></script>';
|
Page::$head["og_title"] = '<meta property="og:title" content="' . $dict->get("legal_privacy_page_title") . '" />';
|
||||||
Page::$head["mastodon_verify"] = '<link rel="me" href="https://lsbt.me/@sbggjetzt" />';
|
Page::$head["mastodon_verify"] = '<link rel="me" href="https://lsbt.me/@sbggjetzt" />';
|
||||||
|
|
||||||
Page::css("./page/start/style.css");
|
require("./page/page_base.php");
|
||||||
Page::css("./page/start/style.css.php", eval: true);
|
|
||||||
Page::css("./page/imprint/style.css");
|
Page::css("./page/imprint/style.css");
|
||||||
|
|
||||||
Page::font("ubuntu");
|
|
||||||
Page::font("tabler");
|
|
||||||
?>
|
?>
|
||||||
|
|
||||||
|
|
||||||
@ -72,26 +55,10 @@
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
<div id="footer" class="footer">
|
<?php
|
||||||
<div class="brand">
|
Footer::$lang_href = [
|
||||||
<img src="<?= File::file("./asset/logo-256.png") ?>" alt="logo" />
|
"de" => "/datenschutz",
|
||||||
<span>SBGG.jetzt</span>
|
"en" => "/privacy",
|
||||||
<a href="https://git.tjdev.de/kimendisch/sbgg.jetzt" target="_blank"><?= $dict->get("text_sourcecode") ?> <i class="ti ti-external-link"></i></a>
|
];
|
||||||
<span class="version">v<?= Project::version() ?></span>
|
require("./page/footer.php");
|
||||||
</div>
|
?>
|
||||||
|
|
||||||
<div class="lang">
|
|
||||||
<span><i class="ti ti-world"></i></span>
|
|
||||||
<a <?= ($lang->get() === "de" ? "class=\"selected\"" : "") ?> href="/datenschutz">DE</a>
|
|
||||||
<span class="delimiter">|</span>
|
|
||||||
<a <?= ($lang->get() === "en" ? "class=\"selected\"" : "") ?> href="/privacy">EN</a>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="legal">
|
|
||||||
<span>© 2024 Kim Endisch</span>
|
|
||||||
<span class="delimiter">|</span>
|
|
||||||
<a href="<?= $dict->get("link_imprint") ?>"><?= $dict->get("text_imprint") ?></a>
|
|
||||||
<span class="delimiter">|</span>
|
|
||||||
<a href="<?= $dict->get("link_privacy_policy") ?>"><?= $dict->get("text_privacy_policy") ?></a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
@ -1,10 +0,0 @@
|
|||||||
<?php
|
|
||||||
declare(strict_types = 1);
|
|
||||||
namespace Kimendisch\Sbgg_Jetzt;
|
|
||||||
|
|
||||||
// MAKE TRANSLATION DICT AVAILABLE VIA JAVASCRIPT //
|
|
||||||
global $kimendisch_sbgg_jetzt_dict;
|
|
||||||
|
|
||||||
// `copylink_hint_text`
|
|
||||||
echo("let copylink_hint_text = " . json_encode($kimendisch_sbgg_jetzt_dict->get("copylink_hint_text")) . ";");
|
|
||||||
?>
|
|
@ -7,7 +7,6 @@
|
|||||||
use Flake\Hidden;
|
use Flake\Hidden;
|
||||||
use Flake\File;
|
use Flake\File;
|
||||||
use Flake\Project;
|
use Flake\Project;
|
||||||
use Flake\Url;
|
|
||||||
|
|
||||||
// HACK: CONVERT GET PARAM TO PATH PARAM //
|
// HACK: CONVERT GET PARAM TO PATH PARAM //
|
||||||
if(isset($_GET["lang"])){
|
if(isset($_GET["lang"])){
|
||||||
@ -29,56 +28,22 @@
|
|||||||
// hack: fake get param from url path
|
// hack: fake get param from url path
|
||||||
$param_lang = Project::param("lang") ?? "de";
|
$param_lang = Project::param("lang") ?? "de";
|
||||||
$_GET["lang"] = $param_lang;
|
$_GET["lang"] = $param_lang;
|
||||||
|
require("./page/lang_base.php");
|
||||||
// initialize
|
|
||||||
$lang = new Lang(list: ["de", "en"], default: "de");
|
|
||||||
|
|
||||||
// load dict
|
|
||||||
$dict = new Lang_Dict($lang);
|
|
||||||
require("./page/strings.php");
|
|
||||||
|
|
||||||
// make available to `eval`-ed scripts
|
|
||||||
global $kimendisch_sbgg_jetzt_dict;
|
|
||||||
$kimendisch_sbgg_jetzt_dict = $dict;
|
|
||||||
|
|
||||||
|
|
||||||
// PAGE INIT //
|
// PAGE INIT //
|
||||||
Page::start();
|
Page::start();
|
||||||
|
|
||||||
Page::title($dict->get("title"));
|
Page::title($dict->get("title"));
|
||||||
Page::icon("./asset/logo-256.png");
|
|
||||||
Page::description($dict->get("description"));
|
|
||||||
|
|
||||||
Page::lang($lang->get());
|
|
||||||
Page::viewport(scale: 1, zoom: true);
|
|
||||||
Page::$head["alternate_de"] = '<link rel="alternate" hreflang="de" href="/" />';
|
Page::$head["alternate_de"] = '<link rel="alternate" hreflang="de" href="/" />';
|
||||||
Page::$head["alternate_en"] = '<link rel="alternate" hreflang="en" href="/en" />';
|
Page::$head["alternate_en"] = '<link rel="alternate" hreflang="en" href="/en" />';
|
||||||
|
|
||||||
Page::robots(index: true, follow: true);
|
Page::robots(index: true, follow: true);
|
||||||
Page::author("Kim Endisch");
|
|
||||||
Page::keywords("selbstbestimmungsgesetz-jetzt", "sbgg-jetzt", "selbstbestimmungsgesetz", "selbstbestimmung", "sbgg", "SBGG", "tsg", "transsexuellengesetz", "trans", "nicht-binär", "non-binary", "deutschland", "gender", "geschlecht", "identität", "roadmap", "timeline", "stand", "aktuell", "aktueller stand", "wann", "wann kommt", "inkrafttreten", "referentenentwurf");
|
|
||||||
|
|
||||||
Page::$head["og_title"] = '<meta property="og:title" content="SBGG.jetzt" />';
|
Page::$head["og_title"] = '<meta property="og:title" content="SBGG.jetzt" />';
|
||||||
Page::$head["og_description"] = '<meta property="og:description" content="' . $dict->get("description") . '" />';
|
|
||||||
Page::$head["og_type"] = '<meta property="og:type" content="website" />';
|
|
||||||
$banner_file_path = ([
|
|
||||||
"de" => "./asset/banner-de-bg-1920.png",
|
|
||||||
"en" => "./asset/banner-en-bg-1920.png",
|
|
||||||
])[$lang->get()] ?? "./asset/banner-de-bg-1920.png";
|
|
||||||
Page::$head["og_image"] = '<meta property="og:image" content="' . File::file($banner_file_path) . '" />';
|
|
||||||
Page::$head["og_url"] = '<meta property="og:url" content="' . Url::full() . '" />';
|
|
||||||
|
|
||||||
Page::$head["analytics"] = '<script defer data-domain="sbgg.jetzt" src="https://analytics.tjdev.de/js/script.js"></script>';
|
|
||||||
Page::$head["mastodon_verify"] = '<link rel="me" href="https://lsbt.me/@sbggjetzt" />';
|
Page::$head["mastodon_verify"] = '<link rel="me" href="https://lsbt.me/@sbggjetzt" />';
|
||||||
|
|
||||||
Page::css(__DIR__ . "/style.css");
|
require("./page/page_base.php");
|
||||||
Page::css(__DIR__ . "/style.css.php", eval: true);
|
|
||||||
Page::js(__DIR__ . "/copylink_dict.js.php", eval: true);
|
|
||||||
Page::js(__DIR__ . "/copylink.js");
|
|
||||||
Page::js(__DIR__ . "/newsletter.js");
|
Page::js(__DIR__ . "/newsletter.js");
|
||||||
|
|
||||||
Page::font("ubuntu");
|
|
||||||
Page::font("tabler");
|
|
||||||
?>
|
?>
|
||||||
|
|
||||||
|
|
||||||
@ -643,26 +608,10 @@
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
<div id="footer" class="footer">
|
<?php
|
||||||
<div class="brand">
|
Footer::$lang_href = [
|
||||||
<img src="<?= File::file("./asset/logo-256.png") ?>" alt="logo" />
|
"de" => "/",
|
||||||
<span>SBGG.jetzt</span>
|
"en" => "/en",
|
||||||
<a href="https://git.tjdev.de/kimendisch/sbgg.jetzt" target="_blank"><?= $dict->get("text_sourcecode") ?> <i class="ti ti-external-link"></i></a>
|
];
|
||||||
<span class="version">v<?= Project::version() ?></span>
|
require("./page/footer.php");
|
||||||
</div>
|
?>
|
||||||
|
|
||||||
<div class="lang">
|
|
||||||
<span><i class="ti ti-world"></i></span>
|
|
||||||
<a <?= ($lang->get() === "de" ? "class=\"selected\"" : "") ?> href="/">DE</a>
|
|
||||||
<span class="delimiter">|</span>
|
|
||||||
<a <?= ($lang->get() === "en" ? "class=\"selected\"" : "") ?> href="/en">EN</a>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="legal">
|
|
||||||
<span>© 2024 Kim Endisch</span>
|
|
||||||
<span class="delimiter">|</span>
|
|
||||||
<a href="<?= $dict->get("link_imprint") ?>" target="_blank"><?= $dict->get("text_imprint") ?> <i class="ti ti-external-link"></i></a>
|
|
||||||
<span class="delimiter">|</span>
|
|
||||||
<a href="<?= $dict->get("link_privacy_policy") ?>" target="_blank"><?= $dict->get("text_privacy_policy") ?> <i class="ti ti-external-link"></i></a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
Loading…
Reference in New Issue
Block a user