def save(self, *args, **kwargs): if self.openid in ['', u'', None]: from hashlib import sha1 import random, base64 sha = sha1() sha.update(unicode(get_username(self.user)).encode('utf-8')) sha.update(str(random.random())) value = str(base64.b64encode(sha.digest())) value = value.replace('/', '').replace('+', '').replace('=', '') self.openid = value super(OpenID, self).save(*args, **kwargs) if self.default: self.user.openid_set.exclude(pk=self.pk).update(default=False)
def save(self, *args, **kwargs): if self.openid in ["", u"", None]: from hashlib import sha1 import random, base64 sha = sha1() sha.update(get_username(self.user).encode("utf-8")) sha.update(str(random.random()).encode("utf-8")) value = str(base64.b64encode(sha.digest())) value = value.replace("/", "").replace("+", "").replace("=", "").replace("'", "") self.openid = value super(OpenID, self).save(*args, **kwargs) if self.default: self.user.openid_set.exclude(pk=self.pk).update(default=False)
def __unicode__(self): return u"%s|%s" % (get_username(self.user), self.openid)