from app import app, db from models import User from werkzeug.security import generate_password_hash import sys def create_admin(password): with app.app_context(): # Check if admin exists admin = User.query.filter_by(role='admin').first() if admin: print(f"Admin user already exists: {admin.matric_no}") admin.set_password(password) admin.is_active = True admin.status = 'approved' db.session.commit() print("Admin password updated.") return # Create new admin admin = User( matric_no='ADMIN', name='System Admin', email='admin@attendr.com', role='admin', is_active=True, status='approved' ) admin.set_password(password) db.session.add(admin) db.session.commit() print(f"Admin user created successfully!") print(f"Matric No: ADMIN") print(f"Password: {password}") if __name__ == '__main__': password = 'admin' # Default password if len(sys.argv) > 1: password = sys.argv[1] create_admin(password)