emencia / django-blog-lotus

A weblog application with Django.
https://django-blog-lotus.readthedocs.io/
MIT License
8 stars 1 forks source link

Deliver us from CKEditor #80

Open sveetch opened 2 weeks ago

sveetch commented 2 weeks ago

Is your feature request related to a problem? Please describe. Since around 2023 CKEditor has changed its license that avoid django-ckeditor to include the new version.

The problem is that the CKEditor version shipped in django-ckeditor is known for some security issues and so it can be fixed since this version support has ended since a long time (maybe 2022 ?).

Hopefully the last django-ckeditor versions hide the warning from the editor but there is still a warning in console and finally the security breach is still there (even it is known to be uncommon to exploit).

Describe the solution you'd like Lotus should not be tied anymore to django-ckeditor. It should allow to setup another editor. Maybe we would need to include ourself one or two additional editor setup just to ensure our interface is sufficient enough to work with many other editors.

The system should be simple as just defining a python path to a widget to use instead of the django-ckeditor one. Developers would have to manage their editor app settings themselves.

Describe alternatives you've considered Just add hardcoded interface for other editor but this would be limited and would add more maintenance work.

Additional context CKEditor is just used as a widget in forms, we should not have many things to do to make it more flexible.

sveetch commented 3 days ago

A non curated list of some editors:

This should be a proper list to start to see how we can implement a modular editor.

There should be an helper to find and init an editor in admin (only used in Article and Category models for now), maybe anotther one to sanytize and finally a final one to render content.