diff --git a/archivist/apps/files/urls.py b/archivist/apps/files/urls.py index 609f4a9..29ea12e 100644 --- a/archivist/apps/files/urls.py +++ b/archivist/apps/files/urls.py @@ -3,7 +3,7 @@ from . import views urlpatterns = [ # Add a URL pattern that captures the file path - path('/', views.serve_content_file, name='serve_content_file'), + path('submission/', views.serve_submission_file, name='serve_submission_file'), # Other URL patterns if any path('upload/', views.fileUpload, name='file_upload'), ] diff --git a/archivist/apps/files/views.py b/archivist/apps/files/views.py index 5a8bbc7..da14ff6 100644 --- a/archivist/apps/files/views.py +++ b/archivist/apps/files/views.py @@ -8,16 +8,9 @@ import os import blake3 from .forms import UploadFileForm -from .models import User_Banner_Images, User_Profile_Images, Metadata_Files, Submission_File +from .models import Submission_File -MODEL_MAP = { - 'user_profile': User_Profile_Images, - 'user_banner': User_Banner_Images, - 'submission': Submission_File, - 'metadata': Metadata_Files, -} - def compute_file_hash(file): ''' Compute BLAKE3 hash of the file @@ -56,36 +49,6 @@ def serve_submission_file(request, file_hash): return HttpResponse("File not found", status=404) -@login_required(login_url="/login/") -def serve_content_file(request, folder, file_hash): - ''' - View function to serve content files for download or inline viewing - ''' - - ModelClass = MODEL_MAP.get(folder) - if ModelClass is None: - return HttpResponse("Invalid folder", status=404) - - download = request.GET.get('d') - - try: - obj_file = get_object_or_404(ModelClass, file_hash=file_hash) - file = obj_file.file.file - file_name = obj_file.file_name - - response = FileResponse(file) - if download == "1": - response['Content-Disposition'] = f'attachment; filename="{file_name}"' - else: - response['Content-Disposition'] = f'inline; filename="{file_name}"' - - return response - - except Exception as e: - print(f"Error serving file: {e}") - return HttpResponse("File not found", status=404) - - @login_required(login_url="/login/") def fileUpload(request): '''