563 lines
25 KiB
PHP
563 lines
25 KiB
PHP
<?php
|
|
global $db, $objDatabase, $vblnEnvironementDev, $vDomaine, $objDatabasePreProd, $objDatabaseProd;
|
|
ini_set('display_errors', 0);
|
|
ini_set('display_startup_errors', 0);
|
|
error_reporting(E_ALL);
|
|
// vérifier les paramètres
|
|
if (!empty($_GET['t']))
|
|
$intMenu = $_GET['t'];
|
|
else
|
|
$intMenu = 0;
|
|
|
|
if (!empty($_GET['a'])) {
|
|
$strAction = $_GET['a'];
|
|
|
|
if (!empty($_GET['batch']))
|
|
$strAction .= '_batch';
|
|
} else
|
|
$strAction = '';
|
|
|
|
$strPage = 'index.php';
|
|
$strLangue = 'fr';
|
|
|
|
if (isset($_GET['lng'])) {
|
|
if ($_GET['lng'] != '')
|
|
$strLangue = $_GET['lng'];
|
|
}
|
|
|
|
require_once('php/inc_functions.php');
|
|
|
|
if (isset($_GET['action']) && $_GET['action'] == 'doubler' && isset($_GET['eve_id'])) {
|
|
|
|
|
|
$new_id = fxcopieevenement($_GET['eve_id']);
|
|
|
|
if ($new_id) {
|
|
// Rediriger vers le nouvel événement copié
|
|
header('Location: index.php?t=' . urlencode($_GET['t']) . '&a=mod&id='.$new_id);
|
|
exit;
|
|
} else {
|
|
echo "<div style='color:red;'>Erreur lors de la duplication.</div>";
|
|
}
|
|
}
|
|
if ($_GET['action'] == 'deletepromoteur') {
|
|
|
|
|
|
fxDeleteEvenementFromPromoteur($_GET['id'], $_GET['promoteur_id']);
|
|
|
|
|
|
header('Location: index.php?t=' . urlencode($_GET['t']) . '&a=mod&id='.$_GET['id']);
|
|
exit;
|
|
}
|
|
if ($_GET['action'] == 'deletepromoteurcompte') {
|
|
|
|
|
|
|
|
fxDeleteEvenementFromPromoteur($_GET['eve_id'], $_GET['promoteur_id']);
|
|
|
|
|
|
header('Location: index.php?t=' . urlencode($_GET['t']) . '&a=mod&id='.$_GET['id']);
|
|
exit;
|
|
}
|
|
if ($_GET['action'] == 'addpromoteur') {
|
|
|
|
fxAddEvenementToPromoteur($_GET['id'], $_GET['promoteur_id']);
|
|
|
|
header('Location: index.php?t=' . urlencode($_GET['t']) . '&a=mod&id='.$_GET['id']);
|
|
exit;
|
|
}
|
|
if ($_GET['action'] == 'addpromoteurToGroupe') {
|
|
|
|
fxAddEvenementToGroupe($_GET['id'], $_GET['groupe']);
|
|
|
|
header('Location: index.php?t=' . urlencode($_GET['t']) . '&a=mod&id='.$_GET['id']);
|
|
exit;
|
|
}
|
|
|
|
if ($_GET['action'] == 'addevenement') {
|
|
|
|
fxAddEvenementToPromoteur($_GET['evenement_id'], $_GET['id']);
|
|
|
|
header('Location: index.php?t=' . urlencode($_GET['t']) . '&a=mod&id='.$_GET['id']);
|
|
exit;
|
|
}
|
|
|
|
if (isset($_GET['action']) && $_GET['action'] == 'addeveacces') {
|
|
if (session_status() === PHP_SESSION_NONE) {
|
|
session_start();
|
|
}
|
|
require_once(dirname(__FILE__) . '/../php/inc_fx_eve_acces.php');
|
|
$intGrantedBy = isset($_SESSION['usa_id']) ? intval($_SESSION['usa_id']) : 0;
|
|
$arrResult = fxEveAccesGrant(
|
|
intval($_GET['id']),
|
|
intval($_GET['evenement_id']),
|
|
intval($_GET['role_id']),
|
|
intval($_GET['expire_days'] ?? 0),
|
|
$intGrantedBy,
|
|
'Super admin'
|
|
);
|
|
$strAnchor = ($arrResult['state'] === 'success') ? '#eve-acces-v2' : '';
|
|
header('Location: index.php?t=' . urlencode($_GET['t']) . '&a=mod&id=' . intval($_GET['id']) . $strAnchor);
|
|
exit;
|
|
}
|
|
|
|
if (isset($_GET['action']) && $_GET['action'] == 'revokeveacces') {
|
|
if (session_status() === PHP_SESSION_NONE) {
|
|
session_start();
|
|
}
|
|
require_once(dirname(__FILE__) . '/../php/inc_fx_eve_acces.php');
|
|
$intRevokedBy = isset($_SESSION['usa_id']) ? intval($_SESSION['usa_id']) : 0;
|
|
fxEveAccesRevoke(intval($_GET['ea_id']), $intRevokedBy);
|
|
header('Location: index.php?t=' . urlencode($_GET['t']) . '&a=mod&id=' . intval($_GET['id']) . '#eve-acces-v2');
|
|
exit;
|
|
}
|
|
|
|
if (isset($_GET['action']) && $_GET['action'] == 'addeveaccesextra') {
|
|
if (session_status() === PHP_SESSION_NONE) {
|
|
session_start();
|
|
}
|
|
require_once(dirname(__FILE__) . '/../php/inc_fx_eve_acces.php');
|
|
$intGrantedBy = isset($_SESSION['usa_id']) ? intval($_SESSION['usa_id']) : 0;
|
|
fxEveAccesGrantExtra(
|
|
intval($_GET['id']),
|
|
intval($_GET['evenement_id']),
|
|
$_GET['perm_key'] ?? '',
|
|
$intGrantedBy,
|
|
'Super admin extra'
|
|
);
|
|
header('Location: index.php?t=' . urlencode($_GET['t']) . '&a=mod&id=' . intval($_GET['id']) . '#eve-acces-v2');
|
|
exit;
|
|
}
|
|
|
|
if (isset($_GET['action']) && $_GET['action'] == 'revokeveaccesextra') {
|
|
if (session_status() === PHP_SESSION_NONE) {
|
|
session_start();
|
|
}
|
|
require_once(dirname(__FILE__) . '/../php/inc_fx_eve_acces.php');
|
|
$intRevokedBy = isset($_SESSION['usa_id']) ? intval($_SESSION['usa_id']) : 0;
|
|
fxEveAccesRevokeExtra(intval($_GET['ae_id']), $intRevokedBy);
|
|
header('Location: index.php?t=' . urlencode($_GET['t']) . '&a=mod&id=' . intval($_GET['id']) . '#eve-acces-v2');
|
|
exit;
|
|
}
|
|
|
|
if (isset($_GET['action']) && $_GET['action'] == 'reactivateveacces') {
|
|
if (session_status() === PHP_SESSION_NONE) {
|
|
session_start();
|
|
}
|
|
require_once(dirname(__FILE__) . '/../php/inc_fx_eve_acces.php');
|
|
$intGrantedBy = isset($_SESSION['usa_id']) ? intval($_SESSION['usa_id']) : 0;
|
|
fxEveAccesReactivate(intval($_GET['ea_id']), $intGrantedBy);
|
|
header('Location: index.php?t=' . urlencode($_GET['t']) . '&a=mod&id=' . intval($_GET['id']) . '#eve-acces-v2');
|
|
exit;
|
|
}
|
|
|
|
if (isset($_GET['action']) && $_GET['action'] == 'reactivateveaccesextra') {
|
|
if (session_status() === PHP_SESSION_NONE) {
|
|
session_start();
|
|
}
|
|
require_once(dirname(__FILE__) . '/../php/inc_fx_eve_acces.php');
|
|
$intGrantedBy = isset($_SESSION['usa_id']) ? intval($_SESSION['usa_id']) : 0;
|
|
fxEveAccesReactivateExtra(intval($_GET['ae_id']), $intGrantedBy);
|
|
header('Location: index.php?t=' . urlencode($_GET['t']) . '&a=mod&id=' . intval($_GET['id']) . '#eve-acces-v2');
|
|
exit;
|
|
}
|
|
|
|
if (isset($_GET['action']) && $_GET['action'] == 'migrateveacceslegacyall') {
|
|
if (session_status() === PHP_SESSION_NONE) {
|
|
session_start();
|
|
}
|
|
require_once(dirname(__FILE__) . '/../php/inc_fx_eve_acces.php');
|
|
$intGrantedBy = isset($_SESSION['usa_id']) ? intval($_SESSION['usa_id']) : 0;
|
|
$intTotalGranted = 0;
|
|
$intTotalSkipped = 0;
|
|
$intComptes = 0;
|
|
$intErrors = 0;
|
|
$arrAll = fxEveAccesMigrationListAllLegacyComptes();
|
|
foreach ($arrAll as $arrRow) {
|
|
$arrResult = fxEveAccesMigrateCompteFromLegacy(intval($arrRow['com_id']), $intGrantedBy);
|
|
$intTotalGranted += intval($arrResult['granted'] ?? 0);
|
|
$intTotalSkipped += intval($arrResult['skipped'] ?? 0);
|
|
$intComptes++;
|
|
if (!empty($arrResult['errors'])) {
|
|
$intErrors += count($arrResult['errors']);
|
|
}
|
|
}
|
|
$strMsg = $intTotalGranted . ' acces cree(s) sur ' . count($arrAll) . ' compte(s) promoteur legacy';
|
|
if ($intTotalSkipped > 0) {
|
|
$strMsg .= ', ' . $intTotalSkipped . ' deja migre(s)';
|
|
}
|
|
if ($intErrors > 0) {
|
|
$strMsg .= ', ' . $intErrors . ' erreur(s) — verifier les comptes restants';
|
|
header('Location: eve_acces.php?p=migrate&err=' . urlencode($strMsg));
|
|
} else {
|
|
header('Location: eve_acces.php?p=migrate&ok=' . urlencode($strMsg));
|
|
}
|
|
exit;
|
|
}
|
|
|
|
require_once('php/inc_start_time.php');
|
|
|
|
if ($strAction != 'report') {
|
|
fxSuperadmRedirectToLoginIfNeeded(false);
|
|
$blnLogged = true;
|
|
} else {
|
|
fxSuperadmRedirectToLoginIfNeeded(true);
|
|
$intMenu2 = base64_decode(urldecode($intMenu));
|
|
$blnLogged = fxSuperadmReportMenuAllowed(intval($intMenu2));
|
|
}
|
|
|
|
if($strAction=='importquestiongo'){
|
|
|
|
// print_r($_POST['choix_produits'] ); echo('<br>');
|
|
foreach ( $_POST['choix'] as $intValue) {
|
|
// echo($intValue);echo('<br>');
|
|
if (in_array($intValue, $_POST['choix_produits'])) {
|
|
// copier les produits
|
|
$sqlQuestion = "SELECT que_choix_produit FROM inscriptions_questions WHERE que_id = " . $intValue;
|
|
$choix_produit = $objDatabase->fxGetVar($sqlQuestion );
|
|
// echo($choix_produit.'<br>');
|
|
$tableau = explode(",", $choix_produit);
|
|
$new='';
|
|
foreach ($tableau as $valeur) {
|
|
$mempro_id=$valeur;
|
|
if ($valeur!=0){
|
|
// echo "Valeur : $valeur<br>";
|
|
$updates2 = [
|
|
'eve_id' => $_POST['hidden_pec_id'],
|
|
'prod_update_qui' => '',
|
|
'prod_update_date' => '',
|
|
];
|
|
$mempro_id=fxDuplicateRow('inscriptions_produits_new', $valeur, 'pro_id',$updates2 );
|
|
|
|
}
|
|
|
|
$new=$new.$mempro_id.",";
|
|
}
|
|
$new = rtrim($new, ',');
|
|
// echo( $new.'<br>');
|
|
|
|
$updates = [
|
|
'eve_id' => $_POST['hidden_pec_id'],
|
|
'que_banque_actif' => 0,
|
|
'que_banque_label' => '',
|
|
'prod_update_qui' => '',
|
|
'prod_update_date' => '',
|
|
'que_choix_produit' => $new,
|
|
'que_epreuves_incluses' => ''
|
|
];
|
|
} else {
|
|
|
|
$updates = [
|
|
'eve_id' => $_POST['hidden_pec_id'],
|
|
'que_banque_actif' => 0,
|
|
'que_banque_label' => '',
|
|
'prod_update_qui' => '',
|
|
'prod_update_date' => '',
|
|
'que_epreuves_incluses' => ''
|
|
];
|
|
}
|
|
|
|
|
|
|
|
fxDuplicateRow('inscriptions_questions', $intValue, 'que_id',$updates ) ;
|
|
|
|
}
|
|
|
|
$strLink = '/superadm/index.php?t=' . urlencode(base64_encode(fxUnescape(4))) . '&a=mod&id=' . $_POST['hidden_pec_id'];
|
|
header("Location: ". $strLink );
|
|
|
|
exit;
|
|
}
|
|
require_once('php/inc_fx_messages.php');
|
|
require_once('php/inc_fx_excell.php');
|
|
|
|
|
|
if (isset($_POST['avant_com_preprod'])){
|
|
// ajouster com_preprod en prod
|
|
if($_POST['avant_com_preprod']!=$_POST['com_preprod']){
|
|
|
|
|
|
$sqlInsert = "update inscriptions_comptes SET com_preprod = " . $_POST['com_preprod'] . " WHERE com_courriel = '" . $_POST['com_courriel'] . "'";
|
|
// $qryInsert = $GLOBALS['db']->fxQuery($sqlInsert);
|
|
|
|
|
|
$qryInsert = $objDatabasePreProd->fxQuery($sqlInsert);
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
if (isset($_POST['btn_copie_compte'])){
|
|
|
|
fxcopiecompte($_POST['com_courriel']);
|
|
|
|
|
|
}
|
|
if (isset($_POST['btn_syncro_compte'])){
|
|
|
|
// fxcopiecompte($_POST['com_courriel']);
|
|
|
|
|
|
}
|
|
// si on clique le bouton ajouter
|
|
if (isset($_POST['form_action'])){
|
|
|
|
|
|
fxSetForm($_POST['form_action'], $intMenu, $_POST, $_FILES);
|
|
|
|
}
|
|
// si on clique excel
|
|
if (isset($_POST['download']) && $_POST['download'] == 'excel') {
|
|
if (isset($_POST['strwhere']))
|
|
$strwhere = $_POST['strwhere'];
|
|
else
|
|
$strorder = "";
|
|
if (isset($_POST['strorder']))
|
|
$strorder = $_POST['strorder'];
|
|
else
|
|
$strorder = "";
|
|
$_GET["t"] = "";
|
|
|
|
|
|
fxrapportexcell($intMenu, $strLangue, $strorder, $strwhere);
|
|
}
|
|
|
|
// si on clique le bouton supprimer
|
|
foreach (array_keys($_POST) as $strValue) {
|
|
if (strstr($strValue, 'btn_delete_file_')) {
|
|
fxDeleteFile($intMenu, $_POST, substr($strValue, strrpos($strValue, '_') + 1));
|
|
} elseif (strstr($strValue, 'btn_delete_')) {
|
|
if ($strAction == 'list') {
|
|
fxSetForm('del', $intMenu, $_POST, '');
|
|
} else {
|
|
$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, '');
|
|
}
|
|
}
|
|
} elseif (strstr($strValue, 'btn_duplicate_')) {
|
|
fxSetForm('copy', $intMenu, $_POST, '');
|
|
}
|
|
}
|
|
|
|
require_once('inc_header.php');
|
|
|
|
?>
|
|
<div class="container-fluid" id="main">
|
|
<div class="row">
|
|
<div class="<?php if ($strAction == "report") { ?>col-12<?php } else { ?>col-md-9 col-lg-10 order-first order-md-last<?php } ?> py-3">
|
|
<?php
|
|
if ($blnLogged) {
|
|
switch ($strAction) {
|
|
|
|
case 'importquestion':
|
|
|
|
$intMenu = urlencode(base64_encode(fxUnescape(30)));
|
|
$tabResults = fxGetListData($intMenu, '', '', '', 1, $strLangue, $_GET['id']);
|
|
|
|
//MSIN-3872
|
|
//affiche le id de la section
|
|
//echo($tabSubTables[$intCtr]['men_id']);
|
|
|
|
?>
|
|
|
|
<form action="index.php?a=importquestiongo" method="post" id="frm_question_copy">
|
|
<input type="hidden" id="hidden_id" name="hidden_pec_id" value="<?php echo $_GET['id'] ?>">
|
|
<?php
|
|
|
|
$strLink = 'index.php?t=' . urlencode(base64_encode(fxUnescape(4))) . '&a=mod&id=' .$_GET['id'];
|
|
|
|
?>
|
|
|
|
|
|
|
|
<button class="btn_import_question btn btn-sm btn-secondary rounded-0 mb-2" data-id="<?php echo $tabResults['data'][$intCtr][$tabResults['key']]; ?>" data-key="<?php echo $tabResults['key']; ?>" data-table="<?php echo $tabResults['menu']['men_table']; ?>" type="button" data-toggle="tooltip" title="Importer les questions">
|
|
<i class="fa fa-upload" aria-hidden="true"> Importer les questions</i>
|
|
</button>
|
|
<a class="btn btn-danger rounded-0" href="<?php echo $strLink ?>">
|
|
<i class="fa fa-times" aria-hidden="true"></i> Annuler</a>
|
|
<?php
|
|
fxShowList($tabResults, $intMenu, '', '', '', 1, $strLangue);
|
|
?>
|
|
|
|
</form>
|
|
|
|
|
|
<?php
|
|
break;
|
|
case 'add':
|
|
case 'add_batch':
|
|
case 'mod':
|
|
|
|
fxShowForm($strAction, $intMenu, $strLangue);
|
|
|
|
break;
|
|
case 'list':
|
|
case 'report':
|
|
|
|
// récupérer les données pour créer la liste
|
|
if (isset($_GET['pg']))
|
|
$intPage = $_GET['pg'];
|
|
else
|
|
$intPage = 1;
|
|
|
|
|
|
$strOrder = $strWhere = $strGroup = '';
|
|
|
|
// vérifier la clause WHERE
|
|
if (isset($_GET['btn_search'])) {
|
|
$tabWhere = $tabGroup = array();
|
|
|
|
$tabFields = fxGetFormFields2('search', $intMenu);
|
|
|
|
for ($intCtr = 1; $intCtr <= count($tabFields); $intCtr++) { // former le WHERE si la valeur n'est pas vide
|
|
if ($tabFields[$intCtr]['date'] == 1 || $tabFields[$intCtr]['datetime'] == 1) {
|
|
if (isset($_GET[$tabFields[$intCtr]['name'] . '_from']) && trim($_GET[$tabFields[$intCtr]['name'] . '_from']) != '' && isset($_GET[$tabFields[$intCtr]['name'] . '_to']) && trim($_GET[$tabFields[$intCtr]['name'] . '_to']) != '')
|
|
$tabWhere[] = "(" . fxUnescape($tabFields[$intCtr]['name']) . " >= '" . $_GET[fxUnescape($tabFields[$intCtr]['name']) . '_from'] . "' AND " . fxUnescape($tabFields[$intCtr]['name']) . " <= '" . $_GET[fxUnescape($tabFields[$intCtr]['name']) . '_to'] . "')";
|
|
$tabGroup[] = $tabFields[$intCtr]['name'];
|
|
} else {
|
|
if (isset($_GET[$tabFields[$intCtr]['name']]) && trim($_GET[$tabFields[$intCtr]['name']]) != '')
|
|
$tabWhere[] = fxUnescape($tabFields[$intCtr]['alias']).fxUnescape($tabFields[$intCtr]['name']) . " LIKE '%" . $objDatabase->fxEscape(trim($_GET[$tabFields[$intCtr]['name']])) . "%'";
|
|
}
|
|
}
|
|
|
|
// pousser le WHERE dans une variable
|
|
if (count($tabWhere) > 0)
|
|
$strWhere = implode(',', $tabWhere);
|
|
if (count($tabGroup) > 0)
|
|
$strGroup = implode(',', $tabGroup);
|
|
}
|
|
|
|
// vérifier la clause ORDER BY
|
|
if (isset($_GET['o'])) {
|
|
$strOrder = $objDatabase->fxEscape(trim($_GET['o']));
|
|
$tabFields = fxGetFormFields2('sort', $intMenu, $strOrder);
|
|
|
|
$strOrder = $tabFields[1]['alias'] . $tabFields[1]['name'];
|
|
}
|
|
|
|
// MSIN-3756 — Filtre optionnel (bouton) : actifs + date_fin dans les 5 j.
|
|
// Note : fxGetListData explode le WHERE sur les virgules → pas de DATE_SUB(a, b).
|
|
$intMenuDecoded = intval(base64_decode(urldecode($intMenu)));
|
|
$blnFiltreActifs5j = ($strAction === 'list' && $intMenuDecoded === 4
|
|
&& isset($_GET['actifs_5j']) && $_GET['actifs_5j'] === '1'
|
|
&& trim($strWhere) === '');
|
|
if ($blnFiltreActifs5j) {
|
|
$strWhere = 'e.eve_actif = 1,e.eve_date_fin >= (CURDATE() - INTERVAL 5 DAY)';
|
|
}
|
|
|
|
$tabResults = fxGetListData($intMenu, $strOrder, $strWhere, $strGroup, $intPage, $strLangue);
|
|
|
|
fxShowList($tabResults, $intMenu, $strOrder, $strWhere, $strGroup, $intPage, $strLangue);
|
|
|
|
break;
|
|
default:
|
|
?>
|
|
<h4><?php echo fxJournee(fxGetDate(), $strLangue); ?> le <?php echo fxShowDate(fxGetDate(), $strLangue); ?></h4>
|
|
<p>Bonjour <?php if (isset($_SESSION['usa_info']['com_prenom'])) { echo fxUnescape($_SESSION['usa_info']['com_prenom']); } ?> !</p>
|
|
<div class="row">
|
|
<div class="col-sm-6">
|
|
<h1>Outils</h1>
|
|
<ul class="links">
|
|
<li role="presentation" style="font-size: 20px;"><a href="<?php echo $vDomaine; ?>/superadm/commandes.php"><i class="fa fa-credit-card" aria-hidden="true"></i> Liste des commandes</a></li>
|
|
<li role="presentation"><a href="<?php echo $vDomaine; ?>/superadm/email_logs.php"><i class="fa fa-envelope" aria-hidden="true"></i> Liste des logs de courriel</a></li>
|
|
<li role="presentation"><a href="<?php echo $vDomaine; ?>/superadm/check_qte_produits.php"><i class="fa fa-archive" aria-hidden="true"></i> Vérification de l'inventaire des produits <i class="fa fa-star text-warning" aria-hidden="true"></i></a></li>
|
|
<li role="presentation"><a href="<?php echo $vDomaine; ?>/compte_resend.php" target="_blank"><i class="fa fa-envelope" aria-hidden="true"></i> Renvoyer les courriels de création de compte</a></li>
|
|
<li role="presentation"><a href="<?php echo $vDomaine; ?>/maj_age.php?p=<?php echo fxUnescape($_SESSION['usa_info']['com_login']); ?>" target="_blank"><i class="fa fa-birthday-cake" aria-hidden="true"></i> Mettre à jour l'âge des participants</a></li>
|
|
<?php if (fxSuperadmStaticSyncAllowed()) { ?>
|
|
<li role="presentation"><a href="<?php echo $vDomaine; ?>/php/sync_static_db.php" target="_blank"><i class="fa fa-database" aria-hidden="true"></i> Sync tables statiques (BD)</a></li>
|
|
<?php } ?>
|
|
</ul>
|
|
<h2>Archives PDF</h2>
|
|
<ul>
|
|
<li role="presentation"><a href="<?php echo $vDomaine; ?>/superadm/canmore2015_pdfs.php" target="_blank"><i class="fa fa-bar-chart" aria-hidden="true"></i> 13.6 (labels - individual)</a></li>
|
|
<li role="presentation"><a href="<?php echo $vDomaine; ?>/superadm/canmore2015_pdfs.php?id=13_7" target="_blank"><i class="fa fa-bar-chart" aria-hidden="true"></i> 13.7 (labels - teams)</a></li>
|
|
<li role="presentation"><a href="<?php echo $vDomaine; ?>/superadm/canmore2015_pdfs.php?id=13_3" target="_blank"><i class="fa fa-bar-chart" aria-hidden="true"></i> 13.3 (teams pdf)</a></li>
|
|
<li role="presentation"><a href="<?php echo $vDomaine; ?>/superadm/canmore2015_pdfs.php?id=13_3b" target="_blank"><i class="fa fa-bar-chart" aria-hidden="true"></i> 13.3 - updated (teams pdf)</a></li>
|
|
</ul>
|
|
<h3>Rapports archives</h3>
|
|
<ul>
|
|
<li role="presentation"><a href="<?php echo $vDomaine; ?>/superadm/late_fees.php">Page des frais de retard/suivi dashboard équipe</a></li>
|
|
<?php
|
|
$arrCanmore = fxGetMenussuperadm(0, 0, 1, 0, 1);
|
|
|
|
for ($intCtr = 1; $intCtr <= count($arrCanmore); $intCtr++) {
|
|
?>
|
|
<li role="presentation"><a href="<?php echo $vDomaine; ?>/superadm/index.php?t=<?php echo urlencode(base64_encode(fxUnescape($arrCanmore[$intCtr]['men_id']))); ?>&a=report" target="_blank"><i class="fa fa-bar-chart" aria-hidden="true"></i> <?php echo fxUnescape($arrCanmore[$intCtr]['men_nom']); ?></a></li>
|
|
<?php
|
|
}
|
|
?>
|
|
</ul>
|
|
</div>
|
|
<div class="col-sm-6">
|
|
<?php
|
|
if ($vblnEnvironementDev) {
|
|
?>
|
|
<h1>Boutons Mise en PROD</h1>
|
|
<h4>Événements</h4>
|
|
<ul>
|
|
<li>Épreuves <sup>*</sup></li>
|
|
<li>Prix des épreuves <sup>*</sup></li>
|
|
<li>Infos participants <sup>*</sup></li>
|
|
<li>Produits <sup>*</sup></li>
|
|
<li>Questions <sup>*</sup></li>
|
|
<li>Questions pour les logs <sup>*</sup></li>
|
|
<li>Rabais <sup>*</sup></li>
|
|
<li>Événements</li>
|
|
<li>CSS</li>
|
|
<li>PDF</li>
|
|
<li>Taxes <sup>*</sup></li>
|
|
<li>Frais <sup>*</sup></li>
|
|
<li>Inscriptions confirmées</li>
|
|
<li>Rapports</li>
|
|
</ul>
|
|
<p><sup>*</sup> EXCLUT: paiements</p>
|
|
<h4>Épreuves</h4>
|
|
<ul>
|
|
<li>Épreuves <sup>*</sup></li>
|
|
<li>Prix des épreuves <sup>*</sup></li>
|
|
</ul>
|
|
<br>
|
|
<h4>Type de taxes</h4>
|
|
<ul>
|
|
<li>Type de taxes <sup>*</sup></li>
|
|
<li>Liste des taux <sup>*</sup></li>
|
|
</ul>
|
|
<br>
|
|
<div class="text-muted">
|
|
<p><sup>*</sup> Peut être mis en PROD séparément</p>
|
|
<p>NOTE: Pour un élément déjà en PROD qui doit être modifié, il doit être modifié en DEV et en PROD (ex. changer le texte d'une question), ne pas réutiliser "mettre en PROD"</p>
|
|
</div>
|
|
<?php
|
|
}
|
|
?>
|
|
</div>
|
|
</div>
|
|
<?php
|
|
}
|
|
} else {
|
|
if ($strLangue == 'fr') {
|
|
?>
|
|
<h1>Accès refusé!</h1>
|
|
<?php
|
|
} else {
|
|
?>
|
|
<h1>Access denied!</h1>
|
|
<?php
|
|
}
|
|
}
|
|
?>
|
|
<p> </p>
|
|
</div>
|
|
<?php
|
|
if ($strAction != "report")
|
|
|
|
require_once('inc_droite.php');
|
|
?>
|
|
</div>
|
|
</div>
|
|
<?php require_once('inc_footer.php');
|