/**
  * Switches two folders position.
  * @param $folderId int - the folder that is going to switch positions with one that is next to it
  * @param $incremental int - a relative position to the first folder. The folder found in that position
  * switches position with the first folder. It'll be tippically -1 (folderUp) or 1 (folderDown)
  * @access private
  */
 function switchFolders($folderId, $incremental)
 {
     // Get folder
     $folderMapper = new FolderMapper();
     $folder = $folderMapper->get($folderId);
     // Get its parent
     $parentFolder = $folder->getParent();
     // Get its children
     $folderArray = $parentFolder->getChildren();
     // Lookup the folder
     $position = -1000;
     for ($i = 0; $i < count($folderArray); $i++) {
         $arrayFolder = $folderArray[$i];
         if ($folder->getId() == $arrayFolder->getId()) {
             $position = $i;
             break;
         }
     }
     assert($position != -1000);
     $position = $position + $incremental;
     $otherFolder = $folderArray[$position];
     // Switch positions
     $folder->switchPositionWith($otherFolder);
     // Coordinate transaction
     $icfDatabase = new IcfDatabase();
     $conn =& $icfDatabase->dbOpen();
     $conn->StartTrans();
     $folderMapper = new FolderMapper();
     $folderMapper->setConnection($conn);
     // Save objects
     $folderMapper->update($folder);
     $folderMapper->update($otherFolder);
     // Close transaction
     $conn->completeTrans();
     $icfDatabase->dbClose($conn);
 }
Beispiel #2
0
        $folderMapper->insert($folder);
        die("Folder Created Successfully!");
    } else {
        die("Input all params!");
    }
});
$rout_r->map('GET', '/api/folder/rename/', function () {
    session_start();
    global $GLOBALS;
    $query = $GLOBALS['query'];
    if (isset($query["name"]) || isset($query["folderParentId"]) || isset($query["userId"])) {
        $db = new MySqlDAO();
        $folderMapper = new FolderMapper($db);
        //__construct($folderId, $name, $folderInId, $userId)
        $folder = new Folder($query["folderId"], $query["name"], $query["folderParentId"], $query["userId"]);
        $folderMapper->update($folder);
        die("Folder Renamed Successfully!");
    } else {
        die("Input all params!");
    }
});
$rout_r->map('GET', '/api/folder/delete/', function () {
    session_start();
    global $GLOBALS;
    $query = $GLOBALS['query'];
    if (isset($query["folderId"]) || isset($query["name"]) || isset($query["folderParentId"]) || isset($query["userId"])) {
        $db = new MySqlDAO();
        $folderMapper = new FolderMapper($db);
        $folderMapper->delete($query["folderId"]);
        die("Folder Deleted Successfully!");
    } else {