$_GET['code'] ?? null)); // vérifier les paramètres // si on clique le bouton supprimer rabais foreach (array_keys($_POST) as $strValue) { if (strstr($strValue, 'btn_delete_')) { $tabSubtablesDel = fxGetMenussuperadm('', base64_decode(urldecode($intMenu))); for ($intCtr = 1; $intCtr <= count($tabSubtablesDel); $intCtr++) { if (isset($_POST['chk_' . $tabSubtablesDel[$intCtr]['men_id']])) fxSetForm('del', urlencode(base64_encode(fxUnescape($tabSubtablesDel[$intCtr]['men_id']))), $_POST, ''); } } } if (!empty($_GET['autologin'])) $autologin = $_GET['autologin']; else $autologin = false; if (!empty($_GET['lang'])) $strLangue = $_GET['lang']; else $strLangue = 'fr'; if (!empty($_GET['code'])) $strCode = 'compte_' . $_GET['code']; else { if (isset($_SESSION['com_id'])) { // Compte v2 : atterrissage hub (Mes événements). Sinon accueil participant. if (fxPromoteurHubShouldUse($_SESSION['com_id'])) { $strCode = 'compte_promoteur_hub'; } else { $strCode = 'compte_accueil'; } } else { $strCode = 'compte_login'; } } fxTraceCompte('01_routage', array( 'strCode' => $strCode, 'hub_should_use' => isset($_SESSION['com_id']) ? fxPromoteurHubShouldUse($_SESSION['com_id']) : null, 'hub_available' => isset($_SESSION['com_id']) ? fxPromoteurHubIsAvailable($_SESSION['com_id']) : null, )); if ($strCode === 'compte_promoteur_hub' && (!isset($_SESSION['com_id']) || !fxPromoteurHubIsAvailable($_SESSION['com_id']))) { fxTraceCompteRedirect('02_redirect_hub_indispo', $vDomaine . '/' . ($strLangue === 'fr' ? 'compte' : 'account')); header('Location: ' . $vDomaine . '/' . ($strLangue === 'fr' ? 'compte' : 'account')); exit; } // Ancien slug renomme (retrait du nom "mobile") : redirection 301 vers le nouveau slug "gestion". // Conserve les parametres utiles (promoteur_eve_id, pec_id, lng...) pour ne pas casser favoris/QR. if (($_GET['code'] ?? '') === 'inc_tableau_inscriptions_mobile') { $strNewPath = ($strLangue === 'en') ? '/account/inc_tableau_inscriptions_gestion' : '/compte/inc_tableau_inscriptions_gestion'; parse_str($_SERVER['QUERY_STRING'] ?? '', $arrOldQs); unset($arrOldQs['code'], $arrOldQs['lang']); $strQsClean = http_build_query($arrOldQs); header('Location: ' . $vDomaine . $strNewPath . ($strQsClean !== '' ? '?' . $strQsClean : ''), true, 301); exit; } $recPage = fxGetPage($strCode); if (count($recPage) < 1) { header('Location: index.php'); exit; } if ($strLangue == 'fr') $strPage = 'compte'; else $strPage = 'account'; // msin-4148 if (!empty($_GET['a']) && $_GET['code'] != 'bib_assignment') { $strCode = $_GET['a']; } // Page protégée sans session : sauver la cible puis formulaire de login (MSIN-4339). if ($strCode != 'compte_login' && $strCode != 'compte_motdepasse' && $strCode != 'compte_nouveau' && $strCode != 'compte_reset' && !isset($_SESSION['com_id'])) { $_SESSION['redirect_after_login'] = $_SERVER['REQUEST_URI']; fxTraceCompteRedirect('03_redirect_login_requis', $vDomaine . '/' . $strPage); header('Location: ' . $vDomaine . '/' . $strPage); exit; } // Déjà connecté sur login / mot de passe / inscription : accueil compte, sans polluer redirect_after_login. if (($strCode == 'compte_login' || $strCode == 'compte_motdepasse' || $strCode == 'compte_nouveau' || $strCode == 'compte_reset') && isset($_SESSION['com_id'])) { fxTraceCompteRedirect('04_redirect_deja_connecte', $vDomaine . '/' . $strPage); header('Location: ' . $vDomaine . '/' . $strPage); exit; } // script pour certaine page $footer_script = false; if ((!empty($_GET['reloadinf']) && isset($_POST['btn_mod']))) { $sqlCourriel = "SELECT * FROM inscriptions_comptes WHERE com_login = '" . $_SESSION['com_info']['com_login'] . "'"; $infoCompte = $objDatabase->fxGetRow($sqlCourriel); $_SESSION['com_id'] = $infoCompte['com_id']; $_SESSION['com_prenom'] = $infoCompte['com_prenom']; $_SESSION['vadmin_texte'] = false; $_SESSION['com_info'] = $infoCompte; // liste des compte affilie $infoAffilie = fxGetInfosAffilies($_SESSION['com_id']); $_SESSION['com_affilie'] = $infoAffilie; // metre dans l'info compte la liste des evenement prive $_SESSION['com_info']['eve_prive'] = explode(',', $infoCompte['com_eve_prive']); header('Location: ' . $vDomaine . '/' . $strPage); exit; } if (!empty($_GET['mr_id'])) { $mr_id = base64_decode(urldecode($_GET['mr_id'])); $com_id = base64_decode(urldecode($_GET['com_id'])); // echo($mr_id);echo("
"); // echo($com_id); $compte = fxGetAbonnements($com_id); // print_r($compte[1] ); fxSendQuestionpasserdate($compte[1], $mr_id); $intEveId = base64_decode(urldecode($_GET['promoteur_eve_id'])); header('Location: ' . $vDomaine . '/' . $strPage . "/inc_tableau_mail_questions?promoteur_eve_id=" . urlencode(base64_encode($intEveId))); exit; } $vtexte_page = obtenirTextepage($vPage, $strLangue, 2); if (isset($_POST['btn_excel_top']) || isset($_POST['btn_excel_bot'])) { require_once('superadm/php/inc_fx_excell.php'); $arrMembres = fxGetMembresClub($_POST['mem_numero'], 1); $headers = [afficheTexte('memberships_prenom'), afficheTexte('memberships_nom'), afficheTexte('memberships_courriel'), afficheTexte('memberships_no'), afficheTexte('memberships_date_de'), afficheTexte('memberships_a'), afficheTexte('memberships_affilie')]; $memexcfichier = 'membres'; $memexctitre = 'membres'; fxrapportexcell_array($headers, $arrMembres, $memexcfichier, $memexctitre); } if (isset($_POST['btn_excel_top_echues']) || isset($_POST['btn_excel_bot_echues'])) { require_once('superadm/php/inc_fx_excell.php'); error_reporting(1); $mem_sqlQuestions = fxquestionechusql("", 1); $headers = [afficheTexte('questions_mail_tq'), afficheTexte('questions_mail_nom'), afficheTexte('questions_mail_courriel'), afficheTexte('questions_mail_question_echue'), afficheTexte('questions_mail'), afficheTexte('questions_mail_tel'), afficheTexte('questions_mail_eche_adh'), afficheTexte('questions_mail_datedernierrap'), afficheTexte('questions_mail_rappel')]; $memexcfichier = 'questions_echues'; $memexctitre = 'questions échues entraineur'; fxrapportexcell_array($headers, $mem_sqlQuestions, $memexcfichier, $memexctitre); } if (isset($_POST['download']) && $_POST['download'] == 'excel' && $strCode == "compte_inc_tableau_liste_attente") { $intEveId = base64_decode(urldecode($_GET['promoteur_eve_id'])); $intEveIdbase = $intEveId; $arrEvenement = fxGetEvenementsId($intEveId); $inteprId = base64_decode(urldecode($_GET['epr_id'])); $tabEpreuve = fxGetEpreuve($inteprId); if (isset($_POST['strwhere'])) $strwhere = $_POST['strwhere']; else $strorder = ""; if (isset($_POST['strorder'])) $strorder = $_POST['strorder']; else $strorder = ""; $intmenu = urlencode(base64_encode(251)); $mement = [strip_tags($arrEvenement["eve_nom_" . $strLangue]), ' ', strip_tags($tabEpreuve["epr_categorie_" . $strLangue]), strip_tags($tabEpreuve["epr_type_" . $strLangue]), strip_tags($tabEpreuve["epr_nom_" . $strLangue])]; fxrapportexcell2($intmenu, $strLangue, $strorder, $strwhere, $mement); } $strLienFr = "/compte/" . str_replace('compte_', '', $strCode); $strLienEn = "/account/" . str_replace('compte_', '', $strCode); if (isset($_GET['valider'])) fxValiderCompte($strLangue); if (isset($_GET['promoteur_eve_id'])) { $intEveId = base64_decode(urldecode($_GET['promoteur_eve_id'])); $intEveIdbase = $intEveId; $arrEvenement = fxGetEvenementsId($intEveId); //5$tabEvenement['general'] = $arrEvenement; $strSousTitre = '
' . fxUnescape($arrEvenement['eve_nom_' . $strLangue]) . ''; } if (!empty($_POST['form_action'])) { $strAction = base64_decode(urldecode($_POST['form_action'])); if (isset($_POST['form_action_encode'])) { $strAction = base64_decode(urldecode($_POST['form_action_encode'])); } switch ($strCode) { case 'compte_inc_tableau_liste_attente': switch ($strAction) { case 'mod': if (!empty($_GET['t'])) $intMenu = $_GET['t']; else $intMenu = 0; $_POST['eve_id'] = $intEveId; $int_menu = base64_encode(urlencode(250)); fxSetForm($_POST['form_action'], $int_menu, $_POST, $_FILES, 1, 0); $intepr_id = base64_encode(urlencode($_POST["epr_id"])); $intEveId = base64_encode(urlencode($_POST['eve_id'])); // header('Location: ' . $vDomaine . '/' . $strPage . "/inc_tableau_epreuves?epr_id=".$intepr_id."&promoteur_eve_id=" . $intEveId); break; } break; default: switch ($strAction) { case 'login': fxTraceCompte('10_post_login'); fxLoginCompte($_POST, $strLangue); break; case 'password': fxCourrielPerduCompte($strLangue); break; case 'add-compte': case 'checkout-compte': if ($_POST['com_password_a'] == $_POST['com_password_b']) $_POST['com_password'] = $_POST['com_password_a']; $_POST['com_login'] = $_POST['com_courriel']; fxSetCompte('add', '', $_POST, $strLangue); break; case 'addaffilie-compte': fxSetCompte('addaffilie', '', $_POST, $strLangue); exit; break; case 'mod-compte': $_POST['com_login'] = $_POST['com_courriel']; if (trim($_POST['com_courriel']) == '') { unset($_POST['com_courriel']); unset($_POST['com_login']); } if ($_POST['com_password_a'] == $_POST['com_password_b']) $_POST['com_password'] = $_POST['com_password_a']; if (trim($_POST['com_password']) == '') unset($_POST['com_password']); fxSetCompte('mod', '', $_POST, $strLangue); break; case 'reset': fxResetPassword($_POST, $strLangue); break; case 'list': case 'mod': case 'add': // if (!empty($_GET['t'])) $intMenu = $_GET['t']; else $intMenu = 0; $_POST['eve_id'] = $intEveId; fxSetForm($_POST['form_action'], $intMenu, $_POST, $_FILES, 1); $intEveId = base64_decode(urldecode($_GET['promoteur_eve_id'])); header('Location: ' . $vDomaine . '/' . $strPage . "/inc_tableau_rabais?promoteur_eve_id=" . urlencode(base64_encode($intEveId))); exit; break; } } } // récupérer les détails de la page $strSousTitre = ''; //if ($strCode == 'compte_inc_tableau_promoteur'|| $strCode == 'compte_inc_tableau_inscriptions') { //if (strstr($strCode, "inc_tableau_") || $strCode='bibdd_assignment') { if (isset($_GET['promoteur_eve_id'])) { $intEveId = base64_decode(urldecode($_GET['promoteur_eve_id'])); $intEveIdbase = $intEveId; if ($strCode === 'compte_inc_tableau_inscriptions_gestion') { if (!fxInscrGestionCanAccess($_SESSION['com_id'], $intEveIdbase)) { header('Location: ' . $vDomaine . '/' . $strPage); exit; } } elseif ($strCode === 'compte_inc_tableau_gestion_epreuves') { if (empty($_SESSION['usa_id']) && !fxEveAccesHasAnyPermission($_SESSION['com_id'] ?? 0, $intEveIdbase, array('dossards.manage', 'epreuves.edit_qte'))) { header('Location: ' . $vDomaine . '/' . $strPage); exit; } } elseif (empty($_SESSION['usa_id']) && !fxIsPromoteur($_SESSION['com_id'], $intEveIdbase) && !fxEveAccesComHasV2ForEvent($_SESSION['com_id'], $intEveIdbase)) { header('Location: ' . $vDomaine . '/' . $strPage); exit; } $arrEvenement = fxGetEvenementsId($intEveId); //5$tabEvenement['general'] = $arrEvenement; $strSousTitre = '
' . fxUnescape($arrEvenement['eve_nom_' . $strLangue]) . ''; // $suite='compte/inc_tableau_promoteur?promoteur_eve_id='.$_GET['promoteur_eve_id']; } //} if ($strCode == 'compte_affichecarte') { $mem_sl_id = (isset($_GET['mem_id'])) ? $_GET['mem_id'] : 0; $mem_sl_pec_id = (isset($_GET['mem_pec_id'])) ? $_GET['mem_pec_id'] : 0; fxCarteAbonnements($mem_sl_id, $strLangue, $mem_sl_pec_id); exit; } $strMetaTitle = fxRemoveHtml(fxUnescape($recPage['pag_titre_' . $strLangue])); $strMetaDescription = fxRemoveHtml(fxUnescape($recPage['pag_description_' . $strLangue])); $strMetaKeywords = fxRemoveHtml(fxUnescape($recPage['pag_keywords_' . $strLangue])); $blnBoutonRetour = true; $blnHideCompteTitle = false; require_once("inc_header.php"); ?>

