Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Table of Contents

Overview

The In the CMS, the Override facility allows Administrators to set enable/disable access to a feature or function at particular levels (Customer, Role and/or User) rather than turning it on or off for all Users. It is available for with a wide range of settings in the CMS. You'll know it's there if you see the Overrides button and counter next to a setting.    

Example:

The counter will increase by one for each override set.

How Overrides work

Overrides takes advantage of the different levels To control access to a setting, Overrides take advantage of Customers and Roles that are set against Website Users to control access to a setting or function. There are general rules operating on levels and overrides (every registered Website User. The general rule operating on Overrides is the hierarchy: Global < Role < Customer < User):

...

User.  The Global value is the default system setting. Any value set at the Role level will override this default value. In turn, any Customer level value will override both Role and Global settings. Finally, a User setting will override all the other settings. 

  • The value set at the Global level is always the fallback default.
  • A Role level setting overrides Global.
  • A Customer level setting overrides both the Role and Global settings.
  • A User level overrides all previous settings.
  • Sometimes you will see a For some functions, User Customer levelis available. This appears caters for settings where Users are that can be in more than one Customer account on your website , and allows you to set permissions for the User against a specific Customer.  This level overrides all other settings.

NOTE - Sometimes, a setting will specifically allow/ disallow certain levels or levels so such levels are not displayed. Some settings also may have rules that exclude certain subset of Users already. In such cases, this will be noted.)


Use Case

As an a simple example, let's use the 'Standing Orders' feature. 'Standing Orders' allows Users to create recurring orders, e.g., scheduled orders that will automatically be placed depending on the frequency set. Let's say we want to grant standing order rights to only a subset of Users - B2B buyers from specific Customer accountsaccording to a schedule. The Enable Standing Orders toggle is the global setting. If we toggle it ON with no overrides, the setting will be available all Users. If it is OFF, no User will have access. We don't want either of these options and will use the Overrides facility. There is usually more than one way to achieve permissions but we have to careful how our overrides solution will affect all other Users..

For our example, the easiest way of achieving our permission goals is to leave the global setting OFF and set overrides at particular levels that apply to targetted Users. Say we have a registered user 'Jane Smith' (User) who has the Roles of B2B purchaser (CSSUser) and Accounts in the company accounts 'AACAB' (Customer) and 'WAFFA'.  We want to allow her to create Standing Orders only when she is logged into the Customer account 'AACAB'.    

Step 1: Leave global setting OFF. 

Step  


Step 1: Decide whether the global setting is ON or OFF. For our example, we will leave the global disabled and turn it on for a specific subset of Users. (This means before any Overrides are set, no User can access the feature.)

Step 2: Click the Overrides button. This will open the Setting Overrides screen specific to the feature. 

Step 3: There are various Override options Here, we can set . Bear in mind how your override settings will affect all other Users.

We can decide to set a Role override with an Override Value of ON. Jane will have access to Standing Orders but so will all other Users on your website with the same Role. If that is fine, then you do not have to set any other overrides. Just click Confirm, then Save your Override. If not, we can set Overrides at other levels.  

Image Removed

Step 4: We can set Customer Overrides so that Jane in the CSSUser Role can only create a standing order when in the Customer account 'AACAB' and not in her other account 'WAFFA'.  But this will affect all other Users with the CSSUser Role in the WAFFA account.  

Image Removed

Another way is to a Role override for CSSUser with an Override Value of ON. (This means all Users with Role 'CSSUser' will have access to the feature. 

Image Added

Step 4: We can also add overrides at the Customer level. Here we have set value=OFF for Customer 'WAFFA'. As a result, a User with Role 'CSSUser' for Customer 'WAFFA' will not have access to Standing Orders since Customer level settings override Role ones. 

Image Added

Step 5: A User level setting overrides all other settings. So if we add a User Override, 'jane.smith' who is a User for Customer 'WAFFA' and set the override value=ON, she will have access to Standing Orders even when logged into the Customer account 'WAFFA'.

Image Added

Step 6: To save your overrides, click Confirm, then Save or Save & Exit in the main Settings screen. 


Tip
  • When configuring Overrides for a setting or function, you do not have to add overrides at every available level. In our example, you can simply add a User level override for User 'jane.smith' to access a feature and skip overrides at the Role and Customer levels.
  • Special Roles can be created and particular Users assigned to these, should you require only specific Roles only that can access a feature or setting.