def mail_lost_passwd(username): """Email existing password to user""" password = accounts.get_user_passwd(username) body = '''Date: <%s>\n''' % ctime(time()) body += '''To: <%s>\n''' % "*****@*****.**" % username body += '''From: "Meatoo Admin" <*****@*****.**>\n''' body += '''Subject: Your lost Meatoo password.\n\n''' body += '''Tsk tsk!\n\n''' body += '''Your password is: %s\n''' % password send_email(body)
def getUserId(username, password): '''Return True if good password''' try: db_pswd = accounts.get_user_passwd(username) except: return None if db_pswd == password: return username else: return None
def change_passwd_action(self, old_passwd, new_passwd, confirm_passwd, *args, **kwargs): username = accounts.get_logged_username() password = accounts.get_user_passwd(username) if password != old_passwd: yield self.error_form('''Old password is incorrect.<br><br> <a href='/change_passwd'> Try again.</a>''') return if new_passwd != confirm_passwd: yield self.error_form('''New passwords don't match.<br><br> <a href='/change_passwd'> Try again.</a>''') return if accounts.change_passwd(username, new_passwd): yield self.plain_page("<b>Password changed.</b>") else: yield self.error_form("Error: Failed to change passwd.")
def send_new_passwd(address): """Create new account and email passwd""" if "@" not in address: return "Invalid email address." if address.split("@")[1] != "gentoo.org": return "Only official Gentoo developers may register." username = address.split("@")[0] password = accounts.get_password() if accounts.get_user_passwd(username): return "You already have an account." body = '''Date: <%s>\n''' % ctime(time()) body += '''To: <%s>\n''' % address body += '''From: "Meatoo Registration" <*****@*****.**>\n''' body += '''Subject: Meatoo Registration Confirmation.\n\n''' body += '''You can now login to Meatoo and add, delete or modify entries.\n\n''' body += '''Your password is: %s\n''' % password if send_email(body) == -1: return "There was an error sending email." else: accounts.add_user(username, password) return "Your password has been emailed."