Skip to content

Custom Admin-Defined Navbar Links #6298

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

Open
bcastillo32 opened this issue Apr 1, 2025 · 9 comments · May be fixed by #6350
Open

Custom Admin-Defined Navbar Links #6298

bcastillo32 opened this issue Apr 1, 2025 · 9 comments · May be fixed by #6350
Assignees
Labels
Stakeholder-Feature A feature requested by the stakeholders

Comments

@bcastillo32
Copy link
Collaborator

What type(s) of user does this feature affect?

  • volunteers
  • supervisors
  • admins

Product Requirements Document (PRD)

Feature: Custom Admin-Defined Navbar Links


1. Overview

This feature allows organization admins to add up to three custom links to the left navigation bar. These links will be visible to all users within the organization but can only be created or edited by admins. The links will be managed through the Edit Organization settings.


2. Objectives

  • Enable admins to create up to three custom navbar links.
  • Ensure all users in the organization can see and access these links.
  • Allow admins to manage links in the Edit Organization section.
  • Maintain consistent UI styling with existing navbar elements.
  • Provide an "Active" checkbox to enable/disable links.

3. User Stories

Admin User Stories:

  • As an admin, I want to add custom links to the navbar so that my organization can easily access external/internal resources.
  • As an admin, I want to limit the number of custom links to three to maintain a clean UI.
  • As an admin, I want to enable or disable a link using an "Active" checkbox.
  • As an admin, I want to define both the display text and the destination URL for each link.

General User Stories:

  • As an org member, I want to see and use the custom links added by my admin.

4. Scope & Constraints

In-Scope:

  • A section within Edit Organization where admins can:
    • Add/edit/delete up to three custom links.
    • Provide a name (display text) and URL for each link.
    • Mark links as Active or Inactive.
  • Displaying the custom links at the bottom of the left navbar.
  • Ensuring custom links are visible to all users but editable only by admins.
  • Using the same icon library as existing navbar elements.

Out of Scope:

  • Custom icons for links (icons will be chosen from the existing library).
  • Per-user visibility settings (links are org-wide).
  • Custom link ordering (links will appear in the order created).

5. UI/UX Considerations

  • The Edit Organization screen should include a section for managing custom links.
  • Each link should have:
    • A text field for the display name.
    • A text field for the URL.
    • An "Active" checkbox.
    • A delete button (available only if there are existing links).
  • The navbar should display the custom links at the bottom, styled consistently with other items.
  • If a link is marked Inactive, it should not appear in the navbar.
image

6. Technical Requirements

  • Custom links should be stored in the database with fields for name, URL, active status, and created_at timestamp.
  • The frontend should use the same icon library as existing navbar items.
  • Validation:
    • URL must be a valid http:// or https:// link.
    • Display text should have a character limit (e.g., 30 characters).
    • Maximum three links per organization.
  • Permissions:
    • Only admins can create/edit/delete links.
    • All org members can view and use the links.

7. Edge Cases & Considerations

  • What happens if an admin adds three links and wants a fourth?
    • The UI should prevent adding more than three links.
  • What happens if an admin disables a link?
    • It is removed from the navbar but remains in the settings for reactivation.
  • What happens if a user enters an invalid URL?
    • The system should validate input before saving.
  • What if an admin removes all links?
    • The navbar will not display a custom links section.

How to access the QA site

Login Details:
Link to QA site

Login Emails:

password for all users: 12345678

Questions? Join Slack!

We highly recommend that you join us in slack #casa channel to ask questions quickly. And discord for office hours (currently Tuesday 5-7pm Pacific), stakeholder news, and upcoming new issues.

@bcastillo32 bcastillo32 added the Help Wanted This is a special label that enables github to showcase issues that want help label Apr 1, 2025
@bcastillo32 bcastillo32 added the Stakeholder-Feature A feature requested by the stakeholders label Apr 1, 2025
@brodyf42
Copy link
Contributor

brodyf42 commented Apr 4, 2025

I'd like to take this one.

@compwron
Copy link
Collaborator

compwron commented Apr 4, 2025

Go for it! :)

@github-actions github-actions bot removed the Help Wanted This is a special label that enables github to showcase issues that want help label Apr 4, 2025
@bcastillo32
Copy link
Collaborator Author

I'd like to take this one.

thank you @brodyf42 !

@brodyf42 brodyf42 linked a pull request Apr 8, 2025 that will close this issue
@brodyf42
Copy link
Contributor

brodyf42 commented Apr 8, 2025

@bcastillo32
I've got basic functionality implemented. I'm going to try to stop by office hours to get a better handle on a few things I have questions about, mostly regarding specs and authentication.

Copy link

This issue has been inactive for 257 hours (10.71 days) and will be unassigned after 103 more hours (4.29 days). If you have questions, please

If you are still working on this, comment here to tell the bot to give you more time

Copy link

This issue has been inactive for 377 hours (15.71 days) and is past the limit of 360 hours (15.00 days) so is being unassigned.You’ve just been unassigned from this ticket due to inactivity – but feel free to pick it back up (or a new one!) in the future! Thank you again for your contribution to this project.

@brodyf42
Copy link
Contributor

Sorry for the inactivity. I'm still working on specs. Please assign me.

Copy link

github-actions bot commented May 9, 2025

This issue has been inactive for 250 hours (10.42 days) and will be unassigned after 110 more hours (4.58 days). If you have questions, please

If you are still working on this, comment here to tell the bot to give you more time

@brodyf42
Copy link
Contributor

still working on it. Sorry I have had some other family priorities come up.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Stakeholder-Feature A feature requested by the stakeholders
Projects
Development

Successfully merging a pull request may close this issue.

3 participants