I am creating my app where I want to hide particular menuItem and its contains depending upon user credential. I want to show everything for admin/tester but not all user. I found question in stack overflow, Hide an element (box/tabs) in shiny dashbaord, I am modified code as below
library(shiny)
library(shinydashboard)
library(shinyjs)
ui <- dashboardPage(
dashboardHeader(title = "Set")
,dashboardSidebar(
sidebarSearchForm(label = "Search...", "searchText", "searchButton"),
sidebarMenu(
menuItem("Port", tabName = "P", icon = icon("cog"))
,menuItem("Rank", tabName = "Rank", icon = icon("cog"))
,menuItem("Mark", tabName = "Mark", icon = icon("bar-chart"))
,menuItem("Read", tabName = "Read", icon = icon("file-pdf-o"))
,useShinyjs()
,menuItem("Port, tabName = "Ocean", icon = icon("heart"))
)
,uiOutput('Super')
,uiOutput('AList')
,uiOutput('BList')
,uiOutput('DList')
,uiOutput('SList')
)
,dashboardBody(
....
)
)
server <- shinyServer(function(input, output, session) {
observeEvent(session$user,{
if (session$user == "tester") return(NULL)
hide(id = "Port", anim = TRUE)
})
}
shinyApp(ui = ui, server = server)
However, it is not working, Any tips ?