From 088cfefee2ec07684a3353285acd1de8a68965ef Mon Sep 17 00:00:00 2001 From: stephan Date: Thu, 28 May 2026 15:33:51 -0400 Subject: [PATCH] ms1.ca --- ms1_kc_set.php | 90 +++++++++++++++++++++++++++++++++++--------------- 1 file changed, 64 insertions(+), 26 deletions(-) diff --git a/ms1_kc_set.php b/ms1_kc_set.php index 6aba5ef..a913273 100644 --- a/ms1_kc_set.php +++ b/ms1_kc_set.php @@ -131,6 +131,36 @@ function kc_set_validate_url($url) return $url; } +function kc_set_save_lien_for_pk($intPk, $strVehiculeSaisi, $strNewHttp) +{ + global $objDatabase, $strMessage, $strMessageClass, $strCurrentHttp, $blnShowUrlForm; + + if ($strVehiculeSaisi !== '' && kc_set_parse_vehicule_no($strVehiculeSaisi) !== $intPk) { + $intPk = 0; + } + if ($intPk <= 0) { + $strMessage = 'Veuillez recommencer avec votre numéro de véhicule.'; + $strMessageClass = 'err'; + return false; + } + $sqlCheck = 'SELECT pk_key_chain FROM key_chain WHERE pk_key_chain = ' . $intPk; + if ($objDatabase->fxGetRow($sqlCheck) === null) { + $strMessage = 'Code QR introuvable. Vérifiez votre numéro de véhicule.'; + $strMessageClass = 'err'; + return false; + } + $sqlUpdate = "UPDATE key_chain SET key_chain_http = '" . $objDatabase->fxEscape($strNewHttp) . "' WHERE pk_key_chain = " . $intPk; + if ($objDatabase->fxQuery($sqlUpdate) === false) { + $strMessage = 'Impossible d’enregistrer pour le moment. Réessayez plus tard.'; + $strMessageClass = 'err'; + $blnShowUrlForm = true; + $strCurrentHttp = $strNewHttp; + return false; + } + header('Location: ' . kc_set_page_url(['ok' => '1'])); + exit; +} + if ($_SERVER['REQUEST_METHOD'] === 'POST') { $strPostedCsrf = isset($_POST['csrf']) ? (string) $_POST['csrf'] : ''; if (!hash_equals($strCsrf, $strPostedCsrf)) { @@ -159,39 +189,20 @@ if ($_SERVER['REQUEST_METHOD'] === 'POST') { } elseif ($strAction === 'save') { $intPk = intval(isset($_POST['pk']) ? $_POST['pk'] : 0); $strVehiculeSaisi = isset($_POST['vehicule_no']) ? trim((string) $_POST['vehicule_no']) : ''; - if ($strVehiculeSaisi !== '' && kc_set_parse_vehicule_no($strVehiculeSaisi) !== $intPk) { - $intPk = 0; - } $strLienPost = isset($_POST['lien_qr']) ? trim((string) $_POST['lien_qr']) : ''; $strNewHttp = kc_set_validate_url($strLienPost); - if ($intPk <= 0) { - $strMessage = 'Veuillez recommencer avec votre numéro de véhicule.'; - $strMessageClass = 'err'; - } elseif ($strNewHttp === false) { + if ($strNewHttp === false) { $strMessage = 'Veuillez entrer une adresse Web valide (commençant par http:// ou https://).'; $strMessageClass = 'err'; $blnShowUrlForm = true; $strCurrentHttp = $strLienPost; } else { - $sqlCheck = 'SELECT pk_key_chain FROM key_chain WHERE pk_key_chain = ' . $intPk; - if ($objDatabase->fxGetRow($sqlCheck) === null) { - $strMessage = 'Code QR introuvable. Vérifiez votre numéro de véhicule.'; - $strMessageClass = 'err'; - $blnShowUrlForm = true; - $strCurrentHttp = $strLienPost; - } else { - $sqlUpdate = "UPDATE key_chain SET key_chain_http = '" . $objDatabase->fxEscape($strNewHttp) . "' WHERE pk_key_chain = " . $intPk; - if ($objDatabase->fxQuery($sqlUpdate) === false) { - $strMessage = 'Impossible d’enregistrer pour le moment. Réessayez plus tard.'; - $strMessageClass = 'err'; - $blnShowUrlForm = true; - $strCurrentHttp = $strLienPost; - } else { - header('Location: ' . kc_set_page_url(['ok' => '1'])); - exit; - } - } + kc_set_save_lien_for_pk($intPk, $strVehiculeSaisi, $strNewHttp); } + } elseif ($strAction === 'save_ms1') { + $intPk = intval(isset($_POST['pk']) ? $_POST['pk'] : 0); + $strVehiculeSaisi = isset($_POST['vehicule_no']) ? trim((string) $_POST['vehicule_no']) : ''; + kc_set_save_lien_for_pk($intPk, $strVehiculeSaisi, 'https://ms1.ca'); } } } @@ -422,6 +433,25 @@ if ($_SERVER['REQUEST_METHOD'] === 'POST') { transform: translateY(0); } + .btn-ms1 { + display: inline-flex; + align-items: center; + padding: 0.85rem 1.25rem; + font-size: 1rem; + font-weight: 700; + color: var(--ms1-ink); + background: #fff; + border: 2px solid var(--ms1-ink); + border-radius: 999px; + cursor: pointer; + transition: background 0.15s, color 0.15s; + } + + .btn-ms1:hover { + background: var(--ms1-ink); + color: #fff; + } + .btn-enter:disabled { opacity: 0.85; cursor: wait; @@ -610,9 +640,17 @@ if ($_SERVER['REQUEST_METHOD'] === 'POST') { Enregistrer -

Cliquez sur le bouton ou appuyez sur Entrée pour enregistrer.

+

Ou enregistrer directement le lien par défaut :

+
+ + + + + +
+

Sinon modifiez l’adresse ci-dessus et appuyez sur Entrée pour enregistrer.