This site uses cookies. By continuing to browse the site, you agree to our use of cookies. Find out more about cookies.
Skip to main content
Metadecidim's official logo
  • English Triar la llengua Elegir el idioma Choose language
    • Català
    • Castellano
Sign Up Sign In
  • Home
  • Processes
  • Assemblies
  • Initiatives
  • Consultations
  • Conferences
  • Help

Propose new functionalities for Decidim software

#DecidimRoadmap Designing Decidim together

Phase 1 of 1
Open 2019-01-01 - 2030-12-31
Process phases Submit a proposal
  • The process
  • Debates
  • Propose new features
  • News
chevron-left Back to list

Ability to remove/hide menu items

Avatar: Oliver Azevedo Barnes Oliver Azevedo Barnes
26/10/2020 13:09  
Withdrawn

Update

@Platoniq implemented this on this module: https://github.com/Platoniq/decidim-module-decidim_awesome/#11-change-the-main-menu-of-decidim-entirely

------

@verarojman asked on gitter whether it was possible to somehow remove menu items through the decidim.rb initializer. I investigated a bit and it looks like the menu subsystem is append-only at this point.

It is possible to hide them using CSS/JS hacks, but that's obviously brittle and can have unexpected consequences.

Being able to edit the menu through the initializer (or through the admin dashboard) seems like a sensible expectation from Decidim instance maintainers, to me. And from what I could tell, it's viable to extend the menu subsystem to allow for this within its current architecture.

Not sure how high a priority this would be, of course. Nor how common this demand is.

What do you all think?

  • Filter results for category: Installation and configuration Installation and configuration

List of Endorsements

Avatar: John Willson John Willson
Avatar: Antti Hukkanen Antti Hukkanen
Reference: MDC-PROP-2020-10-15774
Version number 5 (of 5) see other versions
Check fingerprint

Fingerprint

The piece of text below is a shortened, hashed representation of this content. It's useful to ensure the content hasn't been tampered with, as a single modification would result in a totally different value.

Value: a04f983acbb5a6d70c64bf745450a6fcaf4a7dfe1c5a787be8acd1e4b25a3b87

Source: {"body":{"en":"<p><strong>Update</strong></p><p>@Platoniq implemented this on this module: https://github.com/Platoniq/decidim-module-decidim_awesome/gid://metadecidim/Decidim::Hashtag/285/11-change-the-main-menu-of-decidim-entirely</p><p>------</p><p><a href=\"https://meta.decidim.org/profiles/verarojman\" target=\"_blank\">@verarojman</a> asked on gitter whether it was possible to somehow remove menu items through the decidim.rb initializer. I investigated a bit and it looks like the menu subsystem is append-only at this point.</p><p>It is possible to hide them using CSS/JS hacks, but that's obviously brittle and can have unexpected consequences.</p><p>Being able to edit the menu through the initializer (or through the admin dashboard) seems like a sensible expectation from Decidim instance maintainers, to me. And from what I could tell, it's viable to extend the menu subsystem to allow for this within its current architecture.</p><p>Not sure how high a priority this would be, of course. Nor how common this demand is.</p><p>What do you all think?</p>"},"title":{"en":"Ability to remove/hide menu items"}}

This fingerprint is calculated using a SHA256 hashing algorithm. In order to replicate it yourself, you can use an MD5 calculator online and copy-paste the source data.

Share:

link-intact Share link

Share link:

Please paste this code in your page:

<script src="https://meta.decidim.org/processes/roadmap/f/122/proposals/15774/embed.js"></script>
<noscript><iframe src="https://meta.decidim.org/processes/roadmap/f/122/proposals/15774/embed.html" frameborder="0" scrolling="vertical"></iframe></noscript>

Report inappropriate content

Is this content inappropriate?

Reason

13 comments

Order by:
  • Older
    • Best rated
    • Recent
    • Older
    • Most discussed
Conversation with Xabier
Avatar: Xabier Xabier verified-badge
26/10/2020 19:40
  • Get link Get link
Against  

Hi. I don't see the rationale for this feature. I am not sure about the general top menu. But for the case of participatory-space menus (processes, assemblies, etc.) I see several risks. Among them is the risk to manipulate a democratic process by hiding components (like proposals) o survey for wich, nevertheless only selected users might have access by direct url. I cannot see the benefits and I can see severe risks to this proposal. But maybe I am wrong or I am missing some important features.

Avatar: Pau Parals Pau Parals verified-badge
26/10/2020 20:20
  • Get link Get link

Hi! I'm fully agree with you @xabier. You're not wrong, you need more context. In @platoniq we are working in a project which we are adapting decidim for an academic online workshop. Also, this project won't need any maintenance because the installation will use one version. So, this is an specific project which use decidim' software. In any case we pretend to extend this feature in decidim master :)

Avatar: Pau Parals Pau Parals verified-badge
26/10/2020 20:21
  • Get link Get link

WE NOT*

Conversation with Oliver Azevedo Barnes
Avatar: Oliver Azevedo Barnes Oliver Azevedo Barnes
27/10/2020 00:20
  • Get link Get link

I probably need more context to understand what is at stake here. My assumption was that admins have the power to customize the app anyway, and that Decidim aimed to be as flexible as possible.

