maringetxway commited on
Commit
4bc953e
·
verified ·
1 Parent(s): f327544

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +24 -5
app.py CHANGED
@@ -13,7 +13,7 @@ BACKUP_DIR = os.path.join(DATA_DIR, "backup")
13
  os.makedirs(BACKUP_DIR, exist_ok=True)
14
 
15
  ADMIN_CODE = os.getenv("ADMIN_CODE", "")
16
- PAGE_SIZE = 20
17
 
18
  LANGUAGES = ["English", "French", "Spanish", "German", "Portuguese", "Chinese", "Arabic", "Hindi"]
19
  ALL_COUNTRIES = sorted(set([
@@ -232,11 +232,30 @@ def interface():
232
  dropdown.change(lambda c, ci, l: (1,), inputs=[country_filter, city_filter, language_filter], outputs=[page_state])
233
  dropdown.change(filter_by_fields, inputs=[country_filter, city_filter, language_filter, page_state], outputs=[table_html, page_state, gr.Number(visible=False)])
234
 
235
- prev_btn.click(lambda p: max(p - 1, 1), inputs=[page_state], outputs=[page_state])
236
- prev_btn.click(filter_by_fields, inputs=[country_filter, city_filter, language_filter, page_state], outputs=[table_html, page_state, gr.Number(visible=False)])
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
237
 
238
- next_btn.click(lambda p: p + 1, inputs=[page_state], outputs=[page_state])
239
- next_btn.click(filter_by_fields, inputs=[country_filter, city_filter, language_filter, page_state], outputs=[table_html, page_state, gr.Number(visible=False)])
240
 
241
  del_btn = gr.Button("Delete Profile")
242
  admin_discord = gr.Text(label="Discord Username")
 
13
  os.makedirs(BACKUP_DIR, exist_ok=True)
14
 
15
  ADMIN_CODE = os.getenv("ADMIN_CODE", "")
16
+ PAGE_SIZE = 14
17
 
18
  LANGUAGES = ["English", "French", "Spanish", "German", "Portuguese", "Chinese", "Arabic", "Hindi"]
19
  ALL_COUNTRIES = sorted(set([
 
232
  dropdown.change(lambda c, ci, l: (1,), inputs=[country_filter, city_filter, language_filter], outputs=[page_state])
233
  dropdown.change(filter_by_fields, inputs=[country_filter, city_filter, language_filter, page_state], outputs=[table_html, page_state, gr.Number(visible=False)])
234
 
235
+ prev_btn.click(
236
+ fn=lambda p: max(p - 1, 1),
237
+ inputs=[page_state],
238
+ outputs=[page_state]
239
+ ).then(
240
+ fn=filter_by_fields,
241
+ inputs=[country_filter, city_filter, language_filter, page_state],
242
+ outputs=[table_html, page_state, gr.Number(visible=False)]
243
+ )
244
+
245
+
246
+ next_btn.click(
247
+ fn=lambda p, c, ci, l: min(
248
+ (filter_by_fields(c, ci, l, 1)[2] - 1) // PAGE_SIZE + 1, # max page based on total count
249
+ p + 1
250
+ ),
251
+ inputs=[page_state, country_filter, city_filter, language_filter],
252
+ outputs=[page_state]
253
+ ).then(
254
+ fn=filter_by_fields,
255
+ inputs=[country_filter, city_filter, language_filter, page_state],
256
+ outputs=[table_html, page_state, gr.Number(visible=False)]
257
+ )
258
 
 
 
259
 
260
  del_btn = gr.Button("Delete Profile")
261
  admin_discord = gr.Text(label="Discord Username")