Maryam Ilka commited on
Commit
d79d4ce
·
verified ·
1 Parent(s): 60e0508

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +37 -12
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 answer: # فقط بررسی می‌کنیم که پاسخی داده شده باشد
 
 
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 answer: # فقط بررسی می‌کنیم که پاسخی داده شده باشد
 
 
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