GSMEthesis commited on
Commit
a85cd4e
·
verified ·
1 Parent(s): 169619c

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +10 -7
app.py CHANGED
@@ -738,7 +738,7 @@ h3 {
738
  """, unsafe_allow_html=True)
739
 
740
  def custom_likert_slider(question_data):
741
- """نمایش سوال لیکرت با اسلایدر پایدار و بدون پرش"""
742
  question = question_data["question"]
743
  key = question_data["key"]
744
  points = question_data["scale"]
@@ -751,28 +751,31 @@ def custom_likert_slider(question_data):
751
  with st.container():
752
  st.markdown(f"<p style='font-size:16px; margin-bottom:5px;'>{question}</p>", unsafe_allow_html=True)
753
 
754
- # استفاده از st.slider با key منحصر به فرد
755
- value = st.slider(
756
  "",
757
  min_value=1,
758
  max_value=points,
759
  value=default_value,
760
  step=1,
761
- key=f"slider_{key}_unique" # اضافه کردن پسوند منحصر به فرد
762
  )
763
 
764
- # ذخیره فوری مقدار در session_state
 
 
 
765
  st.session_state[key] = value
766
  if 'answers' not in st.session_state:
767
  st.session_state.answers = {}
768
  st.session_state.answers[key] = value
769
 
770
- # نمایش لیبل‌ها و مقدار انتخاب شده
771
  st.markdown(
772
  f"""
773
  <div style="display: flex; justify-content: space-between; font-size: 12px; margin: 5px 0;">
774
- <span>{labels[0]}</span>
775
  <span>{labels[1]}</span>
 
776
  </div>
777
  <p style='text-align:center; color:#6a0dad; font-weight:bold;'>
778
  پاسخ شما: {value}
 
738
  """, unsafe_allow_html=True)
739
 
740
  def custom_likert_slider(question_data):
741
+ """نمایش سوال لیکرت با اسلایدر معکوس (7 در راست، 1 در چپ)"""
742
  question = question_data["question"]
743
  key = question_data["key"]
744
  points = question_data["scale"]
 
751
  with st.container():
752
  st.markdown(f"<p style='font-size:16px; margin-bottom:5px;'>{question}</p>", unsafe_allow_html=True)
753
 
754
+ # اسلایدر با جهت معکوس
755
+ raw_value = st.slider(
756
  "",
757
  min_value=1,
758
  max_value=points,
759
  value=default_value,
760
  step=1,
761
+ key=f"slider_{key}_unique"
762
  )
763
 
764
+ # معکوس کردن مقدار برای ذخیره‌سازی (7 در راست، 1 در چپ)
765
+ value = points + 1 - raw_value
766
+
767
+ # ذخیره فوری مقدار معکوس در session_state
768
  st.session_state[key] = value
769
  if 'answers' not in st.session_state:
770
  st.session_state.answers = {}
771
  st.session_state.answers[key] = value
772
 
773
+ # نمایش لیبل‌ها (کاملاً موافقم در راست، کاملاً مخالفم در چپ)
774
  st.markdown(
775
  f"""
776
  <div style="display: flex; justify-content: space-between; font-size: 12px; margin: 5px 0;">
 
777
  <span>{labels[1]}</span>
778
+ <span>{labels[0]}</span>
779
  </div>
780
  <p style='text-align:center; color:#6a0dad; font-weight:bold;'>
781
  پاسخ شما: {value}