# Lists:

entries_home:
    path:         /{list_name}
    defaults:     { _controller: "ContentManagementBundle:Entry:home" }
    requirements: { "list_name": "%entries.lists%" }

new_entries:
    path:         /{list_name}/new
    defaults:     { _controller: "ContentManagementBundle:Entry:new" }
    requirements: { "list_name": "%entries.lists%" }

top_entries:
    path:         /{list_name}/top
    defaults:     { _controller: "ContentManagementBundle:Entry:top" }
    requirements: { "list_name": "%entries.lists%" }

collection:
    path:         /collection/{id}/{slug}
    defaults:     { _controller: "ContentManagementBundle:Entry:collection", slug: ~ }
    requirements: { "id": "\d+", slug: ".*" }

author:
    path:         /author/{id}/{slug}
    defaults:     { _controller: "ContentManagementBundle:Entry:author", slug: ~ }
    requirements: { "id": "\d+", slug: ".*" }

author_entries:
    path:         /{list_name}/author/{id}
    defaults:     { _controller: "ContentManagementBundle:Entry:author" }
    requirements: { "list_name": "%entries.lists%", "id": "\d+" }

category:
    path:         /category/{id}
    defaults:     { _controller: "ContentManagementBundle:Entry:category" }
    requirements: { "id": "\d+" }

category_entries:
    path:         /{list_name}/category/{id}
    defaults:     { _controller: "ContentManagementBundle:Entry:category" }
    requirements: { "list_name": "%entries.lists%", "id": "\d+" }

tag:
    path:         /tag/{name}
    defaults:     { _controller: "ContentManagementBundle:Entry:tag" }

tag_entries:
    path:         /{list_name}/tag/{name}
    defaults:     { _controller: "ContentManagementBundle:Entry:tag" }
    requirements: { "list_name": "%entries.lists%" }

source:
    path:         /source/{id}/{slug}
    defaults:     { _controller: "ContentManagementBundle:Entry:source", slug: ~ }
    requirements: { "id": "\d+", slug: ".*" }

source_entries:
    path:         /{list_name}/source/{id}
    defaults:     { _controller: "ContentManagementBundle:Entry:source" }
    requirements: { "list_name": "%entries.lists%", "id": "\d+" }

aggregate:
    path:         /aggregate/{id}
    defaults:     { _controller: "ContentManagementBundle:Entry:aggregate" }
    requirements: { "id": "\d+" }
#===============================================================================

entry_poster:
    path:         /{type_name}/{local_id}/poster
    defaults:     { _controller: "ContentManagementBundle:Entry:poster" }
    requirements: { "type_name": "%entries.types%", "local_id": "\d+" }

entry_printable:
    path:         /{type_name}/{local_id}/printable
    defaults:     { _controller: "ContentManagementBundle:Entry:printable" }
    requirements: { "type_name": "%entries.types%", "local_id": "\d+" }

entry_embeddable:
    path:         /{type_name}/{local_id}/embeddable
    defaults:     { _controller: "ContentManagementBundle:Entry:embeddable" }
    requirements: { "type_name": "%entries.types%", "local_id": "\d+" }

entry_saveAsPdf:
    path:         /{type_name}/{local_id}.pdf
    defaults:     { _controller: "ContentManagementBundle:Entry:saveAsPdf" }
    requirements: { "type_name": "%entries.types%", "local_id": "\d+" }

entry_reportProblem:
    path:         /{type_name}/{local_id}/report-problem
    defaults:     { _controller: "ContentManagementBundle:Entry:reportProblem" }
    requirements: { "type_name": "%entries.types%", "local_id": "\d+" }

entry_qrCode:
    path:         /{type_name}/{local_id}/qr-code
    defaults:     { _controller: "ContentManagementBundle:Entry:qrCode" }
    requirements: { "type_name": "%entries.types%", "local_id": "\d+" }

entry_rate:
    path:         /rate
    defaults:     { _controller: "ContentManagementBundle:Entry:rate" }
    methods:      [POST]

entry_addBookmark:
    path:         /add-bookmark
    defaults:     { _controller: "ContentManagementBundle:Entry:addBookmark" }
    methods:      [POST]

entry_deleteBookmark:
    path:         /delete-bookmark
    defaults:     { _controller: "ContentManagementBundle:Entry:deleteBookmark" }
    methods:      [POST]

entry_addToFavourites:
    path:         /add-to-favs
    defaults:     { _controller: "ContentManagementBundle:Entry:addToFavourites" }
    methods:      [POST]

entry_removeFromFavourites:
    path:         /remove-from-favs
    defaults:     { _controller: "ContentManagementBundle:Entry:removeFromFavourites" }
    methods:      [POST]

entry_view:
    path:         /{type_name}/{local_id}/{slug}
    defaults:     { _controller: "ContentManagementBundle:Entry:view", slug: ~ }
    requirements: { "type_name": "%entries.types%", "local_id": "\d+", slug: ".*" }

search:
    path:         /search
    defaults:     { _controller: "ContentManagementBundle:Search:results" }

upload_for_author:
    path:         /author/{id}/upload
    defaults:     { _controller: "ContentManagementBundle:Entry:upload" }
    requirements: { "id": "\d+" }

# Feeds:
author_feed:
    path:         /feeds/author/{id}.{_format}
    defaults:     { _controller: "ContentManagementBundle:Feeds:author" }
    requirements: { "id": "\d+", "_format": "rss|atom" }
#===============================================================================
oembed:
    path:         /oembed.{_format}
    defaults:     { _controller: "ContentManagementBundle:OEmbed:endpoint" }
    requirements: { "_format": "xml|json" }
#===============================================================================
user_bookmarks:
    path:         /user/{_user}/bookmarks
    defaults:     { _controller: "ContentManagementBundle:Entry:userBookmarks" }

user_favourites:
    path:         /user/{_user}/favourites
    defaults:     { _controller: "ContentManagementBundle:Entry:userFavourites" }