This commit introduces the `fxEveAccesCanManageBibV4` and `fxEveAccesCanQrTest` functions to improve event access management. It updates various files to utilize these new permission checks, ensuring that only authorized users can manage event registrations and access QR testing features. Additionally, redundant session checks are removed, and redirection logic is refined for better user experience across the application.
326 lines
14 KiB
PHP
326 lines
14 KiB
PHP
<?php
|
|
|
|
// MSIN-3880 nouveau tableau
|
|
include_once("php/inc_fx_modifierinscriptions.php");
|
|
include_once("php/inc_fx_memberships.php");
|
|
include_once("php/inc_fx_promoteur.php");
|
|
require_once('php/inc_fx_eve_acces.php');
|
|
require_once('superadm/php/inc_manager.php');
|
|
|
|
global $objDatabase, $vDomaine, $strLangue;
|
|
$intEveId = 0;
|
|
$blnDon = false;
|
|
|
|
if ($strLangue == 'fr') {
|
|
$strPage = '/compte';
|
|
} else {
|
|
$strPage = '/account';
|
|
}
|
|
|
|
if (isset($_GET['promoteur_eve_id'])) {
|
|
$intEveId = base64_decode(urldecode($_GET['promoteur_eve_id']));
|
|
$arrEvenement = fxGetEvenementsId($intEveId);
|
|
//$tabEvenement['general'] = $arrEvenement;
|
|
}
|
|
|
|
// recalculer les catégorie
|
|
if (isset($_REQUEST['resetcategorie'])) {
|
|
fxregles_niveau_updateall($intEveId);
|
|
}
|
|
// Annuler/retablir une inscriptions dans le tableau du promoteur
|
|
if (isset($_POST['btn_cancel_event_promo'])) {
|
|
$int_pec_id = $_POST['pec_id_original'];
|
|
$int_epr_id = $_POST['epr_id'];
|
|
|
|
$tabEpreuve = fxGetEpreuve($int_epr_id);
|
|
fxAnnulerRetablirInscription($tabEpreuve, $int_pec_id);
|
|
}
|
|
|
|
if ($intEveId != 0) {
|
|
$arrEvenement = fxGetEvenementsId($intEveId);
|
|
$tabRapports = fxGetMenussuperadm(0, 0, 1, $intEveId);
|
|
if ($arrEvenement['te_id'] == 9) {
|
|
$blnDon = true;
|
|
}
|
|
|
|
//$tabEvenement['general'] = $arrEvenement;
|
|
?>
|
|
|
|
<ul class="nav flex-column ms1-menu-compte">
|
|
<!--
|
|
<li class="nav-item">
|
|
|
|
<a data-toggle="collapse" href="#collapseDashboard" class="nav-list"><i class="fa fa-tachometer"
|
|
aria-hidden="true"></i> <?php echo afficheTexte('tableau_promoteur_menudashboard', 0); ?>
|
|
</a>
|
|
|
|
</li>
|
|
<div class="animate__animated animate__fadeIn collapse" id="collapseDashboard">
|
|
|
|
<div class="promoteur p-3">
|
|
<div class="card box_participant mb-1">
|
|
<div class="card-header">
|
|
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
-->
|
|
<li class="nav-item">
|
|
<a data-toggle="collapse" href="#collapseRapports" class="nav-list"><i class="fa fa-file"
|
|
aria-hidden="true"></i> <?php echo afficheTexte('tableau_promoteur_menurapports', 0); ?>
|
|
</a>
|
|
|
|
</li>
|
|
<div class="animate__animated animate__fadeIn collapse" id="collapseRapports">
|
|
<ul class="list-unstyled">
|
|
<?php
|
|
|
|
if ($arrEvenement['te_id'] != 9) {
|
|
?>
|
|
<li class="nav-list p-2">
|
|
<a class="btn btn-primary"
|
|
href="<?php echo $vDomaine; ?>/superadm/rapport_new.php?r=chrono&e=<?php echo urlencode(base64_encode($intEveId)); ?>&lng=<?php echo $strLangue; ?>"
|
|
target="_blank">
|
|
<i class="fa fa-bar-chart mr-2" aria-hidden="true"></i>chrono + questions
|
|
</a>
|
|
</li>
|
|
<?php
|
|
}
|
|
$year = date('Y'); // Année courante
|
|
$datetq = $year . '-04-01 00:00:00';
|
|
|
|
|
|
if ($arrEvenement['te_id'] == 13) {
|
|
?>
|
|
<li class="nav-list p-2"
|
|
">
|
|
<a class="btn btn-primary"
|
|
href="<?php echo $vDomaine; ?>/superadm/rapport_new.php?r=finances-membership&e=<?php echo urlencode(base64_encode($intEveId)); ?>&lng=<?php echo $strLangue; ?>&a-ach_maj_from=<?php echo $datetq; ?> &btn_search="
|
|
target="_blank">
|
|
<i class="fa fa-bar-chart mr-2" aria-hidden="true"></i>Transactions-Finances-Tout
|
|
</a>
|
|
</li>
|
|
<?php
|
|
}else{
|
|
?>
|
|
<li class="nav-list p-2"
|
|
">
|
|
<a class="btn btn-primary"
|
|
href="<?php echo $vDomaine; ?>/superadm/rapport_new.php?r=finances&e=<?php echo urlencode(base64_encode($intEveId)); ?>&lng=<?php echo $strLangue; ?>"
|
|
target="_blank">
|
|
<i class="fa fa-bar-chart mr-2" aria-hidden="true"></i>Transactions-Finances
|
|
</a>
|
|
</li>
|
|
|
|
|
|
<?php
|
|
}
|
|
|
|
|
|
|
|
|
|
if ($arrEvenement['te_id'] == 13) {
|
|
?>
|
|
<li class="nav-list p-2">
|
|
|
|
<a class="btn btn-primary"
|
|
href="<?php echo $vDomaine; ?>/superadm/rapport_new.php?r=finances-membership-tq&e=<?php echo urlencode(base64_encode($intEveId)); ?>&lng=<?php echo $strLangue; ?>&a-ach_maj_from=<?php echo $datetq; ?> &btn_search="
|
|
target="_blank">
|
|
<i class="fa fa-bar-chart mr-2" aria-hidden="true"></i>Transactions-Finances-Adhésions Seul
|
|
</a>
|
|
</li>
|
|
<li class="nav-list p-2">
|
|
|
|
<a class="btn btn-primary"
|
|
href="<?php echo $vDomaine; ?>/superadm/rapport_new.php?r=finances-membership-autre&e=<?php echo urlencode(base64_encode($intEveId)); ?>&lng=<?php echo $strLangue; ?>&a-ach_maj_from=<?php echo $datetq; ?> &btn_search="
|
|
target="_blank">
|
|
<i class="fa fa-bar-chart mr-2" aria-hidden="true"></i>Transactions-Finances-Événements Seul
|
|
</a>
|
|
</li>
|
|
|
|
|
|
<li class="nav-list p-2">
|
|
<a class="btn btn-primary"
|
|
href="<?php echo $vDomaine; ?>/superadm/rapport_new.php?r=adhesions&e=<?php echo urlencode(base64_encode($intEveId)); ?>&lng=<?php echo $strLangue; ?>"
|
|
target="_blank">
|
|
<i class="fa fa-bar-chart mr-2" aria-hidden="true"></i>adhésions actives
|
|
</a>
|
|
</li>
|
|
<li class="nav-list p-2">
|
|
<a class="btn btn-primary"
|
|
href="<?php echo $vDomaine; ?>/superadm/rapport_new.php?r=adhesions-ventes&e=<?php echo urlencode(base64_encode($intEveId)); ?>&lng=<?php echo $strLangue; ?>"
|
|
target="_blank">
|
|
<i class="fa fa-bar-chart mr-2" aria-hidden="true"></i>liste d'adhésions annuelles
|
|
</a>
|
|
</li>
|
|
|
|
<?php
|
|
}
|
|
|
|
if ($arrEvenement['eve_rapport_finances_capitaines'] == 1) {
|
|
?>
|
|
<li class="nav-list p-2">
|
|
<a class="btn btn-primary"
|
|
href="<?php echo $vDomaine; ?>/superadm/rapport_new.php?r=finances-pnq&e=<?php echo urlencode(base64_encode($intEveId)); ?>&lng=<?php echo $strLangue; ?>"
|
|
target="_blank">
|
|
<i class="fa fa-bar-chart mr-2" aria-hidden="true"></i>Transactions-Finances (capitaines
|
|
seulement)
|
|
</a>
|
|
</li>
|
|
<?php
|
|
}
|
|
?>
|
|
|
|
|
|
|
|
<li class="nav-list p-2"
|
|
">
|
|
<a class="btn btn-primary"
|
|
href="<?php echo $vDomaine; ?>/superadm/rapport_new.php?r=remboursements&e=<?php echo urlencode(base64_encode($intEveId)); ?>&lng=<?php echo $strLangue; ?>"
|
|
target="_blank">
|
|
<i class="fa fa-bar-chart mr-2"
|
|
aria-hidden="true"></i><?php if ($strLangue == 'fr') echo "Paiements"; else echo "Payments" ?>
|
|
</a>
|
|
</li>
|
|
<!--
|
|
<li class="mb-2">
|
|
<a class="btn btn-primary rounded-pill" href="<?php echo $vDomaine; ?>/superadm/rapport_new.php?r=remboursements&e=<?php echo urlencode(base64_encode($intEveId)); ?>&lng=<?php echo $strLangue; ?>" target="_blank">
|
|
<i class="fa fa-bar-chart mr-2" aria-hidden="true"></i><?php if ($strLangue == 'fr') echo "liste de participant"; else echo "liste de participant" ?>
|
|
</a>
|
|
</li>
|
|
-->
|
|
<?php
|
|
for ($intCtr = 1; $intCtr <= count($tabRapports); $intCtr++) {
|
|
?>
|
|
<li class="nav-list p-2"">
|
|
<a class="btn btn-primary"
|
|
href="<?php echo $vDomaine; ?>/superadm/index.php?t=<?php echo urlencode(base64_encode(fxUnescape($tabRapports[$intCtr]['men_id']))); ?>&a=report&lng=<?php echo $strLangue; ?>"
|
|
data-toto="<?php echo $intCtr; ?>" target="_blank">
|
|
<i class="fa fa-bar-chart mr-2"
|
|
aria-hidden="true"></i><?php echo fxUnescape($tabRapports[$intCtr]['men_nom']); ?>
|
|
</a>
|
|
</li>
|
|
<?php
|
|
}
|
|
?>
|
|
</ul>
|
|
</div>
|
|
|
|
|
|
<?php ;
|
|
if (!$blnDon) {
|
|
?>
|
|
<li class="nav-item">
|
|
<a class="nav-list"
|
|
href="<?php echo $vDomaine; ?>/compte/inc_tableau_dossards?promoteur_eve_id=<?php echo urlencode(base64_encode($intEveId)); ?> &lng=<?php echo $strLangue; ?>"
|
|
data-toto="<?php echo $intCtr; ?>"> <i class="fa fa-id-card-o"
|
|
aria-hidden="true"></i> <?php echo afficheTexte('tableau_promoteur_menudossard', 0); ?>
|
|
</a>
|
|
</li>
|
|
<?php
|
|
$sqlQteLimitee = "SELECT eve_qte_modifiable FROM inscriptions_evenements WHERE eve_id = " . intval($intEveId);
|
|
$qryQteLimitee = $objDatabase->fxGetVar($sqlQteLimitee);
|
|
|
|
if ($qryQteLimitee == 1) {
|
|
?>
|
|
|
|
<li class="nav-item">
|
|
<a class="nav-list"
|
|
href="<?php echo $vDomaine; ?>/compte/inc_tableau_epreuves?promoteur_eve_id=<?php echo urlencode(base64_encode($intEveId)); ?> &lng=<?php echo $strLangue; ?>"
|
|
data-toto="<?php echo $intCtr; ?>"> <i class="fa fa-pencil-square-o"
|
|
aria-hidden="true"></i> <?php echo afficheTexte('tableau_promoteur_menuepreuves', 0); ?>
|
|
</a>
|
|
</li><?php
|
|
}
|
|
|
|
if (fxEveAccesCanManageBibV4($_SESSION['com_id'] ?? 0, $intEveId)) {
|
|
?>
|
|
<li class="nav-item">
|
|
<a class="nav-list"
|
|
href="<?php echo $vDomaine; ?>/compte/inc_tableau_gestion_epreuves?promoteur_eve_id=<?php echo urlencode(base64_encode($intEveId)); ?> &lng=<?php echo $strLangue; ?>">
|
|
<i class="fa fa-pencil-square-o" aria-hidden="true"></i>
|
|
<?php
|
|
$strMenuGestionQteDossards = afficheTexte('tableau_promoteur_menu_gestion_qte_dossards', 0, 0);
|
|
echo (strpos($strMenuGestionQteDossards, '*tableau_promoteur_menu_gestion_qte_dossards*') !== false)
|
|
? 'Gestion des quantités et dossards'
|
|
: $strMenuGestionQteDossards;
|
|
?>
|
|
</a>
|
|
</li>
|
|
<?php
|
|
}
|
|
}
|
|
|
|
|
|
?>
|
|
<li class="nav-item">
|
|
<a class="nav-list"
|
|
href="<?php echo $vDomaine; ?>/compte/inc_tableau_inscriptions?promoteur_eve_id=<?php echo urlencode(base64_encode($intEveId)); ?> &lng=<?php echo $strLangue; ?>"
|
|
data-toto="<?php echo $intCtr; ?>"> <i class="fa fa-users"
|
|
aria-hidden="true"></i> <?php echo afficheTexte('tableau_promoteur_menueinscription', 0); ?>
|
|
</a>
|
|
</li>
|
|
<?php if (fxInscrMobileCanAccess($_SESSION['com_id'], $intEveId)) { ?>
|
|
<li class="nav-item">
|
|
<a class="nav-list"
|
|
href="<?php echo $vDomaine; ?>/compte/inc_tableau_inscriptions_mobile?promoteur_eve_id=<?php echo urlencode(base64_encode($intEveId)); ?>&lng=<?php echo $strLangue; ?>">
|
|
<i class="fa fa-users" aria-hidden="true"></i> <?php echo htmlspecialchars(fxInscrMobilePromoteurMenuLabel(), ENT_QUOTES, 'UTF-8'); ?>
|
|
</a>
|
|
</li>
|
|
<?php } ?>
|
|
<!-- MSIN-3875 -->
|
|
<li class="nav-item">
|
|
<a class="nav-list"
|
|
href="<?php echo $vDomaine; ?>/compte/inc_tableau_rabais?promoteur_eve_id=<?php echo urlencode(base64_encode($intEveId)); ?> &lng=<?php echo $strLangue; ?>"
|
|
data-toto="<?php echo $intCtr; ?>"> <i class="fa fa-money"
|
|
aria-hidden="true"></i> <?php echo afficheTexte('tableau_promoteur_rabais', 0); ?>
|
|
</a>
|
|
</li>
|
|
|
|
<?php
|
|
// MSIN-3984
|
|
|
|
if ($arrEvenement['te_id'] == 13) {
|
|
?>
|
|
<!-- envoie de email
|
|
<li class="nav-item">
|
|
<a data-toggle="collapse" href="#collapseemail" class="nav-list"><i class="fa fa-paper-plane"
|
|
aria-hidden="true"></i> <?php echo afficheTexte('tableau_promoteur_envoie_email', 0); ?>
|
|
</a>
|
|
|
|
</li> -->
|
|
|
|
|
|
|
|
<li class="nav-list">
|
|
<a class="nav-list"
|
|
href="<?php echo $vDomaine; ?>/compte/inc_tableau_mail_questions?promoteur_eve_id=<?php echo urlencode(base64_encode($intEveId)); ?> &lng=<?php echo $strLangue; ?>"
|
|
data-toto="<?php echo $intCtr; ?>"> <i class="fa fa-paper-plane"
|
|
aria-hidden="true"></i> <?php echo afficheTexte('tableau_promoteur_envoie_email_questions', 0); ?>
|
|
</a>
|
|
</li>
|
|
<!--
|
|
<li class="nav-list p-2">
|
|
<a class="nav-list"
|
|
href="<?php echo $vDomaine; ?>/compte/inc_tableau_mail_entraineurs?promoteur_eve_id=<?php echo urlencode(base64_encode($intEveId)); ?> &lng=<?php echo $strLangue; ?>"
|
|
data-toto="<?php echo $intCtr; ?>"> <i class="fa fa-paper-plane"
|
|
aria-hidden="true"></i> <?php echo afficheTexte('tableau_promoteur_entraineurs', 0); ?>
|
|
</a>
|
|
</li>
|
|
|
|
-->
|
|
|
|
|
|
</ul>
|
|
</div>
|
|
|
|
|
|
<?php
|
|
}
|
|
} else {
|
|
if ($strLangue == 'fr')
|
|
echo "Une erreur quelconque est survenue.";
|
|
else
|
|
echo "A generic error occurred.";
|
|
}
|