Spaces:
Sleeping
Sleeping
import streamlit as st | |
from utils.login import get_login | |
import os | |
def initialize_level(): | |
if 'level' not in st.session_state: | |
if get_login()["status"]: | |
if not os.path.exists(f".sessions/{get_login()['username']}/level.txt"): | |
with open(f".sessions/{get_login()['username']}/level.txt", "w") as f: | |
f.write("0") | |
st.session_state['level'] = 0 | |
else: | |
with open(f".sessions/{get_login()['username']}/level.txt", "r") as f: | |
st.session_state['level'] = int(f.read()) | |
def get_level(): | |
return st.session_state['level'] | |
def render_page(page, level): | |
if get_login()["status"]: | |
if st.session_state['level'] < level: | |
st.error(f"You need to complete Level {st.session_state['level']} first!") | |
else: | |
page() | |
else: | |
st.error("You need to login first!") | |
def complete_level(level): | |
if st.session_state['level'] > level: | |
st.info(f'You have Already completed Level {level}!') | |
else: | |
st.session_state['level'] = level + 1 | |
with open(f".sessions/{get_login()['username']}/level.txt", "w") as f: | |
f.write(str(st.session_state['level'])) | |
st.balloons() | |
st.success(f'You have completed Level {level}! You can now move on to the next level.') |