@@ -5,6 +5,15 @@ import { getDateValueDifference } from '../utils/date.js'
55import { getResults , getPagination } from '../utils/pagination.js'
66
77export const downloadController = {
8+ read ( request , response , next , download_id ) {
9+ response . locals . download = Download . findOne (
10+ download_id ,
11+ request . session . data
12+ )
13+
14+ next ( )
15+ } ,
16+
817 readAll ( request , response , next ) {
918 response . locals . downloads = Download . findAll ( request . session . data )
1019
@@ -95,8 +104,8 @@ export const downloadController = {
95104 const { account } = request . app . locals
96105 const { data } = request . session
97106
98- const { type } = request . body . download
99- const programme_id = programmesData [ type ] . id
107+ const { programmeType } = request . body . download
108+ const programme_id = programmesData [ programmeType ] . id
100109 const programme = Programme . findOne ( programme_id , data )
101110
102111 const createdDownload = Download . create (
@@ -117,6 +126,19 @@ export const downloadController = {
117126 response . header ( 'Content-Type' , mimetype )
118127 response . header ( 'Content-disposition' , `attachment; filename=${ fileName } ` )
119128
129+ response . end ( buffer )
130+ } ,
131+
132+ download ( request , response ) {
133+ const { data } = request . session
134+ const { download } = response . locals
135+
136+ // Generate and return file
137+ const { buffer, fileName, mimetype } = download . createFile ( data )
138+
139+ response . header ( 'Content-Type' , mimetype )
140+ response . header ( 'Content-disposition' , `attachment; filename=${ fileName } ` )
141+
120142 response . end ( buffer )
121143 }
122144}
0 commit comments