Administering Themes

Themes are sets of CSS and image files stored in a folder in the repository. The root of the repository and every organization has a Themes folder where active and inherited themes are stored. In the repository browser, the Themes folder and individual theme folders have special actions for administrators to manage them. You can also use the repository search to find CSS and image files.

The folders and actions for managing themes are visible only to administrators. The Themes folder has execute-only permission for ROLE_USER so that all users can load the theme files and see the user interface, but not access the folders and files in the repository.

This section gives the basic procedures for administering existing themes. To create theme folders and files, see Creating Themes. For information about how to work with CSS in themes, see Working With CSS Files.

Setting the System Theme

1. Log into JasperReports Server as system administrator (superuser in the professional edition; jasperadmin in other editions).
2. Click View > Repository and expand the Themes folder if necessary.
3. Right-click the new theme folder and select Set as Active Theme.

For example, the sample data includes a two themes called jasper_dark and pods_summer that you can set as active.

Setting a System Theme

As soon as the screen is refreshed, you see the effect of the new theme. Notice how the pods_summer theme changes the colors and the logo in the user interface with just the overrides_custom.css file and images.

The Sample Theme pods_summer

Because the system theme is set at the root level, the new theme appears to all users in all organizations, unless the organization has its own theme. Also, the system theme set here applies to the login page, as shown in the following figure.

The Login Page as Seen With the New System Theme

The following procedures assume that the system theme is still set to the default theme.

Setting an Organization Theme

Professional edition users can give different themes to their organizations.

1. Log into JasperReports Server as the organization admin (jasperadmin).

In a server licensed to use multiple organizations, specify the organization ID or alias on the login page.

2. Click View > Repository and expand the Themes folder if necessary. The organization’s Theme folder is shown in the following figure.

Organization Themes Seen by Organization Admin

3. Right-click the new theme folder name and select Set as Active Theme.

As soon as the screen is refreshed, you see the effect of the new theme. The new theme applies to all organization users and is inherited by all suborganizations, if any.

Organization admins can thus customize the user interface by creating and activating new themes within their organization.

Restricting Access to Themes

System admins may want to restrict access to themes, so that all themes are controlled from the system level.

This procedure only applies to system admins. Organization admins cannot modify the ROLE_ADMINSTRATOR permission, even in suborganizations. They must request that the system admin perform the procedure for them.

1. Log into JasperReports Server as system administrator (superuser or jasperadmin).
2. Click View > Repository. Community edition users can skip to step 5.
3. Expand the Organizations folder.
4. Locate the name of the organization where you want to restrict access to themes and expand its folder.
5. Right-click the Themes folder name and select Permissions.
6. Change the permission for the ROLE_ADMINISTRATOR from Administer to Execute Only.

Restricting jasperadmin Access to Organization Themes

By setting Execute Only access, the organization admins cannot see the Themes folder in the repository, and thus cannot change themes or create a new theme.

You shouldn’t change any other permissions on themes, even if the permissions dialog allows it. You could inadvertently make the user interface inaccessible.

7. To restrict access to all organizations, repeat step 4 to step 6 for every organization in the server, including suborganizations.
8. If you want to restrict access in the same way in all future organizations, repeat step 5 and step 6 in the Folder Template of every organization and suborganization in the server. Fore more information, see Placing Themes in the Folder Template.
Version: 
Feedback