diff --git a/app/config/routing.yml b/app/config/routing.yml index 80f7b382f..38c1dcf00 100644 --- a/app/config/routing.yml +++ b/app/config/routing.yml @@ -13,6 +13,7 @@ doc-api-json: homepage: path: "/{page}" + methods: GET defaults: _controller: 'Wallabag\Controller\EntryController::showUnreadAction' page : 1 @@ -27,6 +28,7 @@ fos_oauth_server_token: craue_config_settings_modify: path: /settings + methods: [GET, POST] defaults: _controller: 'Craue\ConfigBundle\Controller\SettingsController::modifyAction' @@ -35,15 +37,18 @@ fos_js_routing: 2fa_login: path: /2fa + methods: GET defaults: _controller: "scheb_two_factor.form_controller:form" 2fa_login_check: path: /2fa_check + methods: POST # redirect RSS feed to Atom rss_to_atom_unread: path: /{username}/{token}/unread.xml + methods: GET defaults: _controller: 'Symfony\Bundle\FrameworkBundle\Controller\RedirectController::redirectAction' route: unread_feed @@ -51,6 +56,7 @@ rss_to_atom_unread: rss_to_atom_archive: path: /{username}/{token}/archive.xml + methods: GET defaults: _controller: 'Symfony\Bundle\FrameworkBundle\Controller\RedirectController::redirectAction' route: archive_feed @@ -58,6 +64,7 @@ rss_to_atom_archive: rss_to_atom_starred: path: /{username}/{token}/starred.xml + methods: GET defaults: _controller: 'Symfony\Bundle\FrameworkBundle\Controller\RedirectController::redirectAction' route: starred_feed @@ -65,6 +72,7 @@ rss_to_atom_starred: rss_to_atom_all: path: /{username}/{token}/all.xml + methods: GET defaults: _controller: 'Symfony\Bundle\FrameworkBundle\Controller\RedirectController::redirectAction' route: all_feed @@ -72,6 +80,7 @@ rss_to_atom_all: rss_to_atom_tags: path: /{username}/{token}/tags/{slug}.xml + methods: GET defaults: _controller: 'Symfony\Bundle\FrameworkBundle\Controller\RedirectController::redirectAction' route: tag_feed diff --git a/src/Controller/AnnotationController.php b/src/Controller/AnnotationController.php index 6dca89a18..5d177bc0d 100644 --- a/src/Controller/AnnotationController.php +++ b/src/Controller/AnnotationController.php @@ -35,7 +35,7 @@ class AnnotationController extends AbstractFOSRestController * * @see Api\WallabagRestController * - * @Route("/annotations/{entry}.{_format}", methods={"GET"}, name="annotations_get_annotations", defaults={"_format": "json"}) + * @Route("/annotations/{entry}.{_format}", name="annotations_get_annotations", methods={"GET"}, defaults={"_format": "json"}) * * @return JsonResponse */ @@ -56,7 +56,7 @@ class AnnotationController extends AbstractFOSRestController * * @see Api\WallabagRestController * - * @Route("/annotations/{entry}.{_format}", methods={"POST"}, name="annotations_post_annotation", defaults={"_format": "json"}) + * @Route("/annotations/{entry}.{_format}", name="annotations_post_annotation", methods={"POST"}, defaults={"_format": "json"}) * * @return JsonResponse */ @@ -90,7 +90,7 @@ class AnnotationController extends AbstractFOSRestController * * @see Api\WallabagRestController * - * @Route("/annotations/{annotation}.{_format}", methods={"PUT"}, name="annotations_put_annotation", defaults={"_format": "json"}) + * @Route("/annotations/{annotation}.{_format}", name="annotations_put_annotation", methods={"PUT"}, defaults={"_format": "json"}) * * @return JsonResponse */ @@ -127,7 +127,7 @@ class AnnotationController extends AbstractFOSRestController * * @see Api\WallabagRestController * - * @Route("/annotations/{annotation}.{_format}", methods={"DELETE"}, name="annotations_delete_annotation", defaults={"_format": "json"}) + * @Route("/annotations/{annotation}.{_format}", name="annotations_delete_annotation", methods={"DELETE"}, defaults={"_format": "json"}) * * @return JsonResponse */ diff --git a/src/Controller/Api/AnnotationRestController.php b/src/Controller/Api/AnnotationRestController.php index d9c588cf4..18b5b658d 100644 --- a/src/Controller/Api/AnnotationRestController.php +++ b/src/Controller/Api/AnnotationRestController.php @@ -34,7 +34,7 @@ class AnnotationRestController extends WallabagRestController * ) * ) * - * @Route("/api/annotations/{entry}.{_format}", methods={"GET"}, name="api_get_annotations", defaults={"_format": "json"}) + * @Route("/api/annotations/{entry}.{_format}", name="api_get_annotations", methods={"GET"}, defaults={"_format": "json"}) * * @return Response */ @@ -100,7 +100,7 @@ class AnnotationRestController extends WallabagRestController * ) * ) * - * @Route("/api/annotations/{entry}.{_format}", methods={"POST"}, name="api_post_annotation", defaults={"_format": "json"}) + * @Route("/api/annotations/{entry}.{_format}", name="api_post_annotation", methods={"POST"}, defaults={"_format": "json"}) * * @return Response */ @@ -136,7 +136,7 @@ class AnnotationRestController extends WallabagRestController * ) * ) * - * @Route("/api/annotations/{annotation}.{_format}", methods={"PUT"}, name="api_put_annotation", defaults={"_format": "json"}) + * @Route("/api/annotations/{annotation}.{_format}", name="api_put_annotation", methods={"PUT"}, defaults={"_format": "json"}) * * @return Response */ @@ -172,7 +172,7 @@ class AnnotationRestController extends WallabagRestController * ) * ) * - * @Route("/api/annotations/{annotation}.{_format}", methods={"DELETE"}, name="api_delete_annotation", defaults={"_format": "json"}) + * @Route("/api/annotations/{annotation}.{_format}", name="api_delete_annotation", methods={"DELETE"}, defaults={"_format": "json"}) * * @return Response */ diff --git a/src/Controller/Api/ConfigRestController.php b/src/Controller/Api/ConfigRestController.php index 272d5cd75..47659fc30 100644 --- a/src/Controller/Api/ConfigRestController.php +++ b/src/Controller/Api/ConfigRestController.php @@ -23,7 +23,7 @@ class ConfigRestController extends WallabagRestController * ) * ) * - * @Route("/api/config.{_format}", methods={"GET"}, name="api_get_config", defaults={"_format": "json"}) + * @Route("/api/config.{_format}", name="api_get_config", methods={"GET"}, defaults={"_format": "json"}) * * @return JsonResponse */ diff --git a/src/Controller/Api/DeveloperController.php b/src/Controller/Api/DeveloperController.php index ccba13d14..a2097c211 100644 --- a/src/Controller/Api/DeveloperController.php +++ b/src/Controller/Api/DeveloperController.php @@ -18,7 +18,7 @@ class DeveloperController extends AbstractController /** * List all clients and link to create a new one. * - * @Route("/developer", name="developer") + * @Route("/developer", name="developer", methods={"GET"}) * * @return Response */ @@ -34,7 +34,7 @@ class DeveloperController extends AbstractController /** * Create a client (an app). * - * @Route("/developer/client/create", name="developer_create_client") + * @Route("/developer/client/create", name="developer_create_client", methods={"GET", "POST"}) * * @return Response */ @@ -69,7 +69,7 @@ class DeveloperController extends AbstractController /** * Remove a client. * - * @Route("/developer/client/delete/{id}", requirements={"id" = "\d+"}, name="developer_delete_client", methods={"POST"}) + * @Route("/developer/client/delete/{id}", name="developer_delete_client", methods={"POST"}, requirements={"id" = "\d+"}) * * @return RedirectResponse */ @@ -97,7 +97,7 @@ class DeveloperController extends AbstractController /** * Display developer how to use an existing app. * - * @Route("/developer/howto/first-app", name="developer_howto_firstapp") + * @Route("/developer/howto/first-app", name="developer_howto_firstapp", methods={"GET"}) * * @return Response */ diff --git a/src/Controller/Api/EntryRestController.php b/src/Controller/Api/EntryRestController.php index 5c77abcd0..da43f42a6 100644 --- a/src/Controller/Api/EntryRestController.php +++ b/src/Controller/Api/EntryRestController.php @@ -84,7 +84,7 @@ class EntryRestController extends WallabagRestController * ) * ) * - * @Route("/api/entries/exists.{_format}", methods={"GET"}, name="api_get_entries_exists", defaults={"_format": "json"}) + * @Route("/api/entries/exists.{_format}", name="api_get_entries_exists", methods={"GET"}, defaults={"_format": "json"}) * * @return JsonResponse */ @@ -299,7 +299,7 @@ class EntryRestController extends WallabagRestController * ) * ) * - * @Route("/api/entries.{_format}", methods={"GET"}, name="api_get_entries", defaults={"_format": "json"}) + * @Route("/api/entries.{_format}", name="api_get_entries", methods={"GET"}, defaults={"_format": "json"}) * * @return JsonResponse */ @@ -391,7 +391,7 @@ class EntryRestController extends WallabagRestController * ) * ) * - * @Route("/api/entries/{entry}.{_format}", methods={"GET"}, name="api_get_entry", defaults={"_format": "json"}) + * @Route("/api/entries/{entry}.{_format}", name="api_get_entry", methods={"GET"}, defaults={"_format": "json"}) * * @return JsonResponse */ @@ -435,7 +435,7 @@ class EntryRestController extends WallabagRestController * ) * ) * - * @Route("/api/entries/{entry}/export.{_format}", methods={"GET"}, name="api_get_entry_export", defaults={"_format": "json"}) + * @Route("/api/entries/{entry}/export.{_format}", name="api_get_entry_export", methods={"GET"}, defaults={"_format": "json"}) * * @return Response */ @@ -470,7 +470,7 @@ class EntryRestController extends WallabagRestController * ) * ) * - * @Route("/api/entries/list.{_format}", methods={"DELETE"}, name="api_delete_entries_list", defaults={"_format": "json"}) + * @Route("/api/entries/list.{_format}", name="api_delete_entries_list", methods={"DELETE"}, defaults={"_format": "json"}) * * @return JsonResponse */ @@ -528,7 +528,7 @@ class EntryRestController extends WallabagRestController * ) * ) * - * @Route("/api/entries/lists.{_format}", methods={"POST"}, name="api_post_entries_list", defaults={"_format": "json"}) + * @Route("/api/entries/lists.{_format}", name="api_post_entries_list", methods={"POST"}, defaults={"_format": "json"}) * * @throws HttpException When limit is reached * @@ -713,7 +713,7 @@ class EntryRestController extends WallabagRestController * ) * ) * - * @Route("/api/entries.{_format}", methods={"POST"}, name="api_post_entries", defaults={"_format": "json"}) + * @Route("/api/entries.{_format}", name="api_post_entries", methods={"POST"}, defaults={"_format": "json"}) * * @return JsonResponse */ @@ -938,7 +938,7 @@ class EntryRestController extends WallabagRestController * ) * ) * - * @Route("/api/entries/{entry}.{_format}", methods={"PATCH"}, name="api_patch_entries", defaults={"_format": "json"}) + * @Route("/api/entries/{entry}.{_format}", name="api_patch_entries", methods={"PATCH"}, defaults={"_format": "json"}) * * @return JsonResponse */ @@ -1055,7 +1055,7 @@ class EntryRestController extends WallabagRestController * ) * ) * - * @Route("/api/entries/{entry}/reload.{_format}", methods={"PATCH"}, name="api_patch_entries_reload", defaults={"_format": "json"}) + * @Route("/api/entries/{entry}/reload.{_format}", name="api_patch_entries_reload", methods={"PATCH"}, defaults={"_format": "json"}) * * @return JsonResponse */ @@ -1112,7 +1112,7 @@ class EntryRestController extends WallabagRestController * ) * ) * - * @Route("/api/entries/{entry}.{_format}", methods={"DELETE"}, name="api_delete_entries", defaults={"_format": "json"}) + * @Route("/api/entries/{entry}.{_format}", name="api_delete_entries", methods={"DELETE"}, defaults={"_format": "json"}) * * @return JsonResponse */ @@ -1165,7 +1165,7 @@ class EntryRestController extends WallabagRestController * ) * ) * - * @Route("/api/entries/{entry}/tags.{_format}", methods={"GET"}, name="api_get_entries_tags", defaults={"_format": "json"}) + * @Route("/api/entries/{entry}/tags.{_format}", name="api_get_entries_tags", methods={"GET"}, defaults={"_format": "json"}) * * @return JsonResponse */ @@ -1209,7 +1209,7 @@ class EntryRestController extends WallabagRestController * ) * ) * - * @Route("/api/entries/{entry}/tags.{_format}", methods={"POST"}, name="api_post_entries_tags", defaults={"_format": "json"}) + * @Route("/api/entries/{entry}/tags.{_format}", name="api_post_entries_tags", methods={"POST"}, defaults={"_format": "json"}) * * @return JsonResponse */ @@ -1261,7 +1261,7 @@ class EntryRestController extends WallabagRestController * ) * ) * - * @Route("/api/entries/{entry}/tags/{tag}.{_format}", methods={"DELETE"}, name="api_delete_entries_tags", defaults={"_format": "json"}) + * @Route("/api/entries/{entry}/tags/{tag}.{_format}", name="api_delete_entries_tags", methods={"DELETE"}, defaults={"_format": "json"}) * * @return JsonResponse */ @@ -1297,7 +1297,7 @@ class EntryRestController extends WallabagRestController * ) * ) * - * @Route("/api/entries/tags/list.{_format}", methods={"DELETE"}, name="api_delete_entries_tags_list", defaults={"_format": "json"}) + * @Route("/api/entries/tags/list.{_format}", name="api_delete_entries_tags_list", methods={"DELETE"}, defaults={"_format": "json"}) * * @return JsonResponse */ @@ -1364,7 +1364,7 @@ class EntryRestController extends WallabagRestController * ) * ) * - * @Route("/api/entries/tags/lists.{_format}", methods={"POST"}, name="api_post_entries_tags_list", defaults={"_format": "json"}) + * @Route("/api/entries/tags/lists.{_format}", name="api_post_entries_tags_list", methods={"POST"}, defaults={"_format": "json"}) * * @return JsonResponse */ diff --git a/src/Controller/Api/SearchRestController.php b/src/Controller/Api/SearchRestController.php index 2bb0a9c86..5b7ca77df 100644 --- a/src/Controller/Api/SearchRestController.php +++ b/src/Controller/Api/SearchRestController.php @@ -54,7 +54,7 @@ class SearchRestController extends WallabagRestController * ) * ) * - * @Route("/api/search.{_format}", methods={"GET"}, name="api_get_search", defaults={"_format": "json"}) + * @Route("/api/search.{_format}", name="api_get_search", methods={"GET"}, defaults={"_format": "json"}) * * @return JsonResponse */ diff --git a/src/Controller/Api/TagRestController.php b/src/Controller/Api/TagRestController.php index 84cfc6cbd..d8757cd92 100644 --- a/src/Controller/Api/TagRestController.php +++ b/src/Controller/Api/TagRestController.php @@ -26,7 +26,7 @@ class TagRestController extends WallabagRestController * ) * ) * - * @Route("/api/tags.{_format}", methods={"GET"}, name="api_get_tags", defaults={"_format": "json"}) + * @Route("/api/tags.{_format}", name="api_get_tags", methods={"GET"}, defaults={"_format": "json"}) * * @return JsonResponse */ @@ -63,7 +63,7 @@ class TagRestController extends WallabagRestController * ) * ) * - * @Route("/api/tag/label.{_format}", methods={"DELETE"}, name="api_delete_tag_label", defaults={"_format": "json"}) + * @Route("/api/tag/label.{_format}", name="api_delete_tag_label", methods={"DELETE"}, defaults={"_format": "json"}) * * @return JsonResponse */ @@ -111,7 +111,7 @@ class TagRestController extends WallabagRestController * ) * ) * - * @Route("/api/tags/label.{_format}", methods={"DELETE"}, name="api_delete_tags_label", defaults={"_format": "json"}) + * @Route("/api/tags/label.{_format}", name="api_delete_tags_label", methods={"DELETE"}, defaults={"_format": "json"}) * * @return JsonResponse */ @@ -158,7 +158,7 @@ class TagRestController extends WallabagRestController * ) * ) * - * @Route("/api/tags/{tag}.{_format}", methods={"DELETE"}, name="api_delete_tag", defaults={"_format": "json"}) + * @Route("/api/tags/{tag}.{_format}", name="api_delete_tag", methods={"DELETE"}, defaults={"_format": "json"}) * * @return JsonResponse */ diff --git a/src/Controller/Api/TaggingRuleRestController.php b/src/Controller/Api/TaggingRuleRestController.php index ddf816b96..6137da796 100644 --- a/src/Controller/Api/TaggingRuleRestController.php +++ b/src/Controller/Api/TaggingRuleRestController.php @@ -23,7 +23,7 @@ class TaggingRuleRestController extends WallabagRestController * ) * ) * - * @Route("/api/taggingrule/export.{_format}", methods={"GET"}, name="api_get_taggingrule_export", defaults={"_format": "json"}) + * @Route("/api/taggingrule/export.{_format}", name="api_get_taggingrule_export", methods={"GET"}, defaults={"_format": "json"}) * * @return Response */ diff --git a/src/Controller/Api/UserRestController.php b/src/Controller/Api/UserRestController.php index a0aa528c4..79c73d4bd 100644 --- a/src/Controller/Api/UserRestController.php +++ b/src/Controller/Api/UserRestController.php @@ -34,7 +34,7 @@ class UserRestController extends WallabagRestController * ) * ) * - * @Route("/api/user.{_format}", methods={"GET"}, name="api_get_user", defaults={"_format": "json"}) + * @Route("/api/user.{_format}", name="api_get_user", methods={"GET"}, defaults={"_format": "json"}) * * @return JsonResponse */ @@ -98,7 +98,7 @@ class UserRestController extends WallabagRestController * * @todo Make this method (or the whole API) accessible only through https * - * @Route("/api/user.{_format}", methods={"PUT"}, name="api_put_user", defaults={"_format": "json"}) + * @Route("/api/user.{_format}", name="api_put_user", methods={"PUT"}, defaults={"_format": "json"}) * * @return JsonResponse */ diff --git a/src/Controller/Api/WallabagRestController.php b/src/Controller/Api/WallabagRestController.php index 1cfa2c91b..615878bc6 100644 --- a/src/Controller/Api/WallabagRestController.php +++ b/src/Controller/Api/WallabagRestController.php @@ -57,7 +57,7 @@ class WallabagRestController extends AbstractFOSRestController * * @deprecated Should use info endpoint instead * - * @Route("/api/version.{_format}", methods={"GET"}, name="api_get_version", defaults={"_format": "json"}) + * @Route("/api/version.{_format}", name="api_get_version", methods={"GET"}, defaults={"_format": "json"}) * * @return JsonResponse */ @@ -80,7 +80,7 @@ class WallabagRestController extends AbstractFOSRestController * ) * ) * - * @Route("/api/info.{_format}", methods={"GET"}, name="api_get_info", defaults={"_format": "json"}) + * @Route("/api/info.{_format}", name="api_get_info", methods={"GET"}, defaults={"_format": "json"}) * * @return JsonResponse */ diff --git a/src/Controller/ConfigController.php b/src/Controller/ConfigController.php index ef62dbc9c..9ab95bb8c 100644 --- a/src/Controller/ConfigController.php +++ b/src/Controller/ConfigController.php @@ -74,7 +74,7 @@ class ConfigController extends AbstractController } /** - * @Route("/config", name="config") + * @Route("/config", name="config", methods={"GET", "POST"}) */ public function indexAction(Request $request, Config $craueConfig, TaggingRuleRepository $taggingRuleRepository, IgnoreOriginUserRuleRepository $ignoreOriginUserRuleRepository, UserRepository $userRepository) { @@ -436,7 +436,7 @@ class ConfigController extends AbstractController } /** - * @Route("/generate-token", name="generate_token") + * @Route("/generate-token", name="generate_token", methods={"GET"}) * * @return RedirectResponse|JsonResponse */ @@ -461,7 +461,7 @@ class ConfigController extends AbstractController } /** - * @Route("/revoke-token", name="revoke_token") + * @Route("/revoke-token", name="revoke_token", methods={"GET"}) * * @return RedirectResponse|JsonResponse */ @@ -488,7 +488,7 @@ class ConfigController extends AbstractController /** * Deletes a tagging rule and redirect to the config homepage. * - * @Route("/tagging-rule/delete/{id}", requirements={"id" = "\d+"}, name="delete_tagging_rule") + * @Route("/tagging-rule/delete/{id}", name="delete_tagging_rule", methods={"GET"}, requirements={"id" = "\d+"}) * * @return RedirectResponse */ @@ -510,7 +510,7 @@ class ConfigController extends AbstractController /** * Edit a tagging rule. * - * @Route("/tagging-rule/edit/{id}", requirements={"id" = "\d+"}, name="edit_tagging_rule") + * @Route("/tagging-rule/edit/{id}", name="edit_tagging_rule", methods={"GET"}, requirements={"id" = "\d+"}) * * @return RedirectResponse */ @@ -524,7 +524,7 @@ class ConfigController extends AbstractController /** * Deletes an ignore origin rule and redirect to the config homepage. * - * @Route("/ignore-origin-user-rule/delete/{id}", requirements={"id" = "\d+"}, name="delete_ignore_origin_rule") + * @Route("/ignore-origin-user-rule/delete/{id}", name="delete_ignore_origin_rule", methods={"GET"}, requirements={"id" = "\d+"}) * * @return RedirectResponse */ @@ -546,7 +546,7 @@ class ConfigController extends AbstractController /** * Edit an ignore origin rule. * - * @Route("/ignore-origin-user-rule/edit/{id}", requirements={"id" = "\d+"}, name="edit_ignore_origin_rule") + * @Route("/ignore-origin-user-rule/edit/{id}", name="edit_ignore_origin_rule", methods={"GET"}, requirements={"id" = "\d+"}) * * @return RedirectResponse */ @@ -560,7 +560,7 @@ class ConfigController extends AbstractController /** * Remove all annotations OR tags OR entries for the current user. * - * @Route("/reset/{type}", requirements={"id" = "annotations|tags|entries|tagging_rules"}, name="config_reset", methods={"POST"}) + * @Route("/reset/{type}", name="config_reset", methods={"POST"}, requirements={"id" = "annotations|tags|entries|tagging_rules"}) * * @return RedirectResponse */ @@ -647,7 +647,7 @@ class ConfigController extends AbstractController /** * Switch view mode for current user. * - * @Route("/config/view-mode", name="switch_view_mode") + * @Route("/config/view-mode", name="switch_view_mode", methods={"GET"}) * * @return RedirectResponse */ @@ -669,7 +669,7 @@ class ConfigController extends AbstractController * * @param string $language * - * @Route("/locale/{language}", name="changeLocale") + * @Route("/locale/{language}", name="changeLocale", methods={"GET"}) * * @return RedirectResponse */ @@ -687,7 +687,7 @@ class ConfigController extends AbstractController /** * Export tagging rules for the logged in user. * - * @Route("/tagging-rule/export", name="export_tagging_rule") + * @Route("/tagging-rule/export", name="export_tagging_rule", methods={"GET"}) * * @return Response */ diff --git a/src/Controller/EntryController.php b/src/Controller/EntryController.php index 71a505ae6..07e4af943 100644 --- a/src/Controller/EntryController.php +++ b/src/Controller/EntryController.php @@ -55,7 +55,7 @@ class EntryController extends AbstractController } /** - * @Route("/mass", name="mass_action") + * @Route("/mass", name="mass_action", methods={"POST"}) * @IsGranted("EDIT_ENTRIES") * * @return Response @@ -141,7 +141,7 @@ class EntryController extends AbstractController /** * @param int $page * - * @Route("/search/{page}", name="search", defaults={"page" = 1}) + * @Route("/search/{page}", name="search", methods={"GET", "POST"}, defaults={"page" = 1}) * @IsGranted("LIST_ENTRIES") * * Default parameter for page is hardcoded (in duplication of the defaults from the Route) @@ -171,7 +171,7 @@ class EntryController extends AbstractController } /** - * @Route("/new-entry", name="new_entry") + * @Route("/new-entry", name="new_entry", methods={"GET", "POST"}) * @IsGranted("CREATE_ENTRIES") * * @return Response @@ -215,7 +215,7 @@ class EntryController extends AbstractController } /** - * @Route("/bookmarklet", name="bookmarklet") + * @Route("/bookmarklet", name="bookmarklet", methods={"GET"}) * @IsGranted("CREATE_ENTRIES") * * @return Response @@ -239,7 +239,7 @@ class EntryController extends AbstractController } /** - * @Route("/new", name="new") + * @Route("/new", name="new", methods={"GET"}) * @IsGranted("CREATE_ENTRIES") * * @return Response @@ -252,7 +252,7 @@ class EntryController extends AbstractController /** * Edit an entry content. * - * @Route("/edit/{id}", requirements={"id" = "\d+"}, name="edit") + * @Route("/edit/{id}", name="edit", methods={"GET", "POST"}, requirements={"id" = "\d+"}) * @IsGranted("EDIT", subject="entry") * * @return Response @@ -285,7 +285,7 @@ class EntryController extends AbstractController * * @param int $page * - * @Route("/all/list/{page}", name="all", defaults={"page" = "1"}) + * @Route("/all/list/{page}", name="all", methods={"GET"}, defaults={"page" = "1"}) * @IsGranted("LIST_ENTRIES") * * @return Response @@ -300,7 +300,7 @@ class EntryController extends AbstractController * * @param int $page * - * @Route("/unread/list/{page}", name="unread", defaults={"page" = "1"}) + * @Route("/unread/list/{page}", name="unread", methods={"GET"}, defaults={"page" = "1"}) * @IsGranted("LIST_ENTRIES") * * @return Response @@ -320,7 +320,7 @@ class EntryController extends AbstractController * * @param int $page * - * @Route("/archive/list/{page}", name="archive", defaults={"page" = "1"}) + * @Route("/archive/list/{page}", name="archive", methods={"GET"}, defaults={"page" = "1"}) * @IsGranted("LIST_ENTRIES") * * @return Response @@ -335,7 +335,7 @@ class EntryController extends AbstractController * * @param int $page * - * @Route("/starred/list/{page}", name="starred", defaults={"page" = "1"}) + * @Route("/starred/list/{page}", name="starred", methods={"GET"}, defaults={"page" = "1"}) * @IsGranted("LIST_ENTRIES") * * @return Response @@ -350,7 +350,7 @@ class EntryController extends AbstractController * * @param int $page * - * @Route("/untagged/list/{page}", name="untagged", defaults={"page" = "1"}) + * @Route("/untagged/list/{page}", name="untagged", methods={"GET"}, defaults={"page" = "1"}) * @IsGranted("LIST_ENTRIES") * * @return Response @@ -365,7 +365,7 @@ class EntryController extends AbstractController * * @param int $page * - * @Route("/annotated/list/{page}", name="annotated", defaults={"page" = "1"}) + * @Route("/annotated/list/{page}", name="annotated", methods={"GET"}, defaults={"page" = "1"}) * @IsGranted("LIST_ENTRIES") * * @return Response @@ -378,7 +378,7 @@ class EntryController extends AbstractController /** * Shows random entry depending on the given type. * - * @Route("/{type}/random", name="random_entry", requirements={"type": "unread|starred|archive|untagged|annotated|all"}) + * @Route("/{type}/random", name="random_entry", methods={"GET"}, requirements={"type": "unread|starred|archive|untagged|annotated|all"}) * @IsGranted("LIST_ENTRIES") * * @return RedirectResponse @@ -400,7 +400,7 @@ class EntryController extends AbstractController /** * Shows entry content. * - * @Route("/view/{id}", requirements={"id" = "\d+"}, name="view") + * @Route("/view/{id}", name="view", methods={"GET"}, requirements={"id" = "\d+"}) * @IsGranted("VIEW", subject="entry") * * @return Response @@ -417,7 +417,7 @@ class EntryController extends AbstractController * Reload an entry. * Refetch content from the website and make it readable again. * - * @Route("/reload/{id}", requirements={"id" = "\d+"}, name="reload_entry") + * @Route("/reload/{id}", name="reload_entry", methods={"GET"}, requirements={"id" = "\d+"}) * @IsGranted("RELOAD", subject="entry") * * @return RedirectResponse @@ -445,7 +445,7 @@ class EntryController extends AbstractController /** * Changes read status for an entry. * - * @Route("/archive/{id}", requirements={"id" = "\d+"}, name="archive_entry") + * @Route("/archive/{id}", name="archive_entry", methods={"GET"}, requirements={"id" = "\d+"}) * @IsGranted("ARCHIVE", subject="entry") * * @return RedirectResponse @@ -473,7 +473,7 @@ class EntryController extends AbstractController /** * Changes starred status for an entry. * - * @Route("/star/{id}", requirements={"id" = "\d+"}, name="star_entry") + * @Route("/star/{id}", name="star_entry", methods={"GET"}, requirements={"id" = "\d+"}) * @IsGranted("STAR", subject="entry") * * @return RedirectResponse @@ -502,7 +502,7 @@ class EntryController extends AbstractController /** * Deletes entry and redirect to the homepage or the last viewed page. * - * @Route("/delete/{id}", requirements={"id" = "\d+"}, name="delete_entry") + * @Route("/delete/{id}", name="delete_entry", methods={"GET"}, requirements={"id" = "\d+"}) * @IsGranted("DELETE", subject="entry") * * @return RedirectResponse @@ -539,7 +539,7 @@ class EntryController extends AbstractController /** * Get public URL for entry (and generate it if necessary). * - * @Route("/share/{id}", requirements={"id" = "\d+"}, name="share") + * @Route("/share/{id}", name="share", methods={"GET"}, requirements={"id" = "\d+"}) * @IsGranted("SHARE", subject="entry") * * @return Response @@ -561,7 +561,7 @@ class EntryController extends AbstractController /** * Disable public sharing for an entry. * - * @Route("/share/delete/{id}", requirements={"id" = "\d+"}, name="delete_share") + * @Route("/share/delete/{id}", name="delete_share", methods={"GET"}, requirements={"id" = "\d+"}) * @IsGranted("UNSHARE", subject="entry") * * @return Response @@ -581,7 +581,7 @@ class EntryController extends AbstractController /** * Ability to view a content publicly. * - * @Route("/share/{uid}", requirements={"uid" = ".+"}, name="share_entry") + * @Route("/share/{uid}", name="share_entry", methods={"GET"}, requirements={"uid" = ".+"}) * @Cache(maxage="25200", smaxage="25200", public=true) * @IsGranted("PUBLIC_ACCESS") * @@ -604,7 +604,7 @@ class EntryController extends AbstractController * * @param int $page * - * @Route("/domain/{id}/{page}", requirements={"id" = "\d+"}, defaults={"page" = 1}, name="same_domain") + * @Route("/domain/{id}/{page}", name="same_domain", methods={"GET"}, requirements={"id" = "\d+"}, defaults={"page" = 1}) * @IsGranted("LIST_ENTRIES") * * @return Response diff --git a/src/Controller/ExportController.php b/src/Controller/ExportController.php index ce252cee9..d48b54894 100644 --- a/src/Controller/ExportController.php +++ b/src/Controller/ExportController.php @@ -19,7 +19,7 @@ class ExportController extends AbstractController /** * Gets one entry content. * - * @Route("/export/{id}.{format}", name="export_entry", requirements={ + * @Route("/export/{id}.{format}", name="export_entry", methods={"GET"}, requirements={ * "format": "epub|pdf|json|xml|txt|csv|md", * "id": "\d+" * }) @@ -53,7 +53,7 @@ class ExportController extends AbstractController /** * Export all entries for current user. * - * @Route("/export/{category}.{format}", name="export_entries", requirements={ + * @Route("/export/{category}.{format}", name="export_entries", methods={"GET"}, requirements={ * "format": "epub|pdf|json|xml|txt|csv|md", * "category": "all|unread|starred|archive|tag_entries|untagged|search|annotated|same_domain" * }) diff --git a/src/Controller/FeedController.php b/src/Controller/FeedController.php index 9dea3c2c6..b7e9f116a 100644 --- a/src/Controller/FeedController.php +++ b/src/Controller/FeedController.php @@ -29,7 +29,7 @@ class FeedController extends AbstractController /** * Shows unread entries for current user. * - * @Route("/feed/{username}/{token}/unread/{page}", name="unread_feed", defaults={"page"=1, "_format"="xml"}) + * @Route("/feed/{username}/{token}/unread/{page}", name="unread_feed", methods={"GET"}, defaults={"page"=1, "_format"="xml"}) * * @ParamConverter("user", class="Wallabag\Entity\User", converter="username_feed_token_converter") * @@ -43,7 +43,7 @@ class FeedController extends AbstractController /** * Shows read entries for current user. * - * @Route("/feed/{username}/{token}/archive/{page}", name="archive_feed", defaults={"page"=1, "_format"="xml"}) + * @Route("/feed/{username}/{token}/archive/{page}", name="archive_feed", methods={"GET"}, defaults={"page"=1, "_format"="xml"}) * * @ParamConverter("user", class="Wallabag\Entity\User", converter="username_feed_token_converter") * @@ -57,7 +57,7 @@ class FeedController extends AbstractController /** * Shows starred entries for current user. * - * @Route("/feed/{username}/{token}/starred/{page}", name="starred_feed", defaults={"page"=1, "_format"="xml"}) + * @Route("/feed/{username}/{token}/starred/{page}", name="starred_feed", methods={"GET"}, defaults={"page"=1, "_format"="xml"}) * * @ParamConverter("user", class="Wallabag\Entity\User", converter="username_feed_token_converter") * @@ -71,7 +71,7 @@ class FeedController extends AbstractController /** * Shows all entries for current user. * - * @Route("/feed/{username}/{token}/all/{page}", name="all_feed", defaults={"page"=1, "_format"="xml"}) + * @Route("/feed/{username}/{token}/all/{page}", name="all_feed", methods={"GET"}, defaults={"page"=1, "_format"="xml"}) * * @ParamConverter("user", class="Wallabag\Entity\User", converter="username_feed_token_converter") * @@ -85,7 +85,7 @@ class FeedController extends AbstractController /** * Shows entries associated to a tag for current user. * - * @Route("/feed/{username}/{token}/tags/{slug}/{page}", name="tag_feed", defaults={"page"=1, "_format"="xml"}) + * @Route("/feed/{username}/{token}/tags/{slug}/{page}", name="tag_feed", methods={"GET"}, defaults={"page"=1, "_format"="xml"}) * * @ParamConverter("user", class="Wallabag\Entity\User", converter="username_feed_token_converter") * @ParamConverter("tag", options={"mapping": {"slug": "slug"}}) diff --git a/src/Controller/Import/BrowserController.php b/src/Controller/Import/BrowserController.php index e4b5307b1..dc1af650d 100644 --- a/src/Controller/Import/BrowserController.php +++ b/src/Controller/Import/BrowserController.php @@ -13,7 +13,7 @@ use Wallabag\Import\ImportInterface; abstract class BrowserController extends AbstractController { /** - * @Route("/import/browser", name="import_browser") + * @Route("/import/browser", name="import_browser", methods={"GET", "POST"}) * * @return Response */ diff --git a/src/Controller/Import/ChromeController.php b/src/Controller/Import/ChromeController.php index 2287bc17e..507221a8a 100644 --- a/src/Controller/Import/ChromeController.php +++ b/src/Controller/Import/ChromeController.php @@ -26,7 +26,7 @@ class ChromeController extends BrowserController } /** - * @Route("/import/chrome", name="import_chrome") + * @Route("/import/chrome", name="import_chrome", methods={"GET", "POST"}) */ public function indexAction(Request $request, TranslatorInterface $translator) { diff --git a/src/Controller/Import/DeliciousController.php b/src/Controller/Import/DeliciousController.php index da19b8795..c79d5ca50 100644 --- a/src/Controller/Import/DeliciousController.php +++ b/src/Controller/Import/DeliciousController.php @@ -24,7 +24,7 @@ class DeliciousController extends AbstractController } /** - * @Route("/import/delicious", name="import_delicious") + * @Route("/import/delicious", name="import_delicious", methods={"GET", "POST"}) */ public function indexAction(Request $request, DeliciousImport $delicious, Config $craueConfig, TranslatorInterface $translator) { diff --git a/src/Controller/Import/ElcuratorController.php b/src/Controller/Import/ElcuratorController.php index daa7a1f8e..184a14d3d 100644 --- a/src/Controller/Import/ElcuratorController.php +++ b/src/Controller/Import/ElcuratorController.php @@ -26,7 +26,7 @@ class ElcuratorController extends WallabagController } /** - * @Route("/import/elcurator", name="import_elcurator") + * @Route("/import/elcurator", name="import_elcurator", methods={"GET", "POST"}) */ public function indexAction(Request $request, TranslatorInterface $translator) { diff --git a/src/Controller/Import/FirefoxController.php b/src/Controller/Import/FirefoxController.php index e059e4e4d..ea2d4da4e 100644 --- a/src/Controller/Import/FirefoxController.php +++ b/src/Controller/Import/FirefoxController.php @@ -26,7 +26,7 @@ class FirefoxController extends BrowserController } /** - * @Route("/import/firefox", name="import_firefox") + * @Route("/import/firefox", name="import_firefox", methods={"GET", "POST"}) */ public function indexAction(Request $request, TranslatorInterface $translator) { diff --git a/src/Controller/Import/HtmlController.php b/src/Controller/Import/HtmlController.php index e53cd8a46..b07477d22 100644 --- a/src/Controller/Import/HtmlController.php +++ b/src/Controller/Import/HtmlController.php @@ -13,7 +13,7 @@ use Wallabag\Import\ImportInterface; abstract class HtmlController extends AbstractController { /** - * @Route("/import/html", name="import_html") + * @Route("/import/html", name="import_html", methods={"GET", "POST"}) * * @return Response */ diff --git a/src/Controller/Import/ImportController.php b/src/Controller/Import/ImportController.php index bc506d264..4538391b6 100644 --- a/src/Controller/Import/ImportController.php +++ b/src/Controller/Import/ImportController.php @@ -20,7 +20,7 @@ class ImportController extends AbstractController } /** - * @Route("/import/", name="import") + * @Route("/import/", name="import", methods={"GET"}) */ public function importAction(ImportChain $importChain) { diff --git a/src/Controller/Import/InstapaperController.php b/src/Controller/Import/InstapaperController.php index daf7f6111..655a26bf7 100644 --- a/src/Controller/Import/InstapaperController.php +++ b/src/Controller/Import/InstapaperController.php @@ -24,7 +24,7 @@ class InstapaperController extends AbstractController } /** - * @Route("/import/instapaper", name="import_instapaper") + * @Route("/import/instapaper", name="import_instapaper", methods={"GET", "POST"}) */ public function indexAction(Request $request, InstapaperImport $instapaper, Config $craueConfig, TranslatorInterface $translator) { diff --git a/src/Controller/Import/OmnivoreController.php b/src/Controller/Import/OmnivoreController.php index 2482c93fc..2d64cd5fa 100644 --- a/src/Controller/Import/OmnivoreController.php +++ b/src/Controller/Import/OmnivoreController.php @@ -24,7 +24,7 @@ class OmnivoreController extends AbstractController } /** - * @Route("/import/omnivore", name="import_omnivore") + * @Route("/import/omnivore", name="import_omnivore", methods={"GET", "POST"}) */ public function indexAction(Request $request, OmnivoreImport $omnivore, Config $craueConfig, TranslatorInterface $translator) { diff --git a/src/Controller/Import/PinboardController.php b/src/Controller/Import/PinboardController.php index 791f0e0f7..a49b2c2bd 100644 --- a/src/Controller/Import/PinboardController.php +++ b/src/Controller/Import/PinboardController.php @@ -24,7 +24,7 @@ class PinboardController extends AbstractController } /** - * @Route("/import/pinboard", name="import_pinboard") + * @Route("/import/pinboard", name="import_pinboard", methods={"GET", "POST"}) */ public function indexAction(Request $request, PinboardImport $pinboard, Config $craueConfig, TranslatorInterface $translator) { diff --git a/src/Controller/Import/PocketController.php b/src/Controller/Import/PocketController.php index 829ec69e4..1f0b17aa2 100644 --- a/src/Controller/Import/PocketController.php +++ b/src/Controller/Import/PocketController.php @@ -30,7 +30,7 @@ class PocketController extends AbstractController } /** - * @Route("/import/pocket", name="import_pocket") + * @Route("/import/pocket", name="import_pocket", methods={"GET"}) */ public function indexAction(PocketImport $pocketImport) { @@ -51,7 +51,7 @@ class PocketController extends AbstractController } /** - * @Route("/import/pocket/auth", name="import_pocket_auth") + * @Route("/import/pocket/auth", name="import_pocket_auth", methods={"POST"}) */ public function authAction(Request $request, PocketImport $pocketImport) { @@ -81,7 +81,7 @@ class PocketController extends AbstractController } /** - * @Route("/import/pocket/callback", name="import_pocket_callback") + * @Route("/import/pocket/callback", name="import_pocket_callback", methods={"GET"}) */ public function callbackAction(PocketImport $pocketImport, TranslatorInterface $translator) { diff --git a/src/Controller/Import/PocketHtmlController.php b/src/Controller/Import/PocketHtmlController.php index bf4d379d9..179550350 100644 --- a/src/Controller/Import/PocketHtmlController.php +++ b/src/Controller/Import/PocketHtmlController.php @@ -26,7 +26,7 @@ class PocketHtmlController extends HtmlController } /** - * @Route("/import/pocket_html", name="import_pocket_html") + * @Route("/import/pocket_html", name="import_pocket_html", methods={"GET", "POST"}) */ public function indexAction(Request $request, TranslatorInterface $translator) { diff --git a/src/Controller/Import/ReadabilityController.php b/src/Controller/Import/ReadabilityController.php index 6943d60e7..d54f4f33b 100644 --- a/src/Controller/Import/ReadabilityController.php +++ b/src/Controller/Import/ReadabilityController.php @@ -24,7 +24,7 @@ class ReadabilityController extends AbstractController } /** - * @Route("/import/readability", name="import_readability") + * @Route("/import/readability", name="import_readability", methods={"GET", "POST"}) */ public function indexAction(Request $request, ReadabilityImport $readability, Config $craueConfig, TranslatorInterface $translator) { diff --git a/src/Controller/Import/ShaarliController.php b/src/Controller/Import/ShaarliController.php index 092b6e695..c9aa184ed 100644 --- a/src/Controller/Import/ShaarliController.php +++ b/src/Controller/Import/ShaarliController.php @@ -26,7 +26,7 @@ class ShaarliController extends HtmlController } /** - * @Route("/import/shaarli", name="import_shaarli") + * @Route("/import/shaarli", name="import_shaarli", methods={"GET", "POST"}) */ public function indexAction(Request $request, TranslatorInterface $translator) { diff --git a/src/Controller/Import/WallabagV1Controller.php b/src/Controller/Import/WallabagV1Controller.php index 123cde2e3..85662cc78 100644 --- a/src/Controller/Import/WallabagV1Controller.php +++ b/src/Controller/Import/WallabagV1Controller.php @@ -26,7 +26,7 @@ class WallabagV1Controller extends WallabagController } /** - * @Route("/import/wallabag-v1", name="import_wallabag_v1") + * @Route("/import/wallabag-v1", name="import_wallabag_v1", methods={"GET", "POST"}) */ public function indexAction(Request $request, TranslatorInterface $translator) { diff --git a/src/Controller/Import/WallabagV2Controller.php b/src/Controller/Import/WallabagV2Controller.php index 1b864e96b..9d615059b 100644 --- a/src/Controller/Import/WallabagV2Controller.php +++ b/src/Controller/Import/WallabagV2Controller.php @@ -26,7 +26,7 @@ class WallabagV2Controller extends WallabagController } /** - * @Route("/import/wallabag-v2", name="import_wallabag_v2") + * @Route("/import/wallabag-v2", name="import_wallabag_v2", methods={"GET", "POST"}) */ public function indexAction(Request $request, TranslatorInterface $translator) { diff --git a/src/Controller/StaticController.php b/src/Controller/StaticController.php index fda356851..13e3e641f 100644 --- a/src/Controller/StaticController.php +++ b/src/Controller/StaticController.php @@ -7,7 +7,7 @@ use Symfony\Component\Routing\Annotation\Route; class StaticController extends AbstractController { /** - * @Route("/howto", name="howto") + * @Route("/howto", name="howto", methods={"GET"}) */ public function howtoAction() { @@ -22,7 +22,7 @@ class StaticController extends AbstractController } /** - * @Route("/about", name="about") + * @Route("/about", name="about", methods={"GET"}) */ public function aboutAction() { @@ -36,7 +36,7 @@ class StaticController extends AbstractController } /** - * @Route("/quickstart", name="quickstart") + * @Route("/quickstart", name="quickstart", methods={"GET"}) */ public function quickstartAction() { diff --git a/src/Controller/TagController.php b/src/Controller/TagController.php index c34c9b17a..1c38fdc73 100644 --- a/src/Controller/TagController.php +++ b/src/Controller/TagController.php @@ -35,7 +35,7 @@ class TagController extends AbstractController } /** - * @Route("/new-tag/{entry}", requirements={"entry" = "\d+"}, name="new_tag", methods={"POST"}) + * @Route("/new-tag/{entry}", name="new_tag", methods={"POST"}, requirements={"entry" = "\d+"}) * * @return Response */ @@ -86,7 +86,7 @@ class TagController extends AbstractController /** * Removes tag from entry. * - * @Route("/remove-tag/{entry}/{tag}", requirements={"entry" = "\d+", "tag" = "\d+"}, name="remove_tag") + * @Route("/remove-tag/{entry}/{tag}", name="remove_tag", methods={"GET"}, requirements={"entry" = "\d+", "tag" = "\d+"}) * * @return Response */ @@ -111,7 +111,7 @@ class TagController extends AbstractController /** * Shows tags for current user. * - * @Route("/tag/list", name="tag") + * @Route("/tag/list", name="tag", methods={"GET"}) * * @return Response */ @@ -135,7 +135,7 @@ class TagController extends AbstractController /** * @param int $page * - * @Route("/tag/list/{slug}/{page}", name="tag_entries", defaults={"page" = "1"}) + * @Route("/tag/list/{slug}/{page}", name="tag_entries", methods={"GET"}, defaults={"page" = "1"}) * @ParamConverter("tag", options={"mapping": {"slug": "slug"}}) * * @return Response @@ -174,7 +174,7 @@ class TagController extends AbstractController * Rename a given tag with a new label * Create a new tag with the new name and drop the old one. * - * @Route("/tag/rename/{slug}", name="tag_rename") + * @Route("/tag/rename/{slug}", name="tag_rename", methods={"POST"}) * @ParamConverter("tag", options={"mapping": {"slug": "slug"}}) * * @return Response @@ -227,7 +227,7 @@ class TagController extends AbstractController /** * Tag search results with the current search term. * - * @Route("/tag/search/{filter}", name="tag_this_search") + * @Route("/tag/search/{filter}", name="tag_this_search", methods={"GET"}) * * @return Response */ @@ -262,7 +262,7 @@ class TagController extends AbstractController /** * Delete a given tag for the current user. * - * @Route("/tag/delete/{slug}", name="tag_delete") + * @Route("/tag/delete/{slug}", name="tag_delete", methods={"GET"}) * @ParamConverter("tag", options={"mapping": {"slug": "slug"}}) * * @return Response diff --git a/src/Controller/UserController.php b/src/Controller/UserController.php index b48b6205c..8209d46fb 100644 --- a/src/Controller/UserController.php +++ b/src/Controller/UserController.php @@ -145,7 +145,7 @@ class UserController extends AbstractController /** * @param int $page * - * @Route("/users/list/{page}", name="user_index", defaults={"page" = 1}) + * @Route("/users/list/{page}", name="user_index", methods={"GET"}, defaults={"page" = 1}) * @IsGranted("LIST_USERS") * * Default parameter for page is hardcoded (in duplication of the defaults from the Route) diff --git a/tests/Controller/Import/PocketControllerTest.php b/tests/Controller/Import/PocketControllerTest.php index b6c7c97f9..4216a7cc1 100644 --- a/tests/Controller/Import/PocketControllerTest.php +++ b/tests/Controller/Import/PocketControllerTest.php @@ -56,7 +56,7 @@ class PocketControllerTest extends WallabagTestCase $this->logInAs('admin'); $client = $this->getTestClient(); - $client->request('GET', '/import/pocket/auth'); + $client->request('POST', '/import/pocket/auth'); $this->assertSame(302, $client->getResponse()->getStatusCode()); } @@ -77,7 +77,7 @@ class PocketControllerTest extends WallabagTestCase static::$kernel->getContainer()->set(PocketImport::class, $pocketImport); - $client->request('GET', '/import/pocket/auth'); + $client->request('POST', '/import/pocket/auth'); $this->assertSame(301, $client->getResponse()->getStatusCode()); $this->assertStringContainsString('getpocket.com/auth/authorize', $client->getResponse()->headers->get('location'));