PEP8 cleanups
This commit is contained in:
@@ -1,11 +1,13 @@
|
||||
from re import compile
|
||||
|
||||
from django.http import HttpResponseRedirect
|
||||
from django.conf import settings
|
||||
from re import compile
|
||||
|
||||
EXEMPT_URLS = [compile(settings.LOGIN_URL.lstrip('/'))]
|
||||
if hasattr(settings, 'LOGIN_EXEMPT_URLS'):
|
||||
EXEMPT_URLS += [compile(expr) for expr in settings.LOGIN_EXEMPT_URLS]
|
||||
|
||||
|
||||
class LoginRequiredMiddleware:
|
||||
"""
|
||||
Middleware that requires a user to be authenticated to view any page other
|
||||
@@ -28,4 +30,3 @@ class LoginRequiredMiddleware:
|
||||
path = request.path_info.lstrip('/')
|
||||
if not any(m.match(path) for m in EXEMPT_URLS):
|
||||
return HttpResponseRedirect(settings.LOGIN_URL)
|
||||
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
# Aliasing it for the sake of page size.
|
||||
from django.utils.html import strip_spaces_between_tags as short
|
||||
|
||||
|
||||
class SpacelessMiddleware(object):
|
||||
def process_response(self, request, response):
|
||||
if 'text/html' in response['Content-Type']:
|
||||
|
||||
@@ -5,10 +5,12 @@ from navigation.api import model_list_columns
|
||||
|
||||
register = Library()
|
||||
|
||||
|
||||
@register.filter
|
||||
def object_property(value, arg):
|
||||
return return_attrib(value, arg)
|
||||
|
||||
|
||||
@register.filter
|
||||
def get_model_list_columns(obj):
|
||||
for key, value in model_list_columns.items():
|
||||
|
||||
@@ -2,7 +2,7 @@ from django.template import Library
|
||||
|
||||
register = Library()
|
||||
|
||||
|
||||
@register.filter
|
||||
def make_non_breakable(value):
|
||||
return value.replace(u'-', u'\u2011')
|
||||
|
||||
|
||||
@@ -3,6 +3,7 @@ from django.conf import settings
|
||||
|
||||
register = Library()
|
||||
|
||||
|
||||
@register.simple_tag
|
||||
def project_name():
|
||||
return settings.PROJECT_TITLE
|
||||
|
||||
@@ -11,8 +11,8 @@ class SettingsNode(Node):
|
||||
def __init__(self, format_string, var_name):
|
||||
self.format_string = format_string
|
||||
self.var_name = var_name
|
||||
|
||||
def render(self, context):
|
||||
#context[self.var_name] = settings(self.format_string)
|
||||
context[self.var_name] = getattr(settings, self.format_string, '')
|
||||
return ''
|
||||
|
||||
@@ -24,11 +24,11 @@ def get_setting(parser, token):
|
||||
# Splitting by None == splitting by spaces.
|
||||
tag_name, arg = token.contents.split(None, 1)
|
||||
except ValueError:
|
||||
raise TemplateSyntaxError, "%r tag requires arguments" % token.contents.split()[0]
|
||||
raise TemplateSyntaxError('%r tag requires arguments' % token.contents.split()[0])
|
||||
m = re.search(r'(.*?) as (\w+)', arg)
|
||||
if not m:
|
||||
raise TemplateSyntaxError, "%r tag had invalid arguments" % tag_name
|
||||
raise TemplateSyntaxError('%r tag had invalid arguments' % tag_name)
|
||||
format_string, var_name = m.groups()
|
||||
if not (format_string[0] == format_string[-1] and format_string[0] in ('"', "'")):
|
||||
raise TemplateSyntaxError, "%r tag's argument should be in quotes" % tag_name
|
||||
raise TemplateSyntaxError('%r tag\'s argument should be in quotes' % tag_name)
|
||||
return SettingsNode(format_string[1:-1], var_name)
|
||||
|
||||
@@ -1,27 +1,27 @@
|
||||
from django.conf.urls.defaults import *
|
||||
from django.conf.urls.defaults import patterns, url
|
||||
from django.views.generic.simple import direct_to_template
|
||||
from django.conf import settings
|
||||
|
||||
|
||||
urlpatterns = patterns('common.views',
|
||||
url(r'^about/$', direct_to_template, { 'template' : 'about.html'}, 'about'),
|
||||
url(r'^about/$', direct_to_template, {'template': 'about.html'}, 'about'),
|
||||
url(r'^password/change/done/$', 'password_change_done', (), name='password_change_done'),
|
||||
url(r'^object/multiple/action/$', 'multi_object_action_view', (), name='multi_object_action_view'),
|
||||
)
|
||||
|
||||
urlpatterns += patterns('',
|
||||
url(r'^login/$', 'django.contrib.auth.views.login', {'template_name': 'login.html'}, name='login_view'),
|
||||
url(r'^logout/$', 'django.contrib.auth.views.logout', {'next_page' : '/'}, name='logout_view' ),
|
||||
url(r'^logout/$', 'django.contrib.auth.views.logout', {'next_page': '/'}, name='logout_view'),
|
||||
|
||||
url(r'^password/change/$', 'django.contrib.auth.views.password_change', {'template_name': 'password_change_form.html', 'post_change_redirect': '/password/change/done/'}, name='password_change_view'),
|
||||
#url(r'^password/change/done/$', 'django.contrib.auth.views.password_change_done', {'template_name': 'password_change_done.html'}),
|
||||
|
||||
url(r'^password/reset/$', 'django.contrib.auth.views.password_reset', {'email_template_name' : 'password_reset_email.html', 'template_name': 'password_reset_form.html', 'post_reset_redirect' : '/password/reset/done'}, name='password_reset_view'),
|
||||
url(r'^password/reset/confirm/(?P<uidb36>[0-9A-Za-z]+)-(?P<token>.+)/$', 'django.contrib.auth.views.password_reset_confirm', { 'template_name' : 'password_reset_confirm.html', 'post_reset_redirect' : '/password/reset/complete/'}, name='password_reset_confirm_view'),
|
||||
url(r'^password/reset/complete/$', 'django.contrib.auth.views.password_reset_complete', { 'template_name' : 'password_reset_complete.html' }, name='password_reset_complete_view'),
|
||||
url(r'^password/reset/done/$', 'django.contrib.auth.views.password_reset_done', { 'template_name' : 'password_reset_done.html'}, name='password_reset_done_view'),
|
||||
url(r'^password/reset/$', 'django.contrib.auth.views.password_reset', {'email_template_name': 'password_reset_email.html', 'template_name': 'password_reset_form.html', 'post_reset_redirect': '/password/reset/done'}, name='password_reset_view'),
|
||||
url(r'^password/reset/confirm/(?P<uidb36>[0-9A-Za-z]+)-(?P<token>.+)/$', 'django.contrib.auth.views.password_reset_confirm', {'template_name': 'password_reset_confirm.html', 'post_reset_redirect': '/password/reset/complete/'}, name='password_reset_confirm_view'),
|
||||
url(r'^password/reset/complete/$', 'django.contrib.auth.views.password_reset_complete', {'template_name': 'password_reset_complete.html'}, name='password_reset_complete_view'),
|
||||
url(r'^password/reset/done/$', 'django.contrib.auth.views.password_reset_done', {'template_name': 'password_reset_done.html'}, name='password_reset_done_view'),
|
||||
|
||||
(r'^favicon\.ico$', 'django.views.generic.simple.redirect_to', {'url': '%s%s' %(settings.MEDIA_URL, 'images/favicon.ico')}),
|
||||
(r'^favicon\.ico$', 'django.views.generic.simple.redirect_to', {'url': '%s%s' % (settings.MEDIA_URL, 'images/favicon.ico')}),
|
||||
)
|
||||
|
||||
urlpatterns += patterns('',
|
||||
|
||||
@@ -72,15 +72,16 @@ def return_attrib(obj, attrib, arguments={}):
|
||||
|
||||
#http://snippets.dzone.com/posts/show/5434
|
||||
#http://snippets.dzone.com/user/jakob
|
||||
def pretty_size(size, suffixes = [('B', 2**10), ('K', 2**20), ('M', 2**30), ('G', 2**40), ('T', 2**50)]):
|
||||
def pretty_size(size, suffixes=[('B', 2 ** 10), ('K', 2 ** 20), ('M', 2 ** 30), ('G', 2 ** 40), ('T', 2 ** 50)]):
|
||||
for suf, lim in suffixes:
|
||||
if size > lim:
|
||||
continue
|
||||
else:
|
||||
return round(size/float(lim/2**10), 2).__str__()+suf
|
||||
return round(size / float(lim / 2 ** 10), 2).__str__() + suf
|
||||
|
||||
|
||||
def pretty_size_10(size):
|
||||
return pretty_size(size, suffixes = [('B', 10**3), ('K', 10**6), ('M', 10**9), ('G', 10**12), ('T', 10**15)])
|
||||
return pretty_size(size, suffixes=[('B', 10 ** 3), ('K', 10 ** 6), ('M', 10 ** 9), ('G', 10 ** 12), ('T', 10 ** 15)])
|
||||
|
||||
|
||||
def exists_with_famfam(path):
|
||||
@@ -238,17 +239,17 @@ def proper_name(name):
|
||||
]
|
||||
|
||||
hyphen_indexes = []
|
||||
while name.find('-') > -1:
|
||||
index = name.find('-')
|
||||
while name.find(u'-') > -1:
|
||||
index = name.find(u'-')
|
||||
hyphen_indexes.append(index)
|
||||
name = name[:index] + ' ' + name[index+1:]
|
||||
name = name[:index] + u' ' + name[index + 1:]
|
||||
name = name.split()
|
||||
name = [w.capitalize() for w in name] # standard capitalization
|
||||
# "Mcx" should be "McX"
|
||||
index = 0
|
||||
for w in name:
|
||||
try:
|
||||
name[index] = mc.sub("Mc"+w[2].upper(), w)
|
||||
name[index] = mc.sub(u'Mc' + w[2].upper(), w)
|
||||
except:
|
||||
pass
|
||||
index += 1
|
||||
@@ -256,21 +257,21 @@ def proper_name(name):
|
||||
index = 0
|
||||
for w in name:
|
||||
try:
|
||||
name[index] = mac.sub("Mac"+w[3].upper(), w)
|
||||
name[index] = mac.sub(u'Mac' + w[3].upper(), w)
|
||||
except:
|
||||
pass
|
||||
index += 1
|
||||
name = ' '.join( name )
|
||||
name = u' '.join(name)
|
||||
for index in hyphen_indexes:
|
||||
name = name[:index] + '-' + name[index+1:]
|
||||
name = name[:index] + u'-' + name[index + 1:]
|
||||
|
||||
# funky stuff (no capitalization)
|
||||
name = name.replace(" Dit ", " dit ")
|
||||
name = name.replace(" Van ", " van ")
|
||||
name = name.replace(" De ", " de ")
|
||||
name = name.replace(' Dit ', ' dit ')
|
||||
name = name.replace(' Van ', ' van ')
|
||||
name = name.replace(' De ', ' de ')
|
||||
|
||||
# special surnames and suffixes
|
||||
name += ' '
|
||||
name += u' '
|
||||
for surname in surnames + suffixes:
|
||||
pos = name.lower().find(surname.lower())
|
||||
if pos > -1:
|
||||
@@ -278,11 +279,11 @@ def proper_name(name):
|
||||
# 1. at start of name or after a space
|
||||
# -and-
|
||||
# 2. followed by the end of string or a space
|
||||
if (((pos == 0) or (pos > 0 and name[pos-1] == ' '))
|
||||
and ((len(name) == pos+len(surname))
|
||||
or (name[pos+len(surname)] == ' '))):
|
||||
name = name[:pos] + surname + name[pos+len(surname):]
|
||||
if (((pos == 0) or (pos > 0 and name[pos - 1] == u' '))
|
||||
and ((len(name) == pos + len(surname))
|
||||
or (name[pos + len(surname)] == u' '))):
|
||||
name = name[:pos] + surname + name[pos + len(surname):]
|
||||
return name.strip()
|
||||
|
||||
mc = re.compile(r"^Mc(\w)(?=\w)", re.I)
|
||||
mac = re.compile(r"^Mac(\w)(?=\w)", re.I)
|
||||
mc = re.compile(r'^Mc(\w)(?=\w)', re.I)
|
||||
mac = re.compile(r'^Mac(\w)(?=\w)', re.I)
|
||||
|
||||
@@ -13,6 +13,7 @@ from django.utils.hashcompat import md5_constructor
|
||||
|
||||
__all__ = ('security_hash', 'BoundFormWizard')
|
||||
|
||||
|
||||
def security_hash(request, form, exclude=None, *args):
|
||||
"""Calculates a security hash for the given Form/FormSet instance.
|
||||
|
||||
@@ -48,6 +49,7 @@ def security_hash(request, form, exclude=None, *args):
|
||||
|
||||
return md5_constructor(pickled).hexdigest()
|
||||
|
||||
|
||||
class BoundFormWizard(FormWizard):
|
||||
"""Render prev_fields as a list of bound form fields in the template
|
||||
context rather than raw html."""
|
||||
@@ -78,5 +80,3 @@ class BoundFormWizard(FormWizard):
|
||||
bf = BoundField(forms.Form(), hash_field, hash_name)
|
||||
prev_fields.append(bf)
|
||||
return self.render_template(request, form, prev_fields, step, context)
|
||||
|
||||
# vim: ai ts=4 sts=4 et sw=4
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
TRANFORMATION_CHOICES = {
|
||||
'rotate':'-rotate %(degrees)d'
|
||||
'rotate': '-rotate %(degrees)d'
|
||||
}
|
||||
|
||||
@@ -77,6 +77,10 @@ class Document(models.Model):
|
||||
self.update_page_count(save=False)
|
||||
self.apply_default_transformations()
|
||||
|
||||
@models.permalink
|
||||
def get_absolute_url(self):
|
||||
return ('document_view_simple', [self.id])
|
||||
|
||||
def get_fullname(self):
|
||||
return os.extsep.join([self.file_filename, self.file_extension])
|
||||
|
||||
@@ -102,10 +106,6 @@ class Document(models.Model):
|
||||
def open(self):
|
||||
return self.file.storage.open(self.file.path)
|
||||
|
||||
@models.permalink
|
||||
def get_absolute_url(self):
|
||||
return ('document_view_simple', [self.id])
|
||||
|
||||
def update_checksum(self, save=True):
|
||||
if self.exists():
|
||||
source = self.open()
|
||||
|
||||
Reference in New Issue
Block a user