Feature Wiki

Information about planned and released features

Tabs

Remove PDF Generation from Survey

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

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

  • Questions > Page View, List View, Print View
  • Results > Overview, Details, Per Participant
  • Killing, Alexander [alex], 22.12.2021(needs JF decision): Administration > General > Cron Jobs

3.2 User Interface Details

  • The subtab "Print View" will be removed
  • All screens above get a Button "Print/PDF" in the toolbar.
  • A modal opens containg the instructions on how to use the browser print-to-pdf feature and an optional selection (radio)
    • Questions > Page View: Current Page / All Pages
    • Questions > ListView: No selection
    • Results > Overview: No selection
    • Results > Details: All questions / Selected questions (checkboxes)
    • Results > Per Participant: All participants / Selected participants (checkboxes)
  • A Print button shows the content and invokes the browser print feature.
Killing, Alexander [alex], 22.12.2021(needs JF decision): Cron Jobs View
  • The cron job "Remind users to participate / Send results to tutors" will not send the results anymore (since they rely on the PDF generation). The cron job will be renamed to "Remind users to participate"

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 issues.

6 Security

This change should improve the security, since wkhtmltopdf is not involved anymore (see link in chapter one).

7 Contact

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 Survey with ILIAS 8.

jourfixe, 10 JAN 2022 : We accept the change request by Alexander to change the cronjob for sending a mail with a PDF to tutors (as suggested at 22 DEC 2022). The label for survey#:#svy_notification_tutor_results# and survey#:#svy_notification_tutor_results_info# needs to be changed accordingly.

10 Implementation

The option "Show Labels" of the former "Print View" tab will occur on the "Questions > Page View" and "Questions List View" modal form. This is missing in the mockups above.

Test Cases

Test cases removed by Tödt, Alexandra [atoedt] on 2022-04-25

  • C32040 

Approval

Approved at {date} by {user}.

Last edited: 31. Oct 2022, 12:50, Killing, Alexander [alex]