cancel
Showing results for 
Search instead for 
Did you mean: 
Create Post

Adding Custom Tabs To The Top Level Nav Bar

Adding tabs is a feature request that has been around for more than a decade. While it is not yet possible to create these via the API, they can still be easily created.

Also, while this will allow you to easily create custom tabs, I do not yet have a method to hide these tabs based on user account permissions.

So, for now, everyone will see these new tabs, and be able to click on the links within.

Having said that, if the user does not have admin permission, but clicks on the new link you created which points to the admin settings page, that use will still not be able to access the page.

So user account permissions do work.

ESTIMATED TIME TO INSTALL/PERFORM MODIFICATION: <5 Minutes

DIFFICULTY LEVEL: 1-Youngling

  1. Youngling(Easiest/Most Basic; no coding experience required, no config wizard required, no system restart required, no system downtime.)
  2. Padawan (Easy/Basic; no coding experience required, possible config wizard required, possible system/services restart required, limited/no downtime.)
  3. Jedi Knight (Moderately Difficult/Advanced; some coding experience required/recommended, config wizard required, possible system/services restart required, limited/short duration downtime.)
  4. Jedi Master (Most Difficult/Advanced; advanced coding experience required, config wizard required, system/services restarts required, 30+ minutes downtime/maintenance window recommended, and other things that I do not even know I would need to know, required...)

This mod was performed on the following SolarWinds environment/versions: (It may, or may not work on other versions)

SolarWinds Orion Platform 2018.2, NCM 7.8, WPM 2.2.2, DPAIM 11.1.0, NPM 12.3, NetPath 1.1.3, CloudMonitoring 2.0.1, SAM 6.6.1 © 1999-2018 SolarWinds Worldwide, LLC. All Rights Reserved.

WHAT DO YOU NEED?

  1. Orion SDK (Installed on your Primary Orion Server) Releases · solarwinds/OrionSDK · GitHub
  2. SQL Server Management Studio (You can also just use the database tool on your primary SolarWinds server)
  3. A list of links you want to use in your new nav tab

Before we begin,

PLEASE don't edit the system files/database without backing them up first.

If you see a friend or co-worker making changes without backing up first, please alert the authorities.

Friends don't let friends mod without backups.

"If it's not broke, then fix it until it is."

     -The smartest person ever

SHOW ME WHAT YOU'RE WORKING WITH:

This is what we are all starting with, the basic, default, nav bar tabs. (My Dashboards, Alerts & Activity, Reports, Settings)

Nav_Bar_Tabs_Default_20180530_0747.png

There are a few ways to do this. You can do it all in SQL, or you can do steps 1 & 2 in SWQL Studio, and finish with step 3 in SQL.

I will show both ways, as they are both fairly straightforward and simple to accomplish.

--Creating New Menu Navigation

STEP 1:

--First, you need to create a new group.

--The groups will be displayed on the top level of the nav bar.

--TSQL

INSERT dbo.WebViewGroup (Name,DefaultTitle,Tags,SortOrder)
VALUES ('meow','Meow','navigation',5)
GO

OR, you can do this via SWQL Studio, like so:

Open SWQL Studio, navigate down to the "Orion.Web" group, and query the Orion.Web.ViewGroup table.

Then, right click on the Orion.Web.ViewGroup table and click "create".

Custom_Nav_Tab_SWQL_Studio_20180530_0753-c.pngCustom_Nav_Tab_SWQL_Studio_20180530_0753-d.png

From here, just enter the Name (I believe all lowercase, no spaces), DefaultTitle (what will be seen on the nav bar/tab), Tags (navigation is all I currently know for this), and SortOrder (I just used the next number), then click the create button.

Either way should create your new tab on the main nav bar.

Custom_Nav_Tab_SWQL_Studio_20180530_0753-e.png

Custom_Nav_Menu_20180529_1542.png

Now that we have our new tab created, let's get busy filling it up with links. Again, we can do this step entirely in SQL, or follow the same procedure for SWQL Studio as we did in the previous step, only for a different table.

STEP 2:

--Next, you need to create the links you want to see/use.

