Skip to content
Snippets Groups Projects
Select Git revision
  • 7c2227583916cb2d2fc42974993727c9667b19c4
  • master default protected
2 results

common.h

Blame
  • reset-user 925 B
    #!/usr/bin/env python3
    
    import argparse
    import sys
    
    import mo.config as config
    import mo.db as db
    import mo.users
    import mo.util
    
    parser = argparse.ArgumentParser(description='Resetuje uživateli heslo a pošle mail')
    parser.add_argument(dest='email', help='e-mailová adresa')
    parser.add_argument('--new', default=False, action='store_true', help='pošle mail o založení účtu')
    parser.add_argument('--mail-instead', metavar='EMAIL', default=None, help='pošle mail někomu jinému')
    
    args = parser.parse_args()
    
    mo.util.init_standalone()
    session = db.get_session()
    
    user = mo.users.user_by_email(args.email)
    if user is None:
        mo.util.die('Tento uživatel neexistuje')
    
    token = mo.users.ask_reset_password(user)
    session.commit()
    
    if args.mail_instead:
        mo.config.MAIL_INSTEAD = args.mail_instead
    
    if args.new:
        mo.util.send_new_account_email(user, token)
    else:
        mo.util.send_password_reset_email(user, token)