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

15H58 - Base Functions assoc

parent 55abf99c
No related branches found
No related tags found
No related merge requests found
......@@ -95,6 +95,14 @@ if (isset($_GET["getNotifications"])) {
}
}
// Elle peut être utilisée comme fonction de base
$baseFunctions = $bdd->prepare("SELECT * FROM `vbcms-baseModulesAssoc` WHERE extensionName = ?");
$baseFunctions->execute([$extensionToDisable['name']]);
foreach($baseFunctions as $baseFunction){
$fixedAssoc = $bdd->prepare("UPDATE `vbcms-baseModulesAssoc` SET extensionName = '' WHERE name = ?");
$fixedAssoc->execute([$baseFunction['name']]);
}
} elseif (isset($_GET["checkModulesAliases"])&&!empty($_GET["checkModulesAliases"])){
$aliases = json_decode($_GET["checkModulesAliases"],true);
$aliasesAlreadyUsed = array();
......@@ -161,6 +169,11 @@ if (isset($_GET["getNotifications"])) {
if (isset($_POST["autoInstallCriticalUpdates"])) $response = $bdd->query("UPDATE `vbcms-settings` SET value='1' WHERE name='autoInstallCriticalUpdates'");
else $response = $bdd->query("UPDATE `vbcms-settings` SET value='0' WHERE name='autoInstallCriticalUpdates'");
}elseif (isset($_GET["fixBaseFunctionAssoc"])&& (isset($_POST)&&!empty($_POST))) {
foreach ($_POST as $assocName => $extName){
$fixedAssoc = $bdd->prepare("UPDATE `vbcms-baseModulesAssoc` SET extensionName = ? WHERE name = ?");
$fixedAssoc->execute([$extName, $assocName]);
}
} elseif(isset($_GET)&&!empty($_GET)){
echo "Commande \"".array_key_first($_GET)."(".$_GET[array_key_first($_GET)].")\" non reconnue.";
} else {?>
......
......@@ -66,6 +66,10 @@ foreach ($requiredModulesNames as $requiredModuleName){
}
}
// Maintenant on va vérifier que les modules de bases ont bien des associations
$emptyBaseModules = $bdd->query("SELECT * FROM `vbcms-baseModulesAssoc` WHERE extensionName = ''")->fetchAll(PDO::FETCH_ASSOC);
?>
<!DOCTYPE html>
<html>
......@@ -108,6 +112,10 @@ foreach ($requiredModulesNames as $requiredModuleName){
<?php } ?>
<?php
if(!empty($emptyBaseModules)){
echo '<div class="alert alert-danger" role="alert">'.translate("younHaveOneOrMoreUnsatisfiedBaseModuleAssotiation").' <strong><a href="#" class="alert-link" data-toggle="modal" data-target="#unsatisfiedBaseFunctionsModal">'.translate("clickHereToSolveThoseAssiociations").'</a></strong></div>';
}
foreach ($extensionsList as $extensionTypeName => $extensionTypeExtensions){
echo "<h5>".translate("ws_".$extensionTypeName.'s')."</h5>";
foreach ($extensionTypeExtensions as $extension){
......@@ -241,6 +249,43 @@ foreach ($requiredModulesNames as $requiredModuleName){
</div>
</div>
<div class="modal fade" id="unsatisfiedBaseFunctionsModal">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header bg-brown text-white">
<h5 id="extensionDesacctivationModalTitle" class="modal-title"><?=translate("fixAssoc")?></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">
<form id="unsatisfiedBaseFunctionsModalBody" method="post">
<p><?=translate("chooseAnExtForEachNonSatisfiedFunc")?></p>
<?php
if(!empty($emptyBaseModules)){
$activatedModules = $bdd->query("SELECT * FROM `vbcms-activatedExtensions` WHERE type='module'")->fetchAll(PDO::FETCH_ASSOC);
foreach($emptyBaseModules as $emptyBaseModule){
echo '<div class="form-group">';
echo '<label for="exampleFormControlSelect1">'.translate($emptyBaseModule['name']).'</label>';
echo '<select class="form-control" name="'.$emptyBaseModule['name'].'">';
echo '<option selected>'.translate("none-f").'</option>';
foreach($activatedModules as $activatedModule){
echo '<option value="'.$activatedModule['name'].'">'.$activatedModule['name'].'</option>';
}
echo '</select></div>';
}
}
?>
</form>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-outline-brown" data-dismiss="modal"><?=translate("close")?></button>
<button onclick="fixBaseFunctionAssoc()" type="button" class="btn btn-brown"><?=translate("save")?></button>
</div>
</div>
</div>
</div>
<script type="text/javascript">
$(function () {
$('[data-toggle="tooltip"]').tooltip()
......@@ -361,6 +406,26 @@ foreach ($requiredModulesNames as $requiredModuleName){
function unsuscribeAddon(name){
}
function fixBaseFunctionAssoc(){
$.post( "<?=$GLOBALS['websiteUrl']?>vbcms-admin/backTasks?fixBaseFunctionAssoc", $( "#unsatisfiedBaseFunctionsModalBody" ).serialize() )
.done(function( data ) {
if(data!=""){
SnackBar({
message: data,
status: "danger",
timeout: false
});
} else {
SnackBar({
message: '<?=translate("success-saving")?>',
status: "success"
});
// On peut reload le contenu de la page avec cette fonction
setSettingsContent();
}
});
}
</script>
</body>
</html>
\ No newline at end of file
......@@ -22,7 +22,7 @@ $translation["noCategory"] = "Sans catégorie";
$translation["permalink"] = "Permalien";
$translation["description"] = "Description";
$translation["chooseAPicture"] = "Choisir une image";
$translation["save"] = "Sauvegarde";
$translation["save"] = "Sauvegarder";
$translation["saving"] = "Sauvegarde en cours";
$translation["auto-save"] = "Sauvegarde automatique";
$translation["auto-saving"] = "Sauvegarde automatique en cours";
......@@ -44,6 +44,12 @@ $translation["users"] = "Utilisateurs";
$translation["user"] = "Utilisateur";
$translation["superadmins"] = "Super adminstrateurs";
$translation["admins"] = "Administrateurs";
$translation["filemanager"] = "Gestionnaire de fichiers";
$translation["sample"] = "sample";
$translation["sample"] = "sample";
$translation["sample"] = "sample";
$translation["sample"] = "sample";
$translation["sample"] = "sample";
$translation["sample"] = "sample";
$translation["sample"] = "sample";
$translation["sample"] = "sample";
......@@ -73,6 +79,10 @@ $translation["createUser"] = "Créer un utilisateur";
$translation["modifyUser"] = "Modifier l'utilisateur";
$translation["deleteUser"] = "Supprimer l'utilisateur";
$translation["joinedOn"] = "À rejoint le";
$translation["younHaveOneOrMoreUnsatisfiedBaseModuleAssotiation"] = "Tu as une ou plusieurs fonctionnalités de bases qui ne sont pas associées à des extensions.";
$translation["clickHereToSolveThoseAssiociations"] = "Clique ici pour résoudre les associations";
$translation["fixAssoc"] = "Corriger les associations";
$translation["chooseAnExtForEachNonSatisfiedFunc"] = "Choisi une extension pour chaque fonction non associée.";
$translation["sample"] = "sample";
$translation["sample"] = "sample";
$translation["sample"] = "sample";
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment