Changeset - b2a006f49ce1
[Not reviewed]
0 5 0
Brett Smith (brett) - 6 years ago 2017-11-07 14:00:48
brett@sfconservancy.org
urls: Migrate from patterns strings to plain lists of urls.
5 files changed with 63 insertions and 114 deletions:
0 comments (0 inline, 0 general)
www/conservancy/apps/blog/urls.py
Show inline comments
 
from django.conf.urls import patterns, url, include
 
from django.conf.urls import url, include
 
from conservancy.apps.blog.models import Entry, EntryTag # relative import
 
from conservancy.apps.staff.models import Person
 
from datetime import datetime
 
from conservancy.apps.blog.views import last_name, BlogYearArchiveView, BlogMonthArchiveView, BlogDayArchiveView, BlogDateDetailView
 
from conservancy.apps.blog.views import last_name, BlogYearArchiveView, BlogMonthArchiveView, BlogDayArchiveView, BlogDateDetailView, custom_index, query
 

	
 
extra_context = {}
 

	
 
info_dict = {
 
    'queryset': Entry.objects.all(),
 
    'date_field': 'pub_date',
 
    'extra_context': extra_context,
 
}
 

	
 
# urlpatterns = patterns('django.views.generic.date_based',
 
urlpatterns = patterns('',
 
   # (r'^(?P<year>\d{4})/(?P<month>[a-z]{3})/(?P<day>\w{1,2})/(?P<slug>[-\w]+)/$', 'object_detail', dict(info_dict, slug_field='slug')),
 
   # (r'^(?P<year>\d{4})/(?P<month>[a-z]{3})/(?P<day>\w{1,2})/$', 'archive_day', info_dict),
 
   # (r'^(?P<year>\d{4})/(?P<month>[a-z]{3})/$', 'archive_month', info_dict),
 
   # (r'^(?P<year>\d{4})/$', 'archive_year', dict(info_dict,
 
   #                                              make_object_list=True)),
 
   (r'^(?P<year>\d{4})/(?P<month>[a-z]{3})/(?P<day>\w{1,2})/(?P<slug>[-\w]+)/$', BlogDateDetailView.as_view(**info_dict)),
 
   (r'^(?P<year>\d{4})/(?P<month>[a-z]{3})/(?P<day>\w{1,2})/$', BlogDayArchiveView.as_view(**info_dict)),
 
   (r'^(?P<year>\d{4})/(?P<month>[a-z]{3})/$', BlogMonthArchiveView.as_view(**info_dict)),
 
   (r'^(?P<year>\d{4})/$', BlogYearArchiveView.as_view(**info_dict)),
 
)
 

	
 
urlpatterns += patterns('conservancy.apps.blog.views',
 
                        (r'^/?$', 'custom_index', dict(info_dict, paginate_by=4)),
 
   (r'^query/$', 'query'),
 
)
 
urlpatterns = [
 
    url(r'^(?P<year>\d{4})/(?P<month>[a-z]{3})/(?P<day>\w{1,2})/(?P<slug>[-\w]+)/$', BlogDateDetailView.as_view(**info_dict)),
 
    url(r'^(?P<year>\d{4})/(?P<month>[a-z]{3})/(?P<day>\w{1,2})/$', BlogDayArchiveView.as_view(**info_dict)),
 
    url(r'^(?P<year>\d{4})/(?P<month>[a-z]{3})/$', BlogMonthArchiveView.as_view(**info_dict)),
 
    url(r'^(?P<year>\d{4})/$', BlogYearArchiveView.as_view(**info_dict)),
 
    url(r'^/?$', custom_index, dict(info_dict, paginate_by=4)),
 
    url(r'^query/$', query),
 
]
 

	
 
# Code to display authors and tags on each blog page
 

	
 
def all_tags_by_use_amount():
 
    """Returns all tags with an added 'cnt' attribute (how many times used)
 

	
 
    Also sorts the tags so most-used tags appear first.
 
    """
 

	
 
    # tally use amount
 
    retval = []
 
    current = None
 
    for obj in EntryTag.objects.filter(entry__pub_date__lte=datetime.now(),
 
                                       entry__isnull=False).order_by('label'):
 
        if current is not None and obj.id == current.id:
 
            current.cnt += 1
 
        else:
 
            if current is not None:
 
                retval.append(current)
 
            current = obj
 
            current.cnt = 1
 
    if current is not None:
 
        retval.append(current)
 

	
 
    # sort and return
 
    retval.sort(key=lambda x: -x.cnt)
 
    return retval
 

	
 
