New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[UX] Text formats: provide a way to re-enable disabled formats via the admin UI #1575
Comments
This might be a good idea, but I'll explain why it's "Disable" and not "Remove": Text formats may contain sensitive information in them, such as executed PHP code or internal information that shouldn't be shown to a site visitor. If you "delete" a text format, it is not removed from configuration files or content in the database that currently uses that text format. The text format is removed from the admin interface, but it actually still exists and will be used on all existing content that had used that format previously. So "disable" is definitely a more accurate word than "remove", but you're right that users expect that a format should be able to be re-enabled after it has been disabled. I could go either way on this one. |
...then it seems to me that instead of retitling, we should perhaps change the way this works and have formats actually be disabled (as in not available to be used with new content unless re-enabled) instead of removed. |
Thanks for the explanation, I was confused by the fact that it is not actually disabled until you manually flush caches... BTW, if the site is on a shared hosting with no ssh access, some admins will think that phpMyAdmin was not that bad to solve this kind of issue... |
That would be the best way to go about it IMO. |
Sure, sounds good to me. |
Wait, so disabling a text format doesn't actually keep it from continuing to be used on content? That seems dangerous if you are trying to disable a format that executes php code, and expect that all the php code that has been inserted into your content will no longer be run. |
@mikemccaffrey : the content stays in the database, but it will not be rendered as soon as you flush caches. |
I stumbled about this issue and saw that it's open for a long time. As far as I understood, everyone agreed that disabled text formats should stay in the list and get an "enable" option. Just as a reminder: If we do so (I agree as well), we should also change the following text on the disable confirmation page:
It could become something like:
|
Not remembering this issue, I just 'disabled' a text format for test purposes. Now I don't see an option to re-enable it, that's not good! (Changed the label from "feature request" to "bug report".) |
Until we actually support disabling (and re-enabling) text formats, I think that the "disable" action and any accompanying help text, page titles etc. should be renamed to "delete" or "remove".
The above also reads data loss to me. Provide absolutely no way to recover content created using these formats is really bad. |
@klonos Why not allow disabling and re-enabling text formats straight away? I think, everyone agreed to it. |
More work 😅 |
...I have tried editing the issue summary (original report), but my changes do not get saved (I'm assuming because the original reporter has deleted their GitHub account). Here's the summary and screenshots from #3962, which was closed as a duplicate of this: Description of the bug / Steps To Reproduce
Actual behavior Even the confirmation message is confusing:
Expected behavior |
@klonos Can you estimate how much work it would be? Unfortunately, I'm not able to provide any code, but I'll be happy to test. (Tagging with "help wanted".) |
I am notorious for not being able to estimate dev work 😓 Here's what I am thinking:
I think we can do point 1 now-ish (perhaps even for 1.14); but don't think that we have enough time for point 2 (which will need to be included in a minor release - being a new feature and all), so that'll need to wait till 1.15. We also need someone to validate all this, and to provide technical direction. |
Hm, as @quicksketch says in #1575 (comment), "remove" and "delete" are not appropriate. So the bugfix would be to allow re-enabling. |
...that was from back in Jan 2016 😅 ...I'll have to review the code to see what actually happens, and where we can improve, but it does sound that the bug is that we do not provide a way ro reenable disabled text formats. Thanks for pointing out that comment @olafgrabienski 👍 |
@klonos should we split the bug-fix text-change into a separate issue, ad keep this one, along with all it's discussion, for 1.15? |
OK, I have reworked this in this new PR: backdrop/backdrop#3024 I have done the following:
I want feedback in general, but on the following things specifically:
|
I really dont think all of this is necessary TBH. As I mentioned at #1575 (comment) we only ever need to load all formats in one place; if we just did that it would be a much simpler PR. In either case we should add another parameter to |
I agree, this PR has a lot of change. Let's stick with the previously agreed upon approach @docwilmot mentioned.
|
We discussed this issue in last week's meeting and agreed that the changes needed are
However, since there have been no updates to THE PR since that discussion we're bumping this to 1.16. |
The issue was first created back in 2016 and it has not been addressed in 2020. I really do hope Backdrop won't follow Drupal in some of its worst practices of hanging important issues without resolution for many years. |
The difficulty we have, and my greatest frustration with working on Backdrop, is that we have no way of deciding if this is an "important issue" nor any way to mark it as such if were did decide it was important. Tons of comparatively trivial stuff would have been committed since this issue was just posted, because of that. I've tried to raise this concern about our lack of direction multiple times, the latest here: backdrop-ops/backdropcms.org#630 Part of my problem of course is that I dont attend the Thursday meetings, so I dont know if these concerns are addressed, but we havent so far had any good ideas come forward on how to prioritize things. |
I've added the load arguments in a new PR based of @jenlampton's. This returns previous functionality to |
I've tested the PR and it works great! Thanks @docwilmot for getting that change in. |
RTBC? |
still looking over code, but.... 🤞 edit: the code looks great, RTBC! |
By @docwilmot, @klonos, @BWPanda, @olafgrabienski, @jenlampton, and @quicksketch.
Merged backdrop/backdrop#3071 into 1.x for 1.16.0. Thanks for carrying this one home @docwilmot and @jenlampton! Thanks @klonos for advocating for this issue and being there for all those meetings. Thanks @BWPanda for the several iterations you put together. Thanks @olafgrabienski for your persistent testing and suggestions! |
A 'Disabled' text format is different than every other 'Disabled' thing in the admin Ui. A text format, once disabled, can not be enabled again. Everything else can. This can be a pain-point for admins who think they know what to expect.
Possible solutions that have been considered:
The final approach taken in this issue was to keep disabled formats in the text formats list in
/admin/config/content/formats
, denote them as disabled, and allow for them to be re-enabled (via a newly-introduced "Enable" operation). See #1575 (comment) for a screenshot of this implementation.This fixes the actual UX issue here, which is that previously we were telling people that we are going to disable the text format, but what we were actually doing instead was to completely remove it from the UI, leaving the user wondering how to recover from this situation. Advanced users knew how to revert this, by manually editing the config files; the new implementation makes it so that even novice users can accomplish the same thing via the admin UI.
The actual "Remove" functionality, and whether we should implement that as complete removal of the text format config files, or simply hide them from the admin UI and keep the config files in place, was left as a follow-up task in #4013.
Original Issue
Most site admins think that something "disabled" can be "enabled" again.
Ok, there is a confirm screen, but not everybody read them, especially if they are written in a foreign language (and drupal-7.41.##.po does not include text of
admin/config/content/formats/{format}/disable
)...Advocate: @klonos
Weekly update?
PR backdrop/backdrop#2821by @BWPandaPR backdrop/backdrop#2826by @klonos (based on @BWPanda's original PR):PR backdrop/backdrop#2845by @quicksketchPR backdrop/backdrop#2846 by @jenlamptonPR backdrop/backdrop#3024by @klonosPR backdrop/backdrop#3071 by @docwilmot
The text was updated successfully, but these errors were encountered: