[STORY] As a host, I want a basic WYSIWYG/markdown editor for text blocks, allowing me to edit content more conventiently and avoiding the need for HTML knowledge

Parent: [EPIC] Extend Show Management Area and improve ... (#149 - closed)

Currently all text in dashboard is gathered using a plain text field. These text-areas also allow all kind of HTML tags to be submitted.

The downsides of this approach are:

  • Potentially malicious code can be added to textual information (solving this would also mean securing the relevant API endpoints at Steering)
  • Inconsistent formatting on data provided by users
  • Hard to use for technically inexperienced users
  • Potential performance reduction for websites, since some data needs to be interpreted and rendered client-site (e.g. URLs, carriage returns)

That's why we would like to introduce a basic WYSIWYG editor.

This editor should also provide the ability to limit the types of HTML tags available. Based on a radio stations global settings it should be configurable which tags are allowed.

Proposal

No formatting menu bar is required. Markdown compatible notations are converted and rendered as HTML on-the-fly. As a result steering only stores the HTML version.

In this first iteration there is no custom configuration required. We only need support for these markdown formatting types:

  • plain URLs should convert to anchor tags
  • bold
  • italic
  • bullet points
  • ordered lists
  • paragraphs and/or line-breaks
Edited by David Trattnig