Commit 31d49bd6 authored by fred's avatar fred

python3 bits

parent 1ab2989c
......@@ -3,14 +3,16 @@ import datetime
import json
import re
import time
import urlparse
import urllib2
import uuid
from django import template
from django.conf import settings
from django.core.urlresolvers import reverse
from django.db.models.query import QuerySet
from django.utils.encoding import force_text
from django.utils.http import quote
from django.utils.six.moves.urllib import parse as urlparse
from datetime import datetime, timedelta
from emissions.models import Emission, Episode, NewsItem, SoundFile, Focus
......@@ -243,7 +245,7 @@ def remove_facet(facet_id, url, facet):
x[0] == 'selected_facets' and x[1] == facet)]
query = '&'.join(['%s=%s' % x for x in query_string])
url = urlparse.urlunsplit([scheme, netloc, path, query, None])
return unicode(re.sub(r'&page=\d+', '', url), 'utf-8')
return force_text(re.sub(r'&page=\d+', '', url), 'utf-8')
@register.filter
def remove_tag_facet(url, facet):
......@@ -264,7 +266,7 @@ def remove_format_facet(url, facet):
def append_facet(facet_id, url, facet):
facet = urllib2.quote(facet.encode('utf-8'), safe='')
facet = quote(facet.encode('utf-8'), safe='')
if not '?' in url:
url = url + '?'
return re.sub(r'&page=\d+', '', url + '&selected_facets=%s_exact:%s' % (facet_id, facet))
......
......@@ -245,8 +245,8 @@ COMBO_INITIAL_LOGIN_PAGE_PATH = '/'
COMBO_WELCOME_PAGE_PATH = None
try:
from local_settings import *
except ImportError, e:
from .local_settings import *
except ImportError as e:
pass
if DEBUG and DEBUG_TOOLBAR:
......
......@@ -62,5 +62,5 @@ urlpatterns.append(url(r'', include('combo.public.urls')))
try:
from local_urls import *
except ImportError, e:
except ImportError as e:
pass
......@@ -4,11 +4,13 @@ import random
import os
import stat
import time
import urlparse
from django.core.urlresolvers import reverse
from django.conf import settings
from django.http import Http404, JsonResponse
from django.utils.encoding import force_text
from django.utils.encoding import python_2_unicode_compatible
from django.utils.six.moves.urllib import parse as urlparse
from django.views.decorators.cache import cache_control
from django.views.generic.base import TemplateView
from django.views.generic.detail import DetailView
......@@ -238,6 +240,7 @@ class ProgramView(TemplateView):
program = ProgramView.as_view()
@python_2_unicode_compatible
class TimeCell:
nonstop = None
w = 1
......@@ -259,14 +262,14 @@ class TimeCell:
end_time.minute)
self.schedules.append(schedule)
def __unicode__(self):
def __str__(self):
if self.schedules:
return ', '.join([x.emission.title for x in self.schedules])
else:
return self.nonstop
def __eq__(self, other):
return (unicode(self) == unicode(other) and self.time_label == other.time_label)
return (force_text(self) == force_text(other) and self.time_label == other.time_label)
class Grid(TemplateView):
......@@ -349,7 +352,7 @@ class Grid(TemplateView):
continue
# here it is, same cell, same emission, several
# schedules
schedule_list.sort(lambda x,y: cmp(x.get_duration(), y.get_duration()))
schedule_list.sort(key=lambda x: x.get_duration())
schedule = schedule_list[0]
end_time = schedule.datetime + timedelta(
......@@ -455,8 +458,7 @@ class Grid(TemplateView):
grid[i][j].time_label = same_cell_below.time_label
# then we sort emissions so the longest are
# put first
grid[i][j].schedules.sort(
lambda x, y: -cmp(x.get_duration(), y.get_duration()))
grid[i][j].schedules.sort(key=lambda x: -x.get_duration())
# then we add individual time labels to the
# other schedules
for schedule in current_cell_schedules:
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment