| def directorylink_detail(request, folder_id, directory_id, identifier): | |
| folder = Folder.objects.get(pk=folder_id) | |
| directory = Directory.objects.get(pk=directory_id) | |
| directorylink = DirectoryLink.objects.get(identifier=identifier) | |
| if directory.folder != folder: | |
| # Prevent URL hacking. | |
| return HttpResponseNotFound('<h1>Page not found</h1>') | |
| if directorylink.directory != directory: | |
| # Prevent URL hacking. | |
| return HttpResponseNotFound('<h1>Page not found</h1>') | |
| directorylink_total_downloads = {} | |
| for file in directory.file_set.all(): | |
| logs = FileDownloadLogDetail.objects.filter( | |
| directorylink=directorylink, file=file).aggregate(Count('file')) | |
| directorylink_total_downloads[file.id] = logs['file__count'] | |
| return render(request, 'management/folders/directorylink_detail.html', { | |
| 'folder': folder, | |
| 'directory': directory, | |
| 'directorylink': directorylink, | |
| 'directorylink_total_downloads': directorylink_total_downloads, | |
| }) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment