Files
ms1inscription-v5/php/inc_settings.php
stephan 7c9968063a Implement search form submission and UI enhancements for registration management
This commit introduces new JavaScript functions to handle search context detection and form submission within the registration management interface. It enhances the user experience by automatically submitting the search form when a number is detected in the BibScan session. Additionally, new CSS styles are added to improve the layout of the search fields, ensuring better alignment and spacing. The version code is incremented to 4.72.720 to reflect these changes.
2026-06-30 15:40:06 -04:00

478 lines
17 KiB
PHP

<?php
//ini_set( 'display_errors', 1 );
//error_reporting( E_ALL );
/*************
*
* Constantes *
*
**************/
define('_VERSION_CODE', '4.72.720');
define('_DATE_CODE', '2026-06-30');
//MSIN-4290
define('QR_SECRET_KEY', 'ms1_qr_2026_cle_secrete_longue_et_fixe');
// Outil temporaire ms1_kc_set.php — modifier key_chain_http (lien /kc/{pk}/)
// KEYCHAIN_HTTP_EDIT_SECRET : paramètre ?k= dans l'URL (mot de passe d'accès à la page)
// KEYCHAIN_HTTP_EDIT_SHIFT : ajouté au numéro saisi (ex. 8 → pk 108 en base)
// KEYCHAIN_HTTP_EDIT_ALLOWED_COM_IDS : com_id autorisés (virgules) pour /ms1_kc_set.php sans ?k=
define('KEYCHAIN_HTTP_EDIT_SECRET', 'ms1_kc_http_edit_2026_c7e4a91f3b2d8e0f6a5c4b3d2e1f0a9');
define('KEYCHAIN_HTTP_EDIT_SHIFT', 100);
define('KEYCHAIN_HTTP_EDIT_ALLOWED_COM_IDS', '');
/**************************************
*
* Profils connexion BD — source unique *
*
**************************************/
$tabConnClientPreprod = array(
'host' => 'localhost',
'user' => 'ms1incription_bd',
'pass' => '3+~=,y=eV)M;',
'db' => 'ms1incription_preprod',
);
$tabConnClientProd = array(
'host' => 'localhost',
'user' => 'ms1incription_bd',
'pass' => '3+~=,y=eV)M;',
'db' => 'ms1incription_prod',
);
$tabConnDevPreprod = array(
'host' => 'localhost',
'user' => 'devinscription_bd',
'pass' => 'x$@_v0-l_I((',
'db' => 'devinscription_preprod',
);
$tabConnDevProd = array(
'host' => 'localhost',
'user' => 'devinscription_bd',
'pass' => 'x$@_v0-l_I((',
'db' => 'devinscription_prod',
);
$tabConnCrmClient = array(
'host' => 'localhost',
'user' => 'ms1crm_bd',
'pass' => 'fPDJ,][ZGPwL',
'db' => 'ms1crm_prod',
);
$tabConnCrmDev = array(
'host' => 'localhost',
'user' => 'devcrmms1_bd',
'pass' => '.vB==c$s_Yk7',
'db' => 'devcrmms1_dev',
);
/**
* Branche le site sur un profil préprod + prod (même host/user/pass).
* $strMainRole : 'preprod' ou 'prod' → $strDatabaseMain
*/
function fxSettingsUseDbProfiles($tabPreprod, $tabProd, $strMainRole = 'preprod') {
global $strDatabaseHost, $strDatabaseUser, $strDatabasePass;
global $strDatabaseMain, $strDatabasePreProd, $strDatabaseProd;
$strDatabaseHost = $tabPreprod['host'];
$strDatabaseUser = $tabPreprod['user'];
$strDatabasePass = $tabPreprod['pass'];
$strDatabasePreProd = $tabPreprod['db'];
$strDatabaseProd = $tabProd['db'];
$strDatabaseMain = ($strMainRole === 'prod') ? $tabProd['db'] : $tabPreprod['db'];
}
function fxSettingsUseCrmProfile($tabCrm) {
global $strDatabaseHostcrm, $strDatabaseUsercrm, $strDatabasePasscrm, $strDatabaseMaincrm;
$strDatabaseHostcrm = $tabCrm['host'];
$strDatabaseUsercrm = $tabCrm['user'];
$strDatabasePasscrm = $tabCrm['pass'];
$strDatabaseMaincrm = $tabCrm['db'];
}
/**********************
*
* Variables globales *
*
**********************/
$strHost = (!empty($_SERVER['HTTP_HOST'])) ? trim($_SERVER['HTTP_HOST']) : '';
$currentFile = (!empty($_SERVER["PHP_SELF"])) ? trim($_SERVER["PHP_SELF"]) : '';
$parts = Explode('/', $currentFile);
$vPage = $parts[count($parts) - 1];
$vEmail = 'confirmation@ms1timing.com';
$vClient = 'ms1inscription';
$vNumero = '514-360-1610';
$vNumeroSF = '1-855-584-6464';
$vNumeroSFL = '1-855-5-TIMING';
date_default_timezone_set('America/Montreal');
$blnShowErrors = true;
$strConAdmin = '';
if (isset($_SESSION['usa_id'])) {
$strConAdmin = ' - Connecté en <span class="text-uppercase">admin</span> (' . $_SESSION['usa_info']['com_login'] . ')';
}
/**************************************
*
* Variables selon les environnements *
*
**************************************/
$vblnEnvironementPreProd = false;
$vblnEnvironementDev = false;
$arrConDatabaseClientPreProd = null;
$arrConDatabaseClientProd = null;
switch ($strHost) {
/****************************
* Environnement MYINTERNE *
****************************/
case "myinterne.com":
case "www.myinterne.com":
case "preprod.myinterne.com":
case "www.preprod.myinterne.com":
$vGoogleAnalytics = "";
$vblnEnvironementDev = false;
$blnShowErrors = false;
$vDomaine = $vDomaine2 = $vDomaineTiming = 'https://www.preprod.myinterne.com';
$vRepertoireFichiers = '/preprod';
$vEnvNotice = '
<div class="alert-warning py-2 text-center sticky-top">
<strong>Environnement Client <span class="text-uppercase">TEST</span>' . $strConAdmin . '</strong>
</div>
';
fxSettingsUseDbProfiles($tabConnClientPreprod, $tabConnClientProd, 'preprod');
fxSettingsUseCrmProfile($tabConnCrmClient);
$arrConFTP = array(
'host' => '127.0.0.1',
'user' => 'ms1inscription',
'pass' => 'ms1911',
'path_prod' => '/home/ms1incription/public_html',
'path_preprod'=> '/home/ms1incription/public_html/preprod'
);
$isPreprod = (strpos($strHost, 'preprod.') !== false);
if (!$isPreprod) {
$favicon = 'favicon.ico';
$faviconadm = 'favicon-rouge.ico';
fxSettingsUseDbProfiles($tabConnClientPreprod, $tabConnClientProd, 'prod');
$vblnEnvironementDev = false;
$vGoogleAnalytics = "";
$vPaypaladv = true;
$vPaypaladv_SANDBOX = false;
$vPaypal_devise = 'CAD';
define('PAYPAL_ENV', 'prod_client');
define('PAYPAL_ENV_FOOTER', 'prod_client');
define('PAYPAL_BASE_URL', 'https://api-m.paypal.com');
define('PAYPAL_CLIENT_ID', 'AU3fhK6opJ2cBkTghAHf02fsimwj345zn3TOPL5we3z0C9HNT_sU341OkIP9l-ucgE1JdBhmt3WlHb2v');
define('PAYPAL_CLIENT_SECRET', 'EDg0Y1ZxvUmrAxY9_-NZP3EsuoMRf2lu9st1mDn8Ha7f5z4hrk7_KKsu_tM_PSri86YuFRqbaVKBADlX');
define('PAYPAL_WEBHOOK_ID', '2EW679080K7814041');
define('PAYPAL_SANDBOX', false);
define('PAYPAL_CURRENCY', 'CAD');
if (isset($_SESSION['usa_id'])) {
$vEnvNotice = '
<div class="alert-warning py-2 text-center sticky-top">
<strong>Environnement Client <span class="text-uppercase">PROD</span>' . $strConAdmin . '</strong>
</div>
';
} else {
$vEnvNotice = '';
}
$vDomaine = $vDomaine2 = $vDomaineTiming = 'https://www.myinterne.com';
$vRepertoireFichiers = '';
$vGoogleAnalytics = "
<!-- Google tag (gtag.js) -->
<script async src=\"https://www.googletagmanager.com/gtag/js?id=G-9KF526LB6D\"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'G-8LEDDLNB94');
</script>
";
} else {
$favicon = 'favicon-jaune.ico';
$faviconadm = 'favicon-orange.ico';
$vblnEnvironementPreProd = true;
$vblnEnvironementDev = true;
$vPaypaladv = true;
$vPaypaladv_SANDBOX = true;
$vPaypal_devise = 'CAD';
define('PAYPAL_ENV', 'prod_test');
define('PAYPAL_ENV_FOOTER', 'prod_test');
define('PAYPAL_BASE_URL', 'https://api-m.sandbox.paypal.com');
define('PAYPAL_CLIENT_ID', 'AXiOtwcCb4Vqf7QylPje-K2xp9lOIfCv_HMW8oWn1k8cRJJ0sSu_sVNjtQqaoDll9-vN8LpmfrqfI82d');
define('PAYPAL_CLIENT_SECRET', 'EEs_rbmAZlZFgm8m8e8S9lmZD47I9sf44wjbYEqu99uVpgHb0PHa3aSYG8Pe3772kr9FWZ33iDrPL9Jr');
define('PAYPAL_WEBHOOK_ID', '58G68258926315914');
define('PAYPAL_SANDBOX', true);
define('PAYPAL_CURRENCY', 'CAD');
}
$vEnvNotice = '
<div class="alert-warning py-2 text-center sticky-top">
<strong>Environnement backup <span class="text-uppercase">PROD
</div>
';
break;
/****************************
* Environnement PRODUCTION client *
****************************/
case "ms1inscription.com":
case "www.ms1inscription.com":
case "preprod.ms1inscription.com":
case "www.preprod.ms1inscription.com":
$vGoogleAnalytics = "";
$vblnEnvironementDev = false;
$blnShowErrors = false;
$vDomaine = $vDomaine2 = $vDomaineTiming = 'https://www.preprod.ms1inscription.com';
$vRepertoireFichiers = '/preprod';
$vEnvNotice = '
<div class="alert-warning py-2 text-center sticky-top">
<strong>Environnement Client <span class="text-uppercase">TEST</span>' . $strConAdmin . '</strong>
</div>
';
fxSettingsUseDbProfiles($tabConnClientPreprod, $tabConnClientProd, 'preprod');
fxSettingsUseCrmProfile($tabConnCrmClient);
$arrConFTP = array(
'host' => '127.0.0.1',
'user' => 'ms1inscription',
'pass' => 'ms1911',
'path_prod' => '/home/ms1incription/public_html',
'path_preprod'=> '/home/ms1incription/public_html/preprod'
);
$isPreprod = (strpos($strHost, 'preprod.') !== false);
if (!$isPreprod) {
$favicon = 'favicon.ico';
$faviconadm = 'favicon-rouge.ico';
fxSettingsUseDbProfiles($tabConnClientPreprod, $tabConnClientProd, 'prod');
$vblnEnvironementDev = false;
$vGoogleAnalytics = "";
$vPaypaladv = true;
$vPaypaladv_SANDBOX = false;
$vPaypal_devise = 'CAD';
define('PAYPAL_ENV', 'prod_client');
define('PAYPAL_ENV_FOOTER', 'prod_client');
define('PAYPAL_BASE_URL', 'https://api-m.paypal.com');
define('PAYPAL_CLIENT_ID', 'AU3fhK6opJ2cBkTghAHf02fsimwj345zn3TOPL5we3z0C9HNT_sU341OkIP9l-ucgE1JdBhmt3WlHb2v');
define('PAYPAL_CLIENT_SECRET', 'EDg0Y1ZxvUmrAxY9_-NZP3EsuoMRf2lu9st1mDn8Ha7f5z4hrk7_KKsu_tM_PSri86YuFRqbaVKBADlX');
define('PAYPAL_WEBHOOK_ID', '2EW679080K7814041');
define('PAYPAL_SANDBOX', false);
define('PAYPAL_CURRENCY', 'CAD');
if (isset($_SESSION['usa_id'])) {
$vEnvNotice = '
<div class="alert-warning py-2 text-center sticky-top">
<strong>Environnement Client <span class="text-uppercase">PROD</span>' . $strConAdmin . '</strong>
</div>
';
} else {
$vEnvNotice = '';
}
$vDomaine = $vDomaine2 = $vDomaineTiming = 'https://www.ms1inscription.com';
$vRepertoireFichiers = '';
$vGoogleAnalytics = "
<!-- Google tag (gtag.js) -->
<script async src=\"https://www.googletagmanager.com/gtag/js?id=G-9KF526LB6D\"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'G-8LEDDLNB94');
</script>
";
} else {
$favicon = 'favicon-jaune.ico';
$faviconadm = 'favicon-orange.ico';
$vblnEnvironementPreProd = true;
$vblnEnvironementDev = true;
$vPaypaladv = true;
$vPaypaladv_SANDBOX = true;
$vPaypal_devise = 'CAD';
define('PAYPAL_ENV', 'prod_test');
define('PAYPAL_ENV_FOOTER', 'prod_test');
define('PAYPAL_BASE_URL', 'https://api-m.sandbox.paypal.com');
define('PAYPAL_CLIENT_ID', 'AXiOtwcCb4Vqf7QylPje-K2xp9lOIfCv_HMW8oWn1k8cRJJ0sSu_sVNjtQqaoDll9-vN8LpmfrqfI82d');
define('PAYPAL_CLIENT_SECRET', 'EEs_rbmAZlZFgm8m8e8S9lmZD47I9sf44wjbYEqu99uVpgHb0PHa3aSYG8Pe3772kr9FWZ33iDrPL9Jr');
define('PAYPAL_WEBHOOK_ID', '58G68258926315914');
define('PAYPAL_SANDBOX', true);
define('PAYPAL_CURRENCY', 'CAD');
}
break;
/*************************
* Environnement dev (ms1inscriptiondev) *
*************************/
case "ms1inscriptiondev.progiweb.net":
case "preprod.ms1inscriptiondev.progiweb.net":
$vGoogleAnalytics = "";
$vblnEnvironementDev = true;
$blnShowErrors = true;
$vDomaine = $vDomaine2 = $vDomaineTiming = 'https://preprod.ms1inscriptiondev.progiweb.net';
$vRepertoireFichiers = '/preprod';
$vEnvNotice = '
<div class="alert-danger py-2 text-center sticky-top" >
<strong style="font-size: 1em;">
Environnement de Dévelopement<span class="text-uppercase">TEST</span>' . $strConAdmin . '
</strong>
</div>
';
fxSettingsUseDbProfiles($tabConnDevPreprod, $tabConnDevProd, 'preprod');
fxSettingsUseCrmProfile($tabConnCrmDev);
// Cross-BD client (tunnel/VPN) — sync_static_db.php, validation avant prod
$arrConDatabaseClientPreProd = $tabConnClientPreprod;
$arrConDatabaseClientProd = $tabConnClientProd;
$arrConFTP = array(
'host' => '127.0.0.1',
'user' => 'ms1inscription',
'pass' => 'ms1911',
'path_prod' => '/home/devinscription/public_html',
'path_preprod'=> '/home/devinscription/public_html/preprod'
);
$isPreprod = (strpos($strHost, 'preprod.') !== false);
if (!$isPreprod) {
$vEnvNotice = '
<div class="alert-danger py-2 text-center sticky-top">
<strong>Environnement de Dévelopement <span class="text-uppercase">client</span>' . $strConAdmin . '</strong>
</div>
';
$favicon = 'favicon-blan-dev.ico';
$faviconadm = 'favicon-rouge-dev.ico';
fxSettingsUseDbProfiles($tabConnDevPreprod, $tabConnDevProd, 'prod');
$vblnEnvironementDev = false;
$vGoogleAnalytics = "";
$vPaypaladv = true;
$vPaypaladv_SANDBOX = true;
$vPaypal_devise = 'CAD';
define('PAYPAL_ENV', 'dev_client');
define('PAYPAL_ENV_FOOTER', 'dev_client');
define('PAYPAL_BASE_URL', 'https://api-m.sandbox.paypal.com');
define('PAYPAL_CLIENT_ID', 'AQXvt0u9caqG-l_S5H-qFra-rEGiDifuk-eCa1DeylT0o4Vgc6RpnHQfMZt7lREyWH8nur6-_cgGtazF');
define('PAYPAL_CLIENT_SECRET', 'EOsLApT-17U2hU2bm0wXl0ZRqCg0eBaXTr9iz97LLziMHUt8nwi8ymgcDkkJ_msbBCZnOlR8IOw1KpTH');
define('PAYPAL_WEBHOOK_ID', '5AD874137H322344J');
define('PAYPAL_SANDBOX', true);
define('PAYPAL_CURRENCY', 'CAD');
$vDomaine = $vDomaine2 = $vDomaineTiming = 'https://ms1inscriptiondev.progiweb.net';
$vRepertoireFichiers = '';
} else {
$favicon = 'favicon-jaune-dev.ico';
$faviconadm = 'favicon-orange-dev.ico';
$vblnEnvironementPreProd = true;
$vPaypaladv = true;
$vPaypaladv_SANDBOX = true;
$vPaypal_devise = 'CAD';
define('PAYPAL_ENV', 'dev_test');
define('PAYPAL_ENV_FOOTER', 'dev_test');
define('PAYPAL_BASE_URL', 'https://api-m.sandbox.paypal.com');
define('PAYPAL_CLIENT_ID', 'AXLKhIIMWSaiLlNi6EqDK7zU5c65J7hEXAZUauPm_Nnd-5A3vxO81QZej3X0T1pgiZ9Wki_FexheCPgB');
define('PAYPAL_CLIENT_SECRET', 'EEEZPzN0mTANRpj1e2KdP-U0x8UpHKjktbITVLDr2STpwnNkvKMDQ66XcdJyrK0yIsjcW4UjTY7cUr9N');
define('PAYPAL_WEBHOOK_ID', '87T78443WB181490Y');
define('PAYPAL_SANDBOX', true);
define('PAYPAL_CURRENCY', 'CAD');
}
break;
}
/*****************************
*
* Connexion base de données *
*
*****************************/
$arrConDatabaseMain = array(
'host' => $strDatabaseHost,
'user' => $strDatabaseUser,
'pass' => $strDatabasePass,
'db' => $strDatabaseMain
);
$arrConDatabaseProd = array(
'host' => $strDatabaseHost,
'user' => $strDatabaseUser,
'pass' => $strDatabasePass,
'db' => $strDatabaseProd
);
$arrConDatabasePreProd = array(
'host' => $strDatabaseHost,
'user' => $strDatabaseUser,
'pass' => $strDatabasePass,
'db' => $strDatabasePreProd
);
$arrConDatabasecrm = array(
'host' => $strDatabaseHostcrm,
'user' => $strDatabaseUsercrm,
'pass' => $strDatabasePasscrm,
'db' => $strDatabaseMaincrm
);
/************************************
*
* Affichage des messages d'erreurs *
*
************************************/
if ($blnShowErrors) {
error_reporting(E_ALL);
ini_set('display_errors', false);
ini_set('display_startup_errors', TRUE);
define('EOL', (PHP_SAPI == 'cli') ? PHP_EOL : '<br>');
}
// MSIN-3855
require_once $_SERVER['DOCUMENT_ROOT'] . "/paypal_advanced/config.php";