fix: use cache-busting 'verify_qr' route to bypass Varnish cache caching old 302 redirects

This commit is contained in:
Hamza-Ayed
2026-05-15 21:59:36 +03:00
parent 53284b971a
commit e0dc1712ca
3 changed files with 5 additions and 5 deletions

View File

@@ -358,8 +358,8 @@ foreach ($invoices as $invIdx => $inv) {
// --- Add Clickable Website Link --- // --- Add Clickable Website Link ---
// We'll move the link slightly down or put it in I1 with the QR // We'll move the link slightly down or put it in I1 with the QR
$sheet->setCellValue("I" . $invRow, 'musadaq.intaleqapp.com/verify'); $sheet->setCellValue("I" . $invRow, 'musadaq.intaleqapp.com/verify_qr');
$verifyUrl = "https://musadaq.intaleqapp.com/index.php?route=verify&id=" . $inv['id']; $verifyUrl = "https://musadaq.intaleqapp.com/index.php?route=verify_qr&id=" . $inv['id'];
$sheet->getCell("I" . $invRow)->getHyperlink()->setUrl($verifyUrl); $sheet->getCell("I" . $invRow)->getHyperlink()->setUrl($verifyUrl);
$sheet->getStyle("I" . $invRow)->applyFromArray([ $sheet->getStyle("I" . $invRow)->applyFromArray([
'font' => ['color' => ['argb' => 'FFFFFFFF'], 'underline' => true, 'size' => 8], 'font' => ['color' => ['argb' => 'FFFFFFFF'], 'underline' => true, 'size' => 8],
@@ -368,7 +368,7 @@ foreach ($invoices as $invIdx => $inv) {
// --- Add Verification QR Code --- // --- Add Verification QR Code ---
try { try {
$verifyUrl = "https://musadaq.intaleqapp.com/index.php?route=verify&id=" . $inv['id']; $verifyUrl = "https://musadaq.intaleqapp.com/index.php?route=verify_qr&id=" . $inv['id'];
$qrApiUrl = "https://api.qrserver.com/v1/create-qr-code/?size=100x100&data=" . urlencode($verifyUrl); $qrApiUrl = "https://api.qrserver.com/v1/create-qr-code/?size=100x100&data=" . urlencode($verifyUrl);
$qrData = $downloadUrl($qrApiUrl); $qrData = $downloadUrl($qrApiUrl);
if ($qrData) { if ($qrData) {

View File

@@ -11,7 +11,7 @@ $uri = parse_url($_SERVER['REQUEST_URI'], PHP_URL_PATH);
$route = $_GET['route'] ?? str_replace('/api/', '', $uri); $route = $_GET['route'] ?? str_replace('/api/', '', $uri);
$route = trim($route, '/'); $route = trim($route, '/');
if ($route === 'verify' || $route === 'v.php' || $route === 'v1/verify') { if ($route === 'verify_qr' || $route === 'verify' || $route === 'v.php' || $route === 'v1/verify') {
$id = $_GET['id'] ?? null; $id = $_GET['id'] ?? null;
require_once APP_PATH . '/modules_app/invoices/verify_public.php'; require_once APP_PATH . '/modules_app/invoices/verify_public.php';
exit; exit;

View File

@@ -3039,7 +3039,7 @@
getQrSrc(inv) { getQrSrc(inv) {
if (!inv) return ''; if (!inv) return '';
if (inv.jofotara?.qr_image_uri) return inv.jofotara.qr_image_uri; if (inv.jofotara?.qr_image_uri) return inv.jofotara.qr_image_uri;
const verifyUrl = `https://musadaq.intaleqapp.com/index.php?route=verify&id=${inv.id}`; const verifyUrl = `https://musadaq.intaleqapp.com/index.php?route=verify_qr&id=${inv.id}`;
const qr = new QRious({ value: verifyUrl, size: 300, level: 'H' }); const qr = new QRious({ value: verifyUrl, size: 300, level: 'H' });
return qr.toDataURL(); return qr.toDataURL();
}, },