def post(self):
		username = str(self.request.get('username'))
		username_sec = self.encrypt_username(username)
		userdb = UserDB.all().filter('username ='******''.join(random.choice(random_string) for i in range(15))
			# self.response.out.write(random_url)


			for i in userdb:
				email = i.email_id
				break

			recovery_link = "http://pagevista.appspot.com/recovery/"+random_url
			sender = "<*****@*****.**>"
			to = "<" + email + ">"
			body = "reset your password here " + recovery_link
			subject = "ZOOSMASH - password reset"
			body = """Dear""" + username +""",

			Here is the link for resetting your password as per requested """ + recovery_link + """ Please follow the instructions. 

			If you had not requested a password reset for your account please ignore this mail.


			Thank you,
			myGreenPage team

			"""
			# self.response.out.write(random_url + " " + to + " " + body)

			mail.send_mail(sender= sender,
								to = to,
								subject = "reset mail",
								body = body)


			precovery = PasswordRecovery(random_url = random_url, username = username_sec)
			precovery.put()

			self.pass_template_value_password_reset_page(error = "A link to reset your password has" +
			 							"been mailed to you.Plese follow instructions mentioned "+
			 							"in it to reset yor password. ")
Exemple #2
0
	def post(self, recovery_id):

		password = self.request.get('password')
		password_confirm = self.request.get('password_confirm')
		precovery = PasswordRecovery.all().filter('random_url =',recovery_id).fetch(1)

		for i in precovery:
			username = i.username
			break
			
		if not password or password.isspace():
			self.pass_template_value_recovery_page(username = username, error = "Please enter a valid password")
		elif password != password_confirm:
			self.pass_template_value_recovery_page(username = username, error = "Passwords do not match")
		else:

			
			userdb = UserDB.all().filter('username =',username).fetch(1)
			for i in userdb:
				i.password = self.encrypt_password(password)
				i.put()
				break

			for i in precovery:
				i.reset = True
				i.put()

			# home = "http://localhost:8080/blogname"

			self.response.out.write("""password has been changed successfully.
			 <a href = "http://pagevista.appspot.com/login">return</a>""")
Exemple #3
0
	def get(self, recovery_id):

		precovery = PasswordRecovery.all().filter('random_url =',recovery_id).filter('reset =',False).fetch(1)


		if not precovery:
			self.response.out.write('invalid page')
		else:

			for i in precovery:
				username = i.username
				break
			username = self.return_username_if_valid_cookie(username)
			self.pass_template_value_recovery_page(username = username, error = "")