summaryrefslogtreecommitdiffstats
path: root/bl
diff options
context:
space:
mode:
authorBernhard Posselt <nukeawhale@gmail.com>2013-03-21 23:29:54 +0100
committerBernhard Posselt <nukeawhale@gmail.com>2013-03-21 23:29:54 +0100
commite674fe47e6a44d693314af4149022d51597b42ab (patch)
treeea3bf0764b5f9d7af6127ce102487e1714d567aa /bl
parentb6adabf245fb2e32763dda43a54270eef11d3411 (diff)
disallow creating and renaming of folders that already exist
Diffstat (limited to 'bl')
-rw-r--r--bl/folderbl.php18
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);