Add redirects as required to deal with legacy urls, for all the stuff
authorMagnus Hagander <magnus@hagander.net>
Tue, 22 Jun 2010 09:17:49 +0000 (11:17 +0200)
committerMagnus Hagander <magnus@hagander.net>
Tue, 22 Jun 2010 09:17:49 +0000 (11:17 +0200)
that was in .htaccess files on the old site.

pgweb/docs/views.py
pgweb/legacyurl/views.py
pgweb/urls.py

index e31a722b6328f601cf1f145e4a5e87f24ab5e44e..564350998d8a725763396f4ef0d368e115c1e3c8 100644 (file)
@@ -43,6 +43,9 @@ def docpage(request, version, typ, filename):
 def docsrootpage(request, version, typ):
        return docpage(request, version, typ, 'index')
 
+def redirect_root(request, version):
+       return HttpResponseRedirect("/docs/%s/static/" % version)
+
 @ssl_required
 @login_required
 def commentform(request, itemid, version, filename):
index 62cbc7c0a5556bde984e22926d43abbff0824274..d91804816fcd4736750a2e842adc4813de1d7152 100644 (file)
@@ -16,3 +16,6 @@ def signup(request):
 
 def html_extension(request, prior_to_html):
        return HttpResponseRedirect("/%s" % prior_to_html)
+
+def mailpref(request, listname):
+       return HttpResponseRedirect("http://mail.postgresql.org/mj/mj_wwwusr/domain=postgresql.org?func=lists-long-full&extra=%s" % listname)
index b4ba3a2c200a5bb2045d624a52f1de3fb4dc5e71..7a2b736016bd516037a2c11703f4c5252e76dcf8 100644 (file)
@@ -1,4 +1,5 @@
 from django.conf.urls.defaults import *
+from django.views.generic.simple import redirect_to
 
 # Register our save signal handlers
 from pgweb.util.bases import register_basic_signal_handlers
@@ -43,6 +44,7 @@ urlpatterns = patterns('',
 
     (r'^docs/(current|\d\.\d)/(static|interactive)/(.*).html$', 'docs.views.docpage'),
     (r'^docs/(current|\d\.\d)/(static|interactive)/$', 'docs.views.docsrootpage'),
+    (r'^docs/(current|\d\.\d)/$', 'docs.views.redirect_root'),
 
     (r'^community/$', 'core.views.community'),
     (r'^community/contributors/$', 'contributors.views.completelist'),
@@ -81,6 +83,21 @@ urlpatterns = patterns('',
     (r'^about/event\.(\d+)$', 'pgweb.legacyurl.views.event'),
     (r'^community/signup', 'pgweb.legacyurl.views.signup'),
 
+    ###
+    # These URLs were legacy even on the old site...
+    ###
+    (r'^developer/sourcecode/$', redirect_to, {'url': '/developer/coding/' }),
+    (r'^developer/bios/$', redirect_to, {'url': '/community/contributors/' }),
+    (r'^docs/techdocs.*', redirect_to, {'url': 'http://wiki.postgresql.org/' }),
+    (r'^docs/faqs.FAQ.html$', redirect_to, {'url': 'http://wiki.postgresql.org/wiki/FAQ' }),
+    (r'^docs/faqs.FAQ_DEV.*', redirect_to, {'url': 'http://wiki.postgresql.org/wiki/Development_information' }),
+    (r'^docs/faqs.TODO.*', redirect_to, {'url': 'http://wiki.postgresql.org/wiki/Todo' }),
+
+    ###
+    # Links included in emails on the lists (do we need to check this for XSS?)
+    ###
+    (r'^mailpref/([a-z0-9_-]+)/$', 'pgweb.legacyurl.views.mailpref'),
+
     # Some basic information about the connection (for debugging purposes)
        (r'^system_information/$', 'pgweb.core.views.system_information'),