diff options
author | Jeremy <j0k3r@users.noreply.github.com> | 2015-02-05 21:51:05 +0100 |
---|---|---|
committer | Jeremy <j0k3r@users.noreply.github.com> | 2015-02-05 21:51:05 +0100 |
commit | c8dee953961964aa842e516995f0c6fafd007f9b (patch) | |
tree | 8a97d887bba874f248be86626b1205087ff54aa0 /src/Wallabag/CoreBundle/Controller/WallabagRestController.php | |
parent | 93e28e4d2ec677a852d71d167dc7c54ef2780cae (diff) | |
parent | c0284f6182a7421d2352e9288205d70b81185a7d (diff) | |
download | wallabag-c8dee953961964aa842e516995f0c6fafd007f9b.tar.gz wallabag-c8dee953961964aa842e516995f0c6fafd007f9b.tar.zst wallabag-c8dee953961964aa842e516995f0c6fafd007f9b.zip |
Merge pull request #1055 from wallabag/v2-api-patch-methid
PATCH method, boolean for some parameters and change entity methods name
Diffstat (limited to 'src/Wallabag/CoreBundle/Controller/WallabagRestController.php')
-rw-r--r-- | src/Wallabag/CoreBundle/Controller/WallabagRestController.php | 41 |
1 files changed, 33 insertions, 8 deletions
diff --git a/src/Wallabag/CoreBundle/Controller/WallabagRestController.php b/src/Wallabag/CoreBundle/Controller/WallabagRestController.php index abbf5437..f14f821b 100644 --- a/src/Wallabag/CoreBundle/Controller/WallabagRestController.php +++ b/src/Wallabag/CoreBundle/Controller/WallabagRestController.php | |||
@@ -17,9 +17,9 @@ class WallabagRestController extends Controller | |||
17 | * | 17 | * |
18 | * @ApiDoc( | 18 | * @ApiDoc( |
19 | * parameters={ | 19 | * parameters={ |
20 | * {"name"="archive", "dataType"="integer", "required"=false, "format"="'0' or '1', all entries by default", "description"="filter by archived status."}, | 20 | * {"name"="archive", "dataType"="boolean", "required"=false, "format"="true or false, all entries by default", "description"="filter by archived status."}, |
21 | * {"name"="star", "dataType"="integer", "required"=false, "format"="'0' or '1', all entries by default", "description"="filter by starred status."}, | 21 | * {"name"="star", "dataType"="boolean", "required"=false, "format"="true or false, all entries by default", "description"="filter by starred status."}, |
22 | * {"name"="delete", "dataType"="integer", "required"=false, "format"="'0' or '1', default '0'", "description"="filter by deleted status."}, | 22 | * {"name"="delete", "dataType"="boolean", "required"=false, "format"="true or false, default '0'", "description"="filter by deleted status."}, |
23 | * {"name"="sort", "dataType"="string", "required"=false, "format"="'created' or 'updated', default 'created'", "description"="sort entries by date."}, | 23 | * {"name"="sort", "dataType"="string", "required"=false, "format"="'created' or 'updated', default 'created'", "description"="sort entries by date."}, |
24 | * {"name"="order", "dataType"="string", "required"=false, "format"="'asc' or 'desc', default 'desc'", "description"="order of sort."}, | 24 | * {"name"="order", "dataType"="string", "required"=false, "format"="'asc' or 'desc', default 'desc'", "description"="order of sort."}, |
25 | * {"name"="page", "dataType"="integer", "required"=false, "format"="default '1'", "description"="what page you want."}, | 25 | * {"name"="page", "dataType"="integer", "required"=false, "format"="default '1'", "description"="what page you want."}, |
@@ -106,14 +106,40 @@ class WallabagRestController extends Controller | |||
106 | * parameters={ | 106 | * parameters={ |
107 | * {"name"="title", "dataType"="string", "required"=false}, | 107 | * {"name"="title", "dataType"="string", "required"=false}, |
108 | * {"name"="tags", "dataType"="string", "required"=false, "format"="tag1,tag2,tag3", "description"="a comma-separated list of tags."}, | 108 | * {"name"="tags", "dataType"="string", "required"=false, "format"="tag1,tag2,tag3", "description"="a comma-separated list of tags."}, |
109 | * {"name"="archive", "dataType"="integer", "required"=false, "format"="'0' or '1', default '0'", "description"="archived the entry."}, | 109 | * {"name"="archive", "dataType"="boolean", "required"=false, "format"="true or false", "description"="archived the entry."}, |
110 | * {"name"="star", "dataType"="integer", "required"=false, "format"="'0' or '1', default '0'", "description"="starred the entry."}, | 110 | * {"name"="star", "dataType"="boolean", "required"=false, "format"="true or false", "description"="starred the entry."}, |
111 | * {"name"="delete", "dataType"="integer", "required"=false, "format"="'0' or '1', default '0'", "description"="flag as deleted. Default false. In case that you don't want to *really* remove it.."}, | 111 | * {"name"="delete", "dataType"="boolean", "required"=false, "format"="true or false", "description"="flag as deleted. Default false. In case that you don't want to *really* remove it.."}, |
112 | * } | 112 | * } |
113 | * ) | 113 | * ) |
114 | */ | 114 | */ |
115 | public function patchEntriesAction(Entries $entry) | 115 | public function patchEntriesAction(Entries $entry, Request $request) |
116 | { | 116 | { |
117 | $title = $request->request->get("title"); | ||
118 | $tags = $request->request->get("tags", array()); | ||
119 | $isArchived = $request->request->get("archive"); | ||
120 | $isDeleted = $request->request->get("delete"); | ||
121 | $isStarred = $request->request->get("star"); | ||
122 | |||
123 | if (!is_null($title)) { | ||
124 | $entry->setTitle($title); | ||
125 | } | ||
126 | |||
127 | if (!is_null($isArchived)) { | ||
128 | $entry->setRead($isArchived); | ||
129 | } | ||
130 | |||
131 | if (!is_null($isDeleted)) { | ||
132 | $entry->setDeleted($isDeleted); | ||
133 | } | ||
134 | |||
135 | if (!is_null($isStarred)) { | ||
136 | $entry->setFav($isStarred); | ||
137 | } | ||
138 | |||
139 | $em = $this->getDoctrine()->getManager(); | ||
140 | $em->flush(); | ||
141 | |||
142 | return $entry; | ||
117 | } | 143 | } |
118 | 144 | ||
119 | /** | 145 | /** |
@@ -133,7 +159,6 @@ class WallabagRestController extends Controller | |||
133 | 159 | ||
134 | $em = $this->getDoctrine()->getManager(); | 160 | $em = $this->getDoctrine()->getManager(); |
135 | $entry->setDeleted(1); | 161 | $entry->setDeleted(1); |
136 | $em->persist($entry); | ||
137 | $em->flush(); | 162 | $em->flush(); |
138 | 163 | ||
139 | return $entry; | 164 | return $entry; |