Fixes #4076: Recommendations from collections.
[wolnelektury.git] / src / sponsors / widgets.py
index 0ddab38..01c139d 100644 (file)
@@ -1,4 +1,3 @@
-# -*- coding: utf-8 -*-
 # This file is part of Wolnelektury, licensed under GNU Affero GPLv3 or later.
 # Copyright © Fundacja Nowoczesna Polska. See NOTICE for more information.
 #
@@ -12,8 +11,8 @@ from sponsors import models
 class SponsorPageWidget(forms.Textarea):
     class Media:
         js = (
-            'http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js',
-            'http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.1/jquery-ui.min.js',
+            '//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js',
+            '//code.jquery.com/ui/1.12.1/jquery-ui.min.js',
             settings.STATIC_URL + 'sponsors/js/jquery.json.min.js',
             settings.STATIC_URL + 'sponsors/js/footer_admin.js',
         )
@@ -21,13 +20,12 @@ class SponsorPageWidget(forms.Textarea):
             'all': (settings.STATIC_URL + 'sponsors/css/footer_admin.css',),
         }
 
-    def render(self, name, value, attrs=None):
-        output = [super(SponsorPageWidget, self).render(name, value, attrs)]
-        sponsors = [(unicode(obj), obj.pk, obj.logo.url) for obj in models.Sponsor.objects.all().iterator()]
+    def render(self, name, value, attrs=None, renderer=None):
+        output = [super(SponsorPageWidget, self).render(name, value, attrs, renderer)]
+        sponsors = [(str(obj), obj.pk, obj.logo.url) for obj in models.Sponsor.objects.all().iterator()]
         sponsors_js = ', '.join('{name: "%s", id: %d, image: "%s"}' % sponsor for sponsor in sponsors)
-        output.append(u'<script type="text/javascript">addEvent(window, "load", function(e) {')
+        output.append('<script type="text/javascript">$(function(e) {')
         # TODO: "id_" is hard-coded here. This should instead use the correct
         # API to determine the ID dynamically.
-        output.append(u'$("#id_%s").sponsorsFooter({sponsors: [%s]}); });</script>\n' %
-            (name, sponsors_js))
-        return mark_safe(u''.join(output))
+        output.append('$("#id_%s").sponsorsFooter({sponsors: [%s]}); });</script>\n' % (name, sponsors_js))
+        return mark_safe(''.join(output))