Beispiel #1
0
 def updateHashAndAssurances(self, user, digest):
     user.hash = digest
     assurances = Assurance.listByUser(user)
     self.deleteHandAssuredAssurances(assurances)
     if digest is not None:
         Assurance.new(user, "hashgiven", user)
     user.save()
Beispiel #2
0
 def updateHashAndAssurances(self, user, digest):
     user.hash = digest
     assurances = Assurance.listByUser(user)
     self.deleteHandAssuredAssurances(assurances)
     if digest is not None:
         Assurance.new(user, "hashgiven", user)
     user.save()
Beispiel #3
0
 def computeAssurancesForApp(self, user, app):
     appAssurances = AppAssurance.get(app)
     userAssurances = Assurance.listByUser(user)
     shownAssurances = list()
     for userAssurance in userAssurances:
         if userAssurance.name in appAssurances:
             shownAssurances.append(userAssurance.name)
     return shownAssurances
Beispiel #4
0
 def computeAssurancesForApp(self, user, app):
     appAssurances = AppAssurance.get(app)
     userAssurances = Assurance.listByUser(user)
     shownAssurances = list()
     for userAssurance in userAssurances:
         if userAssurance.name in appAssurances:
             shownAssurances.append(userAssurance.name)
     return shownAssurances
Beispiel #5
0
 def do_update_hash(self,form):
     digest = form.digest.data
     if digest == '':
         digest = None
     user = self.getCurrentUser()
     user.hash = digest
     user.save()
     assurances = Assurance.listByUser(user)
     self.deleteHandAssuredAssurances(assurances)
     return self.simple_response('new hash registered')
Beispiel #6
0
 def updateEmailByCredential(self, cred, verify):
     oldemail=cred.user.email
     cred.user.email = cred.getAdditionalInfo()
     cred.user.save()
     for assurance in Assurance.listByUser(cred.user, 'emailverification'):
         assurance.rm()
     if verify:
         Assurance.new(cred.user, 'emailverification', cred.user)
     else:
         self.sendPasswordVerificationEmail(cred.user)
     self.sendEmail(cred.user, None, None, "CHANGE_EMAIL_DONE",oldemail=oldemail, newemail=cred.user.email)
Beispiel #7
0
 def do_deregister(self,form):
     if not self.isLoginCredentials(form):
         raise ReportedError(["You should use your login credentials to deregister"], 400)
     cred = Credential.get(form.credentialType.data, form.identifier.data)
     user = cred.user
     creds = Credential.getByUser(user)
     for cred in creds:
         cred.rm()
     assurances = Assurance.listByUser(user)
     for assurance in assurances:
         assurance.rm()
     user.rm()
     return self.simple_response('deregistered')
Beispiel #8
0
 def updateEmailByCredential(self, cred, verify):
     oldemail = cred.user.email
     cred.user.email = cred.getAdditionalInfo()
     cred.user.save()
     for assurance in Assurance.listByUser(cred.user, 'emailverification'):
         assurance.rm()
     if verify:
         Assurance.new(cred.user, 'emailverification', cred.user)
     else:
         self.sendPasswordVerificationEmail(cred.user)
     self.sendEmail(cred.user,
                    None,
                    None,
                    "CHANGE_EMAIL_DONE",
                    oldemail=oldemail,
                    newemail=cred.user.email)
Beispiel #9
0
 def test_adding_assurance_is_possible_using_the_hash_only(self):
     form = self.prepareLoginForm(email = False)
     self.controller.doAddAssurance(form)
     self.assertEqual(Assurance.listByUser(self.targetUser)[0].name, 'test')
Beispiel #10
0
 def test_assurers_with_appropriate_credential_can_add_assurance_to_user_using_hash(self):
     form = self.prepareLoginForm()
     self.controller.doAddAssurance(form)
     self.assertEqual(Assurance.listByUser(self.targetUser)[0].name, 'test')
Beispiel #11
0
 def test_confirmChangeEmail_deletes_emailverification_assurance(self):
     self.doConfirmChangeEmail()
     self.assertEqual(list(),Assurance.listByUser(self.user,'emailverification'))
Beispiel #12
0
 def removeAssurances(self, user):
     assurances = Assurance.listByUser(user)
     for assurance in assurances:
         assurance.rm()
Beispiel #13
0
 def removeAssurances(self, user):
     assurances = Assurance.listByUser(user)
     for assurance in assurances:
         assurance.rm()
Beispiel #14
0
 def test_adding_assurance_is_possible_using_the_hash_only(self):
     form = self.prepareLoginForm(email=False)
     self.controller.doAddAssurance(form)
     self.assertEqual(Assurance.listByUser(self.targetUser)[0].name, 'test')
Beispiel #15
0
 def test_assurers_with_appropriate_credential_can_add_assurance_to_user_using_hash(
         self):
     form = self.prepareLoginForm()
     self.controller.doAddAssurance(form)
     self.assertEqual(Assurance.listByUser(self.targetUser)[0].name, 'test')