Sina Media Lab commited on
Commit
45705e3
·
1 Parent(s): 31d5315
Files changed (1) hide show
  1. app.py +14 -4
app.py CHANGED
@@ -111,12 +111,14 @@ def load_modules():
111
  with open(config_path) as f:
112
  exec(f.read(), config)
113
  category_title = config.get("title", category.title().replace("_", " "))
 
114
  order = config.get("order", 100) # Default order is 100 if not specified
115
  else:
116
  category_title = category.title().replace("_", " ")
 
117
  order = 100
118
 
119
- modules[category_title] = {"order": order, "modules": {}}
120
  for filename in os.listdir(category_dir):
121
  if filename.endswith(".py") and filename != "__init__.py" and filename != "config.py":
122
  module_name = filename[:-3]
@@ -158,11 +160,19 @@ st.sidebar.markdown(
158
  </div>
159
  """, unsafe_allow_html=True)
160
 
 
 
 
161
  st.sidebar.title("Quiz Categories")
162
- selected_category = st.sidebar.selectbox("Choose a category:", list(modules.keys()))
163
 
164
  if selected_category:
165
- selected_module = st.sidebar.radio("Choose a module:", [modules[selected_category][module]["title"] for module in modules[selected_category]])
 
 
 
 
 
166
 
167
  for module_name, module_data in modules[selected_category].items():
168
  if module_data["title"] == selected_module:
@@ -174,7 +184,7 @@ if selected_category:
174
  with col1:
175
  st.markdown(
176
  f"""
177
- <div style="background-color: #333; padding: 10px; border-radius: 5px; margin-top: 20px;">
178
  <span style='font-size: 18px; color: white;'>{selected_category} > {selected_module_data['title']}</span>
179
  </div>
180
  """,
 
111
  with open(config_path) as f:
112
  exec(f.read(), config)
113
  category_title = config.get("title", category.title().replace("_", " "))
114
+ category_description = config.get("description", "No description available.")
115
  order = config.get("order", 100) # Default order is 100 if not specified
116
  else:
117
  category_title = category.title().replace("_", " ")
118
+ category_description = "No description available."
119
  order = 100
120
 
121
+ modules[category_title] = {"order": order, "description": category_description, "modules": {}}
122
  for filename in os.listdir(category_dir):
123
  if filename.endswith(".py") and filename != "__init__.py" and filename != "config.py":
124
  module_name = filename[:-3]
 
160
  </div>
161
  """, unsafe_allow_html=True)
162
 
163
+ # Get category description for tooltip
164
+ category_description = modules[selected_category]["description"]
165
+
166
  st.sidebar.title("Quiz Categories")
167
+ selected_category = st.sidebar.selectbox("Choose a category:", list(modules.keys()), help=category_description)
168
 
169
  if selected_category:
170
+ module_options = [modules[selected_category][module]["title"] for module in modules[selected_category]]
171
+ selected_module = st.sidebar.radio(
172
+ "Choose a module:",
173
+ module_options,
174
+ help=modules[selected_category]["modules"][list(modules[selected_category]["modules"].keys())[module_options.index(selected_module)]]["description"]
175
+ )
176
 
177
  for module_name, module_data in modules[selected_category].items():
178
  if module_data["title"] == selected_module:
 
184
  with col1:
185
  st.markdown(
186
  f"""
187
+ <div style="background-color: #333; padding: 10px; border-radius: 5px; margin-top: 20px;" title="{category_description} > {selected_module_data['description']}">
188
  <span style='font-size: 18px; color: white;'>{selected_category} > {selected_module_data['title']}</span>
189
  </div>
190
  """,