' . fxUnescape($recPage['pag_texte_' . $strLangue]) . '
'; } } if (isset($_SESSION['msg'])) { echo fxMessage($_SESSION['msg'], '', $strLangue); } else if (empty($blnHideCompteTitle)) { ?>
fxGetRow($sqlCompte); // préparer les champs spéciaux $infoCompte['txt_password_a'] = $infoCompte['com_password']; $infoCompte['txt_password_b'] = $infoCompte['com_password']; //$infoCompte['txt_login'] = $infoCompte['com_login']; $infoCompte['com_courriel_confirm'] = ''; $infoCompte['txt_courriel'] = $infoCompte['com_courriel']; fxShowFormCompte($infoCompte, "mod", $strLangue); break; case 'compte_modifieraffilie': // lire les données du compte $mem_aff = $_SESSION['com_affilie']; $mem_pk_aff = $mem_aff[$_GET['aff']]['com_id']; $sqlCompte = "SELECT * FROM inscriptions_comptes WHERE com_id = " . $mem_pk_aff; $infoCompte = $objDatabase->fxGetRow($sqlCompte); // préparer les champs spéciaux $infoCompte['txt_password_a'] = $infoCompte['com_password']; $infoCompte['txt_password_b'] = $infoCompte['com_password']; //$infoCompte['txt_login'] = $infoCompte['com_login']; $infoCompte['com_courriel_confirm'] = ''; $infoCompte['txt_courriel'] = $infoCompte['com_courriel']; fxShowFormCompte($infoCompte, "mod", $strLangue); break; case 'compte_gestionaffilie': $strRetour = ' '; echo $strRetour; break; case 'compte_reset': $blnBoutonRetour = false; fxShowFormReset($_GET, $strLangue); break; case 'compte_annuler_inscription': include_once('annuler_inscription.php'); break; case 'compte_promoteur_hub': $blnBoutonRetour = false; fxTraceCompte('20_hub_render_debut'); echo fxShowPromoteurHub($_SESSION['com_id'], $strLangue); fxTraceCompte('21_hub_render_fin'); break; case 'compte_accueil': //MSIN-4371 if (fxEveAccesCanQrTest($_SESSION['com_id'])) { ?> QR Test ' . afficheTexte('comte_courses-terminées', 0) . ' (' . count($arrCommandes['terminées']) . ')

