PEP8 cleanups

This commit is contained in:
Roberto Rosario
2012-03-18 04:02:03 -04:00
parent 8ff1997dda
commit af49370870
5 changed files with 40 additions and 50 deletions

View File

@@ -1,4 +1,4 @@
from __future__ import absolute_import from __future__ import absolute_import
from elementtree.ElementTree import Element from elementtree.ElementTree import Element

View File

@@ -1,21 +1,20 @@
from __future__ import absolute_import from __future__ import absolute_import
import urlparse import urlparse
import urllib import urllib
import logging import logging
import re import re
from django.template import (TemplateSyntaxError, Library, from django.template import (VariableDoesNotExist, Variable)
VariableDoesNotExist, Node, Variable) from django.utils.encoding import smart_str, smart_unicode
from django.utils.encoding import smart_str, force_unicode, smart_unicode
from django.core.urlresolvers import reverse, NoReverseMatch from django.core.urlresolvers import reverse, NoReverseMatch
from django.utils.http import urlquote from django.utils.http import urlquote
from django.utils.http import urlencode from django.utils.http import urlencode
from elementtree.ElementTree import Element, SubElement from elementtree.ElementTree import SubElement
from .utils import (resolve_to_name, resolve_arguments, from .utils import (resolve_to_name, resolve_arguments,
resolve_template_variable, get_navigation_objects) get_navigation_objects)
from . import main_menu from . import main_menu
multi_object_navigation = {} multi_object_navigation = {}
@@ -29,15 +28,15 @@ logger = logging.getLogger(__name__)
class ResolvedLink(object): class ResolvedLink(object):
active = False active = False
class Link(object): class Link(object):
def __init__(self, text, view, klass=None, args=None, sprite=None, def __init__(self, text, view, klass=None, args=None, sprite=None,
icon=None, permissions=None, condition=None, conditional_disable=None, icon=None, permissions=None, condition=None, conditional_disable=None,
description=None, dont_mark_active=False, children_view_regex=None, description=None, dont_mark_active=False, children_view_regex=None,
keep_query=False, children_classes=None, children_url_regex=None, keep_query=False, children_classes=None, children_url_regex=None,
children_views=None, conditional_highlight=None): children_views=None, conditional_highlight=None):
self.text = text self.text = text
self.view = view self.view = view
self.args = args or {} self.args = args or {}
@@ -62,12 +61,12 @@ class Link(object):
request = Variable('request').resolve(context) request = Variable('request').resolve(context)
current_path = request.META['PATH_INFO'] current_path = request.META['PATH_INFO']
current_view = resolve_to_name(current_path) current_view = resolve_to_name(current_path)
# Preserve unicode data in URL query # Preserve unicode data in URL query
previous_path = smart_unicode(urllib.unquote_plus(smart_str(request.get_full_path()) or smart_str(request.META.get('HTTP_REFERER', u'/')))) previous_path = smart_unicode(urllib.unquote_plus(smart_str(request.get_full_path()) or smart_str(request.META.get('HTTP_REFERER', u'/'))))
query_string = urlparse.urlparse(previous_path).query query_string = urlparse.urlparse(previous_path).query
parsed_query_string = urlparse.parse_qs(query_string) parsed_query_string = urlparse.parse_qs(query_string)
# Check to see if link has conditional display # Check to see if link has conditional display
if self.condition: if self.condition:
condition_result = self.condition(context) condition_result = self.condition(context)
@@ -80,7 +79,7 @@ class Link(object):
resolved_link.sprite = self.sprite resolved_link.sprite = self.sprite
resolved_link.icon = self.icon resolved_link.icon = self.icon
resolved_link.permissions = self.permissions resolved_link.permissions = self.permissions
try: try:
#args, kwargs = resolve_arguments(context, self.get('args', {})) #args, kwargs = resolve_arguments(context, self.get('args', {}))
args, kwargs = resolve_arguments(context, self.args) args, kwargs = resolve_arguments(context, self.args)
@@ -98,7 +97,7 @@ class Link(object):
else: else:
resolved_link.url = reverse(self.view, args=args) resolved_link.url = reverse(self.view, args=args)
if self.keep_query: if self.keep_query:
resolved_link.url = u'%s?%s' % (urlquote(resolved_link.url), urlencode(parsed_query_string, doseq=True)) resolved_link.url = u'%s?%s' % (urlquote(resolved_link.url), urlencode(parsed_query_string, doseq=True))
except NoReverseMatch, exc: except NoReverseMatch, exc:
resolved_link.url = '#' resolved_link.url = '#'
@@ -106,13 +105,13 @@ class Link(object):
elif self.url: elif self.url:
if not self.dont_mark_active: if not self.dont_mark_active:
resolved_link.url.active = self.url == current_path resolved_link.url.active = self.url == current_path
if kwargs: if kwargs:
resolved_link.url = self.url % kwargs resolved_link.url = self.url % kwargs
else: else:
resolved_link.url = self.url % args resolved_link.url = self.url % args
if link.keep_query: if self.keep_query:
resolved_link.url = u'%s?%s' % (urlquote(resolved_link.url), urlencode(parsed_query_string, doseq=True)) resolved_link.url = u'%s?%s' % (urlquote(resolved_link.url), urlencode(parsed_query_string, doseq=True))
else: else:
resolved_link.active = False resolved_link.active = False
@@ -162,13 +161,13 @@ def register_top_menu(name, link, position=None):
of the page of the page
""" """
new_menu = SubElement(main_menu, name, link=link, position=position) new_menu = SubElement(main_menu, name, link=link, position=position)
sorted_menus = sorted(main_menu.getchildren(), key=lambda k: (k.get('position') < 0, k.get('position'))) sorted_menus = sorted(main_menu.getchildren(), key=lambda k: (k.get('position') < 0, k.get('position')))
main_menu.clear() main_menu.clear()
for menu in sorted_menus: for menu in sorted_menus:
main_menu.append(menu) main_menu.append(menu)
return new_menu return new_menu
@@ -198,8 +197,9 @@ def register_multi_item_links(sources, links, menu_name=None):
multi_object_navigation[menu_name].setdefault(source, {'links': []}) multi_object_navigation[menu_name].setdefault(source, {'links': []})
multi_object_navigation[menu_name][source]['links'].extend(links) multi_object_navigation[menu_name][source]['links'].extend(links)
#TODO: new name: get_context_navigation_links, get_navigation_links_for_context #TODO: new name: get_context_navigation_links, get_navigation_links_for_context
def get_context_object_navigation_links(context, menu_name=None, links_dict=link_binding):#, object_variable_name=None): def get_context_object_navigation_links(context, menu_name=None, links_dict=link_binding):
request = Variable('request').resolve(context) request = Variable('request').resolve(context)
current_path = request.META['PATH_INFO'] current_path = request.META['PATH_INFO']
current_view = resolve_to_name(current_path) current_view = resolve_to_name(current_path)
@@ -238,8 +238,8 @@ def get_context_object_navigation_links(context, menu_name=None, links_dict=link
try: try:
view_links = links_dict[menu_name][current_view]['links'] view_links = links_dict[menu_name][current_view]['links']
if view_links: if view_links:
context_links.setdefault(None, []) context_links.setdefault(None, [])
for link in view_links: for link in view_links:
context_links[None].append(link.resolve(context)) context_links[None].append(link.resolve(context))
except KeyError: except KeyError:
@@ -251,7 +251,7 @@ def get_context_object_navigation_links(context, menu_name=None, links_dict=link
object_links = links_dict[menu_name][type(resolved_object_reference)]['links'] object_links = links_dict[menu_name][type(resolved_object_reference)]['links']
if object_links: if object_links:
context_links.setdefault(resolved_object_reference, []) context_links.setdefault(resolved_object_reference, [])
for link in object_links: for link in object_links:
context_links[resolved_object_reference].append(link.resolve(context)) context_links[resolved_object_reference].append(link.resolve(context))
except KeyError: except KeyError:

View File

@@ -1,24 +1,18 @@
from __future__ import absolute_import from __future__ import absolute_import
import copy import copy
import re import re
import urlparse
import urllib
import logging import logging
from django.core.urlresolvers import reverse, NoReverseMatch from django.core.urlresolvers import reverse
from django.template import (TemplateSyntaxError, Library, from django.template import (TemplateSyntaxError, Library,
VariableDoesNotExist, Node, Variable) Node, Variable)
from django.utils.translation import ugettext as _ from django.utils.translation import ugettext as _
from django.utils.encoding import smart_str, force_unicode, smart_unicode
from common.utils import urlquote
from ..api import (link_binding, multi_object_navigation, from ..api import (link_binding, multi_object_navigation,
sidebar_templates, get_context_object_navigation_links) sidebar_templates, get_context_object_navigation_links)
from ..forms import MultiItemForm from ..forms import MultiItemForm
from ..utils import (resolve_to_name, resolve_arguments, resolve_template_variable, from ..utils import resolve_to_name, resolve_template_variable
get_navigation_objects)
from .. import main_menu from .. import main_menu
register = Library() register = Library()
@@ -65,15 +59,16 @@ def get_object_navigation_links(parser, token):
@register.inclusion_tag('generic_navigation.html', takes_context=True) @register.inclusion_tag('generic_navigation.html', takes_context=True)
def object_navigation_template(context): def object_navigation_template(context):
new_context = copy.copy(context) new_context = copy.copy(context)
for object_reference, object_links in get_context_object_navigation_links(context).items(): for object_reference, object_links in get_context_object_navigation_links(context).items():
new_context.update({ new_context.update({
'horizontal': True, 'horizontal': True,
'links': object_links 'links': object_links
}) })
return new_context return new_context
@register.tag @register.tag
def get_multi_item_links(parser, token): def get_multi_item_links(parser, token):
tag_name, arg = token.contents.split(None, 1) tag_name, arg = token.contents.split(None, 1)

View File

@@ -1,11 +1,10 @@
from __future__ import absolute_import from __future__ import absolute_import
import logging import logging
from django.core.urlresolvers import RegexURLResolver, RegexURLPattern, Resolver404, get_resolver from django.core.urlresolvers import RegexURLResolver, RegexURLPattern, Resolver404, get_resolver
from django.template import (TemplateSyntaxError, Library, from django.template import (VariableDoesNotExist, Variable)
VariableDoesNotExist, Node, Variable)
from django.utils.text import unescape_string_literal from django.utils.text import unescape_string_literal
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
@@ -13,7 +12,7 @@ logger = logging.getLogger(__name__)
def get_navigation_objects(context): def get_navigation_objects(context):
objects = {} objects = {}
try: try:
indirect_reference_list = Variable('navigation_object_list').resolve(context) indirect_reference_list = Variable('navigation_object_list').resolve(context)
except VariableDoesNotExist: except VariableDoesNotExist:
@@ -38,13 +37,13 @@ def get_navigation_objects(context):
try: try:
object_label = Variable('object_name').resolve(context) object_label = Variable('object_name').resolve(context)
except VariableDoesNotExist: except VariableDoesNotExist:
object_label = None object_label = None
finally: finally:
try: try:
resolved_object = Variable(indirect_reference).resolve(context) resolved_object = Variable(indirect_reference).resolve(context)
except VariableDoesNotExist: except VariableDoesNotExist:
resolved_object = None resolved_object = None
objects.setdefault(resolved_object, {}) objects.setdefault(resolved_object, {})
objects[resolved_object]['label'] = object_label objects[resolved_object]['label'] = object_label
@@ -57,7 +56,7 @@ def get_navigation_objects(context):
try: try:
object_label = Variable('object_name').resolve(context) object_label = Variable('object_name').resolve(context)
except VariableDoesNotExist: except VariableDoesNotExist:
object_label = None object_label = None
finally: finally:
try: try:
resolved_object = Variable(indirect_reference).resolve(context) resolved_object = Variable(indirect_reference).resolve(context)
@@ -94,7 +93,7 @@ def resolve_template_variable(context, name):
return str(Variable(name).resolve(context)) return str(Variable(name).resolve(context))
except TypeError: except TypeError:
return name return name
def resolve_arguments(context, src_args): def resolve_arguments(context, src_args):
args = [] args = []
@@ -152,5 +151,6 @@ def _resolver_resolve_to_name(self, path):
RegexURLPattern.resolve_to_name = _pattern_resolve_to_name RegexURLPattern.resolve_to_name = _pattern_resolve_to_name
RegexURLResolver.resolve_to_name = _resolver_resolve_to_name RegexURLResolver.resolve_to_name = _resolver_resolve_to_name
def resolve_to_name(path, urlconf=None): def resolve_to_name(path, urlconf=None):
return get_resolver(urlconf).resolve_to_name(path) return get_resolver(urlconf).resolve_to_name(path)

View File

@@ -1,19 +1,14 @@
from __future__ import absolute_import from __future__ import absolute_import
import urlparse
from django.utils.safestring import mark_safe from django.utils.safestring import mark_safe
from django.conf import settings from django.conf import settings
from django.utils.translation import ugettext_lazy as _ from django.utils.translation import ugettext_lazy as _
from django.core.urlresolvers import reverse
from django.template.defaultfilters import capfirst from django.template.defaultfilters import capfirst
from django.core.exceptions import PermissionDenied from django.core.exceptions import PermissionDenied
from django.template import RequestContext, Variable from django.template import RequestContext
from permissions.models import Permission from permissions.models import Permission
from .utils import resolve_to_name
def button_navigation_widget(request, link): def button_navigation_widget(request, link):
if link.permissions: if link.permissions: