Spaces:
Sleeping
Sleeping
Maryam Ilka commited on
Update app.py
Browse files
app.py
CHANGED
|
@@ -209,6 +209,31 @@ st.markdown("""
|
|
| 209 |
.stSelectbox > div > div {
|
| 210 |
padding: 8px !important;
|
| 211 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 212 |
}
|
| 213 |
</style>
|
| 214 |
""", unsafe_allow_html=True)
|
|
@@ -335,9 +360,9 @@ def save_to_sheet(data):
|
|
| 335 |
spreadsheet = client.open_by_key(SHEET_ID)
|
| 336 |
worksheet = spreadsheet.worksheet(SHEET_NAME)
|
| 337 |
|
| 338 |
-
# آمادهسازی دادهها ب
|
| 339 |
row_data = [
|
| 340 |
-
data.get("start_time", ""),
|
| 341 |
data.get("scenario_type", ""),
|
| 342 |
data.get("price", ""),
|
| 343 |
data.get("age", ""),
|
|
@@ -347,7 +372,7 @@ def save_to_sheet(data):
|
|
| 347 |
data.get("user_contact", ""),
|
| 348 |
data.get("price_accepted", ""),
|
| 349 |
|
| 350 |
-
# سوالات توجه
|
| 351 |
data.get("attention_check1", ""),
|
| 352 |
data.get("attention_check2", ""),
|
| 353 |
|
|
@@ -382,7 +407,7 @@ def save_to_sheet(data):
|
|
| 382 |
|
| 383 |
except Exception as e:
|
| 384 |
st.error(f"خطا در ذخیرهسازی: {str(e)}")
|
| 385 |
-
return False
|
| 386 |
|
| 387 |
# ========== بخشهای فرم ==========
|
| 388 |
|
|
@@ -526,7 +551,7 @@ def map_view():
|
|
| 526 |
st.rerun()
|
| 527 |
|
| 528 |
def attention_check1():
|
| 529 |
-
"""سوال توجه اول
|
| 530 |
st.markdown("""
|
| 531 |
<style>
|
| 532 |
/* تضمین رنگ متن برای تمام سطوح */
|
|
@@ -536,20 +561,20 @@ def attention_check1():
|
|
| 536 |
</style>
|
| 537 |
""", unsafe_allow_html=True)
|
| 538 |
st.markdown("### سوال توجه")
|
| 539 |
-
|
| 540 |
answer = st.radio(
|
| 541 |
"رنگ سازمانی اپلیکیشن رهیار چه رنگی بود؟",
|
| 542 |
["قرمز", "سبز", "بنفش", "آبی", "زرد"],
|
| 543 |
-
index=None,
|
| 544 |
key="attention_check1"
|
| 545 |
)
|
| 546 |
|
| 547 |
-
if
|
|
|
|
|
|
|
| 548 |
st.session_state.current_page = "random_likert_questions"
|
| 549 |
st.rerun()
|
| 550 |
|
| 551 |
def attention_check2():
|
| 552 |
-
"""سوال توجه دوم
|
| 553 |
st.markdown("""
|
| 554 |
<style>
|
| 555 |
/* تضمین رنگ متن برای تمام سطوح */
|
|
@@ -559,15 +584,15 @@ def attention_check2():
|
|
| 559 |
</style>
|
| 560 |
""", unsafe_allow_html=True)
|
| 561 |
st.markdown("### سوال توجه")
|
| 562 |
-
|
| 563 |
answer = st.radio(
|
| 564 |
"نام اپلیکیشنی که در این تحقیق بررسی میشود چیست؟",
|
| 565 |
["اسنپ", "تپسی", "راهیار", "ماکسیم", "دیگر"],
|
| 566 |
-
index=None,
|
| 567 |
key="attention_check2"
|
| 568 |
)
|
| 569 |
|
| 570 |
-
if
|
|
|
|
|
|
|
| 571 |
st.session_state.current_page = "explanation_questions"
|
| 572 |
st.rerun()
|
| 573 |
|
|
|
|
| 209 |
.stSelectbox > div > div {
|
| 210 |
padding: 8px !important;
|
| 211 |
}
|
| 212 |
+
@media (max-width: 768px) {
|
| 213 |
+
/* بهبود نمایش باکسهای ورودی در موبایل */
|
| 214 |
+
.stTextInput input,
|
| 215 |
+
.stNumberInput input,
|
| 216 |
+
.stSelectbox select {
|
| 217 |
+
background-color: white !important;
|
| 218 |
+
color: black !important;
|
| 219 |
+
border: 1px solid #ddd !important;
|
| 220 |
+
padding: 12px !important;
|
| 221 |
+
}
|
| 222 |
+
|
| 223 |
+
/* بهبود نمایش دکمهها */
|
| 224 |
+
.stButton>button {
|
| 225 |
+
width: 100% !important;
|
| 226 |
+
}
|
| 227 |
+
|
| 228 |
+
/* بهبود نمایش سوالات رادیویی */
|
| 229 |
+
.stRadio div {
|
| 230 |
+
flex-direction: row-reverse !important;
|
| 231 |
+
}
|
| 232 |
+
|
| 233 |
+
.stRadio label {
|
| 234 |
+
margin-left: 10px !important;
|
| 235 |
+
color: black !important;
|
| 236 |
+
}
|
| 237 |
}
|
| 238 |
</style>
|
| 239 |
""", unsafe_allow_html=True)
|
|
|
|
| 360 |
spreadsheet = client.open_by_key(SHEET_ID)
|
| 361 |
worksheet = spreadsheet.worksheet(SHEET_NAME)
|
| 362 |
|
| 363 |
+
# آمادهسازی دادهها با اطمینان از وجود همه کلیدها
|
| 364 |
row_data = [
|
| 365 |
+
data.get("start_time", ""),
|
| 366 |
data.get("scenario_type", ""),
|
| 367 |
data.get("price", ""),
|
| 368 |
data.get("age", ""),
|
|
|
|
| 372 |
data.get("user_contact", ""),
|
| 373 |
data.get("price_accepted", ""),
|
| 374 |
|
| 375 |
+
# سوالات توجه - با مقدار پیشفرض خالی
|
| 376 |
data.get("attention_check1", ""),
|
| 377 |
data.get("attention_check2", ""),
|
| 378 |
|
|
|
|
| 407 |
|
| 408 |
except Exception as e:
|
| 409 |
st.error(f"خطا در ذخیرهسازی: {str(e)}")
|
| 410 |
+
return False
|
| 411 |
|
| 412 |
# ========== بخشهای فرم ==========
|
| 413 |
|
|
|
|
| 551 |
st.rerun()
|
| 552 |
|
| 553 |
def attention_check1():
|
| 554 |
+
"""سوال توجه اول"""
|
| 555 |
st.markdown("""
|
| 556 |
<style>
|
| 557 |
/* تضمین رنگ متن برای تمام سطوح */
|
|
|
|
| 561 |
</style>
|
| 562 |
""", unsafe_allow_html=True)
|
| 563 |
st.markdown("### سوال توجه")
|
|
|
|
| 564 |
answer = st.radio(
|
| 565 |
"رنگ سازمانی اپلیکیشن رهیار چه رنگی بود؟",
|
| 566 |
["قرمز", "سبز", "بنفش", "آبی", "زرد"],
|
|
|
|
| 567 |
key="attention_check1"
|
| 568 |
)
|
| 569 |
|
| 570 |
+
if st.button("ادامه", key="att1_continue"):
|
| 571 |
+
# ذخیره پاسخ قبل از ادامه
|
| 572 |
+
st.session_state.attention_check1 = answer
|
| 573 |
st.session_state.current_page = "random_likert_questions"
|
| 574 |
st.rerun()
|
| 575 |
|
| 576 |
def attention_check2():
|
| 577 |
+
"""سوال توجه دوم"""
|
| 578 |
st.markdown("""
|
| 579 |
<style>
|
| 580 |
/* تضمین رنگ متن برای تمام سطوح */
|
|
|
|
| 584 |
</style>
|
| 585 |
""", unsafe_allow_html=True)
|
| 586 |
st.markdown("### سوال توجه")
|
|
|
|
| 587 |
answer = st.radio(
|
| 588 |
"نام اپلیکیشنی که در این تحقیق بررسی میشود چیست؟",
|
| 589 |
["اسنپ", "تپسی", "راهیار", "ماکسیم", "دیگر"],
|
|
|
|
| 590 |
key="attention_check2"
|
| 591 |
)
|
| 592 |
|
| 593 |
+
if st.button("ادامه", key="att2_continue"):
|
| 594 |
+
# ذخیره پاسخ قبل از ادامه
|
| 595 |
+
st.session_state.attention_check2 = answer
|
| 596 |
st.session_state.current_page = "explanation_questions"
|
| 597 |
st.rerun()
|
| 598 |
|