Spaces:
Sleeping
Sleeping
Update app.py
Browse files
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 =
|
| 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 |
-
|
| 236 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 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")
|