Hoctar77 commited on
Commit
a971496
·
verified ·
1 Parent(s): 7173793

Temporary hiding generate PDF

Browse files
Files changed (1) hide show
  1. app.py +34 -30
app.py CHANGED
@@ -2719,19 +2719,20 @@ def create_interface():
2719
  results = gr.HTML()
2720
 
2721
  # Download button
2722
- with gr.Row():
2723
- download_btn = gr.Button(
2724
- "⬇️ Download Results as PDF",
2725
- variant="secondary",
2726
- visible=False
2727
- )
 
 
 
 
 
 
 
2728
 
2729
- pdf_file = gr.File(
2730
- label="Download PDF",
2731
- visible=False,
2732
- interactive=False,
2733
- file_types=[".pdf"]
2734
- )
2735
 
2736
  def process_and_format(file_obj, doc_type_value, template_type_value):
2737
  """Process document and format results as HTML."""
@@ -2762,7 +2763,7 @@ def create_interface():
2762
  Please ensure the file is a valid .docx document and try again.
2763
  </div>
2764
  """
2765
- # Hide the download button and pdf_file in case of error
2766
  return error_html, gr.update(visible=False), gr.update(visible=False)
2767
 
2768
  # Update template type visibility based on document type
@@ -2782,29 +2783,32 @@ def create_interface():
2782
  submit_btn.click(
2783
  fn=process_and_format,
2784
  inputs=[file_input, doc_type, template_type],
2785
- outputs=[results, download_btn, pdf_file]
2786
  )
2787
 
2788
  # Function to generate PDF and provide it for download
2789
- def generate_pdf(html_content):
2790
- try:
2791
- # Use a temporary file to store the PDF
2792
- with tempfile.NamedTemporaryFile(delete=False, suffix=".pdf") as tmp_pdf:
2793
- # Convert HTML to PDF using WeasyPrint
2794
- HTML(string=html_content, base_url='.').write_pdf(tmp_pdf.name)
 
 
 
 
 
 
 
2795
 
2796
- # Return the path to the PDF file
2797
- return gr.update(value=tmp_pdf.name, visible=True)
2798
- except Exception as e:
2799
- logging.error(f"Error generating PDF with WeasyPrint: {str(e)}")
2800
- return gr.update(value=None, visible=False)
2801
 
2802
  # When the download button is clicked, generate the PDF
2803
- download_btn.click(
2804
- fn=generate_pdf,
2805
- inputs=[results],
2806
- outputs=[pdf_file]
2807
- )
 
2808
 
2809
  gr.Markdown(
2810
  """
 
2719
  results = gr.HTML()
2720
 
2721
  # Download button
2722
+ # with gr.Row():
2723
+ # download_btn = gr.Button(
2724
+ # "⬇️ Download Results as PDF",
2725
+ # variant="secondary",
2726
+ # visible=False
2727
+ # )
2728
+ #
2729
+ # pdf_file = gr.File(
2730
+ # label="Download PDF",
2731
+ # visible=False,
2732
+ # interactive=False,
2733
+ # file_types=[".pdf"]
2734
+ # )
2735
 
 
 
 
 
 
 
2736
 
2737
  def process_and_format(file_obj, doc_type_value, template_type_value):
2738
  """Process document and format results as HTML."""
 
2763
  Please ensure the file is a valid .docx document and try again.
2764
  </div>
2765
  """
2766
+ # Return only the HTML results
2767
  return error_html, gr.update(visible=False), gr.update(visible=False)
2768
 
2769
  # Update template type visibility based on document type
 
2783
  submit_btn.click(
2784
  fn=process_and_format,
2785
  inputs=[file_input, doc_type, template_type],
2786
+ outputs=[results] # Only output the results
2787
  )
2788
 
2789
  # Function to generate PDF and provide it for download
2790
+ # def generate_pdf(html_content):
2791
+ # try:
2792
+ # # Use a temporary file to store the PDF
2793
+ # with tempfile.NamedTemporaryFile(delete=False, suffix=".pdf") as tmp_pdf:
2794
+ # # Convert HTML to PDF using WeasyPrint
2795
+ # HTML(string=html_content, base_url='.').write_pdf(tmp_pdf.name)
2796
+ #
2797
+ # # Return the path to the PDF file
2798
+ # return gr.update(value=tmp_pdf.name, visible=True)
2799
+ # except Exception as e:
2800
+ # logging.error(f"Error generating PDF with WeasyPrint: {str(e)}")
2801
+ # traceback.print_exc()
2802
+ # return gr.update(value=None, visible=False)
2803
 
 
 
 
 
 
2804
 
2805
  # When the download button is clicked, generate the PDF
2806
+ # download_btn.click(
2807
+ # fn=generate_pdf,
2808
+ # inputs=[results],
2809
+ # outputs=[pdf_file]
2810
+ # )
2811
+
2812
 
2813
  gr.Markdown(
2814
  """