X-Git-Url: http://git.veekun.com/zzz-floof.git/blobdiff_plain/7c20a2661d532fe1e338f0f0dfb9fe42113ab103..1dfae8eecba58adb311514ce7f284ed610834d6c:/floof/config/routing.py diff --git a/floof/config/routing.py b/floof/config/routing.py index 603afd0..f6906f4 100644 --- a/floof/config/routing.py +++ b/floof/config/routing.py @@ -42,29 +42,42 @@ def make_map(): sub.connect('register', '/account/register', action='register') sub.connect('register_finish', '/account/register_finish', action='register_finish', **require_POST) - # with map.submapper() - map.connect('/users', controller='users', action='list') - map.connect('user_page', '/users/{name}', controller='users', action='view') + # Specific user stuff + with map.submapper(controller='users') as sub: + sub.connect( '/users', action='list') + sub.connect('user_page', '/users/{name}', action='view') + with map.submapper(controller='user_settings') as sub: + sub.connect( '/users/{name}/settings/relationships/toggle', + action='rel_toggle', **require_POST) # Comments with map.submapper(controller='comments') as sub: sub.connect('/*owner_url/comments', action='thread') - sub.connect('/*owner_url/comments/{id}', action='thread') sub.connect('/*owner_url/comments/reply', action='reply') - sub.connect('/*owner_url/comments/{id}/reply', action='reply') sub.connect('/*owner_url/comments/reply_done', action='reply_done', **require_POST) + sub.connect('/*owner_url/comments/{id}', action='thread') + sub.connect('/*owner_url/comments/{id}/reply', action='reply') sub.connect('/*owner_url/comments/{id}/reply_done', action='reply_done', **require_POST) + # Art with map.submapper(controller="art") as sub: sub.connect('new_art', '/art/new', action="new") sub.connect('create_art', '/art/create', action="create") sub.connect('rate_art', '/art/{id}/rate', action="rate") sub.connect('show_art', '/art/{id}', action="show") + # Some art pages pertain to a specific user, but still belong in the art + # controller + map.connect('/users/{name}/watchstream', controller='art', action='watchstream') + with map.submapper(controller='tag') as sub: sub.connect('delete_tag', '/art/{art_id}/tag/{id}') sub.connect('create_tag', '/art/{art_id}/tag') + with map.submapper(controller='relation') as sub: + sub.connect('create_relation', '/art/{art_id}/relations/{kind}/create', action="create") + # TODO: conditions: kind = by|for|of|character? + map.resource('tag','tags', controller="tag", parent_resource=dict(member_name='art', collection_name='art')) # Yeah, parent resources are specified kinda dumb-ly. Would be better if you could pass in the