Community Startup Tabs

Community Startup Tabs (CST) is the easiest way to define and implement the Pentaho startup tabs depending on the user that logs into the PUC (Pentaho User Console).

Ranging from a single institutional page to a list of dashboards or reports, among other contents, the tabs opened to each Pentaho User after logging into the PUC vary depending on the user preferences or his/her role in the company. Then why should we let Pentaho open always the same content for everyone?

Thanks to CST, the list of tabs opened right after the login can be automatically different, depending on the user profile.

Credits: Webdetails Team, Lead - Pedro Alves       Sponsor: Community Startup Tabs Sponsor Logo: St. Antonius

Main Features

  • CST provides an easier way to set different startup tabs for each user that logs into the PUC, based on its username or role
  • Allows you to specify usernames or roles using regular expressions

Documentation

CST allows you to set which tabs will automatically load when a particular user logs into the PUC. This is done by defining specific rules.

Rule Types

User-based rules

You can specify which tabs will be opened when a particular user logs in. For example: "When Joe logs in, you want that the Steel Wheels cube opened in one tab, and the Pentaho Homepage in a second tab."

Role-based rules

You can specify which tabs will be opened when any user with a particular role logs in. For example: when the users with MANAGER role log in, you want a nightly report in one tab, a monthly sales report in a second tab and the company homepage in a third tab.

Default rule

The default rule tells which tab will be open when a user that doesn't match any of the other rules logs in.

Regular Expressions

When you create a role-based rule, you may provide the exact name of the role, but also a regular expression for the role.

For example: suppose that the managers have roles as MANAGER_EUROPE, MANAGER_ASIA, and so on. If you want all managers to share the same startup tabs, you can create a rule using a regular expression like MANAGER.+ that will match all those roles.

The same applies for the user-based rules.

All rules are defined within a configuration file (cst-config.xml) with the following structure:

<?xml version="1.0" ?>
<cstConfig>
<rule>
  <tab>
  </tab>
  <tab>
  </tab>
  ...
</rule>
<rule>
  <tab>
  </tab>
  ...
</rule>
...
</cstConfig>

Rule Block

Each rule block defines a new rule, so there will be as many rule blocks as the rules you have. A rule tag should look like the following:

 <rule match="USER|ROLE|DEFAULT" pattern="false|true" value="..."> 

For example, you can have the following rule:

 <rule match="USER" pattern="false" value="joe"> 

match tells which kind of rule you are defining: a user-based rule, a role-based rule or the default rule.

pattern tells if are providing a regular expression for a user or for a role.

value is a fixed name or a regular expression for the user/role.

Tab Block

Each tab block declares a tab to be opened. Inside each rule block, you can specify as many tabs as you want. The tab tags should look like the following:

 <tab title="...">url </tab> 

For example, you can have the following:

 <tab title="Pivot">/pentaho/Pivot?solution=steel-wheels&path=analysis&action=analysis_customers.analysisview.xaction</tab> 
<cstConfig>
<rule match="USER" pattern="false" value="joe">
<tab title="Pivot">/pentaho/Pivot?solution=steel-wheels&path=analysis&
action=analysis_customers.analysisview.xaction</tab>
</rule>
<rule match="ROLE" pattern="false" value="ceo">
<tab title="CDF" order="1">/pentaho/content/pentaho-cdf/RenderXCDF?solution=bi-developers&path=/cdf-samples/10-cdf&action=information_dashboard.xcdf&template=mantle</tab>
</rule>
<rule match="ROLE" pattern="false" value="Admin">
<tab title="Dashboard">/pentaho/PreviousHome</tab>
</rule>
<rule match="DEFAULT">
<tab title="Tab8">t8</tab>
<tab title="Tab9">t9</tab>
</rule>
</cstConfig>

In other words, this means that:

  • when joe logs in, the analysis_customers cube should be opened;
  • when a user with the role CEO logs in, an information_dashboard should be opened;
  • when a user with the role Admin logs in, the Pentaho previous homepage should be opened;
  • otherwise, when a user who doesn't match any of the previous conditions logs in, tabs 8 and 9 are opened (these are fictional tabs, in fact you should replace t8 and t9 with real URLs in order to test this sample).

FAQ

What does CST mean?

CST stands for Community Startup Tabs

Is CST free?

CST is released under the MPLv2 license.

Recommend this article:

Registered in Portugal. NIF 508 528 283