Skip to content
Snippets Groups Projects
Commit d1d8e2f8 authored by Sofiane Lasri's avatar Sofiane Lasri
Browse files

Fixed User creation and modification

parent 20194953
Branches
Tags
No related merge requests found
......@@ -219,18 +219,40 @@ if (isset($_GET["getNotifications"])) {
} else {
echo translate('error').': '.translate('thisIsNotJSON');
}
} elseif (isset($_GET["setLocalAccount"])&&!empty($_GET["setLocalAccount"]) && (isset($_POST)&&!empty($_POST)) && verifyUserPermission($_SESSION['user_id'], "vbcms", 'manageUsersSettings')) {
} elseif (isset($_GET["setLocalAccount"]) && (isset($_POST)&&!empty($_POST)) && verifyUserPermission($_SESSION['user_id'], "vbcms", 'manageUsersSettings')) {
if($_GET["setLocalAccount"]!=0 || !empty($_GET["setLocalAccount"])){
$localAccountExist = $bdd->prepare("SELECT * FROM `vbcms-localAccounts` WHERE userIdAssoc = ?");
$localAccountExist->execute([$_GET["setLocalAccount"]]);
$localAccountExist = $localAccountExist->fetch(PDO::FETCH_ASSOC);
$accountId = $_GET["setLocalAccount"];
}else{
$accountId = $bdd->query("SELECT id FROM `vbcms-users` ORDER BY id DESC LIMIT 1;")->fetchColumn() + 1;
}
if(!empty($localAccountExist)){
// Si on update un compte alors...
if(isset($localAccountExist) && !empty($localAccountExist)){
$modify = $bdd->prepare("UPDATE `vbcms-localAccounts` SET username = ?, password = ? WHERE userIdAssoc = ?");
$modify->execute([$_POST['localUserUsername'], password_hash($_POST['localUserPassword1'], PASSWORD_DEFAULT), $_GET["setLocalAccount"]]);
$modify->execute([$_POST['localUserUsername'], password_hash($_POST['localUserPassword1'], PASSWORD_DEFAULT), $accountId]);
}else{
$query = $bdd->prepare('INSERT INTO `vbcms-localAccounts` (`userIdAssoc`, `username`, `password`, `profilePic`) VALUES (?,?,?,?)');
$query->execute([$_GET["setLocalAccount"], $_POST['localUserUsername'], password_hash($_POST['localUserPassword1'], PASSWORD_DEFAULT), VBcmsGetSetting("websiteUrl")."vbcms-admin/images/misc/programmer.png"]);
// Si on en créé un...
// default profil pic = VBcmsGetSetting("websiteUrl")."vbcms-admin/images/misc/programmer.png"
$query = $bdd->prepare('INSERT INTO `vbcms-localAccounts` (`userIdAssoc`, `username`, `password`) VALUES (?,?,?)');
$query->execute([$accountId, $_POST['localUserUsername'], password_hash($_POST['localUserPassword1'], PASSWORD_DEFAULT)]);
$userGroup = $bdd->query("SELECT groupId FROM `vbcms-userGroups` WHERE groupName = 'users'")->fetch(PDO::FETCH_ASSOC);
$query = $bdd->prepare('INSERT INTO `vbcms-users` (`id`, `auth`, `authId`, `username`, `groupId`) VALUES (NULL,?,?,?,?)');
$query->execute(["vbcms", $accountId, $_POST['localUserUsername'], $userGroup["groupId"]]);
// On renseigne les paramètres
$insertSettings = $bdd->prepare("INSERT INTO `vbcms-usersSettings` (`userId`, `name`, `value`) VALUES (?,?,?)");
$insertSettings->execute([$accountId, 'profilPic', VBcmsGetSetting("websiteUrl")."vbcms-admin/images/misc/programmer.png"]);
$insertSettings = $bdd->prepare("INSERT INTO `vbcms-usersSettings` (`userId`, `name`, `value`) VALUES (?,?,?)");
$insertSettings->execute([$accountId, 'joinedDate', date("Y-m-d H:i:s")]);
$insertSettings = $bdd->prepare("INSERT INTO `vbcms-usersSettings` (`userId`, `name`, `value`) VALUES (?,?,?)");
$insertSettings->execute([$accountId, 'language', "FR"]);
}
} elseif(isset($_GET)&&!empty($_GET)){
echo "Commande \"".array_key_first($_GET)."(".$_GET[array_key_first($_GET)].")\" non reconnue.";
} else {?>
......
......@@ -2,7 +2,7 @@
<div class="flex-grow-1 d-flex flex-column">
<div class="mt-2">
<button class="btn btn-sm btn-brown" data-toggle="modal" data-target="#inviteUserModal"><i class="fas fa-envelope"></i> <?=translate('inviteUser')?></button>
<button class="btn btn-outline-brown btn-sm" data-toggle="modal" data-target="#createUserModal"><i class="fas fa-user-plus"></i> <?=translate('localAccountCreation')?></button>
<button class="btn btn-outline-brown btn-sm" onclick="editLocalAccount()"><i class="fas fa-user-plus"></i> <?=translate('localAccountCreation')?></button>
<!--<a href="#" class="btn btn-outline-brown btn-sm"><i class="fas fa-user-plus"></i> <?=translate('localAccountCreation')?></a>-->
</div>
<?php
......@@ -152,7 +152,7 @@
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header bg-brown text-white">
<h5 id="extensionActivationModalTitle" class="modal-title"><?=translate('modifyLocalAccount')?></h5>
<h5 id="extensionActivationModalTitle" class="modal-title"><?=translate('createLocalAccount')?></h5>
<button type="button" class="close text-white" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">&times;</span>
</button>
......@@ -211,7 +211,8 @@ window.addEventListener('load', function() {
}, false);
})();
function editLocalAccount(id) {
function editLocalAccount(id = 0) {
if(id!=0){
$.get("<?=VBcmsGetSetting("websiteUrl")?>vbcms-admin/backTasks/?getNetIdLocalAccount="+id, function(data) {
var json = JSON.parse(data);
if(!jQuery.isEmptyObject(json)){
......@@ -220,6 +221,12 @@ function editLocalAccount(id) {
$("#localUserUsername").val("");
}
});
$("#extensionActivationModalTitle").html("<?=translate('modifyLocalAccount')?>");
} else {
$("#localUserUsername").val("");
$("#extensionActivationModalTitle").html("<?=translate('createLocalAccount')?>");
}
$("#registerBtn").attr("onclick", "sendLocalAccountInfos('"+id+"')");
$('#localAccountCreationModal').modal('show');
}
......
......@@ -84,6 +84,7 @@ $translation["localAccountCreation_yourPasswordIsTooWeak"] = "Ton mot de passe d
$translation["whyCreateALocalAccount"] = "Pourquoi créer un compte local?";
$translation["localAccountCreation_error"] = "Erreur lors de la création du compte local. Check les logs pour plus d'infos (ouai j'ai pas fait de vérification ^^').";
$translation["localAccountCreation_success"] = "Compte local créé. 🥳";
$translation["createLocalAccount"] = "Créer un compte local";
$translation["unknownTranslation"] = "Traduction inconnue";
$translation["createUser"] = "Créer un utilisateur";
$translation["modifyUser"] = "Modifier l'utilisateur";
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please to comment