class %CSP.Portal.Home
extends %ZEN.Portal.standardPage
Home page for the Ensemble Management Portal.
If the current user holds the %Admin_Secure resource, then this page
can be used to view and define custom resources.
parameter APPLICATION = "%ZEN.Portal.Application";
Set this to the appropriate application class.
parameter DOMAIN = "%Utility";
Set this to the correct domain.
parameter FAVORITEICON = "portal/home.ico";
Home favorite icon.
parameter PAGENAME = "Home";
Name of this page.
parameter RECENT = 0;
If true, register visits to this page in the recent list.
property HSHomePage
as %String(MAXLEN=256);
This gets computed on after page create
property IsEnsembleInstalled
as %ZEN.Datatype.boolean [ InitialExpression = ##class(%Library.EnsembleMgr).IsEnsembleInstalled() ];
property IsHealthShareInstalled
as %ZEN.Datatype.boolean [ InitialExpression = ##class(%Library.EnsembleMgr).IsHealthShareInstalled() ];
property NAMESPACE
as %ZEN.Datatype.string;
Current $NAMESPACE. This is the namespace user seleccted from the Switch namespace dialog and will be used in navigate().
property NSNAME
as %ZEN.Datatype.string;
Name of the current namespace (from $ZU(5)).
property Username
as %ZEN.Datatype.string;
Current login user name.
property btnGo
as %ZEN.Datatype.caption [ InitialExpression = $$$Text("Go") ];
property currDropdownIndex
as %ZEN.Datatype.integer;
Index of current item in search dropdown.
property currItemId
as %ZEN.Datatype.string [ InitialExpression = "HOME" ];
Indicates the id of which item is selected in the selector pane (on the left).
property homeChanged
as %ZEN.Datatype.boolean [ InitialExpression = 0 ];
If true, the the "Home" page needs to be refreshed to see new favorites.
property isGoHome
as %ZEN.Datatype.boolean(ZENURL="isGoHome") [ InitialExpression = 0 ];
If it is 1, it indicates that user clicked the "Home" link in small menu link then show "Home" selector.
property itemCount
as %ZEN.Datatype.integer;
Number of items in the selector pane (this is automatically computed).
property resourceMode
as %ZEN.Datatype.boolean;
If true, then show this page in a special mode where the user can assign resources.
User must hold %Admin_Secure for this to be enabled.
property searchLink
as %ZEN.Datatype.string;
Used by search box to track link of selected item.
method %ApplySearchToArray(pSearchKey As %String, ByRef pArray, Output pResults As %List)
Walk down array; find elements containing search key.
method %DrawDidYouKnow()
as %Status
Draw the did you know box.
method %DrawFavorites()
as %Status
Draw the favorites box.
method %DrawLinks()
as %Status
Draw the Links list.
method %DrawOptionsBox(pTitle As %String, pSubtitle As %String, ByRef pOptions As %List, pWhich As %String = "")
as %Status
Draw contents of one options box (favorites or recent).
method %DrawRecent()
as %Status
Draw the recent items list.
classmethod %GetDidYouKnowText()
as %String
Return localized "did you know" message.
method %GetLocatorLinks(Output pLink)
as %Status
Return the array of links to show in the locator bar.
pLink(n)=$LB(caption,link)
method %GetSearchResults(pSearchKey As %String, Output pResults As %List)
Return an array of search results:
pResults(n) = $LB(name,url,title)
method %OnAfterCreatePage()
as %Status
This class method callback is called just before the server-side page
object is created.
method %OnGetPageName()
as %String
Get the (localized) name of the page.
This should be implemented in a subclass.
method %OnGetTitle()
as %String
Get the (localized) title string for the page.
This should be implemented in a subclass.
classmethod AddToFavorites(pName As %String, pURL As %String, pLink As %String)
as %Boolean
[ ZenMethod ]
Add item to favorites list.
classmethod CheckSecurity(pResource As %String)
as %Boolean
Given a security resource, this method returns 1 if user has privilege, and 0 if the user does not security privilege for using a particular function.
classmethod CheckURL(pURL, pNAMESPACE)
as %String
[ ZenMethod ]
This method is called when user clicked "Go" after selecting a menu item. The url may be reconstructed based on where you are going.
For example, if you are going to an Ensemble namespace, the url will become /csp/ensnamespace/...
method DrawMessagePanel(pSeed As %String)
as %Status
Draw contents of the message panel.
method DrawSearchDropDown(pSeed As %String)
as %Status
Draw contents of the search results dropdown.
method DrawSearchResults(pSeed As %String)
as %Status
Draw contents of the search results panel.
method DrawSelector(pSeed As %String)
as %Status
Draw content of the selector pane.
method DrawSplashContent(pSeed As %String)
as %Status
Draw content of the splash pane.
method GetDeepSeeArray(Output pData)
as %Status
Provide finder contents for the DeepSee pages.
method GetEnsembleArray(Output pData)
as %Status
Provide finder contents for the Ensemble pages.
method GetFinderArray(ByRef pParameters, Output pMetaData, Output pData)
as %Status
Provide the source data (as an array) that will drive the finder.
method GetHealthShareArray(Output pData)
as %Status
Provide finder contents for the HealthShare pages.
classmethod GetNamespaceList()
as %String
[ ZenMethod ]
Populate the client-size zenPage._nsList array
with a list of available namespace and flags to indicate whether
each is Ensemble- and DeepSee-enabled.
method GetSystemConfigArray(Output pData)
as %Status
Provide finder contents for the System Config pages.
method GetSystemExplorerArray(Output pData)
as %Status
Provide finder contents for the System Explorer pages.
method GetSystemOperationArray(Output pData)
as %Status
Provide finder contents for the System Operator pages.
method OnDrawRibbon()
as %Status
This is called in the middle of rendering the tool ribbon.
method OnGetRibbonInfo(Output pDisplay As %Boolean, Output pViewIcons As %List, Output pSortOptions As %List, Output pSearchBox As %Boolean, Output pRibbonTitle As %String)
as %Status
Get information to display in the ribbon bar.
classmethod RemoveFavorite(pName As %String)
as %Boolean
[ ZenMethod ]
Remove a favorite item from the list.
classmethod RemoveRecent(pName As %String)
as %Boolean
[ ZenMethod ]
Remove a recent item from the list.
method addFavorite(name, url, link)
[ Language = javascript ]
method assignResource(name, link)
[ Language = javascript ]
Launch the assign resource dialog.
method changeNamespace(ns)
[ Language = javascript ]
Change to a new namespace.
method clearSearchTimer()
[ Language = javascript ]
Stop the search timer.
method clearState()
[ Language = javascript ]
This method clears the 'state' cookie which indicates the last selection for the finderPane position on the SMP portal home.
method drawDetails(item, finder, index)
[ Language = javascript ]
Provide HTML for details on selected item in finder.
method drawEmptyFinder(item)
[ Language = javascript ]
Provide HTML for empty finder.
method getCookieValue(cookieName, cookieString)
as %String
[ Language = javascript ]
Generic method to get a cookie value. cookieName is the name, e.g. "state", cookieString is document.cookie.
method getNamespaceHTML(cat)
[ Language = javascript ]
Provide HTML to select a namespace.
method goHome()
[ Language = javascript ]
Go to the home page.
method hideSearchDropdown()
[ Language = javascript ]
Display the search results drop down.
method itemDoubleClick(item)
[ Language = javascript ]
Item double-clicked within the Finder.
method itemSelected(item)
[ Language = javascript ]
Item selected within the Finder.
method makeSelectorBig(flag)
[ Language = javascript ]
Set size of selector to big (true) or small (false).
method navigate(url)
[ Language = javascript ]
Navigate to a new page in the portal.
method onPopupAction(popupName, action, value)
[ Language = javascript ]
This client event is fired when the a popup page launched from this page fires an action.
method onlayoutHandler(load)
[ Language = javascript ]
Adjust sizes of components on the page.
method removeItem(which, name)
[ Language = javascript ]
Remove the given item from its list.
method saveState()
[ Language = javascript ]
Save current state into cookie so when page is refreshed it goes back to the last selection.
This method is called from navigate()and onPopupAction() for case switchNamespace
method searchBlur(evt)
[ Language = javascript ]
Blur event in search box.
method searchBoxDown()
[ Language = javascript ]
Go to next item in search box dropdown.
method searchBoxHandler(searchKey)
[ Language = javascript ]
Change in search box value. Can be overridden by subclasses.
method searchBoxUp()
[ Language = javascript ]
Go to prev item in search box dropdown.
method searchKeyDown(evt)
[ Language = javascript ]
Key down in search box (override).
method searchKeyPress(evt)
[ Language = javascript ]
Key press in search box (override).
method searchTimerHandler()
[ Language = javascript ]
Action for search timer.
method selectCategory(cat)
[ Language = javascript ]
Item selected within the Selector.
method setCookieValue(cookieName, cookieValue)
as %String
[ Language = javascript ]
Generic method to set a cookie name and value pair.
The expiration date is set to 2020 which is the same as in generic SMP pages, which should be changed before end of 2020.
method setSortModeHandler(mode)
[ Language = javascript ]
Do the actual work of updating the view to match the current sort mode.
method setViewModeHandler(mode, oldmode)
[ Language = javascript ]
Do the actual work of updating the view to match the current view mode.
method showSearchDropdown()
[ Language = javascript ]
Display the search results drop down.
method showSearchResults(flag)
[ Language = javascript ]
Hide/show search results.
method startSearchTimer()
[ Language = javascript ]
Start the search timer.
method toggleResourceMode(iscb)
[ Language = javascript ]
Toggle resource edit mode.
method updateMessagePanel(timer)
[ Language = javascript ]