tr
This commit is contained in:
parent
84bb772343
commit
6b06f8be7e
154
Controleur/ControleurAjaxhabilitation.php
Executable file
154
Controleur/ControleurAjaxhabilitation.php
Executable file
|
|
@ -0,0 +1,154 @@
|
|||
<?php
|
||||
require_once 'Framework/Controleur.php'; // OK
|
||||
require_once 'Modele/Utilisateur.php';
|
||||
|
||||
class ControleurAjaxhabilitation extends Controleur
|
||||
{
|
||||
private $utilisateur;
|
||||
|
||||
public function __construct()
|
||||
{
|
||||
$this->utilisateur = new Utilisateur();
|
||||
}
|
||||
|
||||
public function index()
|
||||
{
|
||||
$codeProfil = $this->requete->getParametreFormulaire("codeProfil");
|
||||
|
||||
$menus_accessibles = $this->utilisateur->getMenusAccessiblesProfil($codeProfil);
|
||||
|
||||
$menus_non_accessibles = $this->utilisateur->getMenusNonAccessiblesProfil($codeProfil);
|
||||
|
||||
$this->genererVueAjax(array('menus_accessibles' => $menus_accessibles, 'menus_non_accessibles' => $menus_non_accessibles));
|
||||
}
|
||||
|
||||
|
||||
public function ajouterunmenuprincipalprofilassureur()
|
||||
{
|
||||
$codeProfil = $this->requete->getParametreFormulaire("codeProfil");
|
||||
$codeMenu = $this->requete->getParametreFormulaire("codeMenu");
|
||||
|
||||
$this->utilisateur->ajouterunmenuprincipalprofilassureur($codeProfil, $codeMenu);
|
||||
}
|
||||
|
||||
public function retirerunmenuprincipalprofilassureur()
|
||||
{
|
||||
$codeProfil = $this->requete->getParametreFormulaire("codeProfil");
|
||||
$codeMenu = $this->requete->getParametreFormulaire("codeMenu");
|
||||
|
||||
$this->utilisateur->retirerunmenuprincipalprofilassureur($codeProfil, $codeMenu);
|
||||
}
|
||||
|
||||
public function ajoutertousmenuprincipalprofilassureur()
|
||||
{
|
||||
$codeProfil = $this->requete->getParametreFormulaire("codeProfil");
|
||||
|
||||
$this->utilisateur->ajoutertousmenuprincipalprofilassureur($codeProfil);
|
||||
}
|
||||
|
||||
public function retirerousmenuprincipalprofilassureur()
|
||||
{
|
||||
$codeProfil = $this->requete->getParametreFormulaire("codeProfil");
|
||||
|
||||
$this->utilisateur->retirerousmenuprincipalprofilassureur($codeProfil);
|
||||
}
|
||||
|
||||
public function listervuemodule()
|
||||
{
|
||||
$codeModule = $this->requete->getParametreFormulaire("codeModule");
|
||||
$listevue = $this->utilisateur->getListeVueModule($codeModule);
|
||||
|
||||
$this->genererVueAjax(array('listevue' => $listevue));
|
||||
}
|
||||
|
||||
public function afficheraccessousmenusass()
|
||||
{
|
||||
$codeProfil = $this->requete->getParametreFormulaire("codeProfil");
|
||||
$codeModule = $this->requete->getParametreFormulaire("codeModule");
|
||||
$vue = $this->requete->getParametreFormulaire("vue");
|
||||
|
||||
$menus_accessibles = $this->utilisateur->getSousMenusAccessiblesVue($codeProfil, $vue);
|
||||
$menus_non_accessibles = $this->utilisateur->getSousMenusNonAccessiblesVue($codeProfil,$vue);
|
||||
|
||||
$this->genererVueAjax(array('menus_accessibles' => $menus_accessibles, 'menus_non_accessibles' => $menus_non_accessibles,
|
||||
'codeModule' => $codeModule));
|
||||
}
|
||||
|
||||
public function ajoutertoussousmenusass()
|
||||
{
|
||||
$codeProfil = $this->requete->getParametreFormulaire("codeProfil");
|
||||
$vue = $this->requete->getParametreFormulaire("vue");
|
||||
|
||||
$this->utilisateur->ajoutertoussousmenusass($codeProfil, $vue);
|
||||
}
|
||||
|
||||
public function retirertoussousmenusass()
|
||||
{
|
||||
$codeProfil = $this->requete->getParametreFormulaire("codeProfil");
|
||||
$vue = $this->requete->getParametreFormulaire("vue");
|
||||
|
||||
$this->utilisateur->retirertoussousmenusass($codeProfil, $vue);
|
||||
}
|
||||
|
||||
public function ajouterunsousmenusass()
|
||||
{
|
||||
$codeProfil = $this->requete->getParametreFormulaire("codeProfil");
|
||||
$vue = $this->requete->getParametreFormulaire("vue");
|
||||
$codeMenu = $this->requete->getParametreFormulaire("codeMenu");
|
||||
|
||||
$this->utilisateur->ajouterunsousmenusass($codeProfil, $vue, $codeMenu);
|
||||
}
|
||||
|
||||
public function retirerunsousmenusass()
|
||||
{
|
||||
$codeProfil = $this->requete->getParametreFormulaire("codeProfil");
|
||||
$vue = $this->requete->getParametreFormulaire("vue");
|
||||
$codeMenu = $this->requete->getParametreFormulaire("codeMenu");
|
||||
|
||||
$this->utilisateur->retirerunsousmenusass($codeProfil, $vue, $codeMenu);
|
||||
}
|
||||
|
||||
public function creerprofilass()
|
||||
{
|
||||
$libelle = $this->requete->getParametreFormulaire("libelle");
|
||||
$libelleEng = $this->requete->getParametreFormulaire("libelleEng");
|
||||
|
||||
$this->utilisateur->creerprofilass($libelle, $libelleEng);
|
||||
}
|
||||
|
||||
public function transfererdroitsprofilassureur()
|
||||
{
|
||||
$codeProfilSource = $this->requete->getParametreFormulaire("codeProfilSource");
|
||||
$codeProfilDest = $this->requete->getParametreFormulaire("codeProfilDest");
|
||||
|
||||
$this->utilisateur->transfererdroitsprofilassureur($codeProfilSource, $codeProfilDest);
|
||||
|
||||
// $this->genererVueAjax();
|
||||
}
|
||||
|
||||
public function batchviderprofilass()
|
||||
{
|
||||
$codeProfil = $this->requete->getParametreFormulaire("codeProfil");
|
||||
|
||||
$this->utilisateur->batchviderprofilass($codeProfil);
|
||||
}
|
||||
|
||||
public function batchattribuerdroitsreferenceass()
|
||||
{
|
||||
$codeProfil = $this->requete->getParametreFormulaire("codeProfil");
|
||||
|
||||
$this->utilisateur->batchattribuerdroitsreferenceass($codeProfil);
|
||||
}
|
||||
|
||||
public function ajaxlisteusersass()
|
||||
{
|
||||
$codeProfil = $this->requete->getParametreFormulaire("codeProfil");
|
||||
$nom = $this->requete->getParametreFormulaire("nom");
|
||||
$prenoms = $this->requete->getParametreFormulaire("prenoms");
|
||||
$codePointVente = $this->requete->getParametreFormulaire("codePointVente");
|
||||
|
||||
$users = $this->utilisateur->getusersassueurfiltre($codeProfil, $nom, $prenoms, $codePointVente);
|
||||
|
||||
$this->genererVueAjax(array('users' => $users));
|
||||
}
|
||||
}
|
||||
|
|
@ -4764,3 +4764,46 @@ function supprimer_espace_string(p_mot)
|
|||
p_mot = p_mot.replace(/ /g, "");
|
||||
return p_mot;
|
||||
}
|
||||
|
||||
function afficher_menu_principal_profil_assureur()
|
||||
{
|
||||
codeProfil=$("#codeProfil").val();
|
||||
|
||||
if (codeProfil<=" ")
|
||||
{
|
||||
v_msg="Veuillez sélectionner un profil!";
|
||||
v_msgEng="Please select a user profile!";
|
||||
alert_ebene(v_msg, v_msgEng);
|
||||
|
||||
$("#codeProfil").focus();
|
||||
return;
|
||||
}
|
||||
|
||||
donnees = 'codeProfil='+codeProfil;
|
||||
|
||||
var div_attente = $('#div_menu_profil');
|
||||
|
||||
div_attente.html(`
|
||||
<div class="d-flex flex-column align-items-center justify-content-center" style="padding-top:80px;">
|
||||
<div class="spinner-border text-primary" role="status" style="width:3rem; height:3rem;">
|
||||
<span class="visually-hidden">Loading...</span>
|
||||
</div>
|
||||
<span class="mt-3 fs-5 fw-bold">
|
||||
Veuillez patienter... / Please wait...
|
||||
</span>
|
||||
</div>
|
||||
`);
|
||||
|
||||
$.ajax({
|
||||
url: $("#racineWeb").val()+"Ajaxhabilitation/",
|
||||
type : 'post',
|
||||
data: donnees,
|
||||
error: function(errorData) {
|
||||
},
|
||||
success: function(data) {
|
||||
div_attente.html(data);
|
||||
},
|
||||
complete: function() {
|
||||
}
|
||||
});
|
||||
}
|
||||
|
|
@ -144,4 +144,24 @@ class Utilisateur extends Modele {
|
|||
$liste = $this->executerRequete($sql, array($_SESSION['codeSociete']));
|
||||
return $liste->fetchAll(PDO::FETCH_ASSOC);
|
||||
}
|
||||
|
||||
public function getMenusAccessiblesProfil($codeProfil)
|
||||
{
|
||||
$sql = "call sp_c_get_menus_accessibles_profil_rh(?, ?);";
|
||||
|
||||
$menu = $this->executerRequete($sql, array($_SESSION['codeSociete'], $codeProfil));
|
||||
|
||||
return $menu->fetchAll(PDO::FETCH_ASSOC);
|
||||
|
||||
}
|
||||
|
||||
public function getMenusNonAccessiblesProfil($codeProfil)
|
||||
{
|
||||
$sql = "call sp_c_get_menus_non_accessibles_profil_rh(?, ?);";
|
||||
|
||||
$menu = $this->executerRequete($sql, array($_SESSION['codeSociete'], $codeProfil));
|
||||
|
||||
return $menu->fetchAll(PDO::FETCH_ASSOC);
|
||||
|
||||
}
|
||||
}
|
||||
80
Vue/Ajaxhabilitation/afficheraccessousmenusass.php
Executable file
80
Vue/Ajaxhabilitation/afficheraccessousmenusass.php
Executable file
|
|
@ -0,0 +1,80 @@
|
|||
<div id="div_menu_profil">
|
||||
|
||||
<div class="row">
|
||||
<div id="div_utilisateur_profil_1" class="col-6" >
|
||||
|
||||
<legend> <?= _("Boutons invisibles")." (".format_N(count($menus_non_accessibles)).")" ?> </legend>
|
||||
|
||||
<table class="table table-striped table-bordered table-hover table-condensed table-responsive" style="font-size:10pt;">
|
||||
<thead>
|
||||
<tr>
|
||||
<th style='text-align:center'> <?= _("Désignation")?> </th>
|
||||
<th style='text-align:center'> => </th>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<th colspan="2"> <button type="button" style="font-size:10pt;" class="form-control btn btn-primary" onclick="javascript:ajouter_tous_menu_vue_module_assureur();" > <?= _("Ajouter tous") . " ==>" ?> </button> </th>
|
||||
</tr>
|
||||
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
<?php foreach ($menus_non_accessibles as $menus_non_accessible):
|
||||
$codeMenu = $menus_non_accessible['codeMenu'];
|
||||
if (est_anglophone())
|
||||
{
|
||||
$libeleMenu = $menus_non_accessible['libelleEng'];
|
||||
}
|
||||
else
|
||||
{
|
||||
$libeleMenu = $menus_non_accessible['libeleMenu'];
|
||||
}
|
||||
?>
|
||||
<tr valign="top">
|
||||
<td align='center'><?= $libeleMenu ?></td>
|
||||
<td align='center'> <input type="button" value="=>" onClick="javascript:ajouter_un_menu_vue_module_assureur('<?=$codeMenu?>');" ></td>
|
||||
</tr>
|
||||
<?php endforeach; ?>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="div_utilisateur_profil_2" class="col-6" >
|
||||
|
||||
<legend> <?= _("Boutons visibles")." (".format_N(count($menus_accessibles)).")" ?> </legend>
|
||||
|
||||
<table class="table table-striped table-bordered table-hover table-condensed table-responsive" style="font-size:10pt;">
|
||||
<thead>
|
||||
<tr>
|
||||
<th style='text-align:center'> <= </th>
|
||||
<th style='text-align:center'> <?= _("Désignation")?> </th>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<th colspan="2"> <button type="button" style="font-size:10pt;" class="form-control btn btn-primary" onclick="javascript:retirer_tous_menu_vue_module_assureur();" > <?= "<== " . _("Retirer tous") ?> </button> </th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
<?php foreach ($menus_accessibles as $menus_accessible):
|
||||
$codeMenu = $menus_accessible['codeMenu'];
|
||||
if (est_anglophone())
|
||||
{
|
||||
$libeleMenu = $menus_accessible['libelleEng'];
|
||||
}
|
||||
else
|
||||
{
|
||||
$libeleMenu = $menus_accessible['libeleMenu'];
|
||||
}
|
||||
?>
|
||||
<tr valign="top">
|
||||
<td align='center'> <input type="button" value="<=" onClick="javascript:retirer_un_menu_vue_module_assureur('<?=$codeMenu?>');" ></td>
|
||||
<td align='center'><?= $libeleMenu ?></td>
|
||||
</tr>
|
||||
<?php endforeach; ?>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
1
Vue/Ajaxhabilitation/ajouterunsousmenusass.php
Executable file
1
Vue/Ajaxhabilitation/ajouterunsousmenusass.php
Executable file
|
|
@ -0,0 +1 @@
|
|||
OK ajouterunsousmenusass
|
||||
111
Vue/Ajaxhabilitation/index.php
Executable file
111
Vue/Ajaxhabilitation/index.php
Executable file
|
|
@ -0,0 +1,111 @@
|
|||
<div id="div_menu_profil" class="animate__animated animate__fadeIn">
|
||||
<div class="row g-4">
|
||||
<div id="div_utilisateur_profil_1" class="col-md-6">
|
||||
<div class="card h-100 shadow-sm border-danger-subtle">
|
||||
<div class="card-header bg-danger-subtle text-danger d-flex justify-content-between align-items-center py-3">
|
||||
<h6 class="mb-0 fw-bold"><i class="fas fa-lock me-2"></i><?= _("Menus non accessibles") ?></h6>
|
||||
<span class="badge bg-danger rounded-pill"><?= count($menus_non_accessibles) ?></span>
|
||||
</div>
|
||||
|
||||
<div class="p-2 border-bottom bg-light">
|
||||
<button type="button" class="btn btn-sm btn-outline-danger w-100 fw-bold shadow-xs"
|
||||
onclick="javascript:ajouter_tous_menus_principal_profil_ass();">
|
||||
<?= _("Tout ajouter") ?> <i class="fas fa-angle-double-right ms-1"></i>
|
||||
</button>
|
||||
</div>
|
||||
|
||||
<div class="table-responsive" style="max-height: 400px; overflow-y: auto;">
|
||||
<table class="table table-hover align-middle mb-0">
|
||||
<tbody class="small">
|
||||
<?php foreach ($menus_non_accessibles as $m):
|
||||
$codeMenu = $m['codeMenu'];
|
||||
$libeleMenu = est_anglophone() ? $m['libelleEng'] : $m['libeleMenu'];
|
||||
?>
|
||||
<tr>
|
||||
<td class="ps-3"><?= $libeleMenu ?></td>
|
||||
<td class="text-end pe-3" width="50">
|
||||
<button class="btn btn-sm btn-info text-white rounded-circle btn-transfer shadow-sm"
|
||||
title="<?= _("Ajouter") ?>"
|
||||
onClick="javascript:ajouter_un_meunu_principal_profil_ass('<?=$codeMenu?>');">
|
||||
<i class="fas fa-arrow-right"></i>
|
||||
</button>
|
||||
</td>
|
||||
</tr>
|
||||
<?php endforeach; ?>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="div_utilisateur_profil_2" class="col-md-6">
|
||||
<div class="card h-100 shadow-sm border-success-subtle">
|
||||
<div class="card-header bg-success-subtle text-success d-flex justify-content-between align-items-center py-3">
|
||||
<h6 class="mb-0 fw-bold"><i class="fas fa-check-double me-2"></i><?= _("Menus accessibles") ?></h6>
|
||||
<span class="badge bg-success rounded-pill"><?= count($menus_accessibles) ?></span>
|
||||
</div>
|
||||
|
||||
<div class="p-2 border-bottom bg-light">
|
||||
<button type="button" class="btn btn-sm btn-outline-success w-100 fw-bold shadow-xs"
|
||||
onclick="javascript:retirer_tous_menus_principal_profil_ass();">
|
||||
<i class="fas fa-angle-double-left me-1"></i> <?= _("Tout retirer") ?>
|
||||
</button>
|
||||
</div>
|
||||
|
||||
<div class="table-responsive" style="max-height: 400px; overflow-y: auto;">
|
||||
<table class="table table-hover align-middle mb-0">
|
||||
<tbody class="small">
|
||||
<?php foreach ($menus_accessibles as $m):
|
||||
$codeMenu = $m['codeMenu'];
|
||||
$libeleMenu = est_anglophone() ? $m['libelleEng'] : $m['libeleMenu'];
|
||||
?>
|
||||
<tr>
|
||||
<td class="ps-3" width="50">
|
||||
<button class="btn btn-sm btn-warning text-white rounded-circle btn-transfer shadow-sm"
|
||||
title="<?= _("Retirer") ?>"
|
||||
onClick="javascript:retirer_un_meunu_principal_profil_ass('<?=$codeMenu?>');">
|
||||
<i class="fas fa-arrow-left"></i>
|
||||
</button>
|
||||
</td>
|
||||
<td class="text-start"><?= $libeleMenu ?></td>
|
||||
</tr>
|
||||
<?php endforeach; ?>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<style>
|
||||
/* Effets de transfert */
|
||||
.btn-transfer {
|
||||
width: 28px;
|
||||
height: 28px;
|
||||
padding: 0;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
transition: transform 0.2s cubic-bezier(0.34, 1.56, 0.64, 1);
|
||||
}
|
||||
.btn-transfer:hover {
|
||||
transform: scale(1.2);
|
||||
}
|
||||
|
||||
/* Scrollbar personnalisée */
|
||||
.table-responsive::-webkit-scrollbar {
|
||||
width: 6px;
|
||||
}
|
||||
.table-responsive::-webkit-scrollbar-thumb {
|
||||
background: #dee2e6;
|
||||
border-radius: 10px;
|
||||
}
|
||||
|
||||
/* Ligne de tableau au survol */
|
||||
.table-hover tbody tr:hover {
|
||||
background-color: #f8f9fa !important;
|
||||
}
|
||||
|
||||
.shadow-xs { box-shadow: 0 1px 2px rgba(0,0,0,0.05); }
|
||||
</style>
|
||||
|
|
@ -662,7 +662,7 @@ $photoAssureCrypte = $_SESSION['photoAssureCrypte'];
|
|||
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script>
|
||||
|
||||
<!-- Application Scripts -->
|
||||
<script src="/Js/fonctions.js?ver=2026.01.15.03"></script>
|
||||
<script src="/Js/fonctions.js?ver=2026.01.15.04"></script>
|
||||
|
||||
<script type="text/javascript">
|
||||
raffraichier_gabarit();
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user