diff --git a/.gitignore b/.gitignore index a982c3a..5c34759 100644 --- a/.gitignore +++ b/.gitignore @@ -10,3 +10,4 @@ commonservices /vendor/ /xml .phpunit.result.cache +/.gnupg/ diff --git a/functions/functions.php b/functions/functions.php index d6c6afb..9ee257f 100644 --- a/functions/functions.php +++ b/functions/functions.php @@ -9,8 +9,8 @@ declare(strict_types = 1); // Set autoloader -\error_reporting(E_ALL); -\ini_set('display_errors', "1"); +# \error_reporting(E_ALL); +# \ini_set('display_errors', "1"); \spl_autoload_register("mdCsvxmlAutoloader"); \set_exception_handler("mdExceptionHandler"); \set_error_handler("mdErrorHandler", E_ALL); @@ -103,17 +103,11 @@ function mdExceptionHandler(Throwable $exception):void { $output = ' - - - - - - '; - if (!empty($_SESSION['dark-theme'])) $output .= ' - '; + + '; $output .= ' Error :: '; $output .= $versionName; @@ -122,7 +116,7 @@ function mdExceptionHandler(Throwable $exception):void { <body> <main> - <img src="./db_images_gestaltung/mdlogo-256px.png" /> + <img src="/assets/img/mdlogo-csvxml.svg" /> <p>' . $errorMsg . '</p> <nav> diff --git a/inc/constants.php b/inc/constants.php index 7f570a9..301718f 100644 --- a/inc/constants.php +++ b/inc/constants.php @@ -8,6 +8,8 @@ */ declare(strict_types = 1); +const CACHE_DIR_PERMS = 0775; + const TL_FILE_DIRS = [ __DIR__ . "/../l10n/musdb/", __DIR__ . "/../l10n/importer/", diff --git a/public/index3.php b/public/index3.php index 782b932..b75f89b 100644 --- a/public/index3.php +++ b/public/index3.php @@ -19,6 +19,7 @@ else if (!isset($_SESSION['lang'])) { $_SESSION['lang'] = MD_STD::lang_getfrombrowser($allowed_langs, 'en', "", false); } $lang = $_SESSION['lang']; +$tlLoader = new MDTlLoader("csxml_evaluate", $lang); $filename = $_GET['fnam']; $csv_datei = MD_STD::realpath(__DIR__ . '/../csv/' . $filename); @@ -34,7 +35,7 @@ foreach ($availableFields as $categoryName => $fieldCategory) { $allowed = array_merge($allowed, array_keys($fieldCategory)); // Extended operations for events - if (strpos($categoryName, $basis['event']) !== false) { + if (strpos($categoryName, $tlLoader->tl("basis", "basis", 'event')) !== false) { foreach ($fieldCategory as $key => $value) { if (strpos($key, "_annotation") !== false or strpos($key, "_gnd") !== false) continue; if (strpos($key, "_sure") !== false) $eventpartsure[] = $key; @@ -339,7 +340,7 @@ if ($hasanyimage > 0) { //check if in a row any image_name is given $maimg = $hatimg = 0; foreach ($imagemain as $im => $tMainImage) { - if ($inhalt[$i][$tMainImage] != '') $hatimg++; + if ($inhalt[$i][$tMainImage["name"]] != '') $hatimg++; } if ($hatimg > 0) { // first check: how many main-images? diff --git a/public/index6.php b/public/index6.php index 6a4134f..1803ff6 100644 --- a/public/index6.php +++ b/public/index6.php @@ -27,7 +27,7 @@ if (empty($filename = trim($_GET['fnam'], " ,./"))) { $csv_datei = MD_STD::realpath(__DIR__ . '/../csv/' . $filename); if (is_dir(__DIR__ . "/../xml")) rrmdir(__DIR__ . '/../xml'); -mkdir(__DIR__ . "/../xml", 0755); +mkdir(__DIR__ . "/../xml", CACHE_DIR_PERMS); if (!($fp = fopen($csv_datei, 'r'))) { throw new MDmainEntityNotExistentException("Failed opening file"); @@ -39,7 +39,7 @@ while ($zeile = fgetcsv($fp, 100000, ';')) { $y++; - $zieldatei = 'xml/' . $y . '.xml'; + $zieldatei = __DIR__ . '/../xml/' . $y . '.xml'; if (!$handle = fopen($zieldatei, 'w')) { echo "Cannot open file ($zieldatei)";exit; } diff --git a/public/upload.php b/public/upload.php index eedb021..2a8c88e 100644 --- a/public/upload.php +++ b/public/upload.php @@ -2,8 +2,14 @@ declare(strict_types = 1); require_once __DIR__ . "/../functions/functions.php"; -$target = __DIR__ . "/../csv/" . basename($_FILES['uploaded']['name']); +if (empty($_FILES)) { + throw new MDFileDoesNotExist("No file uploaded"); +} + $targetpart = basename($_FILES['uploaded']['name']); +$target = __DIR__ . "/../csv/" . $targetpart; + +// TODO: File name needs to be sanitized, or tmp name used if (session_status() != PHP_SESSION_ACTIVE) { session_start(); @@ -14,7 +20,7 @@ if (validateAntiCsrfToken() === false) { } //This is our size condition -if ($uploaded_size > 40000000) { +if ($_FILES['uploaded']['size'] > 40000000) { echo "Your file is too large.<br>"; return; }