diff options
Diffstat (limited to 'bl/folderbl.php')
-rw-r--r-- | bl/folderbl.php | 18 |
1 files changed, 14 insertions, 4 deletions
diff --git a/bl/folderbl.php b/bl/folderbl.php index 8a75d5de7..19c31657c 100644 --- a/bl/folderbl.php +++ b/bl/folderbl.php @@ -40,11 +40,20 @@ class FolderBl extends Bl { return $this->mapper->findAllFromUser($userId); } + private function allowNoNameTwice($folderName, $userId){ + $existingFolders = $this->mapper->findByName($folderName, $userId); + if(count($existingFolders) > 0){ + throw new BLException('Error: Folder with name ' . $folderName . + ' exists already!'); + } + } + + public function create($folderName, $userId, $parentId=0) { + $this->allowNoNameTwice($folderName, $userId); - public function create($name, $parentId) { - // TODO: throw error when already existing $folder = new Folder(); - $folder->setName($name); + $folder->setName($folderName); + $folder->setUserId($userId); $folder->setParentId($parentId); return $this->mapper->insert($folder); } @@ -58,7 +67,8 @@ class FolderBl extends Bl { public function rename($folderId, $folderName, $userId){ - // TODO: throw error when already existing + $this->allowNoNameTwice($folderName, $userId); + $folder = $this->find($folderId, $userId); $folder->setName($folderName); $this->mapper->update($folder); |