Additional customisations for a complete integration

Information

To get the best integration between Sakai and SakaiAdminX, there are a few extra tasks you should perform to your Sakai environment. These will also ensure that Sakai and SakaiAdminX don't get out of sync.

Disable users creating their own sites.

This is a simple task performed in the Admin Workspace. Using the Sites tool, find the !user site and remove the Worksite Setup item. This will remove the ability for users to create their own sites from their My Workspace site. You might also want to delete all existing My Workspace sites - these will be recreated the next time a user logs in and will inherit the changes you made to the !user site.

Customise the Admin Workspace

You should also remove a few tools from the Admin Workspace, to prevent anyone thats in the /site/!admin realm with admin access from addin/removing sites in Sakai without doing it via SakaiAdminX.
This is safe because if you do really need to make these changes, you can still use the admin account and do it in the admin My Workspace (as that site by default has all the tools).

From the Admin Workspace, click Sites, find !admin, click Pages and remove the following pages:

  • Sites
  • Realms
  • My Workspace

This will prevent anyone with admin access from adding/removing sites which will get SakaiAdminX out of sync with Sakai If you do need to do this, you can still use the admin account.

If using the admin account to make changes to sites...

Any changes you make using the admin account in the My Workspace site, like creating/removing sites, will not be reflected in SakaiAdminX and will get it out of sync. Some changes you make can be fixed using the site mapping check utility in SakaiAdminX, but not all. Only do it if you really need to and know what you are doing.

Customise Site Info to disable creating/deleting of sites and adding/removing users

You should make the following changes to the Site Info tool so that instructors of sites cannot edit/create sites or add remove users without doing it via SakaiAdminX:

Open for editing:

SAKAI-SRC/site-manage/site-manage-tool/tool/src/java/org/sakaiproject/site/tool/SiteAction.java

Find the following blocks of code and comment them out:

  • Edit Site Information
    b.add(new MenuEntry(rb.getString("java.editsite"),
    	"doMenu_edit_site_info"));
    
  • Add Participants
    b.add(new MenuEntry(rb.getString("java.addp"),
    	"doMenu_siteInfo_addParticipant"));
    
  • Manage Access
    b.add(new MenuEntry(rb.getString("java.siteaccess"),
    	"doMenu_edit_site_access"));
    
  • Duplicate Site
    b.add(new MenuEntry(rb.getString("java.duplicate"),
    	"doMenu_siteInfo_duplicate"));
    

Finally, add the following block of code in order to add a link to the Site Profile for this site to the Site Info tool (a few extra lines either side have been included to show you where you can put it):

if (!isMyWorkspace) {
        b.add(new MenuEntry(rb.getString("java.editsite"),
 	"doMenu_edit_site_info"));
}
					

/* ADD THE FOLLOWING LINES */
				
MenuEntry siteProfile = new MenuEntry("Manage Site", "");
siteProfile.setUrl("http://your.sakaiadminx.server/sakaiadminx/site/profile/" + siteId);
b.add(siteProfile);
					
/* END OF ADDING CUSTOM LINK */				
b.add(new MenuEntry(rb.getString("java.edittools"),
 	"doMenu_edit_site_tools"));

You can optionally remove the list of Site Participants by doing the following:
Open for editing:

SAKAI-SRC/site-manage/site-manage-tool/tool/src/webapp/vm/sitesetup/chef_site-siteInfo-list.vm

And comment out the following block:

*if ($!allowUpdate || $allowUpdateSiteMembership || $!viewRoster)
.
.
.
#end

This block is quite large and the final #end statement is right at the bottom just before the closing div tag.

Also, since its a velocity template, comments are like so:

#*
this is commented out
*#

After this, you will need to rebuild and redeploy the site-manage project in Sakai. This doesn't need a restart of Sakai though.

After your edits you will have a Site Info tool that looks like this:

Note: I've added some static text in the velocity template as well (To manage this site.... etc - see picture)