--These links will be seen when you hover over the top level nav bar groups.

--TSQL

INSERT dbo.WebView (WebViewParentID, LimitationID, Name, DefaultTitle, Type, TemplateUrl, Url, Icon, IsCustom, OpenInNewWindow, SortOrder, FeatureDependencies)
VALUES (NULL,NULL,'accounts','Accounts','legacy',NULL,'/Orion/Admin/Accounts/Accounts.aspx',NULL,1,1,0,NULL)
GO

--SWQL Studio

In SWQL Studio, navigate down to the Orion.Web.View table, query the table (just to see what already exists, using the results as a rough example, so to speak), then right click the table and click "create".

Custom_Nav_Tab_Links_SWQL_Studio_20180530_0753-a.png

I have already added the link to the "Advanced Configuration" page, so let's add another link.

Already having an internal SolarWinds link listed, let's go ahead and add a link to a public website, thwack.com.

Custom_Nav_Tab_Links_SWQL_Studio_20180530_0753-b.pngCustom_Nav_Tab_Links_SWQL_Studio_20180530_0753-c.png

So, we have created a new tab ("Meow") on the nav bar, and we have created some links we want to display in/under our new tab, which leads us to our final step.

To finish our quest, we will need to find a way to tie our new items together.

This step, for now, can only be accomplished within SQL, as there is no API magic currently built out.

STEP 3:

--TSQL

--This will bind the URL you created in the 2nd step, to the group you created in the 1st step.

INSERT dbo.WebViewGroupWebView (WebViewGroupID, WebViewID, SortOrder)
VALUES (5,12,0)
GO

This query is taking our new "Meow" tab, which has WebViewGroupID 5, and our new "Thwack" link, which has WebViewID 12, and building them together.

And now we have our brand new, top level, custom menu bar tab, loaded with the links we want/need to use.

Custom_Nav_Tab_Links_SWQL_Studio_20180530_0753-d.png

END CREDITS:

Here are some similar requests, all needing to be able to add custom tabs. Some of these appear to date back to 2007, so there have been a great many folks waiting for this.

MENU BAR AND VIEWS

Mar 27, 2007 8:45 AM

https://thwack.solarwinds.com/message/25358

ORION V10 CUSTOM TABS

May 19, 2010 2:13 PM

https://thwack.solarwinds.com/message/113077

MAIN TAB CUSTOMIZATION - ADDING CUSTOM MAIN TAB WITH SUB SELECTION OPTIONS

Oct 21, 2010 7:50 AM

https://thwack.solarwinds.com/message/126663

HOW TO ADD NEW TABS AT THE SIDE OF THE MODULES MENU TABS I ALREADY HAVE.

Nov 23, 2010 6:33 AM

https://thwack.solarwinds.com/thread/38431

CAN'T ADD MENU BARS 😕

Jun 21, 2011 4:22 AM

https://thwack.solarwinds.com/message/145439

CAN WE ADD NEW TABS YET?

Feb 18, 2012 2:32 PM

https://thwack.solarwinds.com/thread/47228

WE WANT TO BE ABLE TO ADD NEW TABS TO NETWORK PERFORMANCE MONITOR

Mar 3, 2012 10:08 AM

https://thwack.solarwinds.com/message/164952

CAN MENU BARS BE RENAMED?

May 31, 2012 10:57 PM

https://thwack.solarwinds.com/message/171965

IS THERE A WAY TO ADD TABS TO THE MENU BAR IN NPM

Sep 1, 2014 7:03 AM

https://thwack.solarwinds.com/message/249667

ADDING CUSTOM TABS TO ORION WEB CONSOLE

Created on Sep 23, 2014 6:16 AM by amtizo - Last Modified: Sep 23, 2014 6:16 AM

https://thwack.solarwinds.com/ideas/4478

HOW TO CUSTOMIZE TABS AT ORION WEBSITE?

Jul 16, 2015 4:39 AM

https://thwack.solarwinds.com/message/295335

ABILITY TO CREATE CUSTOM TABS!

Created on Aug 25, 2015 2:05 PM by mbrawley - Last Modified: Aug 25, 2015 2:05 PM

https://thwack.solarwinds.com/ideas/5759

CUSTOM HEADERS / TABS IN THE MENU BAR NPM 12

Created on Jun 27, 2016 12:49 PM by kalawala - Last Modified: Jun 27, 2016 12:49 PM

https://thwack.solarwinds.com/ideas/7136

ADDING ADDITIONAL MENU BARS?

Mar 17, 2017 4:23 AM

https://thwack.solarwinds.com/message/359902

EDIT HIGHEST LEVEL MENU

Oct 2, 2017 7:24 PM

https://thwack.solarwinds.com/message/376024

FEATURE REQUEST - ADD A NEW TAB IN MY DASHBOARD

Created on May 16, 2018 8:46 AM by ccandido - Last Modified: May 16, 2018 10:38 AM

https://thwack.solarwinds.com/ideas/9971

I hope this helps you along your customized SolarWinds journey.

For more ways to customize your SolarWinds environment, make sure to check out this link, by CourtesyIT

How to do various customizations with your Solarwinds

Thank you,

-Will

Comments

AWESOME!!!    Adding to master list.

Thanks,

Eric

Great post Will!

Always something of a concern with the old menu system, but with the 12.x+ menu, there is plenty of space on the top header to add some custom top level menu items.

Amazing stuff! Finally we have the ability to tinker with this. Just remember... tinker at your own risk!

I suppose the next thing to add would be the ability to show/hide the tabs per account... But I'd definitely need to wait for someone who knows what they're doing there.

Dynamic_Tab_Account_Permissions_20180530_1011.png

Thank you for this Will, I have been wanting this for YEARS! I can not believe it snuck in and I didn't notice.

Very Nice! I used to add/adjust some views in a similar way using DB Manager. My changes always held through a CW Run, so I am curious how much is held on to or possibly reverted with a CW Run (be sure to backup your DB before you run the CW )

I'm running a full CW now. If the changes stay, which I'm thinking will, I'll follow that with a full upgrade to the next RC, later today.

That should be enough to answer a couple of questions.

It would be nice to hear from tdanner​ or aLTeReGo​ on how we can utilize the various options (limitations, parents, etc.) also listed in the same tables. (Not "official" help, but maybe a suggestion or two, or ten...)

Good Man! Thanks for doing the leg work for us, wluther​!

I just finished running a complete config wizard session, and the custom tabs are still there. If I have time later today, I will be upgrading to latest RC versions. I expect the same/similar outcome after the upgrade.

I just finished upgrading to NPM 12.3 RC 2, from RC 1, and the custom tabs remain.

Orion Platform 2018.2, NCM 7.8, WPM 2.2.2, DPAIM 11.1.0, NPM 12.3, NetPath 1.1.3, CloudMonitoring 2.0.1, SAM 6.6.1

Alibi: This is my first time doing anything related to SQL.

I was successfully able to add a tab but I'm wanting to go a little further and need some guidance.

I'm wanting to make a category and sub categories like "Home" or "Network" under "My Dashboard", and not sure if there is a column or table I can edit for this. Does anyone know if the Icon (system.Sting) is referring to an Image/Image URL?

castlerobertd​ I'm certain there are numerous tables you will need to add/edit various things, however, I do not know where/what they all are. I have gone down this road a few times, but never really made it too far before being pulled into a new project. In regards to learning how all the pieces get put together, I have learned a beneficial amount of info just by poking around in the install files, and looking through the db schema files. This one is fairly high on my unofficial "to-do" list, which requires I finish enough projects on my official "to-do" list before I can play.

Yeah im in the same boat now, one of our SQL devs have been looking into it when they are free but nothing came back yet. If I find anything Ill shoot you a message. Thanks!

Figured I may as well link the script I wrote to perform the actions wluther described here, posted it several months ago

ADDING CUSTOM TABS TO THE TOP LEVEL NAV BAR with the API

I've also taken a stab at manipulating the my dashboards area, but so far it has resisted my efforts.

Version history
Revision #:
1 of 1
Last update:
‎05-30-2018 09:34 AM
Updated by: