/** * Add a new folder * */ public function addNewFolder() { $am = AccountManager::getInstance(); if (!$am->isLogged()) { return JsonResponseBuilder::failure(); } if (!$am->isGlobalAdmin() && !$am->isLangAdmin()) { return JsonResponseBuilder::failure(); } $project = $am->project; $appConf = $am->appConf; $parentFolder = $this->getRequestVariable('parentFolder'); $newFolderName = $this->getRequestVariable('newFolderName'); if (strlen($newFolderName) < 1) { return JsonResponseBuilder::failure(); } // Don't allow to add a new folder into root system if ($parentFolder == "/") { return JsonResponseBuilder::failure(); } $t = explode("/", $parentFolder); $fileLang = $t[1]; array_shift($t); // skip the first witch is empty array_shift($t); // skip the second witch is the lang $filePath = "/" . implode("/", $t) . $newFolderName; $file = new File($fileLang, $filePath); // We test if this folder not already exist if ($file->exist()) { return JsonResponseBuilder::failure(array('type' => 'folder_already_exist')); } if ($file->createFolder()) { return JsonResponseBuilder::success(); } else { return JsonResponseBuilder::failure(); } }