'; echo $strCoursesTerminees; */ break; case 'compte_mon_benevolat': $arrCommandes = fxGetCommandes($_SESSION['com_info'], 2, $strLangue); echo fxShowCommandes($arrCommandes['actives'], $_SESSION['com_info'], 2, $strLangue); ?> ' . afficheTexte('comte_courses-terminées', 0) . ' (' . count($arrCommandes['terminées']) . ')

'; echo $strCoursesTerminees; */ break; case 'compte_mes_levees_fonds': $arrFormsObjectifsDons = array(); $arrCommandes = fxGetCommandes($_SESSION['com_info'], 0, $strLangue); echo fxShowLeveesFonds($arrCommandes['actives'], $strLangue); ?> ' . afficheTexte('comte_courses-terminées', 0) . ' (' . count($arrCommandes['terminées']) . ')

'; echo $strCoursesTerminees; */ break; case 'compte_mes_adhesions': if (!empty($_GET['no'])) { $arrCalMembership = $arrFormsMembership = $arrTelMembership = array(); $strValidationMembership = ''; echo $strHTML = fxShowQuestionsAdhesion(trim($_GET['no']), $strLangue); } else { $arrAbonnements = fxGetAbonnements($_SESSION['com_id'], 1, $strLangue, "", 1); echo('

