In some situations it is desirable to be able present the same exact same functionality using different layouts to different users.
One example could be a Business to Business service application offered to a number of customers. Some customers might use it as a stand alone application using a base layout, while others might run the application from a link in their intranet application. In this case a common request is to make the application look as much as the intranet application as possible (color scheme, font size, etc.).
You can do this in several different ways. The two most obvious are described in this document.
In both solutions, the end-result must be that when a user logs in to Websydian Express, he will use a folder list that is relevant for the company he belongs to (if he belongs to one of the companies that should have a special layout).
To fully understand how these solutions work, it might be a good idea to have a look at the description of how a folder list is assigned to a session.
In both cases, you must create a new physical folder, a Websydian Express folder and a folder list for each special layout
Create a new physical folder for each special layout that you want to provide (e.g. for each company that want to be able to access the application from their intranet).
Copy the templates that you want to customize to this folder, and perform the necessary changes to apply the new layout to the templates.
For each new layout, create a separate Websydian Express folder specifying where the templates used for this specific layout can be found.
Select the menu item "Templates→Folders" in the administration menu to go to the folder maintenance. Press "Insert".
On the insert page enter the path to the physical folder containing the templates and a text describing the content.
In some situations the only thing needed to change to the new layout is to change the style sheet. In this case you can just make a Websydian Express folder that points to the same physical path as the original Websydian Express folder - but uses another reference to find the style sheet.
Create a new folder list for each layout. Use the "Templates→Folder List" menu item in the administration menu and press "Insert" on the folder list maintenance page to start the wizard used for creating new folder lists.
On the first page you must enter an identification and a description of the new folder list. Press "Next".
On the next page press "Add" to add folders to the folder list. Start by adding the newly created folder.
After adding all the folders you must have the new folder on the top of the list - and the rest of the folders used in the basic folder list afterwards - in the same order as in the basic folder list.
Remember to press finish to actually create the folder list.
Note that by having the folder containing the template with the original layout in the folder list, you ensure that you only need to create a copy of the templates that actually need to be customized.
Furthermore, you ensure that even if a template has not yet been customized to a specific customer layout, the function will still be useable - it will just use the original layout.
The first solution is to assign the folder list directly to the user. This means that no matter which roles the user has - this is the folder list that will be used when he logs in to the application.
For each user belonging to the customer using the specific layout, change the folder list to the newly created folder list.
This is done by using the menu item "User management→Users" in the administration menu.
Find the user in the grid and press update for the user.
On the update page select the new folder list in the "Folder list" drop down box. (In the Advanced information section)
Press "Update" to make the change.
This means that the user will have this folder list assigned to his sessions when he logs in.
In the second solution solution, the folder list is assigned to the user through a role instead of being specified directly for the user.
For each special layout, create a new role. Specify the relevant folder list for the layout for the role.
In most cases, the user will have more than one role assigned. Each role has a folder list assigned (to ensure that at least one folder list can be assigned to the user's sessions). This means that the runtime in this case typically will have to choose between several folder lists when assigning a folder list for the sessions.
To ensure that the correct folder list is chosen, assign a priority to the role that is higher than the priority assigned to the other roles the user belongs to.
Use the "User management→Roles" administration menu item, press insert, specify the values for the fields and select the folder list in the drop down, press insert to create the role.
Use the administration interface menu item "User management→Users".
Find the user that you want to assign to role to in the grid, press the roles button.
Select the role in the right grid of the pop up window, and press add - Press apply to assign the role to the user.
Again, this means that the user will have this folder list assigned when he logs in.
The two solutions are very similar - and the final effect for the session is the same.
In some cases, it is not only the layout that should different for the users belonging to the companies that want to present the application in their intranet - there might be specific business processes that should only be available for these users.
If this is the case, the solution where the folder list is assigned to a role will probably be the best. This means that the role can be used to control both the access to these business processes - and the layout.
On the other hand, assigning the folder list directly to the user makes it somewhat easier to determine which folder list that will be used when the user logs in.