191 lines
5.5 KiB
PHP
191 lines
5.5 KiB
PHP
|
<?php
|
||
|
/**
|
||
|
* Vue affichant les formulaires permettant de gérer les comptes utilisateur
|
||
|
* Saisie, affichage, modification ou encore suppression.
|
||
|
* + scripts ajax testant la saisie
|
||
|
*
|
||
|
**/
|
||
|
$header_title="Les comptes utilisateur >> ".SITE_NOM;
|
||
|
$body_title="Gestion des comptes utilisateur.";
|
||
|
|
||
|
$ariane_items[0]["txt"]="<li><a href='".PAGE_ACCUEIL."'>Tableau de bord.</a></li>";
|
||
|
$ariane_items[0]["form"]=false;
|
||
|
$ariane_items[0]["actif"]=false;
|
||
|
$ariane_items[1]["txt"]="<li>Gestion des comptes utilisateur.</li>";
|
||
|
$ariane_items[1]["form"]=true;
|
||
|
$ariane_items[1]["actif"]=true;
|
||
|
|
||
|
$msg_infos[0]="Formulaire de gestion des <i>comptes utilisateur</i>.";
|
||
|
|
||
|
$form[0]["nom"]="Chercher un utilisateur.";
|
||
|
$form[0]["champs"]="<form method='post' id='recherche_utilisateur' name='recherche_utilisateur' action='".PAGE_MAJ_COMPTES."' class='form-inline' role='form'>
|
||
|
<div class='form-group'>
|
||
|
<label class='sr-only' for='recherche_compte'>Saisir l'expression à rechercher</label>
|
||
|
<input type='text' class='form-control' name='recherche_compte' id='recherche_compte' placeholder=\"Votre recherche\" required>
|
||
|
</div>
|
||
|
<button type='submit' class='btn btn-default'>Rechercher</button><br><br>
|
||
|
<div id='selection'>";
|
||
|
if(!empty($select))
|
||
|
$form[0]["champs"].=$select;
|
||
|
$form[0]["champs"].="</div>
|
||
|
</fieldset></form>";
|
||
|
|
||
|
if(!empty($form_html))
|
||
|
$form[1]=$form_html;
|
||
|
else
|
||
|
{
|
||
|
$form[1]["nom"]="Créer un nouveau compte utilisateur.";
|
||
|
$form[1]["champs"]="<form method='post' id='maj_comptes' name='maj_comptes' action='".PAGE_MAJ_COMPTES." role='form'>
|
||
|
<div class='form-group'>
|
||
|
<label for='pseudo'>Pseudo.</label>
|
||
|
<input class='form-control' type='text' maxlength='".UTILISATEUR_MAX_PSEUDO."' name='pseudo' id='pseudo' value=\"".htmlspecialchars($form["pseudo"])."\" required>
|
||
|
<p class='help-block'><b>Obligatoire</b>.</p>
|
||
|
</div>
|
||
|
<div class='form-group'>
|
||
|
<label for='email'>Email</label>
|
||
|
<input class='form-control' type='email' maxlength='".UTILISATEUR_MAX_EMAIL."' name='email' id='email' value=\"".htmlspecialchars($form["email"])."\" required>
|
||
|
<p class='help-block'><b>Obligatoire</b>.</p>
|
||
|
</div>
|
||
|
<input type='hidden' name='origine' id='origine' value='admin'>
|
||
|
<input type='hidden' name='fuseau_horaire' value=\"".date_default_timezone_get()."\">
|
||
|
<div id='msg_utilisateurs'></div>
|
||
|
<button type='submit' class='btn btn-success btn-lg'>Enregistrer le nouvel utilisateur.</button>
|
||
|
</fieldset></form>";
|
||
|
}
|
||
|
//le code pour ajax
|
||
|
ob_start();
|
||
|
?>
|
||
|
<script>
|
||
|
function is_int(value)
|
||
|
{//source : http://www.inventpartners.com/javascript_is_int
|
||
|
if((parseFloat(value)==parseInt(value))&&!isNaN(value))
|
||
|
{
|
||
|
return true;
|
||
|
}
|
||
|
else
|
||
|
{
|
||
|
return false;
|
||
|
}
|
||
|
return true;
|
||
|
}
|
||
|
function compte_affiche(id_utilisateur)
|
||
|
{
|
||
|
if(id_utilisateur!==0)
|
||
|
{
|
||
|
$.ajax(
|
||
|
{
|
||
|
url:'<?=SITE_URL;?>/JS/admin_comptes_affiche',
|
||
|
type:'GET',
|
||
|
data:'id_utilisateur='+id_utilisateur+'&ajax=1',
|
||
|
success:function(code)
|
||
|
{
|
||
|
if(code!=="")
|
||
|
{
|
||
|
$('#form1').html(code);
|
||
|
}
|
||
|
}
|
||
|
});
|
||
|
}
|
||
|
}
|
||
|
$(document).ready(function()
|
||
|
{
|
||
|
$('#recherche_utilisateur').on('submit', function(e)
|
||
|
{
|
||
|
e.preventDefault();
|
||
|
var $this=$(this);
|
||
|
var recherche=$('#recherche_compte').val();
|
||
|
if(recherche==='')
|
||
|
{
|
||
|
$('#selection').html('<?php echo str_replace("'","\"",get_html_alerte_msg((array) ERREUR_UTILISA_CHAMPS_ABSENTS));?>');
|
||
|
}
|
||
|
else
|
||
|
{
|
||
|
$.ajax(
|
||
|
{
|
||
|
url:'<?=SITE_URL;?>/JS/admin_comptes_recherche',
|
||
|
type:'POST',
|
||
|
data:$this.serialize()+'&ajax=1',
|
||
|
success:function(code)
|
||
|
{
|
||
|
if(code!=="")
|
||
|
{
|
||
|
$('#selection').html(code);
|
||
|
}
|
||
|
}
|
||
|
});
|
||
|
}
|
||
|
});
|
||
|
$('#selection').on('change','#liste_utilisateurs', function()
|
||
|
{
|
||
|
var id_utilisateur=$('#liste_utilisateurs').val();
|
||
|
compte_affiche(id_utilisateur);
|
||
|
});
|
||
|
$('#form1').on('submit','#maj_comptes', function(e)
|
||
|
{
|
||
|
e.preventDefault();
|
||
|
var $this=$(this);
|
||
|
var nom=$('#pseudo').val();
|
||
|
var url=$('#email').val();
|
||
|
if(pseudo===''||email==='')
|
||
|
{
|
||
|
$('#msg_utilisateurs').html('<?php echo str_replace("'","\"",get_html_alerte_msg((array) ERREUR_UTILISA_CHAMPS_ABSENTS));?>');
|
||
|
}
|
||
|
else
|
||
|
{
|
||
|
var suppr_ok=$("input[name=suppr_ok]:checked").val();
|
||
|
if(suppr_ok!=undefined)
|
||
|
{
|
||
|
$.ajax(
|
||
|
{
|
||
|
url:'<?=SITE_URL;?>/JS/admin_comptes_suppr_tests',
|
||
|
type:'POST',
|
||
|
data:$this.serialize()+'&ajax=1',
|
||
|
success:function(code)
|
||
|
{
|
||
|
if(code!=="")
|
||
|
{
|
||
|
if(code==='<?php echo str_replace("'","\"",get_html_alerte_msg((array) MSG_ADMIN_VALID,"alert-success"));?>')
|
||
|
{
|
||
|
$('#form1').html("");
|
||
|
$('#msg_form').html('<?php echo str_replace("'","\"",get_html_alerte_msg((array) MSG_ADMIN_VALID,"alert-success"))."<p><br><br><a href=\"".PAGE_MAJ_SOURCE."\" title=\"Créer un nouveau compte.\" class=\"btn btn-info btn-sm\">+ Nouvel utilisateur.</a></p>";?>');
|
||
|
}
|
||
|
else
|
||
|
{
|
||
|
$('#msg_utilisateurs').html(code);
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
});
|
||
|
}
|
||
|
else
|
||
|
{
|
||
|
$.ajax(
|
||
|
{
|
||
|
url:'<?=SITE_URL;?>/JS/admin_comptes_infos_tests',
|
||
|
type:'POST',
|
||
|
data:$this.serialize()+'&ajax=1',
|
||
|
success:function(code)
|
||
|
{
|
||
|
if(code!=="")
|
||
|
{
|
||
|
if(is_int(code))
|
||
|
{//tout s'est bien passé, l'id est retourné pour être affiché
|
||
|
compte_affiche(code);
|
||
|
var x=setTimeout(function() { $('#msg_utilisateurs').html('<?php echo str_replace("'","\"",get_html_alerte_msg((array) MSG_ADMIN_VALID,"alert-success"));?>'); },500);//sinon ça va trop vite :-)
|
||
|
}
|
||
|
else
|
||
|
{
|
||
|
$('#msg_utilisateurs').html(code);
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
});
|
||
|
}
|
||
|
}
|
||
|
});
|
||
|
});
|
||
|
</script>
|
||
|
<?php
|
||
|
$footer_JS=ob_get_contents();
|
||
|
ob_end_clean();
|
||
|
require(TEMPLATE_REP."/page.php");
|