# -*- coding: utf-8 -*-
# Copyright (C) 1998-2012 by the Free Software Foundation, Inc.
#
# This file is part of Postorius.
#
# Postorius is free software: you can redistribute it and/or modify it under
# the terms of the GNU General Public License as published by the Free
# Software Foundation, either version 3 of the License, or (at your option)
# any later version.
#
# Postorius is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
# more details.
#
# You should have received a copy of the GNU General Public License along with
# Postorius. If not, see <http://www.gnu.org/licenses/>.
from django.conf.urls.defaults import *
from django.conf import settings
from django.conf.urls.static import static
from postorius.views import *
from postorius.views.generic import *
urlpatterns = patterns(
'postorius.views',
(r'^$', 'list_index'),
# /account/
url(r'^accounts/login/$', 'user_login', name='user_login'),
url(r'^accounts/logout/$', 'user_logout', name='user_logout'),
url(r'^accounts/profile/$', 'user_profile', name='user_profile'),
url(r'^accounts/todos/$', 'user_todos', name='user_todos'),
url(r'^accounts/subscriptions/$', UserSubscriptionsView.as_view(),
name='user_subscriptions'),
url(r'^accounts/mailmansettings/$',
'user_mailmansettings',
name='user_mailmansettings'),
# /settings/
url(r'^settings/$', 'site_settings', name="site_settings"),
url(r'^settings/domains/$', 'domain_index', name='domain_index'),
url(r'^settings/domains/new/$', 'domain_new', name='domain_new'),
# /lists/
url(r'^lists/$', 'list_index', name='list_index'),
url(r'^lists/new/$', 'list_new', name='list_new'),
url(r'^lists/(?P<fqdn_listname>[^/]+)/members/$',
ListMembersView.as_view(), name='list_members'),
url(r'^lists/(?P<fqdn_listname>[^/]+)/metrics$',
ListMetricsView.as_view(), name='list_metrics'),
url(r'^lists/(?P<fqdn_listname>[^/]+)/$',
ListSummaryView.as_view(), name='list_summary'),
url(r'^lists/(?P<fqdn_listname>[^/]+)/subscribe$',
ListSubsribeView.as_view(), name='list_subscribe'),
url(r'^lists/(?P<fqdn_listname>[^/]+)/unsubscribe/(?P<email>[^/]+)$',
ListUnsubscribeView.as_view(), name='list_unsubscribe'),
url(r'^lists/(?P<fqdn_listname>[^/]+)/subscriptions$',
'list_subscriptions', name='list_subscriptions'),
url(r'^lists/(?P<fqdn_listname>[^/]+)/mass_subscribe/$',
ListMassSubsribeView.as_view(), name='mass_subscribe'),
url(r'^lists/(?P<fqdn_listname>[^/]+)/delete$',
'list_delete', name='list_delete'),
url(r'^lists/(?P<fqdn_listname>[^/]+)/held_messages/(?P<msg_id>[^/]+)/'
'accept$', 'accept_held_message', name='accept_held_message'),
url(r'^lists/(?P<fqdn_listname>[^/]+)/held_messages/(?P<msg_id>[^/]+)/'
'discard$', 'discard_held_message', name='discard_held_message'),
url(r'^lists/(?P<fqdn_listname>[^/]+)/held_messages/(?P<msg_id>[^/]+)/'
'defer$', 'defer_held_message', name='defer_held_message'),
url(r'^lists/(?P<fqdn_listname>[^/]+)/held_messages/(?P<msg_id>[^/]+)/'
'reject$', 'reject_held_message', name='reject_held_message'),
url(r'^lists/(?P<fqdn_listname>[^/]+)/held_messages$',
'list_held_messages', name='list_held_messages'),
url(r'^user_settings/$', 'user_settings', kwargs={"tab": "user"},
name='user_settings'),
url(r'^lists/(?P<fqdn_listname>[^/]+)/settings/(?P<visible_section>[^/]+)?'
'(?:/(?P<visible_option>.*))?$', 'list_settings',
name='list_settings'),
# /users/
url(r'^users/$', 'user_index', name='user_index'),
url(r'^users/new/$', 'user_new', name='user_new'),
url(r'^users/(?P<user_id>[^/]+)/$',
UserSummaryView.as_view(), name='user_summary'),
url(r'^api/lists/$', 'api_list_index', name='api_list_index'),
) + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)