LuisBlanche
commited on
Commit
•
c0a9bb9
1
Parent(s):
a55b70c
Update app.py
Browse files
app.py
CHANGED
@@ -272,6 +272,8 @@ class PDFPoster:
|
|
272 |
|
273 |
|
274 |
|
|
|
|
|
275 |
css = """
|
276 |
#col-container {
|
277 |
margin: 0 auto;
|
@@ -282,19 +284,20 @@ css = """
|
|
282 |
def fetch_votes(deputy_name):
|
283 |
pdfposter = PDFPoster(deputy_name)
|
284 |
votes = pdfposter.retrieve_deputy_data()
|
285 |
-
vote_list = votes['
|
286 |
-
|
|
|
287 |
|
288 |
-
def generate_poster(deputy_name, message_1, message_2,
|
289 |
# Set default messages if not provided
|
290 |
if not message_1:
|
291 |
message_1 = "Les votes de vos députés sont souvent différents de ce que les responsables de partis annoncent dans les médias. Les données de votes sont ouvertes!"
|
292 |
if not message_2:
|
293 |
-
message_2 = "Les 30 juin, et 7
|
294 |
|
295 |
pdfposter = PDFPoster(deputy_name)
|
296 |
pdfposter.retrieve_deputy_data()
|
297 |
-
pdf_filename = pdfposter.generate_poster(
|
298 |
|
299 |
# Move the PDF to a known location
|
300 |
static_dir = './static/'
|
@@ -303,7 +306,7 @@ def generate_poster(deputy_name, message_1, message_2, vote_list):
|
|
303 |
os.rename(pdf_filename, static_pdf_path)
|
304 |
|
305 |
# Create the iframe HTML to display the PDF
|
306 |
-
iframe_html = f'<iframe src="/
|
307 |
return gr.HTML(iframe_html)
|
308 |
|
309 |
with gr.Blocks(css=css) as demo:
|
@@ -321,9 +324,9 @@ with gr.Blocks(css=css) as demo:
|
|
321 |
placeholder="Nom du député, si tu ne le connais pas RDV sur www.datan.fr ou www.nosdeputes.fr",
|
322 |
container=False,
|
323 |
)
|
324 |
-
fetch_button = gr.Button("
|
325 |
|
326 |
-
vote_list = gr.CheckboxGroup(label="
|
327 |
|
328 |
with gr.Row():
|
329 |
message_1 = gr.Text(
|
@@ -335,13 +338,12 @@ with gr.Blocks(css=css) as demo:
|
|
335 |
message_2 = gr.Text(
|
336 |
label="message_2",
|
337 |
max_lines=1,
|
338 |
-
placeholder="Les 30 juin, et 7
|
339 |
visible=True,
|
340 |
)
|
341 |
|
342 |
generate_button = gr.Button("Generate Poster", scale=0)
|
343 |
-
result = gr.
|
344 |
-
|
345 |
|
346 |
fetch_button.click(
|
347 |
fn=fetch_votes,
|
|
|
272 |
|
273 |
|
274 |
|
275 |
+
|
276 |
+
|
277 |
css = """
|
278 |
#col-container {
|
279 |
margin: 0 auto;
|
|
|
284 |
def fetch_votes(deputy_name):
|
285 |
pdfposter = PDFPoster(deputy_name)
|
286 |
votes = pdfposter.retrieve_deputy_data()
|
287 |
+
vote_list = votes['vote_id'].tolist()
|
288 |
+
vote_choices = [(vote_id, votes.loc[votes['vote_id'] == vote_id, 'vote_topic'].values[0]) for vote_id in vote_list]
|
289 |
+
return gr.update(choices=vote_choices)
|
290 |
|
291 |
+
def generate_poster(deputy_name, message_1, message_2, vote_id_list):
|
292 |
# Set default messages if not provided
|
293 |
if not message_1:
|
294 |
message_1 = "Les votes de vos députés sont souvent différents de ce que les responsables de partis annoncent dans les médias. Les données de votes sont ouvertes!"
|
295 |
if not message_2:
|
296 |
+
message_2 = "Les 30 juin, et 7 juin, renseignez vous, et votez en connaissance de cause !"
|
297 |
|
298 |
pdfposter = PDFPoster(deputy_name)
|
299 |
pdfposter.retrieve_deputy_data()
|
300 |
+
pdf_filename = pdfposter.generate_poster(vote_id_list, message_1, message_2)
|
301 |
|
302 |
# Move the PDF to a known location
|
303 |
static_dir = './static/'
|
|
|
306 |
os.rename(pdf_filename, static_pdf_path)
|
307 |
|
308 |
# Create the iframe HTML to display the PDF
|
309 |
+
iframe_html = f'<iframe src="file/{static_pdf_path}" width="100%" height="800px"></iframe>'
|
310 |
return gr.HTML(iframe_html)
|
311 |
|
312 |
with gr.Blocks(css=css) as demo:
|
|
|
324 |
placeholder="Nom du député, si tu ne le connais pas RDV sur www.datan.fr ou www.nosdeputes.fr",
|
325 |
container=False,
|
326 |
)
|
327 |
+
fetch_button = gr.Button("Fetch Votes", scale=0)
|
328 |
|
329 |
+
vote_list = gr.CheckboxGroup(label="Select Votes", choices=[])
|
330 |
|
331 |
with gr.Row():
|
332 |
message_1 = gr.Text(
|
|
|
338 |
message_2 = gr.Text(
|
339 |
label="message_2",
|
340 |
max_lines=1,
|
341 |
+
placeholder="Les 30 juin, et 7 juin, renseignez vous, et votez en connaissance de cause !",
|
342 |
visible=True,
|
343 |
)
|
344 |
|
345 |
generate_button = gr.Button("Generate Poster", scale=0)
|
346 |
+
result = gr.HTML()
|
|
|
347 |
|
348 |
fetch_button.click(
|
349 |
fn=fetch_votes,
|