findAll(); } public function getAllGroups(): array { $gtw = new GroupGateway(); return $gtw->findAll(); } public function getAllStudent():array { $gtw = new UserGateway(); return $gtw->findAll(); } public function findByUser($id):array { $gtw = new VocabularyListGateway(); return $gtw->findByUser($id); } public function getVocabByName(string $name):array{ $gtw = new VocabularyListGateway(); $res = $gtw->findByName($name); return $res; } public function findByIdVoc($id):array { $gtw = new TranslationGateway(); return $gtw->findByIdVoc($id); } public function removeVocabFromGroup(int $vocabID, int $groupID): void{ $mdl = new GroupGateway(); $mdl->removeVocabFromGroup($vocabID, $groupID); } public function addVocabToGroup(int $vocabID, int $groupID): void{ $mdl = new GroupGateway(); $mdl->addVocabToGroup($vocabID, $groupID); } public function findGroupVocab(int $vocab): array { $mdl = new GroupGateway(); return $mdl->findGroupVocab($vocab); } public function findGroupNoVocab(int $vocab): array { $mdl = new GroupGateway(); return $mdl->findGroupNoVocab($vocab); } public function RemoveVocById(int $id):void{ $gtw = new VocabularyListGateway(); $res = $gtw->remove($id); } public function addVocabList(int $userID, string $name, string $image, array $words): void { $vocabGtw = new VocabularyListGateway(); $vocabID = $vocabGtw->add(array($name, $image, $userID)); $transGtw = new TranslationGateway(); foreach ($words as $word) { $transGtw->add(array($word[0], $word[1], $vocabID)); } } public function is(string $login, array $roles): User { $gtw = new UserGateway(); $user = $gtw->findUserByEmail($login); if ($user->getRoles() == $roles && in_array('teacher', $user->getRoles())) return $user; else return null; } }