Skip to content

Commit

Permalink
The listing will check if the file(s) exist(s) and show the download …
Browse files Browse the repository at this point in the history
…link only if exist. Also disabled for the moment to delete the PDF file after sent to vector database.
  • Loading branch information
lvalics committed Oct 22, 2023
1 parent 0b22f16 commit 3ddf812
Show file tree
Hide file tree
Showing 4 changed files with 31 additions and 16 deletions.
6 changes: 4 additions & 2 deletions dj_backend_server/api/data_sources/pdf_handler.py
Original file line number Diff line number Diff line change
Expand Up @@ -25,8 +25,10 @@ def pdf_handler(shared_folder: str, namespace: str):

init_vector_store(docs, embeddings, StoreOptions(namespace))

delete_folder(folder_path=directory_path)
print('All is done, folder deleted')
#TODO: add to settings to delete or not the folder after is successfully sent to QDRANT
#TODO: Also need in template to check, if folder exist and file exist, show download button, else empty.
#delete_folder(folder_path=directory_path)
#print('All is done, folder deleted')

except Exception as e:
import traceback
Expand Down
8 changes: 8 additions & 0 deletions dj_backend_server/web/services/handle_pdf_datasource.py
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,14 @@ def handle(self) -> PdfDataSource:
# Generate hash of the file content
file_hash = hashlib.md5(file.read()).hexdigest()
file.seek(0) # Reset file pointer to beginning

# Create the directory if it does not exist
directory = os.path.dirname(file_path)
os.makedirs(directory, exist_ok=True)

# Check if the directory was created successfully
if not os.path.isdir(directory):
raise Exception(f"Failed to create directory: {directory}")

# Save the file to the storage system
default_storage.save(file_path, file)
Expand Down
6 changes: 3 additions & 3 deletions dj_backend_server/web/templates/settings-data.html
Original file line number Diff line number Diff line change
Expand Up @@ -432,9 +432,9 @@ <h3 class="text-xl leading-snug text-slate-800 font-bold mb-1">Data sources</h3>
<td
class="px-2 first:pl-5 last:pr-5 py-3 whitespace-nowrap">
<div class="text-left">
<a href="{{ file.url }}"><span class="material-symbols-outlined">
download
</span></a>
<a href="{{ file.url }}">
{{ file.message|safe }}
</a>
</div>
</td>

Expand Down
27 changes: 16 additions & 11 deletions dj_backend_server/web/views/views_chatbot_settings.py
Original file line number Diff line number Diff line change
Expand Up @@ -83,20 +83,25 @@ def data_settings(request, id):
# print(source.get_files())

for file_info, file_url in zip(source.get_files_info(), source.get_files()):
# print("Debug: Current file_info")
# print(file_info)

# print("Debug: Current file_url")
# print(file_url)
full_file_url = os.environ.get('APP_URL') + '/' + file_url
merged_file = {
'name': file_info.get('original_name', ''),
'url': full_file_url
}
# Checking if the file was deleted. If so, we will show a message instead of the file URL
if os.path.exists(file_url):
full_file_url = os.environ.get('APP_URL') + '/' + file_url
merged_file = {
'name': file_info.get('original_name', ''),
'url': full_file_url,
'message': '<span class="material-symbols-outlined">download</span>'
}
else:
merged_file = {
'name': file_info.get('original_name', ''),
'url': 'javascript:void(0)',
'message': '<span class="material-symbols-outlined">remove_selection</span>'
}
merged_files.append(merged_file)

print("Debug: Merged files")
print(merged_files)
#print("Debug: Merged files")
#print(merged_files)

source.merged_files = merged_files

Expand Down

0 comments on commit 3ddf812

Please sign in to comment.