diff --git a/vbcms-core/classes.php b/vbcms-core/classes.php
index 8fca77f1f62b680aca82b5f7a09950ff3c7084d2..0794b89bd6100a518e13efcba0c59a7496640b56 100644
--- a/vbcms-core/classes.php
+++ b/vbcms-core/classes.php
@@ -1,319 +1,13 @@
 <?php
-
-class moduleDatabaseConnect {
-    // UPDATE 01/07/2021 : N'est plus utile après reflexion
-    
-    // Le but de cette classe est de créer un driver sql sécurisé, ne permettant pas de causer des dégats à la base de donnée du cms
-    // Le module devra s'identifier en initialisant sa connexion, et le driver se chargera de vérifier qu'il a bien l'autorisation d'utiliser la bdd
-    
-    private $bdd; // On a besoin du vrai driver sql
-
-    private $moduleName;
-    private $permissions = array();
-    private $tables = array();
-
-    // Variables propres à la requête
-    private $query; // Query sera remis à 0 lors d'un select
-    private $selectedColumns = array();
-    private $selectedTables = array();
-    private $condition;
-
-    // Variables pour la préparation
-    private $prepareType;
-    private $preparePositions = array();
-    private $isPreparedQuery;
-
-    // Variables pour l'éxecution de la requête
-    private $queryResult;
-
-    public function __construct($moduleName) {
-        global $bdd;
-        $this->bdd = $bdd;
-        $this->moduleName = $moduleName;
-
-        // Maintenant on va vérifier que l'extension dispose bien des permissions demandées
-        $response = $bdd->prepare("SELECT * FROM `vbcms-extensionsPermissions` WHERE extensionName = ?");
-        $response->execute([$moduleName]);
-        $moduleStoredPermissions = $response->fetch(PDO::FETCH_ASSOC);
-        
-        $moduleStoredPermissions["databasePerms"] = json_decode($moduleStoredPermissions["databasePerms"], true);
-        if(!empty($moduleStoredPermissions["databasePerms"])){
-            
-            // On va renseigner les permissions de l'extension, ainsi que ses tables
-            foreach ($moduleStoredPermissions["databasePerms"]["permissions"] as $moduleStoredPermission){
-                array_push($this->permissions, $moduleStoredPermission);
-            }
-            foreach ($moduleStoredPermissions["databasePerms"]["tables"] as $moduleStoredPermissionTable){
-                array_push($this->tables, $moduleStoredPermissionTable);
-            }
-        } else {
-            // Ici, l'extension n'a aucune permission d'accordée
-            throw new Exception('ERREUR: Vous ne disposez d\'aucune autorisation sur la base de donnée.');
-        }
-    }
-
-    // À partir d'ici, ce ne seront que des fonctions de type requête
-
-    // SELECT/UPDATE/DELETE doivent être éxecuté en premier
-    function select($selectedColumns){
-        // On vide $query
-        $this->query = null; $queryResult=null;
-        $this->isPreparedQuery = false;
-        
-        if(!is_array($selectedColumns)) {
-            $temp = $selectedColumns;
-            $selectedColumns = null;
-            $selectedColumns[0] = $temp;
-            $temp = null;
-        }
-        $this->selectedColumns = $selectedColumns;
-        $this->query = "SELECT ";
-        for($i = 0; $i < count($selectedColumns); $i++){
-            if (!empty($selectedColumns[$i+1])) {
-                $this->query = $this->query.$selectedColumns[$i].",";
-            } else {
-                $this->query = $this->query.$selectedColumns[$i];
-            }
-        }
-    }
-
-    function update($selectedColumn){
-        $this->query = null; $queryResult=null;
-        $this->isPreparedQuery = false;
-
-        unset($selectedColumns);
-        $selectedColumns[0] = $selectedColumn;
-        $this->query = "UPDATE ".$selectedColumn;
-    }
-
-    function delete(){
-        $this->query = "DELETE";
-        $this->isPreparedQuery = false;
-    }
-
-    function from($selectedTables){
-        if(!is_array($selectedTables)) {
-            $temp = $selectedTables;
-            $selectedTables = null;
-            $selectedTables[0] = $temp;
-            $temp = null;
-        }
-
-        $this->selectedTables = $selectedTables;
-        // Ici on voit bien l'intérêt de lancer SELECT en premier car on ne fait que rajouter les instructions
-        $this->query = $this->query." FROM ";
-        for($i = 0; $i < count($selectedTables); $i++){
-            if(!in_array($selectedTables[$i], $this->tables))
-                throw new Exception('ERREUR: Vous n\'avez pas la permission d\'agir sur la table'.$selectedTables[$i].'.');
-            if (!empty($selectedTables[$i+1])) {
-                $this->query = $this->query.$selectedTables[$i].",";
-            } else {
-                $this->query = $this->query.$selectedTables[$i];
-            }
-        }
-    }
-
-    function where($columnsToCompare, $operators, $columnsToCompareTo){
-        if(!is_array($columnsToCompare)) {
-            $temp = $columnsToCompare;
-            $columnsToCompare = null;
-            $columnsToCompare[0] = $temp;
-            $temp = null;
-        }
-        if(!is_array($operators)) {
-            $temp = $operators;
-            $operators = null;
-            $operators[0] = $temp;
-            $temp = null;
-        }
-        if(!is_array($columnsToCompareTo)) {
-            $temp = $columnsToCompareTo;
-            $columnsToCompareTo = null;
-            $columnsToCompareTo[0] = $temp;
-            $temp = null;
-        }
-        // On utilise des listes pour éviter des détournements tels que des INNER JOIN avec des tables qu'il ne faudrait pas
-        $condition = null;
-        // On fait des vérifications pour être sûr qu'il n'y ai pas un problème de nombre
-        if(count($columnsToCompare)<count($operators))
-            throw new Exception('ERREUR: Le nombre d\'objets à comparer est inférieur au nombre d\'opérateurs.');
-        if(count($columnsToCompareTo)<count($operators))
-            throw new Exception('ERREUR: Le nombre de résultats à comparer est inférieur au nombre d\'opérateurs.');
-        
-        for($i = 0; $i < count($columnsToCompare); $i++){
-            $AndOr = "AND"; // Est utile si on a plusieurs where, permet de faire un AND par défaut
-
-            // Ici on vérifie que l'extension n'a pas précisé un AND ou un OR avec les symboles && et ||
-            if(startsWith($columnsToCompare[$i], "&&")){
-                $AndOr = "AND";
-                substr($columnsToCompare[$i], 2); // On supprime le flag
-            }elseif(startsWith($columnsToCompare[$i], "||")){
-                $AndOr = "OR";
-                substr($columnsToCompare[$i], 2); // On supprime le flag
-            }
-
-            // Maitenant on peut insérer la colonne/objet a comparer
-            $condition += $columnsToCompare[$i];
-            if(!empty($operators[$i])){
-                // Ici on va check si l'opérateur = IS NULL ou IS NOT NULL car dans ce cas, on a pas besoin d'un objet à comparer
-                if(in_array($operators[$i], ["IS NULL", "IS NOT NULL"])){
-                    $condition += " ".$operators[$i];
-                } else {
-                    $condition += $operators[$i];
-                    $condition += $columnsToCompareTo[$i];
-                }                
-            }
-
-            // On vérifie quand même qu'il y a bien un prochain where
-            if (!empty($columnsToCompare[$i+1])) {
-                $this->query = $this->query." ".$AndOr." "; // Et on applique le AND ou le OR
-            }
-        }
-        $this->query = $this->query." WHERE ".$condition;
-    }
-
-    function set($columnsToSet, $valuesToSet){
-        if(!is_array($columnsToSet)) {
-            $temp = $columnsToSet;
-            $columnsToSet = null;
-            $columnsToSet[0] = $temp;
-            $temp = null;
-        }
-        if(!is_array($valuesToSet)) {
-            $temp = $valuesToSet;
-            $valuesToSet = null;
-            $valuesToSet[0] = $temp;
-            $temp = null;
-        }
-
-        if(count($columnsToSet)!=count($valuesToSet))
-            throw new Exception('ERREUR: Le nombre de colonnes à modifier n\'est pas égal au nombre de valeurs spécifiées.');
-        $this->query = $this->query." SET ";
-
-        for($i = 0; $i < count($columnsToSet); $i++){
-            if (!empty($columnsToSet[$i+1])) {
-                $this->query = $this->query.$columnsToSet[$i]."=".$valuesToSet[$i].",";
-            } else {
-                $this->query = $this->query.$columnsToSet[$i]."=".$valuesToSet[$i];
-            }
-        }
-    }
-
-    function innerJoin(array $tablesToJoin, array $keys){
-        if(count($tablesToJoin)<2 || count($keys)<1 || count($tablesToJoin) > 2 || count($keys) > 2){
-            throw new Exception('ERREUR: Veuillez vérifier le nombre de tables/clés.');
-        }
-
-        foreach($tablesToJoin as $tableToJoin){
-            if(!in_array($tableToJoin, $tables))
-                throw new Exception('ERREUR: Vous n\'avez pas la permission d\'agir sur la table '.$tableToJoin.'.');
-        }
-        if(empty($keys[1])) $keys[1]=$keys[0];
-        $this->query = $this->query." INNER JOIN ".$tablesToJoin[1]." ON ".$tablesToJoin[0].".".$keys[0]." = ".$tablesToJoin[1].".".$keys[1];
-    }
-
-    function leftJoin(array $tablesToJoin, array $keys){
-        if(count($tablesToJoin)<2 || count($keys)<1 || count($tablesToJoin) > 2 || count($keys) > 2){
-            throw new Exception('ERREUR: Veuillez vérifier le nombre de tables/clés.');
-        }
-
-        foreach($tablesToJoin as $tableToJoin){
-            if(!in_array($tableToJoin, $tables))
-                throw new Exception('ERREUR: Vous n\'avez pas la permission d\'agir sur la table '.$tableToJoin.'.');
-        }
-        if(empty($keys[1])) $keys[1]=$keys[0];
-        $this->query = $this->query." LEFT JOIN ".$tablesToJoin[1]." ON ".$tablesToJoin[0].".".$keys[0]." = ".$tablesToJoin[1].".".$keys[1];
-    }
-
-    function rightJoin(array $tablesToJoin, array $keys){
-        if(count($tablesToJoin)<2 || count($keys)<1 || count($tablesToJoin) > 2 || count($keys) > 2){
-            throw new Exception('ERREUR: Veuillez vérifier le nombre de tables/clés.');
-        }
-
-        foreach($tablesToJoin as $tableToJoin){
-            if(!in_array($tableToJoin, $tables))
-                throw new Exception('ERREUR: Vous n\'avez pas la permission d\'agir sur la table '.$tableToJoin.'.');
-        }
-        if(empty($keys[1])) $keys[1]=$keys[0];
-        $this->query = $this->query." RIGHT JOIN ".$tablesToJoin[1]." ON ".$tablesToJoin[0].".".$keys[0]." = ".$tablesToJoin[1].".".$keys[1];
-    }
-
-    function fullJoin(array $tablesToJoin, array $keys){
-        if(count($tablesToJoin)<2 || count($keys)<1 || count($tablesToJoin) > 2 || count($keys) > 2){
-            throw new Exception('ERREUR: Veuillez vérifier le nombre de tables/clés.');
-        }
-
-        foreach($tablesToJoin as $tableToJoin){
-            if(!in_array($tableToJoin, $tables))
-                throw new Exception('ERREUR: Vous n\'avez pas la permission d\'agir sur la table '.$tableToJoin.'.');
-        }
-        if(empty($keys[1])) $keys[1]=$keys[0];
-        $this->query = $this->query." FULL JOIN ".$tablesToJoin[1]." ON ".$tablesToJoin[0].".".$keys[0]." = ".$tablesToJoin[1].".".$keys[1];
-    }
-
-    function createTable($sqlCommand){
-        $this->query = null;
-    }
-
-    // Pour les requêtes avec du vrai code sql (car c'est quand même bcp mieux)
-    function prepare($sql){
-        unset($this->preparePositions);
-        $this->isPreparedQuery = true;
-
-        if(strpos($sql, "?") !== false){
-            $this->prepareType = "markers";
-            // Ici on prépapre avec des ?
-            $lastPos = 0;
-    
-            while (($lastPos = strpos($query, "?", $lastPos))!== false) {
-                $this->preparePositions[] = $lastPos;
-                $lastPos = $lastPos + strlen("?");
-                $this->query = $sql;
-            }
-        } elseif(strpos($sql, ":") !== false){
-            // Ici on prépare avec les index
-            $this->prepareType = "namedParameters";
-            $this->query = $sql;
-        }
-    }
-
-    // Partie éxecution et résolution de résultat
-
-    function execute(){
-        if(!$this->isPreparedQuery){
-            $this->queryResult = $this->bdd->query($this->query);
-            //echo $this->query;
-        } else {
-            if($this->prepareType = "makers"){
-
-            }
-        }
-        
-    }
-    
-    function fetch($pdoFetchMethod){
-        return $this->queryResult->fetch($pdoFetchMethod);
-    }
-
-    function fetchColumn($pdoFetchMethod){
-        return $this->queryResult->fetchColumn($pdoFetchMethod);
-    }
-
-    function fetchAll($pdoFetchMethod){
-        return $this->queryResult->fetchAll($pdoFetchMethod);
-    }
-    
-}
-
 class module {
     // Cette classe se chargera de charger les modules
-    private $name, $path, $adminAccess, $clientAccess, $vbcmsVerId, $workshopId;
+    public $name, $path, $adminAccess, $clientAccess, $vbcmsVerId, $workshopId;
 
-    private $extensionFullPath;
+    public $extensionFullPath;
     
-    private $bdd, $mbdd;
+    private $bdd;
 
-    private $permissions = array();
+    public $permissions = array();
 
     public function __construct($name){
         $this->name = $name;
@@ -332,23 +26,7 @@ class module {
             $this->workshopId = $moduleInfos['workshopId'];
 
             $this->extensionFullPath = $GLOBALS['vbcmsRootPath'].'/vbcms-content/extensions/'.$this->path;
-        }
-        
-        //$this->mbdd = new \moduleDatabaseConnect($name);
-        
-        // UPDATE 01/07/2021 : N'est plus utile après reflexion
-        // Maintenant on va vérifier que l'extension dispose bien des permissions demandées
-        /*
-        $response = $bdd->prepare("SELECT * FROM `vbcms-extensionsPermissions` WHERE extensionName = ?");
-        $response->execute([$name]);
-        $permissions = $response->fetch(\PDO::FETCH_ASSOC);
-        $this->permissions = json_decode($permissions['otherPerms'],true);
-        if(empty($this->permissions)){
-            // Ici, l'extension n'a aucune permission d'accordée
-            throw new Exception('ERREUR: Vous ne disposez d\'aucune autorisation.');
-        }
-        */
-        
+        }        
     }
     function initModule($name, $path, $adminAccess, $clientAccess, $vbcmsVerId, $workshopId){
         $this->name = $name;