/** * Constructs ListController */ function ListController() { $this->Controller(); // Title of the page $this->setPageTitle($this->text["pageTitle"]); // Collect sent data $this->collectControlerData(); $baseClassMapper = new BaseClassMapper(); $folderMapper = new FolderMapper(); $folderClassMapper = new FolderClassMapper(); // Gets all classes for the class combo $classes = $baseClassMapper->getAll(); $this->controllerData["classes"] =& $classes; // Gets all folders for selected class for the folder combo $selClass = $this->getClass(); $foldersClasses = $folderClassMapper->findByClassId($selClass->getId()); $folders = array(); foreach ($foldersClasses as $folderClass) { array_push($folders, $folderClass->getFolder()); } $this->controllerData["folders"] =& $folders; // Set a null object array for the list of objects $this->controllerData["objects"] = array(); // Add items to toolbar $this->constructToolbar(); }
/** * Saves the folder * @param $folder Folder - folder object */ function update($folder) { $folderMapper = new FolderMapper(); // Coordinate transaction $icfDatabase = new IcfDatabase(); $conn =& $icfDatabase->dbOpen(); $conn->StartTrans(); $folderMapper->setConnection($conn); // Update folder $folderMapper->update($folder); $folderClassMapper = new FolderClassMapper(); $folderClassMapper->setConnection($conn); // Delete previous FolderClasses $folderClassMapper->deleteByFolderId($folder->getId()); // Save FolderClasses foreach ($folder->getFolderClasses() as $folderClass) { /* @var $folderClass FolderClass */ $folderClass->setFolderID($folder->getId()); $folderClassMapper->save($folderClass); } // Close transaction $conn->completeTrans(); $icfDatabase->dbClose($conn); }
require_once "classes/object.php"; require_once "JSON.php"; // Bust cache in the head header('Content-type: plain/text'); header("Expires: Mon, 26 Jul 1997 05:00:00 GMT"); // Date in the past header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT"); // always modified header("Cache-Control: no-cache, must-revalidate"); // HTTP/1.1 header("Pragma: no-cache"); // HTTP/1.0 if ($_GET['action'] == 'get_folders') { $id = $_GET['id']; if (is_numeric($id)) { $folderClassMapper = new FolderClassMapper(); $objectMapper = new ObjectMapper(); // Gets all folders for selected class for the folder combo $foldersClasses = $folderClassMapper->findByClassId($id); $folders = array(); $titles = array(); foreach ($foldersClasses as $folderClass) { $folder = $folderClass->getFolder(); $text = $folder->getId() . "|" . $folder->getPathway(); array_push($folders, $text); array_push($titles, $folder->getPathway()); } $folders = $objectMapper->quicksortObjectByTitle($folders, $titles); $json = new JSON(); echo $json->encode($folders); }
/** * Gets the FolderClass objects * @return Array - FolderClass objects */ function getFolderClasses() { if ($this->folderClasses == null) { $folderClassMapper = new FolderClassMapper(); $this->folderClasses = $folderClassMapper->findByFolderId($this->getId()); } return $this->folderClasses; }
/** * Obtains a folderClass object */ function getFolderClass() { if ($this->folderClass == null) { $folderClassMapper = new FolderClassMapper(); $this->folderClass = $folderClassMapper->get($this->getFolderClassID()); } return $this->folderClass; }