Spaces:
Sleeping
Sleeping
Update app.py
Browse files
app.py
CHANGED
@@ -74,6 +74,8 @@ if 'authenticated' not in st.session_state:
|
|
74 |
st.session_state.authenticated = False
|
75 |
if 'is_admin' not in st.session_state:
|
76 |
st.session_state.is_admin = False
|
|
|
|
|
77 |
|
78 |
# Register Page
|
79 |
def register_page():
|
@@ -83,16 +85,19 @@ def register_page():
|
|
83 |
new_password = st.text_input("رمز عبور جدید", type='password')
|
84 |
|
85 |
if st.button("ثبت نام"):
|
86 |
-
|
|
|
87 |
|
88 |
-
|
89 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
90 |
else:
|
91 |
-
|
92 |
-
user_details = pd.concat([user_details, new_user], ignore_index=True)
|
93 |
-
save_user_details(user_details)
|
94 |
-
st.success("ثبت نام با موفقیت انجام شد! اکنون میتوانید وارد شوید.")
|
95 |
-
st.session_state.page = "login"
|
96 |
|
97 |
# Login Page
|
98 |
def login_page():
|
@@ -111,12 +116,14 @@ def login_page():
|
|
111 |
st.session_state.is_admin = (st.session_state.username == "armin")
|
112 |
# Load schedule data again after login
|
113 |
st.session_state.schedule_data = load_schedule()
|
|
|
114 |
st.experimental_rerun()
|
115 |
else:
|
116 |
st.error("نام کاربری یا رمز عبور اشتباه است. لطفا دوباره تلاش کنید.")
|
117 |
|
118 |
if st.button("ثبت نام"):
|
119 |
st.session_state.page = "register"
|
|
|
120 |
|
121 |
# Class Schedule Page
|
122 |
def schedule_page():
|
@@ -140,7 +147,7 @@ def schedule_page():
|
|
140 |
|
141 |
if st.button("اضافه کردن کلاس"):
|
142 |
class_datetime = get_class_datetime(day_selected, start_time_selected)
|
143 |
-
if class_datetime - datetime.now() < timedelta(hours=
|
144 |
st.error("کلاسها باید حداقل ۳۰ ساعت قبل رزرو شوند.")
|
145 |
elif not has_system_availability(st.session_state.schedule_data, class_selected, day_selected, start_time_selected, system_selected):
|
146 |
st.error(f"سیستم '{system_selected}' در زمان '{start_time_selected}' در روز '{day_selected}' برای '{class_selected}' موجود نیست.")
|
@@ -193,12 +200,10 @@ def schedule_page():
|
|
193 |
st.session_state['username'] = ""
|
194 |
st.session_state['password'] = ""
|
195 |
st.session_state['is_admin'] = False
|
|
|
196 |
st.experimental_rerun()
|
197 |
|
198 |
# Page navigation
|
199 |
-
if 'page' not in st.session_state:
|
200 |
-
st.session_state.page = "login"
|
201 |
-
|
202 |
if st.session_state.page == "login":
|
203 |
login_page()
|
204 |
elif st.session_state.page == "register":
|
|
|
74 |
st.session_state.authenticated = False
|
75 |
if 'is_admin' not in st.session_state:
|
76 |
st.session_state.is_admin = False
|
77 |
+
if 'page' not in st.session_state:
|
78 |
+
st.session_state.page = "login"
|
79 |
|
80 |
# Register Page
|
81 |
def register_page():
|
|
|
85 |
new_password = st.text_input("رمز عبور جدید", type='password')
|
86 |
|
87 |
if st.button("ثبت نام"):
|
88 |
+
if new_username and new_password:
|
89 |
+
user_details = load_user_details()
|
90 |
|
91 |
+
if new_username in user_details['username'].values:
|
92 |
+
st.error("این نام کاربری قبلاً ثبت شده است.")
|
93 |
+
else:
|
94 |
+
new_user = pd.DataFrame([[new_username, new_password]], columns=['username', 'password'])
|
95 |
+
user_details = pd.concat([user_details, new_user], ignore_index=True)
|
96 |
+
save_user_details(user_details)
|
97 |
+
st.success("ثبت نام با موفقیت انجام شد! اکنون میتوانید وارد شوید.")
|
98 |
+
st.session_state.page = "login"
|
99 |
else:
|
100 |
+
st.error("لطفاً نام کاربری و رمز عبور را وارد کنید.")
|
|
|
|
|
|
|
|
|
101 |
|
102 |
# Login Page
|
103 |
def login_page():
|
|
|
116 |
st.session_state.is_admin = (st.session_state.username == "armin")
|
117 |
# Load schedule data again after login
|
118 |
st.session_state.schedule_data = load_schedule()
|
119 |
+
st.session_state.page = "schedule"
|
120 |
st.experimental_rerun()
|
121 |
else:
|
122 |
st.error("نام کاربری یا رمز عبور اشتباه است. لطفا دوباره تلاش کنید.")
|
123 |
|
124 |
if st.button("ثبت نام"):
|
125 |
st.session_state.page = "register"
|
126 |
+
st.experimental_rerun()
|
127 |
|
128 |
# Class Schedule Page
|
129 |
def schedule_page():
|
|
|
147 |
|
148 |
if st.button("اضافه کردن کلاس"):
|
149 |
class_datetime = get_class_datetime(day_selected, start_time_selected)
|
150 |
+
if class_datetime - datetime.now() < timedelta(hours=30):
|
151 |
st.error("کلاسها باید حداقل ۳۰ ساعت قبل رزرو شوند.")
|
152 |
elif not has_system_availability(st.session_state.schedule_data, class_selected, day_selected, start_time_selected, system_selected):
|
153 |
st.error(f"سیستم '{system_selected}' در زمان '{start_time_selected}' در روز '{day_selected}' برای '{class_selected}' موجود نیست.")
|
|
|
200 |
st.session_state['username'] = ""
|
201 |
st.session_state['password'] = ""
|
202 |
st.session_state['is_admin'] = False
|
203 |
+
st.session_state.page = "login"
|
204 |
st.experimental_rerun()
|
205 |
|
206 |
# Page navigation
|
|
|
|
|
|
|
207 |
if st.session_state.page == "login":
|
208 |
login_page()
|
209 |
elif st.session_state.page == "register":
|