diff --git a/django/sp_sso/saml/utils.py b/django/sp_sso/saml/utils.py index 4fa6d6c..cc44b49 100644 --- a/django/sp_sso/saml/utils.py +++ b/django/sp_sso/saml/utils.py @@ -32,6 +32,12 @@ supann_host_role_attribute = 'supannRoleGenerique' supann_host_role_value = '{SUPANN}R10' # 'Responsable de mission' +def sorting_key(tuple_input): + if type(tuple_input[1]) is unicode: + return tuple_input[1].encode('utf-8') + else: + return unicode(tuple_input[1], 'utf-8') + def render_message(request, message): """Renders a simple message to a base template""" return render(request, 'simple_message.html', {'message': message}) @@ -114,7 +120,7 @@ def ldap_get_attribute_from_subtree_nodes(subtree_base, filter, attribute): description = node_data.get('description', [_('No description')])[0] choices.append((attribute_value, description)) - choices.sort(key=lambda x: unicode(x[1], 'utf-8')) + choices.sort(key=sorting_key) return choices def ldap_terminate(l):