File size: 1,042 Bytes
2ae3f7c
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
from models.database import Database
from passlib.hash import pbkdf2_sha256
import os

def init_database():
    # Create data directory if it doesn't exist
    os.makedirs("data", exist_ok=True)
    
    # Initialize database
    db = Database()
    
    # Create admin user
    admin_username = "admin"
    admin_password = "admin123"  # Change this in production
    password_hash = pbkdf2_sha256.hash(admin_password)
    
    # Add admin user to database
    conn = db._get_connection()
    c = conn.cursor()
    
    try:
        c.execute("""

            INSERT INTO users (username, password_hash, is_admin)

            VALUES (?, ?, 1)

        """, (admin_username, password_hash))
        conn.commit()
        print(f"Created admin user: {admin_username}")
        print("Default password: admin123 (please change this in production)")
    except Exception as e:
        print(f"Error creating admin user: {str(e)}")
    finally:
        conn.close()

if __name__ == "__main__":
    init_database()