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

14H52 - Base de la désactivation d'un module

parent 0ccd9b85
No related branches found
No related tags found
No related merge requests found
......@@ -78,6 +78,23 @@ if (isset($_GET["getNotifications"])) {
$calledmodule->initModule($extensionInfos["name"], $extensionInfos["path"], $extensionInfos["adminAccess"], $extensionInfos["clientAccess"], $extensionInfos["compatible"], $extensionInfos["workshopId"]);
}
} elseif (isset($_GET["disableExtension"])&&!empty($_GET["disableExtension"])){
$extensionToDisable = json_decode($_GET["disableExtension"],true);
// On va récupérer les informations de l'extension en question
$extensionInfos = $bdd->prepare("SELECT * FROM `vbcms-activatedExtensions` WHERE name = ?");
$extensionInfos->execute([$extensionToDisable['name']]);
$extensionInfos = $extensionInfos->fetch(PDO::FETCH_ASSOC);
if(empty($extensionInfos)) echo "L'extension ".$extensionToDisable['name']." n'a pas été trouvée dans la base de données.";
else {
// Maintenant on va créer l'instance de l'extension et la désactiver
if($extensionInfos["type"]=="module"){
$calledmodule = new VBcms\module($extensionInfos["name"]);
$calledmodule->disableModule($extensionToDisable['deleteData']);
}
}
} elseif (isset($_GET["checkModulesAliases"])&&!empty($_GET["checkModulesAliases"])){
$aliases = json_decode($_GET["checkModulesAliases"],true);
$aliasesAlreadyUsed = array();
......
......@@ -208,14 +208,34 @@ foreach ($requiredModulesNames as $requiredModuleName){
</div>
<div id="depedenciesInfosDiv">
<h5>Note</h5>
<h5><?=$translation["note"]?></h5>
<p><?=$translation['ws_enableRequiredDepedencies']?><br>
<?=$translation['ws_enableRequiredDepedenciesMarkerInfo']?></p>
</div>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-outline-brown" data-dismiss="modal">Fermer</button>
<button id="extensionActivationModalBtn" onclick="" type="button" class="btn btn-brown">Activer</button>
<button type="button" class="btn btn-outline-brown" data-dismiss="modal"><?=$translation["close"]?></button>
<button id="extensionActivationModalBtn" onclick="" type="button" class="btn btn-brown"><?=$translation["ws_enable"]?></button>
</div>
</div>
</div>
</div>
<div class="modal fade" id="extensionDesactivationModal">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header bg-brown text-white">
<h5 id="extensionDesacctivationModalTitle" class="modal-title"><?=$translation["ws_disableExtension"]?></h5>
<button type="button" class="close text-white" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">&times;</span>
</button>
</div>
<div class="modal-body">
<p><?=$translation["ws_askExtToDeleteItsData"]?></p>
</div>
<div class="modal-footer">
<button id="extensionDesactivationModalBtnNo" onclick="" type="button" class="btn btn-outline-brown"><?=$translation["no"]?></button>
<button id="extensionDesactivationModalBtnYes" onclick="" type="button" class="btn btn-brown"><?=$translation["yes"]?></button>
</div>
</div>
</div>
......@@ -315,22 +335,16 @@ foreach ($requiredModulesNames as $requiredModuleName){
}
}
function disableAddon(name, confirm){
$.get("<?=$websiteUrl?>vbcms-admin/backTasks/?checkIfModuleIsUsedByOthers="+name, function(depedenciesId) {
if (depedenciesId!="[]"&&confirm==0) {
$("#extensionActivationModalTitle").html("<?=$translation['ws_requireddependecies']?>");
$("#extensionActivationModalDesc").html("<?=$translation['ws_disableRequireddependecies']?>");
$("#extensionActivationModalBtn").attr("onclick", "disableAddon("+name+", 1)");
$("#extensionActivationModalBtn").html("<?=$translation['ws_disable']?>");
$('#extensionActivationModal').modal('toggle');
function disableAddon(name, deleteData){
if(typeof deleteData === 'undefined'){
$("#extensionDesactivationModalBtnYes").attr("onclick", "disableAddon('"+name+"', true)");
$("#extensionDesactivationModalBtnNo").attr("onclick", "disableAddon('"+name+"', false)");
$('#extensionDesactivationModal').modal('toggle');
} else {
var array = [];
array.push(name);
array.push(depedenciesId);
console.log(name);
console.log(depedenciesId);
console.log("<?=$websiteUrl?>vbcms-admin/backTasks/?disableWSAddon="+encodeURIComponent(JSON.stringify(array)));
$.get("<?=$websiteUrl?>vbcms-admin/backTasks/?disableWSAddon="+encodeURIComponent(JSON.stringify(array)), function(data) {
var array = {};
array.name=name;
array.deleteData=deleteData;
$.get("<?=$websiteUrl?>vbcms-admin/backTasks/?disableExtension="+encodeURIComponent(JSON.stringify(array)), function(data) {
if (data != "") {
SnackBar({
message: "<?=$translation['ws_errorDisableAddon']?>: "+data,
......@@ -340,10 +354,9 @@ foreach ($requiredModulesNames as $requiredModuleName){
} else {
document.location.reload();
}
});
}
})
}
}
function unsuscribeAddon(name){
......
......@@ -3,7 +3,7 @@ function enable(){
}
function disable(){
function disable($deleteData){
}
......
......@@ -32,6 +32,9 @@ $translation["onlineAccountRequired"] = "Connexion aux services de VBcms requise
$translation["close"] = "Fermer";
$translation["update"] = "Mise à jour";
$translation["vbcms-nativeModules"] = "Modules natifs";
$translation["note"] = "Note";
$translation["yes"] = "Oui";
$translation["no"] = "Non";
$translation["sample"] = "sample";
$translation["sample"] = "sample";
$translation["sample"] = "sample";
......@@ -80,13 +83,15 @@ $translation["ws_themes"] = "Thèmes";
$translation["ws_plugins"] = "Plugins";
$translation["ws_extensions"] = "Extensions";
$translation["ws_activateModule"] = "Activer un module";
$translation["ws_disableModule"] = "Désactiver un module";
$translation["ws_disableExtension"] = "Désactiver une extension";
$translation["ws_adminAccess"] = "Accès admin";
$translation["ws_clientAccess"] = "Accès client";
$translation["ws_clientAccessExplaination"] = "Alias auquel le module sera accessible pour le client";
$translation["ws_adminAccessExplaination"] = "Alias auquel le module sera accessible sur le panel admin";
$translation["ws_enableModule"] = "Activer un module";
$translation["ws_cantVerifyModulesAlias"] = "Impossible de vérifier les alias utilisés";
$translation["sample"] = "sample";
$translation["ws_askExtToDeleteItsData"] = "Souhaitez-vous demander à l'extension de supprimer ses données?";
$translation["sample"] = "sample";
$translation["sample"] = "sample";
$translation["sample"] = "sample";
......
......@@ -61,6 +61,12 @@ namespace VBcms{
$query->execute([$name, "module", $path, $adminAccess, $clientAccess, $vbcmsVerId, $this->workshopId]);
}
function disableModule($deleteData){
$bdd=$this->bdd;
$query = $bdd->prepare("DELETE FROM `vbcms-activatedExtensions` WHERE name=?");
$query->execute([$this->name]);
}
function call(array $parameters, $type){
//$mbdd=$this->mbdd;
$bdd=$this->bdd;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment