Feature Wiki
Tabs
Remove PDF Generation from Wiki
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
- Wiki Page View
3.2 User Interface Details
- The Tab "Print View" will be removed
- A Shy button "Print/PDF" is added to the Wiki Functions block.
- A modal opens containg the instructions on how to use the browser print-to-pdf feature and selection:
- Radio Current Page / All Pages / Selected Pages (Checkbox list with all pages)
- A Print button shows the content and invokes the browser print feature.
3.3 New User Interface Concepts
No new user interface concepts.
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 Wiki with ILIAS 8. We prefer to have a Print/PDF button in the main bar (and not in the side panel).
10 Implementation
{ The maintainer has to give a description of the final implementation and add screenshots if possible. }
Test Cases
Test cases completed at {date} by {user}
- {Test case number linked to Testrail} : {test case title}
Approval
Approved at 25 Apr 2022 by Killing, Alexander [alex].
Last edited: 25. Apr 2022, 19:10, Killing, Alexander [alex]