Sort by course number. Simplify university grouping.

This commit is contained in:
Matthew Mongeau
2012-07-23 11:29:53 -04:00
parent 67a18ec555
commit ee72a725bb
2 changed files with 7 additions and 7 deletions

View File

@@ -72,10 +72,10 @@ def index(request):
soup = BeautifulSoup(entry.description)
entry.image = soup.img['src'] if soup.img else None
courses = modulestore().get_courses()
universities = defaultdict(list)
for university, group in itertools.groupby(courses, lambda course: course.org):
[universities[university].append(course) for course in group]
courses = sorted(modulestore().get_courses(), key=lambda course: course.number)
for course in courses:
universities[course.org].append(course)
return render_to_response('index.html', {'universities': universities, 'entries': entries})

View File

@@ -57,10 +57,10 @@ def format_url_params(params):
@cache_if_anonymous
def courses(request):
# TODO: Clean up how 'error' is done.
courses = modulestore().get_courses()
courses = sorted(modulestore().get_courses(), key=lambda course: course.number)
universities = defaultdict(list)
for university, group in itertools.groupby(courses, lambda course: course.org):
[universities[university].append(course) for course in group]
for course in courses:
universities[course.org].append(course)
return render_to_response("courses.html", { 'universities': universities })
@@ -275,7 +275,7 @@ def course_about(request, course_id):
@ensure_csrf_cookie
@cache_if_anonymous
def university_profile(request, org_id):
all_courses = modulestore().get_courses()
all_courses = sorted(modulestore().get_courses(), key=lambda course: course.number)
valid_org_ids = set(c.org for c in all_courses)
if org_id not in valid_org_ids:
raise Http404("University Profile not found for {0}".format(org_id))