Launch
The advantage of Atlas is its ability to render a satellite application’s shell, or all
common components that every satellite application must have. A call
to launch
will begin the process of rendering a shell. This process can take
some time thus the call returns a promise
that is resolved when the shell is
finished rendering.
It is best practice to wait until the shell is rendered and the currently impersonated
account is returned before displaying any account specific information in a satellite application.
var promise = atlas.launch({
mainNavId: "Assgined by Platform",
onLogout: "/auth/logout"
});
promise.done( function(data) {
// Fetch Satellite Application data for impersonated account
fetchDataForAccount(data.currentAccountAlias());
// Listen for changes to the impersonated account and refresh the data
data.currentAccountAlias.subscribe(fetchDataForAccount);
});
If not present in the DOM launch will add the account-switcher
,
brand-bar
, and main-nav
nodes for you. However, to prevent flashing
when the nodes are added it is best practice to include them in the satellite application markup.
<body>
<account-switcher></account-switcher>
<brand-bar></brand-bar>
<main-nav></main-nav>
<main>
<!-- Your Content Here -->
</main>
<!-- Scripts -->
</body>
Configuration Parameters
Name |
Type |
Required |
Description |
mainNavId |
string | observable string |
no |
The id of the menu to select in the main-nav . This is assigned to a satellite application by the platform team when the menu item is added. |
onLogout |
string | observable string | function |
no |
If the value is a string or an observable string an AJAX GET call will be executed prior to redirecting the user to SSO logout. If the value is a function the function will be called and if a promise is returned execution will halt until the promise is resolved and then the user will be redirect to the SSO logout. This allows a satellite application to clean up it’s dedicated session before performing SSO logout. |
Resolved Data Properties
Name |
Type |
Description |
accounts |
observableArray of Accounts |
The Array of accounts used to populate the account-switcher |
currentAccountAlias |
Observable string |
The currently impersonated Account Alias. Subscribe to changes and refresh data appropriately. Note: this observable is not updated until the POST to change account context returns. |
Support |
Support Object |
Object repersenting the support information returned by the account context API. |
Bradning |
Branding Object |
Object repersenting the branding information returned by the account context API. |
Account Model
Name |
Type |
Description |
accountAlias |
string |
Account Alias |
businessName |
string |
Business name of the account |
primaryDataCenter |
string |
The default data center for the account |
subAccounts |
array of accounts |
Child accounts |
Support Model
Name |
Type |
Description |
chatServiceUrl |
Observable String |
Url to open a chat with support |
featureRequestUrl |
Observable String |
Url to open a feature request |
knowledgeBaseSearchUrl |
Observable String |
Url to search the knowledge base |
supportEmail |
Observable String |
Email address to support |
supportPhone |
Observable String |
Phone number of support |
supportRequestUrl |
Observable String |
Url to open ans support request |
Branding Model
Name |
Type |
Description |
controlLogoutUrl |
Observable String |
Url to logout of the Control Portal |
controlName |
Observable String |
Branded Control Portal Name |
controlUrl |
Observable String |
Url of the Control Portal |
cssUrl |
Observable String |
Url to branded CSS file |
favIconUrl |
Observable String |
Url to Favicon image |
headerBackgroundColor |
Observable String |
Hex value of the branded header background color |
mobileIconUrl |
Observable String |
Url to mobile icon image |
portalLogoUrl |
Observable String |
Url to Control Portal Branded Logo image |