Feature Wiki

Information about planned and released features

Tabs

Mail: Use Markdown for content

1 Initial Problem

The mail subsystem of ILIAS provides a form to enter content for mails that should be send to a specific users (or groups of them) and a form to create or modify mail templates that can be used for various occassions. Both forms use a textarea input to define the actual content of the mail or the mail template. Both forms allow some html-input to format the mail.

This is problematic for various reasons:

  • It is not clear which HTML tags are allowed and why.
  • Using HTML tags in the mail makes it harder to send them as text-only mails.
  • The input needs to be sanitize to strip out unwanted tags.
  • The tags that are allowed do not offer enough formatting options for many usecases

2 Conceptual Summary

The input via textarea with implicitly allowed html wil be replaced by an input that allows for markdown content.

3 User Interface Modifications

3.1 List of Affected Views

  • Mail » Compose (and other ways to the same functions to compose a mail)
  • Administraion » Mail » Mail Templates

3.2 User Interface Details

MockUp:

MockUp of Markdown Editor in Mail

3.3 New User Interface Concepts

Nothing new.

Using Kitchen Sink Field Input "Markdown" (KS Docu Release 9)

3.4 Accessibility Implications

Nothing specific.

4 Technical Information

{ The maintainer has to provide necessary technical information, e.g. dependencies on other ILIAS components, necessary modifications in general services/architecture, potential security or performance issues. }

5 Privacy

Nothing specific.

6 Security

Nothing specific.

7 Contact

8 Funding

If you are interest in funding this feature, please add your name and institution to this list.

9 Discussion

2023-11-10, Roeser, Nico [nicoroeser]:
does this feature include a plan/suggestion for formatting the text/plain part of generated mails or is this left to other parts of the code? For example, the plaintext could be just a copy of the Markdown input; it could also be the result of some Markdown-to-text processing (which might cause different formatting of e.g. headlines or links); or it could be an new option in functions which send mails (least favourite option).
Are clashes between template parameter syntax and Markdown syntax to be expected and taken care of?

JourFixe, ILIAS [jourfixe], 11 DEC 2023: Suggestion is highly appreciated and feature accepted for ILIAS 10.

2024-08-01, Klees, Richard [rklees]:
@Nico: This is one of the big strengths of markdown IMO: We can use the plain markdown input for the plain mail. So no additional processing step is intended. Since we use Mustache for templating no clash in syntax is expected. The pipeline will be input -> mustache -> markdown -> mail, so mustache syntax will be gone once the mail hits the markdown processor.

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 {date} by {user}.

Last edited: 1. Aug 2024, 10:31, Klees, Richard [rklees]