$localeFile) $availableLocales[$key] = basename($localeFile, ".php"); foreach ($clientLocales as $clientLocale) { if (in_array($clientLocale, $availableLocales)) { $locale = $clientLocale; break; } } } require "locales/" . $locale . ".php"; $params = array( "txt" => "", "redundancy" => DEFAULT_REDUNDANCY, "margin" => DEFAULT_MARGIN, "size" => DEFAULT_SIZE, "bgColor" => DEFAULT_BGCOLOR, "fgColor" => DEFAULT_FGCOLOR, ); $validFormSubmitted = false; if ( isset($_POST['txt']) AND isset($_POST['redundancy']) AND isset($_POST['margin']) AND isset($_POST['size']) AND isset($_POST['bgColor']) AND isset($_POST['fgColor']) ) { if (strlen($_POST['txt']) >= 1 AND strlen($_POST['txt']) <= 4096) { $params['txt'] = $_POST['txt']; } else { http_response_code(400); exit("Wrong value for txt"); } if ($_POST['redundancy'] === "low" OR $_POST['redundancy'] === "medium" OR $_POST['redundancy'] === "quartile" OR $_POST['redundancy'] === "high") { $params['redundancy'] = $_POST['redundancy']; } else { http_response_code(400); exit("Wrong value for redundancy"); } if (is_numeric($_POST['margin']) AND $_POST['margin'] >= 0 AND $_POST['margin'] <= 1024) { $params['margin'] = $_POST['margin']; } else if (empty($_POST['margin'])) { $params['margin'] = NULL; } else { http_response_code(400); exit("Wrong value for margin"); } if (is_numeric($_POST['size']) AND $_POST['size'] >= 1 AND $_POST['size'] <= 4096) { $params['size'] = $_POST['size']; } else if (empty($_POST['size'])) { $params['size'] = NULL; } else { http_response_code(400); exit("Wrong value for size"); } if (preg_match("/^#[abcdefABCDEF0-9]{6}$/", $_POST['bgColor'])) { $params['bgColor'] = substr($_POST['bgColor'], -6); } else { http_response_code(400); exit("Wrong value for bgColor"); } if (preg_match("/^#[abcdefABCDEF0-9]{6}$/", $_POST['fgColor'])) { $params['fgColor'] = substr($_POST['fgColor'], -6); } else { http_response_code(400); exit("Wrong value for fgColor"); } $validFormSubmitted = true; } ?>
" . $loc['error_generation'] . "
"; error_log("LibreQR encountered an error while generating a QR code: " . $ex); exit(); } $dataUri = $result->getDataUri(); $qrSize = $params['size'] + 2 * $params['margin']; ?>