Feature Wiki
Tabs
Removing PDF Generation from Portfolio
Page Overview
[Hide]1 Initial Problem
The survey currently uses wkhtmltopdf as its PDF renderer. However this has several flaws:
- it relies on a command line tool, which needs to be installed
- wkhtml is not very well maintained, see https://wkhtmltopdf.org/status.html
- it comes with security risks, also see https://wkhtmltopdf.org/status.html
- it does not work well with dynamic js, e.g. char libraries, see https://github.com/wkhtmltopdf/wkhtmltopdf/issues/1964, it even has issues with image rendering, see https://mantis.ilias.de/view.php?id=30480
2 Conceptual Summary
Instead of generating the PDF on the server side, ILIAS only provides information for users on how to use the "browser print to pdf" feature most modern browsers provide.
The general pattern (at least for Survey/Wiki/Blog/Portfolio/LearningModules) should be:
- A button "Print/PDF" in the toolbar, which opens...
- ... A modal containing
- An optional selection (e.g. current page/all pages)
- A statement that instructs users to use the "Print to PDF" feature of their browsers
- A "Print" button closing the modal, showing the content and invoking the print process through javascript. Content is a standard ILIAS page, rendering is handled by print.css (which is already working well in ILIAS 7).
3 User Interface Modifications
3.1 List of Affected Views
- Portfolio > Content
3.2 User Interface Details
- The button "Export as PDF" will be renamed to "Print/PDF".
- A modal opens containg the instructions on how to use the browser print-to-pdf feature and selection:
- Radio All Pages / Selected Pages (Checkbox list with all pages)
- Checkbox to include Signature Field
- A Print button shows the content and invokes the browser print feature.
3.3 New User Interface Concepts
No new user interface issues.
3.4 Accessibility Implications
Modals, buttons, forms are general UI elements. Invoking the browser print dialog by Javascript should be checked.
4 Technical Information
No technical issues.
5 Privacy
No privacy implications.
6 Security
This change should improve the security, since wkhtmltopdf is not involved anymore (see link in chapter one).
7 Contact
- Author of the Request: Killing, Alexander [alex]
- Maintainer: Killing, Alexander [alex]
- Implementation of the feature is done by: {The maintainer must add the name of the implementing developer.}
8 Funding
If you are interest in funding this feature, please add your name and institution to this list.
- …
9 Discussion
JourFixe, ILIAS [jourfixe], 17 MAY 2021: We highly appreciate this suggestion and abandon the server-side generation of PDF in the Portfolio with ILIAS 8.
10 Implementation
{ The maintainer has to give a description of the final implementation and add screenshots if possible. }
Test Cases
Test cases were removed from Testrail on 2022-04-25 by atoedt
Approval
Approved at 25 Apr 2022 by Killing, Alexander [alex].
Last edited: 25. Apr 2022, 19:09, Killing, Alexander [alex]