More tweaks for python 3

This commit is contained in:
Lance Edgar 2018-02-12 19:22:05 -06:00
parent b0821e8011
commit 17d99e16b9
8 changed files with 35 additions and 17 deletions

View file

@ -216,7 +216,10 @@ class MasterView(View):
# Return grid only, if partial page was requested.
if self.request.params.get('partial'):
self.request.response.content_type = b'text/html'
if six.PY3:
self.request.response.content_type = 'text/html'
else:
self.request.response.content_type = b'text/html'
self.request.response.text = grid.render_grid()
return self.request.response
@ -1227,9 +1230,16 @@ class MasterView(View):
response.content_length = os.path.getsize(path)
content_type = self.download_content_type(path, filename)
if content_type:
response.content_type = six.binary_type(content_type)
filename = os.path.basename(path).encode('ascii', 'replace')
response.content_disposition = b'attachment; filename={}'.format(filename)
if six.PY3:
response.content_type = content_type
else:
response.content_type = six.binary_type(content_type)
if six.PY3:
filename = os.path.basename(path)
response.content_disposition = 'attachment; filename={}'.format(filename)
else:
filename = os.path.basename(path).encode('ascii', 'replace')
response.content_disposition = b'attachment; filename={}'.format(filename)
return response
def download_content_type(self, path, filename):

View file

@ -178,7 +178,7 @@ class PeopleView(MasterView):
for user in users:
text = user.username
url = self.request.route_url('users.view', uuid=user.uuid)
items.append(HTML.tag('li', c=tags.link_to(text, url)))
items.append(HTML.tag('li', c=[tags.link_to(text, url)]))
if items:
return HTML.tag('ul', c=items)
elif self.request.has_perm('users.create'):

View file

@ -129,8 +129,8 @@ class PermissionsRenderer(Object):
if checked:
label = perms[key]['label']
span = HTML.tag('span', c="[X]" if checked else "[ ]")
inner += HTML.tag('p', class_='perm', c=span + ' ' + label)
inner += HTML.tag('p', class_='perm', c=[span, HTML(' '), label])
rendered = True
if rendered:
html += HTML.tag('div', class_='group', c=inner)
html += HTML.tag('div', class_='group', c=[inner])
return html or "(none granted)"

View file

@ -169,8 +169,11 @@ class UsersView(PrincipalMasterView):
roles = self.get_possible_roles().all()
role_values = [(s.uuid, six.text_type(s)) for s in roles]
f.set_node('roles', colander.Set())
size = len(roles)
if size < 3:
size = 3
f.set_widget('roles', dfwidget.SelectWidget(multiple=True,
size=len(roles),
size=size,
values=role_values))
if self.editing:
f.set_default('roles', [r.uuid for r in user.roles])
@ -234,7 +237,7 @@ class UsersView(PrincipalMasterView):
for role in roles:
text = role.name
url = self.request.route_url('roles.view', uuid=role.uuid)
items.append(HTML.tag('li', c=tags.link_to(text, url)))
items.append(HTML.tag('li', c=[tags.link_to(text, url)]))
return HTML.tag('ul', c=items)
def editable_instance(self, user):