diff --git a/Project/db/createdb.sql b/Project/db/createdb.sql index 3d8395d..7439ba2 100755 --- a/Project/db/createdb.sql +++ b/Project/db/createdb.sql @@ -63,13 +63,13 @@ CREATE TABLE Language( ); CREATE TABLE Vocabulary( - word varchar(30) PRIMARY KEY + word varchar(255) PRIMARY KEY ); CREATE TABLE Translate( id int(10) PRIMARY KEY AUTO_INCREMENT, - firstWord varchar(30), - secondWord varchar(30), + firstWord varchar(255), + secondWord varchar(255), listVoc int(10), FOREIGN KEY (firstWord) REFERENCES Vocabulary(word), FOREIGN KEY (secondWord) REFERENCES Vocabulary(word), @@ -78,7 +78,7 @@ CREATE TABLE Translate( CREATE TABLE Register( language varchar(30), - word varchar(30), + word varchar(255), FOREIGN KEY (language) REFERENCES Language(name), FOREIGN KEY (word) REFERENCES Vocabulary(word), PRIMARY KEY (language, word) diff --git a/Project/db/defaultinsert.sql b/Project/db/defaultinsert.sql index 9acb609..15af644 100755 --- a/Project/db/defaultinsert.sql +++ b/Project/db/defaultinsert.sql @@ -81,3 +81,116 @@ INSERT INTO Practice VALUES (1, 2); INSERT INTO Practice VALUES (2, 1); INSERT INTO Practice VALUES (3, 3); + +-- FROM THE MAIL +INSERT INTO VocabularyList VALUES(4, "Entreprise", "", 5); + +-- Vocabulary creation : EN +INSERT INTO Vocabulary VALUES ("Corporate Headquarters / Head Office"); +INSERT INTO Vocabulary VALUES ("Corporate Brochure"); +INSERT INTO Vocabulary VALUES ("The Board of Directors"); +INSERT INTO Vocabulary VALUES ("Boardroom"); +INSERT INTO Vocabulary VALUES ("C.E.O (Chief Executive Officer)"); +INSERT INTO Vocabulary VALUES ("The Facilities (a facility = a building)"); +INSERT INTO Vocabulary VALUES ("Plant / Factory"); +INSERT INTO Vocabulary VALUES ("Workshop"); +INSERT INTO Vocabulary VALUES ("Warehouse"); +INSERT INTO Vocabulary VALUES ("Fence"); +INSERT INTO Vocabulary VALUES ("Lobby/Entrance Hall"); +INSERT INTO Vocabulary VALUES ("Branch"); +INSERT INTO Vocabulary VALUES ("Nationwide"); +INSERT INTO Vocabulary VALUES ("Overseas / Abroad"); +INSERT INTO Vocabulary VALUES ("Executives"); +INSERT INTO Vocabulary VALUES ("Corporations Firms / Companies"); +INSERT INTO Vocabulary VALUES ("The Chairman"); +INSERT INTO Vocabulary VALUES ("Management"); +INSERT INTO Vocabulary VALUES ("A Supplier"); +INSERT INTO Vocabulary VALUES ("Retailer"); + +-- Register : EN +INSERT INTO Register VALUES ("English", "Corporate Headquarters / Head Office"); +INSERT INTO Register VALUES ("English", "Corporate Brochure"); +INSERT INTO Register VALUES ("English", "The Board of Directors"); +INSERT INTO Register VALUES ("English", "Boardroom"); +INSERT INTO Register VALUES ("English", "C.E.O (Chief Executive Officer)"); +INSERT INTO Register VALUES ("English", "The Facilities (a facility = a building)"); +INSERT INTO Register VALUES ("English", "Plant / Factory"); +INSERT INTO Register VALUES ("English", "Workshop"); +INSERT INTO Register VALUES ("English", "Warehouse"); +INSERT INTO Register VALUES ("English", "Fence"); +INSERT INTO Register VALUES ("English", "Lobby/Entrance Hall"); +INSERT INTO Register VALUES ("English", "Branch"); +INSERT INTO Register VALUES ("English", "Nationwide"); +INSERT INTO Register VALUES ("English", "Overseas / Abroad"); +INSERT INTO Register VALUES ("English", "Executives"); +INSERT INTO Register VALUES ("English", "Corporations Firms / Companies"); +INSERT INTO Register VALUES ("English", "The Chairman"); +INSERT INTO Register VALUES ("English", "Management"); +INSERT INTO Register VALUES ("English", "A Supplier"); +INSERT INTO Register VALUES ("English", "Retailer"); + +-- Vocabulary creation : FR +INSERT INTO Vocabulary VALUES ("le siège de la société"); +INSERT INTO Vocabulary VALUES ("plaquette de la société"); +INSERT INTO Vocabulary VALUES ("le conseil d’administration"); +INSERT INTO Vocabulary VALUES ("salle du conseil"); +INSERT INTO Vocabulary VALUES ("le PDG"); +INSERT INTO Vocabulary VALUES ("les installations"); +INSERT INTO Vocabulary VALUES ("usine"); +INSERT INTO Vocabulary VALUES ("atelier"); +INSERT INTO Vocabulary VALUES ("entrepôt, dépôt"); +INSERT INTO Vocabulary VALUES ("clôture"); +INSERT INTO Vocabulary VALUES ("l’entrée"); +INSERT INTO Vocabulary VALUES ("agence"); +INSERT INTO Vocabulary VALUES ("à l’échelle nationale"); +INSERT INTO Vocabulary VALUES ("à l’étranger"); +INSERT INTO Vocabulary VALUES ("les dirigeants"); +INSERT INTO Vocabulary VALUES ("entreprises"); +INSERT INTO Vocabulary VALUES ("président"); +INSERT INTO Vocabulary VALUES ("la gestion, ou les cadres de l’entreprise"); +INSERT INTO Vocabulary VALUES ("fournisseur"); +INSERT INTO Vocabulary VALUES ("détaillant"); + +-- Register : FR +INSERT INTO Register VALUES ("French", "le siège de la société"); +INSERT INTO Register VALUES ("French", "plaquette de la société"); +INSERT INTO Register VALUES ("French", "le conseil d’administration"); +INSERT INTO Register VALUES ("French", "salle du conseil"); +INSERT INTO Register VALUES ("French", "le PDG"); +INSERT INTO Register VALUES ("French", "les installations"); +INSERT INTO Register VALUES ("French", "usine"); +INSERT INTO Register VALUES ("French", "atelier"); +INSERT INTO Register VALUES ("French", "entrepôt, dépôt"); +INSERT INTO Register VALUES ("French", "clôture"); +INSERT INTO Register VALUES ("French", "l’entrée"); +INSERT INTO Register VALUES ("French", "agence"); +INSERT INTO Register VALUES ("French", "à l’échelle nationale"); +INSERT INTO Register VALUES ("French", "à l’étranger"); +INSERT INTO Register VALUES ("French", "les dirigeants"); +INSERT INTO Register VALUES ("French", "entreprises"); +INSERT INTO Register VALUES ("French", "président"); +INSERT INTO Register VALUES ("French", "la gestion, ou les cadres de l’entreprise"); +INSERT INTO Register VALUES ("French", "fournisseur"); +INSERT INTO Register VALUES ("French", "détaillant"); + +-- Translate +INSERT INTO Translate VALUES (null, "le siège de la société", "Corporate Headquarters / Head Office", 4); +INSERT INTO Translate VALUES (null, "plaquette de la société", "Corporate Brochure", 4); +INSERT INTO Translate VALUES (null, "le conseil d’administration", "The Board of Directors", 4); +INSERT INTO Translate VALUES (null, "salle du conseil", "Boardroom", 4); +INSERT INTO Translate VALUES (null, "le PDG", "C.E.O (Chief Executive Officer)", 4); +INSERT INTO Translate VALUES (null, "les installations", "The Facilities (a facility = a building)", 4); +INSERT INTO Translate VALUES (null, "usine", "Plant / Factory", 4); +INSERT INTO Translate VALUES (null, "atelier", "Workshop", 4); +INSERT INTO Translate VALUES (null, "entrepôt, dépôt", "Warehouse", 4); +INSERT INTO Translate VALUES (null, "clôture", "Fence", 4); +INSERT INTO Translate VALUES (null, "l’entrée", "Lobby/Entrance Hall", 4); +INSERT INTO Translate VALUES (null, "agence", "Branch", 4); +INSERT INTO Translate VALUES (null, "à l’échelle nationale", "Nationwide", 4); +INSERT INTO Translate VALUES (null, "à l’étranger", "Overseas / Abroad", 4); +INSERT INTO Translate VALUES (null, "les dirigeants", "Executives", 4); +INSERT INTO Translate VALUES (null, "entreprises", "Corporations Firms / Companies", 4); +INSERT INTO Translate VALUES (null, "président", "The Chairman", 4); +INSERT INTO Translate VALUES (null, "la gestion, ou les cadres de l’entreprise", "Management", 4); +INSERT INTO Translate VALUES (null, "fournisseur", "A Supplier", 4); +INSERT INTO Translate VALUES (null, "détaillant", "Retailer", 4); \ No newline at end of file diff --git a/Project/php/controller/AbsController.php b/Project/php/controller/AbsController.php index 58f3d99..6633b4e 100755 --- a/Project/php/controller/AbsController.php +++ b/Project/php/controller/AbsController.php @@ -68,14 +68,18 @@ abstract class AbsController $wordList = (new \gateway\TranslationGateway)->findByIdVoc($idVoc); $wordShuffle = array(); + shuffle($wordList); $pairs = []; - for ($i = 0; $i != count($wordList); $i += 1) { + $maxWords = 28; + + for ($i = 0; $i < min(count($wordList), $maxWords / 2); $i++) { $wordShuffle[] = $word1 = $wordList[$i]->getWord1(); $wordShuffle[] = $word2 = $wordList[$i]->getWord2(); $pairs[] = [$word1, $word2]; } + shuffle($wordShuffle); echo $twig->render('memory.html', [ diff --git a/Project/php/css/memory.css b/Project/php/css/memory.css index 4de1b9c..3287863 100755 --- a/Project/php/css/memory.css +++ b/Project/php/css/memory.css @@ -3,19 +3,21 @@ body { justify-content: center; align-items: center; height: 100vh; - margin: 0; background-color: #f0f0f0; + margin-left: 15vh; + margin-right: 15vh; } #memory-game { - display: flex; - flex-wrap: wrap; + display: grid; + grid-template-columns: repeat(7, 1fr); + grid-template-rows: repeat(4, 140px); /* Hauteur fixe pour chaque carte, ajustez si nécessaire */ gap: 10px; } .card { - width: 100px; - height: 100px; + width: 100%; + height: 100%; background-color: #fff; border: 2px solid #ccc; border-radius: 8px; @@ -28,10 +30,14 @@ body { } .card.flipped { - background-color: #f0f0f0; /* Couleur de fond lorsqu'une carte est retournée */ + background-color: #f0f0f0; } .card.found { - background-color: #8aff8a; /* Couleur de fond lorsqu'une paire est trouvée */ + background-color: #8aff8a; cursor: default; +} + +.center-text { + text-align: center; } \ No newline at end of file diff --git a/Project/php/templates/memory.html b/Project/php/templates/memory.html index 25e24e4..6cb9535 100755 --- a/Project/php/templates/memory.html +++ b/Project/php/templates/memory.html @@ -9,7 +9,7 @@