diff --git a/gemeinsamforschen/src/main/webapp/journal/eportfolio.jsp b/gemeinsamforschen/src/main/webapp/journal/eportfolio.jsp index a21688a5c34091aaac8ce8a104ac5072fab92fb3..3ccb22263902e13f18ad21118ae530bece296ecd 100644 --- a/gemeinsamforschen/src/main/webapp/journal/eportfolio.jsp +++ b/gemeinsamforschen/src/main/webapp/journal/eportfolio.jsp @@ -48,7 +48,10 @@ <a id="editDescriptionLink" class="btn btn-default btn-sm"> <i class="fa fa-pencil"></i> Bearbeiten</a> <a class="btn btn-default btn-sm" data-toggle="modal" data-target="#closeDescriptionModal"><i class="fa fa-check-square" aria-hidden="true"></i>Abschließen</a> - + <!-- TODO: find place for Button --> + <button type="button" class="btn btn-primary mr-auto" data-dismiss="modal" onclick="downloadPortfolio()"> + EPortfolio heurunterladen + </button> </div> <div class="journal-description-text"> </div> @@ -60,7 +63,8 @@ </div> - </div> + + </div> </div> <div id="journal-container" class="tab-pane fade"> diff --git a/gemeinsamforschen/src/main/webapp/journal/js/eportfolio.js b/gemeinsamforschen/src/main/webapp/journal/js/eportfolio.js index c62bb17492bd881c8c3647f7cb76ac1c444fe88c..d01f00884d97114d88996f7f170f9f3445b869fe 100644 --- a/gemeinsamforschen/src/main/webapp/journal/js/eportfolio.js +++ b/gemeinsamforschen/src/main/webapp/journal/js/eportfolio.js @@ -161,5 +161,40 @@ function closeDescription() { location.reload(); } }); +} + +//load PDF via rest +//source: https://stackoverflow.com/questions/41803925/download-octet-stream-via-jquery + +function downloadPortfolio() { + const saveData = (() => { + const a = document.createElement('a'); + a.style = 'display: none'; + document.body.appendChild(a); + + return (data, fileName, type = 'octet/stream') => { + console.log(data); + + const blob = new Blob([data], { type }); + + if (navigator.msSaveBlob) { + return navigator.msSaveBlob(blob, fileName); + } + + const url = URL.createObjectURL(blob); + a.href = url; + a.download = fileName; + a.click(); + URL.revokeObjectURL(url); + return true; + }; + })(); + + $.ajax({ + method: "GET", + contentType: "application/x-www-form-urlencoded", + url: "../rest/eportfolio/pdf/" + student + "/" + project, + }) + .done((data) => saveData(data, 'portfolio.pdf')); +} -} \ No newline at end of file