diff --git a/controller/ControleurAuteur.php b/controller/ControleurAuteur.php index 99e02c4fab4572abefb1894322b33b0ebed99edb..7936ad2d7aba3fa897c92de1c8f23b70f5350078 100644 --- a/controller/ControleurAuteur.php +++ b/controller/ControleurAuteur.php @@ -5,6 +5,7 @@ require_once("models/Auteur.php"); class ControleurAuteur extends ControleurObjet { protected static string $object = "Auteur"; + /** * Charge la page de la liste des auteurs. * @return string diff --git a/controller/ControleurObjet.php b/controller/ControleurObjet.php index bbfc2963f8f64a8443573ab954bc61c27ffe068c..df12d81674f316ad0d89ddfce5a4cfec762f8170 100644 --- a/controller/ControleurObjet.php +++ b/controller/ControleurObjet.php @@ -2,12 +2,6 @@ class ControleurObjet { - public static function lireObjets() : string - { - $titre = "Listes des " . strtolower(static::$object) . "s"; - return $titre; - } - /** * Affiche la page de cration d'un objet et se charge également de sa création. * @return string @@ -29,13 +23,27 @@ class ControleurObjet $createdObject["status"] = "danger"; // Pour le style Bootstrap } } - if(!empty($_GET["describeTable"])){ - return json_encode(Objet::describeObject($_GET["describeTable"])); - } return view('formulaire-creation-objet', [ 'pageTitle' => 'Créer un objet', 'insertMessage' => $createdObject ]); } + + /** + * Retourne une liste JSON de la description de la table + * @return string + */ + public static function describeTable() : string + { + if(!empty($_GET["describeTable"])){ + return json_encode(Objet::describeObject($_GET["describeTable"])); + } else { + return json_encode([ + "status" => "fail", + "message" => "Veuillez spécifier un nom de table!", + "columns" => [] + ]); + } + } } \ No newline at end of file diff --git a/index.php b/index.php index 1af012b3aa6731d77b8d4a34cc49c0fe0cb9147f..1806364735a195ffb9b70a50c78f82c090720435 100644 --- a/index.php +++ b/index.php @@ -27,6 +27,7 @@ if (empty($_REQUEST["action"])) { "lireAdherents" => ControleurAdherent::lireAdherents(), "lireLivre" => ControleurLivre::lireLivre(), "lireLivres" => ControleurLivre::lireLivres(), + "describeTable" => ControleurObjet::describeTable(), default => ControleurAuteur::lireAuteur(), }; } catch (Exception $e) { diff --git a/resources/views/formulaire-creation-objet.php b/resources/views/formulaire-creation-objet.php index 923e0bdf9517cc1696f50e065cd54b05ea15de01..d5e49f3bdc94e07357084e2f6c562d5489f6a8d3 100644 --- a/resources/views/formulaire-creation-objet.php +++ b/resources/views/formulaire-creation-objet.php @@ -56,7 +56,7 @@ async function loadObjectTypeForm(objectType){ objectForm.innerHTML = ""; - await fetch('?action=creerObjet&describeTable=' + objectType) + await fetch('?action=describeTable&describeTable=' + objectType) .then(res => res.json()) .then((out) => { console.log('Output: ', out);