Patrick BRUGIERE 1 year ago
commit d1cedcce77

@ -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)

@ -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 dadministration");
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 ("lentré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 lentreprise");
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 dadministration");
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", "lentré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 lentreprise");
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 dadministration", "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, "lentré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 lentreprise", "Management", 4);
INSERT INTO Translate VALUES (null, "fournisseur", "A Supplier", 4);
INSERT INTO Translate VALUES (null, "détaillant", "Retailer", 4);

@ -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', [

@ -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;
}

@ -9,7 +9,7 @@
<body>
<div id="memory-game">
{% for word in wordShuffle %}
<div class="card" data-word="{{ word }}">
<div class="card center-text" data-word="{{ word }}">
<span>{{ word }}</span>
</div>
{% endfor %}

Loading…
Cancel
Save