Просмотр исходного кода

Download template PDF and zip file with good file names

James Allen 12 лет назад
Родитель
Сommit
3348249dcd

+ 11 - 1
services/web/app/coffee/Features/Templates/TemplatesWebController.coffee

@@ -36,7 +36,17 @@ module.exports = TemplatesWebController =
 
 	proxyToTemplatesApi: (req, res)->
 		url = req.url
-		logger.log url:url, "proxying request to templates api"
+		
+		name = req.query.name or "Template"
+		if req.query.inline?
+			disposition = "inline"
+		else
+			disposition = "attachment"
+		console.log "HEADER", "#{disposition}; filename=#{name};"
+		res.header({"content-disposition": "#{disposition}; filename=#{name}.#{req.params.file_type};"})
+		
+		logger.log url:url, template_name: name, disposition: disposition, "proxying request to templates api"
+		
 		getReq = request.get("#{settings.apis.templates_api.url}#{url}")
 		getReq.pipe(res)
 		getReq.on "error", (error) ->

+ 3 - 3
services/web/app/views/templates/template.jade

@@ -20,8 +20,8 @@ block content
 					.col-md-6
 						.entry
 							.row
-								.col-md-12
-									a(href=template.pdfUrl)
+								.col-md-12.template-large-pdf-preview
+									a(href="#{template.pdfUrl}?inline=true&name=#{template.name}")
 										img(src="#{template.previewUrl}")
 
 					.col-md-6
@@ -33,7 +33,7 @@ block content
 								|  
 
 								a.btn.btn-default(
-									href=template.zipUrl,
+									href="#{template.zipUrl}?name=#{template.name}",
 									rel='nofollow', 
 									ng-click='downloadZip()',
 									tooltip-placement="bottom",

+ 6 - 0
services/web/public/stylesheets/app/templates.less

@@ -56,4 +56,10 @@
 		max-width: 100%;    
 		height: auto;
 	}
+}
+
+.template-large-pdf-preview {
+	img {
+		max-width: 100%;
+	}
 }