def all_authors():
 
    return sorted(Person.objects.filter(entry__isnull=False).distinct(),
 
                  key=last_name)
 

	
 
def all_year_list():
 
    return Entry.objects.dates('pub_date', 'year')
 

	
 
# The functions are passed to the context uncalled so they will be
 
# called for each web request.  If we want to only make these database
 
# queries a single time when a web server process begins, call both
 
# functions below (i.e. make both lines below end in '()')
 

	
 
extra_context['all_authors'] = all_authors
 
extra_context['all_tags'] = all_tags_by_use_amount
 
extra_context['all_year_list'] = all_year_list
www/conservancy/apps/contractpatch/urls.py
Show inline comments
 
from django.conf.urls import patterns, url, include
 
from django.conf.urls import url, include
 
from conservancy.apps.contractpatch import views as cpatch_views
 

	
 
urlpatterns = patterns(
 
    '',
 
    (r'', 'conservancy.apps.contractpatch.views.index'),
 
)
 
urlpatterns = [
 
    url(r'', cpatch_views.index),
 
]
www/conservancy/apps/news/urls.py
Show inline comments
 
# Copyright 2005-2008, James Garrison
 
# Copyright 2010, Bradley M. Kuhn
 

	
 
# This software's license gives you freedom; you can copy, convey,
 
# propagate, redistribute, modify and/or redistribute modified versions of
 
# this program under the terms of the GNU Affero General Public License
 
# (AGPL) as published by the Free Software Foundation (FSF), either
 
# version 3 of the License, or (at your option) any later version of the
 
# AGPL published by the FSF.
 
#
 
# This program 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 Affero
 
# General Public License for more details.
 
#
 
# You should have received a copy of the GNU Affero General Public License
 
# along with this program in a file in the toplevel directory called
 
# "AGPLv3".  If not, see <http://www.gnu.org/licenses/>.
 

	
 
from django.conf.urls import patterns, url, include
 
from django.conf.urls import url, include
 
from django.conf import settings
 
from conservancy.apps.news.models import PressRelease, ExternalArticle
 
from conservancy.apps.news.views import NewsYearArchiveView, NewsMonthArchiveView, NewsDayArchiveView, NewsDateDetailView
 
from conservancy.apps.news.views import NewsYearArchiveView, NewsMonthArchiveView, NewsDayArchiveView, NewsDateDetailView, listing
 

	
 
info_dict = {
 
    'queryset': PressRelease.objects.all().filter(sites__id__exact=settings.SITE_ID),
 
    'date_field': 'pub_date',
 
}
 

	
 
external_article_dict = {
 
    'articles': ExternalArticle.objects.all()
 
}
 

	
 
urlpatterns = patterns('',
 
#    (r'^(?P<year>\d{4})/(?P<month>[a-z]{3})/(?P<day>\w{1,2})/(?P<slug>[-\w]+)/$', 'conservancy.apps.news.views.object_detail', info_dict),
 
   (r'^(?P<year>\d{4})/(?P<month>[a-z]{3})/(?P<day>\w{1,2})/(?P<slug>[-\w]+)/$', NewsDateDetailView.as_view(**info_dict)),
 
#   (r'^(?P<year>\d{4})/(?P<month>[a-z]{3})/(?P<day>\w{1,2})/$', 'conservancy.apps.news.views.archive_day', info_dict),
 
   (r'^(?P<year>\d{4})/(?P<month>[a-z]{3})/(?P<day>\w{1,2})/$', NewsDayArchiveView.as_view(**info_dict)),
 
#   (r'^(?P<year>\d{4})/(?P<month>[a-z]{3})/$', 'conservancy.apps.news.views.archive_month', info_dict),
 
   (r'^(?P<year>\d{4})/(?P<month>[a-z]{3})/$', NewsMonthArchiveView.as_view(**info_dict)),
 
#   (r'^(?P<year>\d{4})/$', 'conservancy.apps.news.views.archive_year',
 
#    dict(info_dict, make_object_list=True)),
 
   (r'^(?P<year>\d{4})/$', NewsYearArchiveView.as_view(**info_dict)),
 
)
 

	
 
