Version 2

This commit is contained in:
2026-01-02 21:08:58 +01:00
commit 3c51bf0048
598 changed files with 31242 additions and 0 deletions

603
getcontent.php Normal file
View File

@@ -0,0 +1,603 @@
<?php
session_start();
// Datenbank verbinden
require "files/ezine_db.inc.php";
// Neueste Anfragen holen
$page = $_POST["page"];
$meta = $_POST["meta"];
// Neueste Anfragen holen
$list = $_POST["list"];
$voc = $_POST["voc"];
// Wenn leer, dann durch Wert der Session ersetzen
if(empty($lang)) {
$lang = $_SESSION["lang"];
}
if(empty($list)) {
$list = $_SESSION["list"];
}
if(empty($voc)) {
$voc = $_SESSION["voc"];
}
// Angeforderte Liste wird auf Existenz geprüft, sonst keine Ausgabe
if(isset($list)) {
$sql = "SELECT * FROM `VokabelBox2Content` WHERE `type` = 'list' AND `id` = '$list'";
$result_articles = $conn->query($sql, $ezine_db);
if(!mysqli_num_rows($result_articles))
{
?>
<div class="center-wrapper">
<div class="center">
<h4>Die angeforderte Liste wurde nicht gefunden</h4>
</div>
</div>
<?php
unset($_SESSION["list"]);
die();
}
else {
while ($articleDb = mysqli_fetch_object($result_articles))
{
$path = $articleDb->path;
}
}
$path = explode("/", $path);
$lang = $path[1];
$_SESSION["lang"] = $lang;
}
if($_POST["lang"] != '') {
$lang = $_POST["lang"];
}
// Angeforderter Sprachordner wird überprüft, sonst keine Ausgabe
if(isset($lang)) {
if($lang != 'deu' &&
$lang != 'eng' &&
$lang != 'spa' &&
$lang != 'nie' &&
$lang != 'fra' &&
$lang != 'tue' &&
$lang != 'rus' &&
$lang != 'chi' &&
$lang != 'pol')
{
print("sdfsd $lang sdf");
?>
<div class="center-wrapper">
<div class="center">
<h4>Die angeforderte Sprache wurde nicht gefunden</h4>
</div>
</div>
<?php
unset($_SESSION["lang"]);
die();
}
}
// Anschließend Session überschreiben (mit mögl. neuen Werten)
$_SESSION["lang"] = $lang;
$_SESSION["list"] = $list;
$_SESSION["voc"] = $voc;
// Global, da diese Daten von den Unterseiten abgefragt werden
global $meta, $lang, $list, $voc;
// Meta aktualiseren
if($meta != '') {
$_SESSION["latest-meta"] = $meta;
}
// Angeforderte Seite als letzte Seite speichern. WICHTIG: Ausgenommen sind alle Action-Seiten (und Onload, aber das ist ja klar)
if($page != 'onload' && strpos($page, 'action')=== false) {
$_SESSION["latest-page"] = $page;
setcookie('lastpage', $page, time() + (86400 * 30 * 365), "/");
}
// Benutzername wird aus der Session geholt
$Benutzername = $_SESSION["Benutzername"];
$Passwort = $_SESSION["Passwort"];
// Wenn die Seite zum ersten Mal aufgerufen wird
if($page == 'onload') {
// Letzte Seite inkl. Daten holen
$page = $_SESSION["latest-page"];
$meta = $_SESSION["latest-meta"];
// Mit Session-Daten anmelden
$sql = "SELECT * FROM `VokabelBox2Users` WHERE (`username` = '$Benutzername' AND `password` = '$Passwort') OR (`email` = '$Benutzername' AND `password` = '$Passwort')";
$result_articles = $conn->query($sql, $ezine_db);
if(mysqli_num_rows($result_articles))
{
while ($articleDb = mysqli_fetch_object($result_articles))
{
// UserID wird zur weiteren Nutzung geholt
$userid = $articleDb->userid;
}
// Und als global gesetzt
global $userid;
// Wenn keine USERID gefunden, bzw. Login-Daten ungültig -> Erneuten Login anfordern
if(empty($userid)) {
print("login:timeout");
die();
}
// Manche Seiten sollen beim Onload nicht geladen werden, sondern explizite, andere Seiten. Diese werden hier festgelegt.
if($page == 'learn-summary') {
$page = 'learn';
}
if($page == 'verify-identity'||$page == 'change-email'||$page == 'change-email-verify'||$page == 'change-password'||$page == 'delete-account'||$page == 'takeout') {
$page = 'account';
}
// Ansonsten gibt PHP hier die letzte Seite an JavaScript weiter
echo $page;
}
// Wenn Login-Daten unbekannt
else {
// Wenn Cookie, dass sich schon einmal angemeldet wurde gesetzt, fortfahren als Timeout
if($_COOKIE["everloggedin"] == 'true') {
print("login:timeout");
}
// Sonst als standard-Login-Seite
else {
print("index");
}
}
// Zuletzt Alles beenden.
die();
}
// Diese Seiten dürfen auch ohne aktiven Login aufgerufen werden
if($page == 'action:login' || $page == 'login' || $page == 'settings' || $page == 'register' ||$page == 'action:register'||$page == 'register:code' ||$page == 'action:registerCode' || $page == 'login:timeout' || $page == 'forgot-password' || $page == 'action:forgot-password-email' || $page == 'forgot-password-email-verify' || $page == 'action:forgot-password-email-verify' || $page == 'forgot-password-newpassword' || $page == 'action:forgot-password-change-password') {
if($page == "login") {
require("pagecontent/login.php");
}
if($page == "action:register") {
require("pagecontent/action-register.php");
}
if($page == "action:registerCode") {
require("pagecontent/action-register-code.php");
}
if($page == "login:timeout") {
require("pagecontent/login-timeout.php");
}
if($page == "action:login") {
require("pagecontent/action-login.php");
}
if($page == "register:code") {
require("pagecontent/register-code.php");
}
}
// Wenn für Seite Login erforderlich
else {
// Login
$sql = "SELECT * FROM `VokabelBox2Users` WHERE (`username` = '$Benutzername' AND `password` = '$Passwort') OR (`email` = '$Benutzername' AND `password` = '$Passwort')";
$result_articles = $conn->query($sql, $ezine_db);
if(mysqli_num_rows($result_articles))
{
while ($articleDb = mysqli_fetch_object($result_articles))
{
$userid = $articleDb->userid;
}
global $userid;
// Wenn USERID nicht gefunden -> Timeout
if(empty($userid)) {
print("login:timeout");
}
}
// Wenn Benutzerdaten unbekannt
else {
?>
<div class="center-wrapper">
<div class="center">
<h2>Willkommen bei VokSpace!</h2>
<h4>Um Vokabellisten zu erstellen und zu lernen ist ein Nutzerkonto erforderlich</h4>
<button class="default-button" onclick="getContent('login');">FORTFAHREN</button>
</div>
</div>
<?php
// Alles stoppen.
die();
}
}
// Weiterleitungen zu den einzelnen Seiten...........
if($page == "index" || $page == '') {
require("pagecontent/index.php");
}
if($page == "register") {
require("pagecontent/register.php");
}
if($page == "intro:p1") {
require("pagecontent/intro-p1.php");
}
if($page == "intro:p2") {
require("pagecontent/intro-p2.php");
}
if($page == "action:intro:p1") {
require("pagecontent/action-intro-p1.php");
}
if($page == "action:vocCopy") {
require("pagecontent/action-vocCopy.php");
}
if($page == "action:vocCopySearch") {
require("pagecontent/action-voc-copy-search.php");
}
if($page == "action:vocMoveSearch") {
require("pagecontent/action-voc-move-search.php");
}
if($page == "list") {
require("pagecontent/list.php");
}
if($page == "lang") {
require("pagecontent/lang.php");
}
if($page == "list:add") {
require("pagecontent/list-add.php");
}
if($page == "list:delete") {
require("pagecontent/list-delete.php");
}
if($page == "list:rename") {
require("pagecontent/list-rename.php");
}
if($page == "list:download") {
require("pagecontent/list-download.php");
}
if($page == "list:print") {
require("pagecontent/list-print.php");
}
if($page == "voc:add") {
require("pagecontent/voc-add.php");
}
if($page == "voc:select") {
require("pagecontent/voc-select.php");
}
if($page == "voc:copy") {
require("pagecontent/voc-copy.php");
}
if($page == "voc:delete") {
require("pagecontent/voc-delete.php");
}
if($page == "action:vocDelete") {
require("pagecontent/action-vocDelete.php");
}
if($page == "voc:move") {
require("pagecontent/voc-move.php");
}
if($page == "action:vocMove") {
require("pagecontent/action-vocMove.php");
}
if($page == "action:voc:add") {
require("pagecontent/action-vocAdd.php");
}
if($page == "lang:manage") {
require("pagecontent/lang-manage.php");
}
if($page == "settings") {
require("pagecontent/settings.php");
}
if($page == "account") {
require("pagecontent/account.php");
}
if($page == "search") {
require("pagecontent/search.php");
}
if($page == "help:lang:manage") {
require("pagecontent/help/lang-manage.php");
}
if($page == "action:langAdd") {
require("pagecontent/action-langAdd.php");
}
if($page == "action:listAdd") {
require("pagecontent/action-listAdd.php");
}
if($page == "action:listRename") {
require("pagecontent/action-listRename.php");
}
if($page == "action:listDelete") {
require("pagecontent/action-list-delete.php");
}
if($page == "action:vocEditSave") {
require("pagecontent/action-vocEditSave.php");
}
if($page == "action:appearance:change") {
require("pagecontent/action-appearanceChange.php");
}
if($page == "action:orderBy") {
require("pagecontent/action-orderBy.php");
}
if($page == "learn") {
require("pagecontent/learn.php");
}
if($page == "action:learn") {
require("pagecontent/action-learn.php");
}
if($page == "action:train") {
require("pagecontent/action-train.php");
}
if($page == "action:learn-preset") {
require("pagecontent/action-learn-preset.php");
}
if($page == "learn-summary") {
require("pagecontent/learn-summary.php");
}
if($page == "action:checkForTooltip") {
require("pagecontent/action-checkForTooltip.php");
}
if($page == "action:getSelectedItems") {
require("pagecontent/action-getSelectedItems.php");
}
if($page == "action:closeTooltip") {
require("pagecontent/action-closeTooltip.php");
}
if($page == "takeout") {
require("pagecontent/takeout.php");
}
if($page == "verify-identity") {
require("pagecontent/verify-identity.php");
}
if($page == "action:verify-identity") {
require("pagecontent/action-verify-identity.php");
}
if($page == "change-email") {
require("pagecontent/change-email.php");
}
if($page == "action:change-email") {
require("pagecontent/action-change-email.php");
}
if($page == "change-email-verify") {
require("pagecontent/change-email-verify.php");
}
if($page == "action:change-email-verify") {
require("pagecontent/action-change-email-verify.php");
}
if($page == "change-password") {
require("pagecontent/change-password.php");
}
if($page == "action:change-password") {
require("pagecontent/action-change-password.php");
}
if($page == "delete-account") {
require("pagecontent/delete-account.php");
}
if($page == "action:delete-account") {
require("pagecontent/action-delete-account.php");
}
if($page == "action:logout") {
require("pagecontent/action-logout.php");
}
if($page == "forgot-password") {
require("pagecontent/forgot-password.php");
}
if($page == "action:forgot-password-email") {
require("pagecontent/action-forgot-password-email.php");
}
if($page == "forgot-password-email-verify") {
require("pagecontent/forgot-password-email-verify.php");
}
if($page == "action:forgot-password-email-verify") {
require("pagecontent/action-forgot-password-email-verify.php");
}
if($page == "forgot-password-newpassword") {
require("pagecontent/forgot-password-newpassword.php");
}
if($page == "action:forgot-password-change-password") {
require("pagecontent/action-forgot-password-change-password.php");
}
?>