' . $arrAbonnements[1]["mt_nom_" . $strLangue] . '

'); echo fxShowAbonnementspartype($arrAbonnements, $_SESSION['com_info'], 1, $strLangue, 'compte'); $arrAbonnements = fxGetAbonnementsaffilie($_SESSION['com_id'], 1, $strLangue, 1); echo('

' . afficheTexte('compte_associe', 0) . "/" . $arrAbonnements[1]["mt_nom_" . $strLangue] . '

'); echo fxShowAbonnements($arrAbonnements, $_SESSION['com_info'], 1, $strLangue, 'affilie'); echo('
'); $arrAbonnements = fxGetAbonnements($_SESSION['com_id'], 1, $strLangue, "", 2); echo('

' . $arrAbonnements[1]["mt_nom_" . $strLangue] . '

'); echo fxShowAbonnementspartype($arrAbonnements, $_SESSION['com_info'], 1, $strLangue, 'compte'); $arrAbonnements = fxGetAbonnementsaffilie($_SESSION['com_id'], 1, $strLangue, 2); if ($arrAbonnements != null) { echo('

' . afficheTexte('compte_associe', 0) . "/" . $arrAbonnements[1]["mt_nom_" . $strLangue] . '

'); echo fxShowAbonnements($arrAbonnements, $_SESSION['com_info'], 1, $strLangue, 'affilie'); } echo('
'); $arrAbonnements = fxGetAbonnements($_SESSION['com_id'], 1, $strLangue, "", 3); echo('

