Esempio n. 1
0
 /**
  * @brief Delete the folder and all its feeds from the database
  * @param folder the folder to be deleted (an instance of OCA\News\Folder)
  * @returns true if the folder has been deleted, false if an error occurred
  */
 public function deleteById($folderid)
 {
     if ($folderid == null) {
         return false;
     }
     // delete child folders
     $stmt = \OCP\DB::prepare('SELECT id FROM ' . self::tableName . ' WHERE parent_id = ? AND user_id = ?');
     $result = $stmt->execute(array($folderid, $this->userid));
     while ($row = $result->fetchRow()) {
         if (!self::deleteById($row['id'])) {
             return false;
         }
     }
     $stmt = \OCP\DB::prepare('DELETE FROM ' . self::tableName . ' WHERE id = ? AND user_id = ?');
     $result = $stmt->execute(array($folderid, $this->userid));
     $feedMapper = new FeedMapper($this->userid);
     //TODO: handle the value that the execute returns
     if (!$feedMapper->deleteAll($folderid)) {
         return false;
     }
     return true;
 }