+ first_name = smart_unicode(json['first_name'])
+ last_name = smart_unicode(json['last_name'])
+ full_name = '%s %s' % (first_name, last_name)
+
+ # There is a limit in the Django user model for the username length (no more than 30 characaters)
+ if len(full_name) <= 30:
+ username = full_name
+ # If the full name is too long use only the first
+ elif len(first_name) <= 30:
+ username = first_name
+ # If it's also that long -- only the last
+ elif len(last_name) <= 30:
+ username = last_name
+ # If the real name of the user is indeed that weird, let him choose something on his own =)
+ else:
+ username = ''
+