Search button - Hide Global Search Option BUT keep the Search Button

  • 0
  • 1
  • Question
  • Updated 4 years ago
  • Answered
Is there an option or a customized way to remove the option to GLOBAL search, but still have the ability to keep the search button at the top of the application to search a specific table? Please see image.
Photo of Rodman91

Rodman91

  • 132 Points 100 badge 2x thumb

Posted 4 years ago

  • 0
  • 1
Photo of QuickBaseCoach App Dev./Training

QuickBaseCoach App Dev./Training, Champion

  • 65,522 Points 50k badge 2x thumb
I doubt it, at least not natively, but are you aware that there are settings in the table settings to prevent a whole table from being searched?  So the user owuld not get hits on any records in the table.  Does that solve your issue?
Photo of Rodman91

Rodman91

  • 132 Points 100 badge 2x thumb
Thanks for the response. Yes, I am aware of that setting.

Unfortunately, our application has a lot of records. Only 5 out of 25 of our tables are globally searched with just a few fields from each of the tables that are searchable. We have about 50 people that use our system and it slows down quite a bit when multiple people use the global search.

The search button is very useful since it is at the top of every page. Just want the global option to be hidden.


Thanks again for responding!
Photo of QuickBaseCoach App Dev./Training

QuickBaseCoach App Dev./Training, Champion

  • 65,522 Points 50k badge 2x thumb
OK, so you know what you are doing :)  i left my response as a comment so maybe some others have ideas.
Photo of Rodman91

Rodman91

  • 132 Points 100 badge 2x thumb
Yeah for sure!!! Definitely helpful to know. Just wish there was another option =)
Photo of Ⲇanom the ultimate (Dan Diebolt)

Ⲇanom the ultimate (Dan Diebolt), Champion

  • 30,064 Points 20k badge 2x thumb
There is a one line JavaScript statement that will remove the element that includes the global search tab:


$("#searchPanelTabs ul li:first").hide();


You can test it yourself by pressing F12 and pasting it into the console.

The problem is that there is no obvious way to execute the statement automatically. Enter Tamper Monkey ...

Tamper Monkey Extension for Chrome
https://chrome.google.com/webstore/detail/tampermonkey/dhdgffkkebhmkfjojejmpbldmpobfkfo/related?hl=e...

Install Tamper Monkey for Chrome and form the table dashboard invoke it and select the Tamper Monkey Dashboard.

Create a new Tamper Monkey Script and enter the following code:

// ==UserScript==
// @name         My Fancy New Userscript
// @namespace    http://your.homepage/
// @version      0.1
// @description  enter something useful
// @author       You
// @match        https://SUBDOMAIN.quickbase.com/db/DBID?a=td
// @grant        none
// ==/UserScript==
$("#searchPanelTabs ul li:first").hide();


When the page loads the Tamper Monkey script will automatically run and the offending tab will be hidden. Tamper Monkey is by far an away the easiest way to create user scripts. High Praise for Tamper Monkey!
Photo of Rodman91

Rodman91

  • 132 Points 100 badge 2x thumb
Hello DanDieBolt,

If I just wanted to implement this in a Dashboard only, how would I accomplish this?

Thanks,

Rod
Photo of Ⲇanom the ultimate (Dan Diebolt)

Ⲇanom the ultimate (Dan Diebolt), Champion

  • 30,064 Points 20k badge 2x thumb
>If I just wanted to implement this in a Dashboard only, how would I accomplish this?
QuickBase is inconsistent with the term "dashboard". In QuickBase's terminology the "application dashboard" is called a "dashboard" but the "table dashboard" is called a "table home page". Each of these two "dashboards" have different configuration capabilities. However the action for the "table home page" is ?a=td suggesting that it also know as a "table dashboard". So without qualification I don't know what you mean by "Dashboard". 
Be that as it may be, users scripts are only executed against matching URLs:
// @match        https://SUBDOMAIN.quickbase.com/db/DBID?a=td 
So you can change this @match pattern to any URL you want including glob style pattern matching if you wish. But be advise you have to get your users to install TamperMonkey as well as your user script. It is worth it for the productivity gain  but will not work unless you have influence over the user's browser and configuration. 
BTW, don't let the name "TamperMonkey" scare you. Developers often permute the names of old software when creating new software in an wandering game of oneupmanship and TamperMonkey probably derives its name from GreaseMonkey and TamperData. I myself longed for the days of the Promoxitron when I created Quicktron four years ago (it is somewhere in the forum archives):
https://gist.github.com/dandiebolt/1146112

https://quickbase-community.intuit.com/questions/57885 

https://en.wikipedia.org/wiki/Proxomitron
Photo of Ⲇanom the ultimate (Dan Diebolt)

Ⲇanom the ultimate (Dan Diebolt), Champion

  • 30,064 Points 20k badge 2x thumb
deleted