Page MenuHomePhabricator

Add some kind of GUI for sidebar customization
Open, LowPublicFeature

Description

The MediaWiki:Sidebar special message for configuring the sidebar is a hellish nightmare of incomprehensibility. Its behavior is inconsistent and nonobvious, and generally nobody who didn't write it understands why it does anything it does.

It would be helpful to provide a GUI interface for managing the sidebar which would allow local site admins to edit and add links and such without having to sacrifice a goat first.

Note the interface will need to handle the localization requirements -- namely that any item might specify its contents and its text as internationalized message keys -- but should also be easy to use for folks who will be creating custom local stuff that doesn't need localization.


Version: unspecified
Severity: enhancement
URL: http://www.mediawiki.org/wiki/Sidebar

Details

Reference
bz16943

Event Timeline

bzimport raised the priority of this task from to Low.Nov 21 2014, 10:26 PM
bzimport set Reference to bz16943.
bzimport added a subscriber: Unknown Object (MLST).

I think Special:Sidebar or something similar would be good here. Perhaps genericize to Special:Interface/Sidebar for expandability.

Drag and drop capability for the various sections (search, toolbox, etc.). Proper text <input>s for the individual items. While it obviously shouldn't break localization features, 99% of MediaWiki installations just want the sidebar to look fine in the wiki's language. And the current system is so confusing that getting it to work in one language is the best they can usually hope for in any case.

Might be a nice project idea for Google Summer of Code 2011. Added here: http://www.mediawiki.org/wiki/Summer_of_Code_2011/Project_ideas

bugs wrote:

*** Bug 26417 has been marked as a duplicate of this bug. ***

Tweak summary, was misleading. Mortals can already understand the sidebar.

Mentioned in Bug 27988, noting here for cross reference since neither really blocks the other.

I have some plans for sidebar style messages. We need better support for non-MediaWiki:Sidebar navigation such as a header nav, or multi-level hover menu. Or whatever other custom nav a skin comes up with. So I'm probably going to be introducing a generic ListMessageParser to parse any MediaWiki:Sidebar style message given the format it's in.

Since I went that far in the idea, I thought I might as well also decide to have skins define any new message types in a $wg config array. Doing that will mean we can build an interface that can handle 'any' MediaWiki:Sidebar style message.

happy.melon.wiki wrote:

You might want to have a look at the HTMLSelectAndOtherField I recently wrote, which already has a parser for handling messages in the format

  • A heading
    • some content | Its display text

some content without a heading | Its display text

Which is used for things like the delete/protect/block/upload reason dropdowns. Might be worth extending or integrating with that usecase too?

Now that we have https://www.mediawiki.org/wiki/Manual:ContentHandler, we could more easily and dramatically improve the sidebar editing interface, while keeping the existing MediaWiki:Sidebar wiki page implementation, if we wanted to.

Yeah, a custom content model sounds like a good idea. We probably want to refactor the sidebar parsing logic out of skin and make it re-usable by the content class to display (duplicate IDs might be an intersting problem). Since the sidebar is also built with localize messages, a language selector that lets you view it in different languages would be neat too.

Once we can display the sidebar properly, we could then go about building a custom edit interface for it.

Jdlrobson subscribed.

Will assume this replaces the edit interface at some point if done so tagging accordingly.

Aklapper changed the subtype of this task from "Task" to "Feature Request".Feb 4 2022, 11:01 AM
Aklapper removed a subscriber: wikibugs-l-list.