' . $arrAbonnements[1]["mt_nom_" . $strLangue] . '

'); echo fxShowAbonnementspartype($arrAbonnements, $_SESSION['com_info'], 1, $strLangue, 'compte'); $arrAbonnements = fxGetAbonnementsaffilie($_SESSION['com_id'], 1, $strLangue, 3); if ($arrAbonnements != null) { echo('

' . afficheTexte('compte_associe', 0) . "/" . $arrAbonnements[1]["mt_nom_" . $strLangue] . '

'); echo fxShowAbonnements($arrAbonnements, $_SESSION['com_info'], 1, $strLangue, 'affilie'); } echo('
'); $arrAbonnements = fxGetAbonnements($_SESSION['com_id'], 1, $strLangue, "", 4); echo('

' . $arrAbonnements[1]["mt_nom_" . $strLangue] . '

'); echo fxShowAbonnementspartype($arrAbonnements, $_SESSION['com_info'], 1, $strLangue, 'compte'); echo('
'); } break; case 'compte_mes_commandes': $arrFormsTransfert = $arrFormsObjectifsDons = array(); $arrCommandes = fxGetCommandes($_SESSION['com_info'], 1, $strLangue); echo fxShowCommandes($arrCommandes['actives'], $_SESSION['com_info'], 1, $strLangue); ?> ' . afficheTexte('comte_courses-terminées', 0) . ' (' . count($arrCommandes['terminées']) . ')

'; echo $strCoursesTerminees; */ break; case 'compte_motdepasse': $blnBoutonRetour = false; fxShowFormPassword($strLangue); // lien support temporaire a faire sl // MSIN-3866 if ($strLangue == 'fr') echo('

Pour du support concernant votre compte sur ms-1 inscription, contactez-nous.

'); else echo('

For inquiries and requests about your account on ms-1 inscription, contact us.

'); break; case 'compte_nouveau': $blnBoutonRetour = false; // replacer $_GET['p'] par $_SESSION['no_panier'] if (!empty($_SESSION['no_panier'])) { // récupérer les info de panier acheteur $sqlAheteur = "SELECT ipa.com_prenom, ipa.com_nom, ipa.com_adresse, ipa.com_ville, ipa.pro_id, ipa.pay_id, ipa.com_codepostal, ipa.com_telephone1, ipa.com_telephone2, ipa.com_courriel as com_courriel, '' as txt_courriel, '' as com_courriel_confirm, '' as com_login, ipa.com_courriel as txt_login, '' as com_tshirt, ipa.ach_lang AS com_langue, ipp.par_sexe AS com_sexe, '" . $_SESSION['no_panier'] . "' AS no_panier, par_naissance AS com_naissance FROM inscriptions_panier_acheteurs ipa INNER JOIN inscriptions_panier_participants ipp on ipp.par_id=ipa.par_id WHERE ipa.no_panier = '" . $objDatabase->fxEscape($_SESSION['no_panier']) . "'"; $tabAcheteur = $objDatabase->fxGetRow($sqlAheteur); fxShowFormCompte($tabAcheteur, "checkout", $strLangue); } else { fxShowFormCompte(2, "add", $strLangue); } break; case 'compte_nouveauaffilie': $blnBoutonRetour = false; // replacer $_GET['p'] par $_SESSION['no_panier'] fxShowFormCompte(2, "addaffilie", $strLangue); break; case 'compte_inc_tableau_promoteur': $blnBoutonRetour = false; include("inc_tableau_promoteur.php"); break; case 'compte_inc_tableau_rabais': $blnBoutonRetour = false; $footer_script = true; include("inc_tableau_rabais.php"); break; case 'compte_inc_tableau_inscriptions': $blnBoutonRetour = false; $footer_script = true; include("inc_tableau_inscriptions.php"); break; case 'compte_inc_tableau_inscriptions_gestion': $blnBoutonRetour = false; $footer_script = true; $blnHideCompteTitle = true; fxInscrGestionInitTextes($strLangue); include("inc_tableau_inscriptions_gestion.php"); break; case 'compte_inc_tableau_mail_entraineurs': $blnBoutonRetour = false; $footer_script = true; include("inc_tableau_mail_entraineurs.php"); break; case 'compte_inc_tableau_mail_questions': $blnBoutonRetour = false; $footer_script = true; include("inc_tableau_mail_questions.php"); break; case 'compte_inc_tableau_dossards': $blnBoutonRetour = false; include("inc_tableau_dossards.php"); break; case 'compte_inc_tableau_epreuves': $blnBoutonRetour = false; include("inc_tableau_epreuves.php"); break; case 'compte_inc_tableau_gestion_epreuves': $blnBoutonRetour = false; include("inc_tableau_gestion_epreuves.php"); break; case 'compte_inc_tableau_liste_attente': $blnBoutonRetour = false; include("inc_tableau_liste_attente.php"); break; case 'compte_bib_assignment': $blnBoutonRetour = false; include("bib_assignment.php"); break; default: case 'compte_login': $blnBoutonRetour = false; $_SESSION['affiche_pas_connexion'] = "true"; ?>