GSMEthesis commited on
Commit
98d3688
·
verified ·
1 Parent(s): 1ce1000

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +12 -8
app.py CHANGED
@@ -1092,10 +1092,11 @@ def attention_check1():
1092
 
1093
  def random_likert_questions():
1094
  """نمایش سوالات لیکرت به ترتیب مشخص"""
1095
- # تعریف گروه‌های سوالات
1096
  question_groups = [
1097
  {
1098
  "title": "عدالت توزیعی",
 
1099
  "questions": [
1100
  {"key": "distributive_1", "question": "قیمتی که به شما ارائه شد، منصفانه است.", "scale": "7point"},
1101
  {"key": "distributive_2", "question": "قیمتی که به شما ارائه شد، معقول است.", "scale": "7point"},
@@ -1104,12 +1105,14 @@ def random_likert_questions():
1104
  },
1105
  {
1106
  "title": "سوال توجه",
 
1107
  "questions": [
1108
- {"key": "attention", "question": "تا چه مقدار به سوالات با دقت پاسخ می‌دهید؟", "scale": "7point"},
1109
  ]
1110
  },
1111
  {
1112
- "title": "عدالت رویه‌ای",
 
1113
  "questions": [
1114
  {"key": "procedural_1", "question": "فرآیند و رویه قیمت‌گذاری پلتفرم قابل قبول است.", "scale": "7point"},
1115
  {"key": "procedural_2", "question": "فرآیند و رویه قیمت‌گذاری پلتفرم منصفانه است.", "scale": "7point"},
@@ -1118,6 +1121,7 @@ def random_likert_questions():
1118
  },
1119
  {
1120
  "title": "عدالت اطلاعاتی",
 
1121
  "questions": [
1122
  {"key": "informational_1", "question": "پلتفرم به صورت صادقانه دلایل تعیین قیمت را توضیح داد.", "scale": "5point"},
1123
  {"key": "informational_2", "question": "پلتفرم به طور کامل عوامل مؤثر بر تعیین قیمت را شرح داد.", "scale": "5point"},
@@ -1131,8 +1135,8 @@ def random_likert_questions():
1131
  # مقداردهی اولیه
1132
  if 'current_likert_group' not in st.session_state:
1133
  st.session_state.current_likert_group = 0
1134
- st.session_state.answers = {}
1135
-
1136
  # دریافت گروه جاری
1137
  current_group = question_groups[st.session_state.current_likert_group]
1138
 
@@ -1154,9 +1158,9 @@ def random_likert_questions():
1154
  all_answered = all(answers.values())
1155
 
1156
  # دکمه ادامه/اتمام
1157
- if st.button("ادامه به گروه بعدی" if st.session_state.current_likert_group < len(question_groups)-1 else "اتمام پرسشنامه",
1158
- disabled=not all_answered):
1159
-
1160
  # ذخیره پاسخ‌های این گروه
1161
  for key, value in answers.items():
1162
  st.session_state.answers[key] = value
 
1092
 
1093
  def random_likert_questions():
1094
  """نمایش سوالات لیکرت به ترتیب مشخص"""
1095
+ # تعریف گروه‌های سوالات با ترتیب جدید
1096
  question_groups = [
1097
  {
1098
  "title": "عدالت توزیعی",
1099
+ "key": "distributive",
1100
  "questions": [
1101
  {"key": "distributive_1", "question": "قیمتی که به شما ارائه شد، منصفانه است.", "scale": "7point"},
1102
  {"key": "distributive_2", "question": "قیمتی که به شما ارائه شد، معقول است.", "scale": "7point"},
 
1105
  },
1106
  {
1107
  "title": "سوال توجه",
1108
+ "key": "attention_check",
1109
  "questions": [
1110
+ {"key": "attention_check2", "question": "لطفاً برای اطمینان از دقت پاسخ‌هایتان، گزینه 'کاملاً موافقم' را انتخاب کنید.", "scale": "7point"}
1111
  ]
1112
  },
1113
  {
1114
+ "title": "عدالت رویه‌ای",
1115
+ "key": "procedural",
1116
  "questions": [
1117
  {"key": "procedural_1", "question": "فرآیند و رویه قیمت‌گذاری پلتفرم قابل قبول است.", "scale": "7point"},
1118
  {"key": "procedural_2", "question": "فرآیند و رویه قیمت‌گذاری پلتفرم منصفانه است.", "scale": "7point"},
 
1121
  },
1122
  {
1123
  "title": "عدالت اطلاعاتی",
1124
+ "key": "informational",
1125
  "questions": [
1126
  {"key": "informational_1", "question": "پلتفرم به صورت صادقانه دلایل تعیین قیمت را توضیح داد.", "scale": "5point"},
1127
  {"key": "informational_2", "question": "پلتفرم به طور کامل عوامل مؤثر بر تعیین قیمت را شرح داد.", "scale": "5point"},
 
1135
  # مقداردهی اولیه
1136
  if 'current_likert_group' not in st.session_state:
1137
  st.session_state.current_likert_group = 0
1138
+ st.session_state.answers = st.session_state.get('answers', {})
1139
+
1140
  # دریافت گروه جاری
1141
  current_group = question_groups[st.session_state.current_likert_group]
1142
 
 
1158
  all_answered = all(answers.values())
1159
 
1160
  # دکمه ادامه/اتمام
1161
+ button_label = "ادامه به گروه بعدی" if st.session_state.current_likert_group < len(question_groups)-1 else "اتمام پرسشنامه"
1162
+
1163
+ if st.button(button_label, disabled=not all_answered):
1164
  # ذخیره پاسخ‌های این گروه
1165
  for key, value in answers.items():
1166
  st.session_state.answers[key] = value