diff --git a/jet/dashboard/dashboard_modules/google_analytics.py b/jet/dashboard/dashboard_modules/google_analytics.py index 1fc2a3e2..de7c2214 100644 --- a/jet/dashboard/dashboard_modules/google_analytics.py +++ b/jet/dashboard/dashboard_modules/google_analytics.py @@ -13,6 +13,7 @@ from oauth2client.client import flow_from_clientsecrets, OAuth2Credentials, AccessTokenRefreshError, Storage from django.utils.translation import ugettext_lazy as _ from django.conf import settings +from django.utils.encoding import force_text try: from django.utils.encoding import force_unicode @@ -140,12 +141,12 @@ def render(self, name, value, attrs=None): if value and len(value) > 0: link = '%s' % ( reverse('jet-dashboard:google-analytics-revoke', kwargs={'pk': self.module.model.pk}), - _('Revoke access') + force_text(_('Revoke access')) ) else: link = '%s' % ( reverse('jet-dashboard:google-analytics-grant', kwargs={'pk': self.module.model.pk}), - _('Grant access') + force_text(_('Grant access')) ) attrs = self.build_attrs({ @@ -175,10 +176,10 @@ def set_module(self, module): def set_counter_choices(self, module): counters = module.counters() if counters is not None: - self.fields['counter'].choices = (('', '-- %s --' % _('none')),) + self.fields['counter'].choices = (('', '-- %s --' % force_text(_('none'))),) self.fields['counter'].choices.extend(map(lambda x: (x['id'], x['websiteUrl']), counters)) else: - label = _('grant access first') if module.credential is None else _('counters loading failed') + label = force_text(_('grant access first')) if module.credential is None else force_text(_('counters loading failed')) self.fields['counter'].choices = (('', '-- %s -- ' % label),) diff --git a/jet/dashboard/dashboard_modules/yandex_metrika.py b/jet/dashboard/dashboard_modules/yandex_metrika.py index dd72668e..55d43221 100644 --- a/jet/dashboard/dashboard_modules/yandex_metrika.py +++ b/jet/dashboard/dashboard_modules/yandex_metrika.py @@ -10,6 +10,7 @@ from jet.dashboard.modules import DashboardModule from django.utils.translation import ugettext_lazy as _ from django.conf import settings +from django.utils.encoding import force_text try: from urllib import request @@ -98,12 +99,12 @@ def render(self, name, value, attrs=None): if value and len(value) > 0: link = '%s' % ( reverse('jet-dashboard:yandex-metrika-revoke', kwargs={'pk': self.module.model.pk}), - _('Revoke access') + force_text(_('Revoke access')) ) else: link = '%s' % ( reverse('jet-dashboard:yandex-metrika-grant', kwargs={'pk': self.module.model.pk}), - _('Grant access') + force_text(_('Grant access')) ) if value is None: @@ -130,10 +131,10 @@ def set_module(self, module): def set_counter_choices(self, module): counters = module.counters() if counters is not None: - self.fields['counter'].choices = (('', '-- %s --' % _('none')),) + self.fields['counter'].choices = (('', '-- %s --' % force_text(_('none'))),) self.fields['counter'].choices.extend(map(lambda x: (x['id'], x['site']), counters)) else: - label = _('grant access first') if module.access_token is None else _('counters loading failed') + label = force_text(_('grant access first')) if module.access_token is None else force_text(_('counters loading failed')) self.fields['counter'].choices = (('', '-- %s -- ' % label),)