But come to think of it, perhaps the system user is the one that's all powerful, and an admin might be somebody with circumscribed power to ensure democratic processes aren't tampered with after a Decidim instance is installed?

In that case, the admin dashboard would definitely not be the place to do this, and the decidim.rb initializer would (only the person deploying the code would have access in this case).

But I'm still a little confused, though, since an admin already can currently add and remove components through the admin dashboard.

In any case, this is all useful for me to better understand Decidim's intent and design :)

Avatar: Xabier Xabier verified-badge
28/10/2020 23:55
  • Get link Get link

I like your thoughts and comments.

I am not sure if "as flexible as possible" is the best criterium to drive Decidim's evolution, Drupal might be better for maximum flexibility. But even if we aim for flexibility it should always be within the limits of what is good for democracy. Sure, sysadmin with RoR programming capacities could potentially do anything (but they must also make the code available by AfferoGPLv3). Admins should be able to configure with different degrees of detail but should always have limited freedom to manipulate or distort democratic processes (e.g. last time I checked an admin could not remove a proposal component with proposals inside).

I would say that, in general, although the code can always be modified, we should alway aim for the less manipulable flexibility, both for the sysadmin and the admin.

Avatar: Oliver Azevedo Barnes Oliver Azevedo Barnes
29/10/2020 17:21
  • Get link Get link

Thanks Xabier, that makes total sense. I didn't quite have Drupal-level flexibility in mind, but flexibility relative to Consul, for example, in implementing democratic processes. I assumed admins customizing navigation would be a normal part of that, of process design and customization.

I understand the concern with opaque change to user flow mid-flight, during ongoing processes. It's a thorny, interesting problem for sure. If there are any resources (docs or threads) elaborating on Decidim's recommended approach here, I'd love to read up. By the way, does Decidim have an audit trail of configuration changes done by an admin?

With the case in point here, it does sound like removing menu items in the admin dashboard is a bad idea, unless there's safeguards and an audit trail in place. But if code level customization by a system user is also deemed risky, what is the preferred path to safely customizing navigation for legitimate reasons? Creating a module, forking Decidim?

Avatar: Oliver Azevedo Barnes Oliver Azevedo Barnes
03/11/2020 11:27
  • Get link Get link

By the way, does Decidim have an audit trail of configuration changes done by an admin?

Self-responding: Looks like it does, @coditramuntana pointed me to the admin activity log on the admin dashboard

Avatar: Ivan Vergés Ivan Vergés verified-badge
30/10/2020 10:06
  • Get link Get link

@xabier is right (as usual) but let's take into account that nothing stops an admin to "hide" a proposal component for instance, they just have to unpublish it, regardless of having proposals or not in it.
There's also the ability to create "private" participatory spaces which means that are places that are "hidden" if you don't know the URL.

I my view, the ability to manipulate the menu is more about customizing the items non related to components: changing titles, changing the order, adding additional items and yes, in some cases remove them, for instance the help pages if you don't need them.

That being said, I think this is a job for a module (and we will probably develop something for it when we have the time)

Avatar: Virgile Deville Virgile Deville
30/10/2020 10:18
  • Get link Get link

@oliverbarnes We've made a module to add items : https://github.com/OpenSourcePolitics/decidim-module-navbar_links
As Ivan said you can hide menus with css customization.
Hope it helps.

Avatar: Oliver Azevedo Barnes Oliver Azevedo Barnes
30/10/2020 17:05
  • Get link Get link

Hi @virgile_deville, thanks - I did check this module out, somebody mentioned it on gitter too as a possible starting point.

About css/js customizations, I suggested that to Vera on gitter to quickly solve her problem. But long-term I think that's a brittle solution. They can easily break with updates, and can break other things on the interface unexpectedly. This is the main thing that drove me to open this thread to discuss possibly allowing for this to be customizable instead.

Avatar: Ivan Vergés Ivan Vergés verified-badge
09/03/2021 11:20
  • Get link Get link

Hi @oliverbarnes , you might want to check this out:
https://github.com/Platoniq/decidim-module-decidim_awesome/#11-change-the-main-menu-of-decidim-entirely

Avatar: Oliver Azevedo Barnes Oliver Azevedo Barnes
09/03/2021 15:56
  • Get link Get link

Awesome (pun intended)! I'm adding it to the update on the proposal description, and going to close the proposal as well.

Avatar: Pierre Mesure Pierre Mesure verified-badge
12/11/2020 15:26
  • Get link Get link

We always add custom menu items to point people towards the specific pages where they can participate and we often remove the Processes menu because the platforms often start with one process and it doesn't make sense to keep it. OSP's module to add links is really useful but it would be really great to be able to hide the default menus. Another solution would be to replace Processes with a button to the process when there is only one.

As the others said, there are so many other ways content can be censored or hidden, not giving the possibility to customise the top navbar is irrelevant...

Add your comment

Sign in with your account or sign up to add your comment.

Loading comments ...

  • Terms and conditions of use
  • About the community
  • Download Open Data files
  • Metadecidim at Twitter Twitter
  • Metadecidim at Instagram Instagram
  • Metadecidim at YouTube YouTube
  • Metadecidim at GitHub GitHub
Creative Commons License Website made with free software.
Decidim Logo

Confirm

OK Cancel

Please sign in

decidim Sign in with Decidim Barcelona
Or

Sign up

Forgot your password?