Spaces:
Runtime error
Runtime error
| import hashlib | |
| import os, shutil | |
| import datetime | |
| from utils.tex_processing import replace_title | |
| def hash_name(input_dict): | |
| ''' | |
| input_dict= {"title": title, "description": description} | |
| For same input_dict, it should return the same value. | |
| ''' | |
| name = str(input_dict) | |
| name = name.lower() | |
| md5 = hashlib.md5() | |
| md5.update(name.encode('utf-8')) | |
| hashed_string = md5.hexdigest() | |
| return hashed_string | |
| def make_archive(source, destination): | |
| base = os.path.basename(destination) | |
| name = base.split('.')[0] | |
| format = base.split('.')[1] | |
| archive_from = os.path.dirname(source) | |
| archive_to = os.path.basename(source.strip(os.sep)) | |
| shutil.make_archive(name, format, archive_from, archive_to) | |
| shutil.move('%s.%s'%(name,format), destination) | |
| return destination | |
| def copy_templates(template, title): | |
| # Create a copy in the outputs folder. | |
| # 1. create a folder "outputs_%Y%m%d_%H%M%S" (destination_folder) | |
| # 2. copy all contents in "latex_templates/{template}" to that folder | |
| # 3. return (bibtex_path, destination_folder) | |
| now = datetime.datetime.now() | |
| target_name = now.strftime("outputs_%Y%m%d_%H%M%S") | |
| source_folder = f"latex_templates/{template}" | |
| destination_folder = f"outputs/{target_name}" | |
| shutil.copytree(source_folder, destination_folder) | |
| bibtex_path = os.path.join(destination_folder, "ref.bib") | |
| # bibtex_path = destination_folder + "/ref.bib" | |
| replace_title(destination_folder, title) | |
| return bibtex_path, destination_folder | |
| def list_folders(path): | |
| return [d for d in os.listdir(path) if os.path.isdir(os.path.join(path, d))] | |