summaryrefslogtreecommitdiff
path: root/#urls.py#
diff options
context:
space:
mode:
Diffstat (limited to '#urls.py#')
-rw-r--r--#urls.py#136
1 files changed, 136 insertions, 0 deletions
diff --git a/#urls.py# b/#urls.py#
new file mode 100644
index 00000000..5c792035
--- /dev/null
+++ b/#urls.py#
@@ -0,0 +1,136 @@
+from django.conf.urls.defaults import *
+from django.conf import settings
+from django.contrib import admin
+
+from django.views.generic.simple import direct_to_template
+
+from main.models import Todolist
+from feeds import PackageFeed, NewsFeed
+import sitemaps
+
+sitemaps = {
+ 'news': sitemaps.NewsSitemap,
+ 'packages': sitemaps.PackagesSitemap,
+ 'package-files': sitemaps.PackageFilesSitemap,
+ 'package-groups': sitemaps.PackageGroupsSitemap,
+}
+
+admin.autodiscover()
+
+urlpatterns = patterns('',
+ (r'^packages/flaghelp/$', 'packages.views.flaghelp'),
+ (r'^packages/signoffs/$', 'packages.views.signoffs'),
+ (r'^packages/signoff_package/(?P<arch>[A-z0-9]+)/(?P<pkgname>[A-z0-9\-+.]+)/$',
+ 'packages.views.signoff_package'),
+ (r'^packages/update/$', 'packages.views.update'),
+
+ # Preference is for the packages/ url below, but search is kept
+ # because other projects link to it
+ (r'^packages/search/$', 'packages.views.search'),
+ (r'^packages/search/(?P<page>\d+)/$', 'packages.views.search'),
+ (r'^packages/differences/$', 'packages.views.arch_differences'),
+ (r'^packages/$', 'packages.views.search'),
+ (r'^packages/(?P<page>\d+)/$', 'packages.views.search'),
+
+ (r'^packages/(?P<name>[A-z0-9\-+.]+)/$',
+ 'packages.views.details'),
+ (r'^packages/(?P<repo>[A-z0-9\-]+)/(?P<name>[A-z0-9\-+.]+)/$',
+ 'packages.views.details'),
+ (r'^packages/(?P<repo>[A-z0-9\-]+)/(?P<arch>[A-z0-9]+)/(?P<name>[A-z0-9\-+.]+)/$',
+ 'packages.views.details'),
+ (r'^packages/(?P<repo>[A-z0-9\-]+)/(?P<arch>[A-z0-9]+)/(?P<name>[A-z0-9\-+.]+)/files/$',
+ 'packages.views.files'),
+ (r'^packages/(?P<repo>[A-z0-9\-]+)/(?P<arch>[A-z0-9]+)/(?P<name>[A-z0-9\-+.]+)/maintainer/$',
+ 'packages.views.getmaintainer'),
+ (r'^packages/(?P<repo>[A-z0-9\-]+)/(?P<arch>[A-z0-9]+)/(?P<name>[A-z0-9\-+.]+)/flag/$',
+ 'packages.views.flag'),
+ (r'^packages/(?P<repo>[A-z0-9\-]+)/(?P<arch>[A-z0-9]+)/(?P<name>[A-z0-9\-+.]+)/unflag/$',
+ 'packages.views.unflag'),
+ (r'^packages/(?P<repo>[A-z0-9\-]+)/(?P<arch>[A-z0-9]+)/(?P<name>[A-z0-9\-+.]+)/download/$',
+ 'packages.views.download'),
+
+ (r'^groups/$', 'packages.views.groups'),
+ (r'^groups/(?P<arch>[A-z0-9]+)/(?P<name>[A-z0-9\-+.]+)/$',
+ 'packages.views.group_details'),
+
+ (r'^todo/(\d+)/$', 'todolists.views.view'),
+ (r'^todo/add/$', 'todolists.views.add'),
+ (r'^todo/edit/(?P<list_id>\d+)/$', 'todolists.views.edit'),
+ (r'^todo/flag/(\d+)/(\d+)/$', 'todolists.views.flag'),
+ (r'^todo/delete/(?P<object_id>\d+)/$',
+ 'todolists.views.delete_todolist'),
+ (r'^todo/$', 'todolists.views.list'),
+ (r'^todolists/$', 'todolists.views.public_list'),
+
+ (r'^news/add/$', 'news.views.add'),
+ (r'^news/preview/$', 'news.views.preview'),
+ # old news URLs, permanent redirect view so we don't break all links
+ (r'^news/(?P<object_id>\d+)/$', 'news.views.view_redirect'),
+ (r'^news/(?P<slug>[-\w]+)/$', 'news.views.view'),
+ (r'^news/(?P<slug>[-\w]+)/edit/$', 'news.views.edit'),
+ (r'^news/(?P<slug>[-\w]+)/delete/$', 'news.views.delete'),
+ (r'^news/$', 'news.views.news_list', {}, 'news-list'),
+
+ (r'^mirrors/$', 'mirrors.views.mirrors', {}, 'mirrors-list'),
+ (r'^mirrors/status/$', 'mirrors.views.status', {}, 'mirror-status'),
+ (r'^mirrors/(?P<name>[\.\-\w]+)/$', 'mirrors.views.mirror_details'),
+
+ (r'^mirrorlist/$', 'mirrors.views.generate_mirrorlist', {}, 'mirrorlist'),
+ (r'^mirrorlist/all/$', 'mirrors.views.find_mirrors', {'countries': ['all']}),
+ (r'^mirrorlist/all/ftp/$', 'mirrors.views.find_mirrors',
+ {'countries': ['all'], 'protocols': ['ftp']}),
+ (r'^mirrorlist/all/http/$', 'mirrors.views.find_mirrors',
+ {'countries': ['all'], 'protocols': ['http']}),
+
+ (r'^devel/$', 'devel.views.index'),
+ (r'^devel/notify/$', 'devel.views.change_notify'),
+ (r'^devel/profile/$', 'devel.views.change_profile'),
+
+ (r'^devel/newuser/$', 'devel.views.new_user_form'),
+
+# Feeds and sitemaps
+ (r'^feeds/$', 'public.views.feeds', {}, 'feeds-list'),
+ (r'^feeds/news/$', NewsFeed()),
+ (r'^feeds/packages/$', PackageFeed()),
+ (r'^feeds/packages/(?P<arch>[A-z0-9]+)/$',
+ PackageFeed()),
+ (r'^feeds/packages/(?P<arch>[A-z0-9]+)/(?P<repo>[A-z0-9\-]+)/$',
+ PackageFeed()),
+ (r'^sitemap.xml$', 'django.contrib.sitemaps.views.index',
+ {'sitemaps': sitemaps}),
+ (r'^sitemap-(?P<section>.+)\.xml$', 'django.contrib.sitemaps.views.sitemap',
+ {'sitemaps': sitemaps}),
+
+# Authentication / Admin
+ (r'^login/$', 'django.contrib.auth.views.login', {
+ 'template_name': 'registration/login.html'}),
+ (r'^accounts/login/$', 'django.contrib.auth.views.login', {
+ 'template_name': 'registration/login.html'}),
+ (r'^logout/$', 'django.contrib.auth.views.logout', {
+ 'template_name': 'registration/logout.html'}),
+ (r'^accounts/logout/$', 'django.contrib.auth.views.logout', {
+ 'template_name': 'registration/logout.html'}),
+ (r'^admin/', include(admin.site.urls)),
+
+# (mostly) Static Pages
+ (r'^$', 'public.views.index', {}, 'index'),
+ (r'^about/$', direct_to_template, {'template': 'public/about.html'}, 'page-about'),
+ (r'^art/$', direct_to_template, {'template': 'public/art.html'}, 'page-art'),
+ (r'^svn/$', direct_to_template, {'template': 'public/svn.html'}, 'page-svn'),
+ (r'^developers/$', 'public.views.userlist', { 'type':'Developers' }, 'page-devs'),
+ (r'^trustedusers/$', 'public.views.userlist', { 'type':'Trusted Users' }, 'page-tus'),
+ (r'^fellows/$', 'public.views.userlist', { 'type':'Fellows' }, 'page-fellows'),
+ (r'^donate/$', 'public.views.donate', {}, 'page-donate'),
+ (r'^download/$', 'public.views.download', {}, 'page-download'),
+ (r'^opensearch/packages/$', 'packages.views.opensearch', {}, 'opensearch-packages'),
+
+# Some django internals we use
+ (r'^jsi18n/$', 'django.views.i18n.null_javascript_catalog'),
+)
+
+if settings.DEBUG == True:
+ urlpatterns += patterns('',
+ (r'^media/(.*)$', 'django.views.static.serve',
+ {'document_root': settings.DEPLOY_PATH+'/media'}))
+
+# vim: set ts=4 sw=4 et: