summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--appinfo/routes.php11
-rw-r--r--external_api/feed.php13
-rw-r--r--feed.bl.php4
3 files changed, 27 insertions, 1 deletions
diff --git a/appinfo/routes.php b/appinfo/routes.php
index 095e03f83..767e59f09 100644
--- a/appinfo/routes.php
+++ b/appinfo/routes.php
@@ -234,6 +234,14 @@ $this->create('news_ajax_importOPML', '/import')->action(
},
'news', \OC_API::USER_AUTH
);
+\OCP\API::register(
+ 'post', '/news/feeds/{feedid}/delete',
+ function($urlParams) {
+ $container = createDIContainer();
+ return $container['FeedApi']->delete($urlParams);
+ },
+ 'news', \OC_API::USER_AUTH
+);
/**
* Folder API
@@ -255,6 +263,7 @@ $this->create('news_ajax_importOPML', '/import')->action(
},
'news', \OC_API::USER_AUTH
);
+
\OCP\API::register(
'get', '/news/folders/{folderid}/delete',
function($urlParams) {
@@ -270,4 +279,4 @@ $this->create('news_ajax_importOPML', '/import')->action(
return $container['FolderApi']->modify($urlParams);
},
'news', \OC_API::USER_AUTH
-); \ No newline at end of file
+);
diff --git a/external_api/feed.php b/external_api/feed.php
index 7dfd5763f..a56cd2253 100644
--- a/external_api/feed.php
+++ b/external_api/feed.php
@@ -25,6 +25,19 @@ class FeedApi {
return new \OC_OCS_Result($serializedFeed);
}
+ public function delete($params) {
+ //TODO: check parameters here
+
+ $success = $this->bl->delete($params["feedid"]);
+
+ if ($success) {
+ return new \OC_OCS_Result();
+ }
+ else {
+ return new \OC_OCS_Result(null, 101);
+ }
+ }
+
public function create() {
$url = $_POST['url'];
$folderId = $_POST['folderid'];
diff --git a/feed.bl.php b/feed.bl.php
index 0ddd8ac80..43e0faf6f 100644
--- a/feed.bl.php
+++ b/feed.bl.php
@@ -16,6 +16,10 @@ class FeedBl {
return $this->feedMapper->findById($feedid);
}
+ public function delete($feedid) {
+ return $this->feedMapper->deleteById($feedid);
+ }
+
public function create($url, $folderid) {
$feed = new Feed($url);
$this->feedMapper->save($feed, $folderid);