예제 #1
0
 /**
  * Maps a Folder object contained in a recordset to an object representation
  *
  * @param $rs Recordset filled with the object data
  * @return objeto Mapped Folder object
  */
 function &mapOne($rs)
 {
     if ($rs == null) {
         return null;
     }
     $object = new Folder();
     $object->setId($rs->fields["ID"]);
     $object->setLongDescription($rs->fields["longDescription"]);
     $object->setParentId($rs->fields["parentID"]);
     $object->setPosition($rs->fields["position"]);
     $object->setShortDescription($rs->fields["shortDescription"]);
     $object->setTitle($rs->fields["title"]);
     return $object;
 }
예제 #2
0
 private function saveFolder(\Request $request)
 {
     $folder_id = $request->getVar('folder_id');
     if ($folder_id) {
         $folder = new Folder($folder_id);
     } else {
         $folder = new Folder();
         $folder->setFtype($request->getVar('ftype'));
     }
     $folder->setTitle($request->getVar('title'));
     if (empty($folder->title)) {
         $this->sendErrorHeader('<div class="alert alert-danger"><i class="fa fa-times fa-lg"></i> May not use an empty folder name.</div>');
         return;
     }
     $db = \Database::newDB();
     $db->addTable('folders')->addFieldConditional('title', $folder->title);
     $result = $db->selectOneRow();
     // if a duplicate row is found (with a different id) then force an error
     if (!empty($result) && $result['id'] != $folder_id) {
         $this->sendErrorHeader('<div class="alert alert-danger"><i class="fa fa-times fa-lg"></i> A folder with this name already exists</div>');
     } else {
         $folder->save();
         echo $folder->id;
     }
 }
 /**
  * Updates a new folder
  */
 function updateFolder()
 {
     $controllerData =& $this->collectControlerData();
     $folderId = $controllerData["folderIdHidden"];
     $title = $controllerData["titleText"];
     $parentId = $controllerData["parentIdHidden"];
     $position = $controllerData["positionText"];
     $shortDescription = $controllerData["shortDescriptionText"];
     $longDescription = $controllerData["longDescriptionTextarea"];
     $classesIdArray = $controllerData["classesIdSelect"];
     if ($title == null || $title == "") {
         $this->addErrorMessage("title");
     }
     if ($shortDescription == null || $shortDescription == "") {
         $this->addErrorMessage("shortdescription");
     }
     if ($longDescription == null || $longDescription == "") {
         $this->addErrorMessage("longdescription");
     }
     if (count($classesIdArray) <= 0) {
         $this->addErrorMessage("classes");
     }
     if (count($this->controllerMessageArray) > 0) {
         $this->displayUpdateFolderView("addFolder.tpl.php");
         return;
     }
     $folder = new Folder();
     $folder->setId($folderId);
     $folder->setTitle($title);
     $folder->setParentId($parentId);
     $folder->setPosition($position);
     $folder->setShortDescription($shortDescription);
     $folder->setLongDescription($longDescription);
     $folderClassesArray = array();
     foreach ($classesIdArray as $classId) {
         $folderClass = new FolderClass();
         $folderClass->setClassID($classId);
         $folderClass->setPosition(1);
         $folderClass->setIsDefault(0);
         array_push($folderClassesArray, $folderClass);
     }
     $folder->setFolderClasses($folderClassesArray);
     $folderService = new FolderService();
     $folderService->update($folder);
     $this->redirectToReferer();
 }