Tutorial: Manually creating a Workspace | |
|
Background | |
This page contains a detailed tutorial for how to setup a Workspace using the manual setup method. Although Tiki does not have a concept of workspaces per se, it is possible to support most features of a workspace by appropriately configuring lower level components, namely: Categories, Perspectives and optionally, Groups. Before we describe the various steps involved, let's first define what we mean by a workspace. In most people's mind, the term workspace evokes the concept of a section of a Tiki site that acts as though it was a completely separate site. Tiki workspaces are almost that. See the Caveats section at the bottom of this page for a description of some idiosyncrasies of workspaces in Tiki. In the following tutorial, we will run you through the steps required to:
|
Steps | |
1.1.1. Create a category to bind objects of the workspace together | |
First, you need a way to tell that certain objects belong together in a workspace. You do this by creating a category for the workspace.
|
1.1.2. Create a Perspective so you can configure the settings of objects in the workspace | |
At this point, you have a way of saying that objects belong together in the workspace. But now you need a way to globally change settings for objects in the workspace. You do this by creating a Perspective. You can think of a perspective as a collection of settings and preferences that can be activated at any point, in order to override the default settings of the host site. To create a Perspective:
|
1.1.3. Setup the Perspective as a "jail" for the workspace | |
Among other things, Perspectives can be used to contain all tiki actions (ex: searches, creation of pages) within one or more categories. This is called a category jail. In a workspace context, this is useful, because when you are in a workspace, you typically want searches to be limited to that workspace. Similarly, if you create a new page while inside a workspace, you would like that page to be created inside that same workspace by default. Both of these and more can be accomplished using the Category jail preference of the workspace's Perspective (well, sort of... again, see the Caveats section at the bottom of this page). But before you can do this, you must first find out the ID of the workspace's category:
|
1.1.4. Set the workspace's home page | |
At this point, you have created a clear perimeter around your workspace, and you can start configuring it as much as you want. In particular, you probably want the workspace to have a different home page than the host tiki site.
|
1.1.5. Change any other settings you want | |
By editing the workspace's Perspective as above, you can impose most kinds of Tiki settings and preferences on the pages of the workspace. In particular, you can decide to apply a different theme than the theme of the host tiki site. However, you cannot use the Perspective to set special permissions on objects of the workspace. For that, you need to set category-level permissions, as described in the next section. |
1.1.6. Set custom permissions on the workspace | |
Setting permissions on a workspace is essentially the same as setting permissions on a category. Typically, you will start by creating one or more groups specifically for the workspace
Note Permissions are not always checked at the category level, it may be necessary to apply the permissions to a group at the global level. Because of this it may be useful to create group(s) that correspond to a category and categories that correspond to a perspective. Then if you have to assign a global permission it will affect only your Perspective. |
Caveat: workspaces, their split personalities, and how to prevent that | |
Well, that's pretty much it. You now have a way to collect objects together, and impose a perspective on top of them, that will make them look and behave in ways that are different from objects that reside in the host tiki site. But actually, it's not quite that simple. The problem is that although the workspace's perspective is set up to act as a "jail" for the workspace's category, the objects in the category are not in fact forced to behave in the way specified by the perspective. In a way, the "Category jail" property of a Perspective is a bit of a misnomer, because it implies that it's the Perspective that's restricting the category. But in fact, it's more like the other way around: it's the list of categories specified in the "category jail" field that are restricting where the Perspective is allowed to search and create pages. As a matter of fact, objects in a category can be subjected to any number of Perspectives, even ones for which the category is not listed in the Perspective's category jail attribute. It's a little bit as though workspaces have split personalities, and can change their appearance and settings in unpredictable ways, which can have somewhat counterintuitive and undesirable side effects. For example, if you go to a page in workspace A of a tiki site, then that workspace's Perspective will be activated. If that page contains a link to a page in a different workspace B of the same tiki site, then that page will be displayed, but using the Perspective of workspace A! This is usually not what you would want. One way to deal with this issue is to make the tiki site be multi-domain. This assumes that you have more than one internet domains at your disposal. You do this as follows:
|
Open questions | |
Q: When new users register, can they tell the admin which workspace they are asking to be registered for?
aliases
Workspace howto | WS howto | WShowto| WS tutorial | Workspace Tutorial | Workspaces Tutorial | Workspaces howto |