import sqlite3


conn = sqlite3.connect("users.db")

cursor = conn.cursor()


# ==============================
# Create Users Table
# ==============================

cursor.execute("""
CREATE TABLE IF NOT EXISTS users (

    user_id INTEGER PRIMARY KEY,

    username TEXT,

    balance REAL DEFAULT 0,

    accepted_rules INTEGER DEFAULT 0

)
""")


conn.commit()



# ==============================
# Add User
# ==============================

def add_user(user_id, username):

    cursor.execute(
        """
        INSERT OR IGNORE INTO users(
            user_id,
            username
        )
        VALUES (?,?)
        """,
        (
            user_id,
            username
        )
    )


    conn.commit()



# ==============================
# Add Balance
# ==============================

def add_balance(user_id, amount):

    cursor.execute(
        """
        UPDATE users

        SET balance = balance + ?

        WHERE user_id = ?
        """,
        (
            amount,
            user_id
        )
    )


    conn.commit()



# ==============================
# Get Balance
# ==============================

def get_balance(user_id):

    cursor.execute(
        """
        SELECT balance

        FROM users

        WHERE user_id = ?
        """,
        (user_id,)
    )


    result = cursor.fetchone()


    if result:
        return result[0]


    return 0



# ==============================
# Accept Rules
# ==============================

def accept_rules(user_id):

    cursor.execute(
        """
        UPDATE users

        SET accepted_rules = 1

        WHERE user_id = ?
        """,
        (user_id,)
    )


    conn.commit()



# ==============================
# Check Rules
# ==============================

def check_rules(user_id):

    cursor.execute(
        """
        SELECT accepted_rules

        FROM users

        WHERE user_id = ?
        """,
        (user_id,)
    )


    result = cursor.fetchone()


    if result:

        return result[0] == 1


    return False