urlpatterns += patterns('',
 
   (r'^/?$', 'conservancy.apps.news.views.listing', dict(info_dict, paginate_by=6)),
 
)
 
urlpatterns = [
 
   url(r'^(?P<year>\d{4})/(?P<month>[a-z]{3})/(?P<day>\w{1,2})/(?P<slug>[-\w]+)/$', NewsDateDetailView.as_view(**info_dict)),
 
   url(r'^(?P<year>\d{4})/(?P<month>[a-z]{3})/(?P<day>\w{1,2})/$', NewsDayArchiveView.as_view(**info_dict)),
 
   url(r'^(?P<year>\d{4})/(?P<month>[a-z]{3})/$', NewsMonthArchiveView.as_view(**info_dict)),
 
   url(r'^(?P<year>\d{4})/$', NewsYearArchiveView.as_view(**info_dict)),
 
   url(r'^/?$', listing, dict(info_dict, paginate_by=6)),
 
]
www/conservancy/apps/supporter/urls.py
Show inline comments
 
from django.conf.urls import patterns
 
from django.conf.urls import url
 
from conservancy.apps.supporter import views as supp_views
 
from conservancy.static import views as static_views
 

	
 
INDEX_VIEW = 'conservancy.apps.supporter.views.index'
 
pattern_pairs = [(r'^/?$', INDEX_VIEW)]
 
pattern_pairs.extend(
 
    (r'^{}(?:\.html|/|)$'.format(basename), INDEX_VIEW)
 
INDEX_VIEW = supp_views.index
 
urlpatterns = [url(r'^/?$', INDEX_VIEW)]
 
urlpatterns.extend(
 
    url(r'^{}(?:\.html|/|)$'.format(basename), INDEX_VIEW)
 
    for basename in ['index', '2015-supporter-appeal', '2016-supporter-appeal']
 
)
 
pattern_pairs.append((r'', 'conservancy.static.views.index'))
 

	
 
urlpatterns = patterns('', *pattern_pairs)
 
urlpatterns.append(url(r'', static_views.index))
www/conservancy/urls.py
Show inline comments
 
# Copyright 2005-2008, James Garrison
 
# Copyright 2010, 2012 Bradley M. Kuhn
 

	
 
# This software's license gives you freedom; you can copy, convey,
 
# propagate, redistribute, modify and/or redistribute modified versions of
 
# this program under the terms of the GNU Affero General Public License
 
# (AGPL) as published by the Free Software Foundation (FSF), either
 
# version 3 of the License, or (at your option) any later version of the
 
# AGPL published by the FSF.
 
#
 
# This program 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 Affero
 
# General Public License for more details.
 
#
 
# You should have received a copy of the GNU Affero General Public License
 
# along with this program in a file in the toplevel directory called
 
# "AGPLv3".  If not, see <http://www.gnu.org/licenses/>.
 

	
 
from django.conf.urls import patterns, url, include
 
from django.contrib import admin
 
from django.conf.urls import url, include
 
from django.contrib import admin, admindocs
 

	
 
# import conservancy.settings
 
from django.conf import settings
 
from conservancy.feeds import BlogFeed, PressReleaseFeed, OmnibusFeed
 
# from django.views.static import serve
 
# from django.conf.urls.static import static
 
# from django.contrib.staticfiles.urls import staticfiles_urlpatterns
 
# import conservancy.static.overview.views
 

	
 
# handler404 = 'modpythoncustom.view404'
 
# handler401 = 'conservancy.static.views.handler401'
 
# handler403 = 'conservancy.static.views.handler403'
 
handler404 = 'conservancy.static.views.handler404'
 
# handler500 = 'conservancy.static.views.handler500'
 
from conservancy import feeds, frontpage, sponsors
 
import conservancy.apps.fundgoal.views as fundgoal_views
 
import conservancy.static.views as static_views
 

	
 
admin.autodiscover()
 

	
 
urlpatterns = patterns('',
 
    (r'^$', 'conservancy.frontpage.view'),
 
    (r'^sponsors$', 'conservancy.frontpage.view'),
 
    (r'^sponsors/$', 'conservancy.sponsors.view'),
 
    (r'^sponsors/index.html$', 'conservancy.sponsors.view'),
 
    (r'^admin/doc/', include('django.contrib.admindocs.urls')),
 
    (r'^admin/', admin.site.urls),
 
    (r'^feeds/blog/?$', BlogFeed()),
 
    (r'^feeds/news/?$', PressReleaseFeed()),
 
    (r'^feeds/omnibus/?$', OmnibusFeed()),
 
    (r'^feeds/?$', 'conservancy.feeds.view'),
 
    (r'^news(/|$)', include('conservancy.apps.news.urls')),
 
    (r'^blog(/|$)', include('conservancy.apps.blog.urls')),
 
urlpatterns = [
 
    url(r'^$', frontpage.view),
 
    url(r'^sponsors$', frontpage.view),
 
    url(r'^sponsors/$', sponsors.view),
 
    url(r'^sponsors/index.html$', sponsors.view),
 
    url(r'^admin/doc/', include('django.contrib.admindocs.urls')),
 
    url(r'^admin/', admin.site.urls),
 
    url(r'^feeds/blog/?$', feeds.BlogFeed()),
 
    url(r'^feeds/news/?$', feeds.PressReleaseFeed()),
 
    url(r'^feeds/omnibus/?$', feeds.OmnibusFeed()),
 
    url(r'^feeds/?$', feeds.view),
 
    url(r'^news(/|$)', include('conservancy.apps.news.urls')),
 
    url(r'^blog(/|$)', include('conservancy.apps.blog.urls')),
 
    # formerly static templated things... (dirs with templates)
 
    (r'^error/(40[134]|500)(?:/index\.html|/|)$', 'conservancy.static.views.handler'),
 
    (r'^error', 'conservancy.static.views.index'),
 
    (r'^about', 'conservancy.static.views.index'),
 
    (r'^donate', 'conservancy.static.views.index'),
 
    (r'^copyleft-compliance', 'conservancy.static.views.index',
 
    url(r'^error/(40[134]|500)(?:/index\.html|/|)$', static_views.handler),
 
    url(r'^error', static_views.index),
 
    url(r'^about', static_views.index),
 
    url(r'^donate', static_views.index),
 
    url(r'^copyleft-compliance', static_views.index,
 
                           {'fundraiser_sought' : 'vmware-match-0'}),
 
    (r'^projects', 'conservancy.static.views.index'),
 
    (r'^npoacct', 'conservancy.static.views.index',
 
    url(r'^projects', static_views.index),
 
    url(r'^npoacct', static_views.index,
 
                  {'fundraiser_sought' : 'npoacct'}),
 
    (r'^contractpatch', include('conservancy.apps.contractpatch.urls')),
 
    (r'^overview', 'conservancy.static.views.index'),
 
    (r'^privacy-policy', 'conservancy.static.views.index'),
 
    (r'^supporter', include('conservancy.apps.supporter.urls')),
 
    (r'^fundraiser_data', 'conservancy.apps.fundgoal.views.view'),
 
)
 

	
 
# urlpatterns += url(regex  = r'^%s(?P<path>.*)$' % conservancy.settings.STATIC_URL[1:],
 
# urlpatterns += url(regex  = r'^/overview',
 
#                    view   = 'django.views.static.serve',
 
#                    kwargs = {'document_root': conservancy.settings.STATIC_ROOT,
 
#                              'show_indexes' : True})
 
# urlpatterns += (r'^(?P<path>.*)$', 'django.views.static.serve', 
 
# urlpatterns += (r'^overview/$', 'django.views.static.serve', 
 
#                 {'document_root': conservancy.settings.STATIC_ROOT,
 
#                  'show_indexes' : True})
 

	
 
# https://docs.djangoproject.com/en/1.7/howto/static-files/
 
#  + static(conservancy.settings.STATIC_URL, document_root=conservancy.settings.STATIC_ROOT)
 

	
 
# urlpatterns += staticfiles_urlpatterns()
 

	
 
# urlpatterns += static(settings.STATIC_URL, view='django.contrib.staticfiles.views.serve',
 
# urlpatterns += static('/', view='django.contrib.staticfiles.views.serve',
 
#                       document_root=settings.STATIC_ROOT,
 
#                       show_indexes=True)
 

	
 

	
 

	
 

	
 
    url(r'^contractpatch', include('conservancy.apps.contractpatch.urls')),
 
    url(r'^overview', static_views.index),
 
    url(r'^privacy-policy', static_views.index),
 
    url(r'^supporter', include('conservancy.apps.supporter.urls')),
 
    url(r'^fundraiser_data', fundgoal_views.view),
 
]
0 comments (0 inline, 0 general)