liferay-look-and-feel_7_4_0.dtd: Elements - Entities - Source | Intro - Index
FRAMES / NO FRAMES

liferay-look-and-feel_7_4_0.dtd

<!DOCTYPE look-and-feel PUBLIC "-//Liferay//DTD Look and Feel 7.4.0//EN" "http://www.liferay.com/dtd/liferay-look-and-feel_7_4_0.dtd">



<look-and-feel> Root element

The look-and-feel element is the root of the deployment descriptor for a Liferay look and feel archive. The look and feel archive will hereafter be referred to as a LAF archive.

<look-and-feel>'s children
NameCardinality
company-limitOne or none
compatibilityOnly one
group-limitOne or none
themeAny number
Element's model:

(compatibility, company-limit?, group-limit?, theme*)


<compatibility> Child of look-and-feel

The compatibility element specifies a list of Liferay Portal versions that will properly deploy the themes in this LAF archive.

<compatibility>'s children
NameCardinality
versionAt least one
Element's model:

(version+)


<version> Child of compatibility

The version element specifies a specific Liferay Portal version number. For example, if its value is "3.5.0", that means the themes in this LAF archive will deploy correctly in Liferay Portal 3.5.0. The portal will not deploy themes from a LAF archive unless the version numbers match.


<company-limit> Child of look-and-feel

The company-limit element specifies a list of company ids that can access the themes in this LAF archive. If company-limit is not set, then every company in the portal has access to all of the themes in this LAF archive. If company-limit is set, then the company ids will be included or excluded based on the company-includes and company-excludes elements. If there is a disagreement between company-includes and company-excludes, company-excludes takes precedence.

<company-limit>'s children
NameCardinality
company-excludesOne or none
company-includesOne or none
Element's model:

(company-includes?, company-excludes?)


<company-includes> Child of company-limit

The company-includes element specifies a list of company ids that will have access to the themes in this LAF archive.

<company-includes>'s children
NameCardinality
company-idAny number
Element's model:

(company-id*)


<company-excludes> Child of company-limit

The company-excludes element specifies a list of company ids that will not have access to the themes in this LAF archive.

<company-excludes>'s children
NameCardinality
company-idAny number
Element's model:

(company-id*)


<company-id> Child of company-includes, company-excludes

The company-id element must have either the name or pattern attributes specified. If the name attribute is specified, then the exact company id is either included or excluded, depending on whether the company-id element is inside the company-includes element or company-excludes element. If the pattern attribute is specified, then a regular expression match is applied to the pattern which will determine whether a company id is included or excluded.

<company-id>'s attributes
NameValuesDefault
name
pattern

@name Attribute of company-id

See the comments in the company-id element.


@pattern Attribute of company-id

See the comments in the company-id element.


<group-limit> Child of look-and-feel

The group-limit element specifies a list of group ids that can access the themes in this LAF archive. If group-limit is not set, then every group in the portal has access to all of the themes in this LAF archive. If group-limit is set, then the group ids will be included or excluded based on the group-includes and group-excludes elements. If there is a disagreement between group-includes and group-excludes, group-excludes takes precedence.

<group-limit>'s children
NameCardinality
group-excludesOne or none
group-includesOne or none
Element's model:

(group-includes?, group-excludes?)


<group-includes> Child of group-limit

The group-includes element specifies a list of group ids that will have access to the themes in this LAF archive.

<group-includes>'s children
NameCardinality
group-idAny number
Element's model:

(group-id*)


<group-excludes> Child of group-limit

The group-excludes element specifies a list of group ids that will not have access to the themes in this LAF archive.

<group-excludes>'s children
NameCardinality
group-idAny number
Element's model:

(group-id*)


<group-id> Child of group-includes, group-excludes

The group-id element must have either the name or pattern attributes specified. If the name attribute is specified, then the exact group id is either included or excluded, depending on whether the group-id element is inside the group-includes element or group-excludes element. If the pattern attribute is specified, then a regular expression match is applied to the pattern which will determine whether a group id is included or excluded.

<group-id>'s attributes
NameValuesDefault
name
pattern

@name Attribute of group-id

See the comments in the group-id element.


@pattern Attribute of group-id

See the comments in the group-id element.


<theme> Child of look-and-feel

The theme element contains the declarative data of a theme.

<theme>'s children
NameCardinality
color-schemeAny number
control-panel-themeOne or none
css-pathOne or none
images-pathOne or none
javascript-pathOne or none
layout-templatesOne or none
page-themeOne or none
portlet-decoratorAny number
rolesOne or none
root-pathOne or none
settingsOne or none
template-extensionOne or none
templates-pathOne or none
virtual-pathOne or none
<theme>'s attributes
NameValuesDefault
id
name
Element's model:

(root-path?, templates-path?, css-path?, images-path?, javascript-path?, virtual-path?, template-extension?, settings?, control-panel-theme?, page-theme?, roles?, color-scheme*, layout-templates?, portlet-decorator*)


@id Attribute of theme

The id attribute specifies the unique key for a theme. For convenience, the id attribute can be referenced in the rest of the theme element as ${theme-id}.

Required


@name Attribute of theme

The name attribute specifies the friendly name of a theme that is displayed to the user.

Required


<root-path> Child of theme

The root-path value sets the location of the root path for the theme. For example, the root path for the Classic theme is "/classic". This means you can find the files for the Classic theme in /modules/frontend/frontend-theme-classic/src/META-INF/resources/classic.

For convenience, the root-path attribute can be referenced in the rest of the theme element as ${root-path}.

The default value is "/".


<templates-path> Child of theme

The templates-path value sets the location of the templates path for the theme. For example, the templates path for the Classic theme is "/classic/templates". This means you can find the JSP or VM templates for the Classic theme in /modules/frontend/frontend-theme-classic/src/META-INF/resources/classic/templates.

For convenience, the templates-path attribute can be referenced in the rest of the theme element as ${templates-path}.

The default value is "${root-path}/templates".


<css-path> Child of theme

The css-path value sets the location of the css path for the theme. For example, the css path for the Classic theme is "/classic/css". This means you can find css for the Classic theme in /modules/frontend/frontend-theme-classic/src/META-INF/resources/classic/css.

For convenience, the css-path attribute can be referenced in the rest of the theme element as ${css-path}.

The default value is "${root-path}/css".


<images-path> Child of theme

The images-path value sets the location of the images path for the theme. For example, the images path for the Classic theme is "/classic/images". This means you can find images for the Classic theme in /modules/frontend/frontend-theme-classic/src/META-INF/resources/classic/images.

For convenience, the images-path attribute can be referenced in the rest of the theme element as ${images-path}.

The default value is "${root-path}/images".


<javascript-path> Child of theme

The javascript-path value sets the location of the JavaScript path for the theme. For example, the JavaScript path for the Classic theme is "/classic/js". This means you can find JavaScript for the Classic theme in /modules/frontend/frontend-theme-classic/src/META-INF/resources/classic/js.

For convenience, the javascript-path attribute can be referenced in the rest of the theme element as ${javascript-path}.

The default value is "${root-path}/js".


<virtual-path> Child of theme

The virtual-path value sets the virtual path used to fetch the CSS, images, and JavaScript files. By default, the portal returns the theme's servlet path. This setting allows you to override it.

For example, suppose your theme is deployed to the servlet path "/test-theme" and your theme image-path is "/xyz/images". By default, the portal will return "/test-theme/xyz/images" for the path of the theme's images. You can override it by setting virtual-path to "/virtual" and have the portal return "/virtual/xyz/images". This is useful when you want all static files to be served by Apache for better performance.

The default value is "" which means this is not used.


<template-extension> Child of theme

The templates-extension value sets the file extension of the files located in the templates directory. If you specify the value "jsp", then the portal will look for files such as portal_normal.jsp in the templates directory. If you specify the value "ftl", then the portal will look for files such as portal_normal.ftl in the templates directory. Specifying "ftl" means you can use FreeMarker to create your theme. New extensions will be supported in the future to allow for even more flexibility in the creation of themes. Support for Velocity is deprecated and will not be available in future releases of the portal.

The default value is "ftl".


<settings> Child of theme

The settings element contain a list of settings that are available to the theme display object at runtime. They are described with a key value pair.

For example, you can access it with the command: themeDisplay.getThemeSetting("hello").

Include a CDATA section containing JavaScript to alter the behavior of the field, to bind advanced controls such as a color picker, or to perform validation. Use the token [

<settings>'s children
NameCardinality
settingAny number
Element's model:

(setting*)


<setting> Child of settings

See the comments in the settings element.

<setting>'s attributes
NameValuesDefault
configurable
key
options
type
value

@key Attribute of setting

Set the key attribute to specify the key.

Required


@value Attribute of setting

Set the value attribute to specify the default value.


@configurable Attribute of setting

Set the configurable attribute to true if the setting is configurable from the user interface at runtime. This allows administrators to change the settings for a page or a set of pages.


@type Attribute of setting

Set the type attribute to designate whether the HTML input for the setting is a checkbox, select, text, or textarea.


@options Attribute of setting

Set the options attribute with a comma delimited list to specify the options for the HTML input.


<control-panel-theme> Child of theme

Set the control-panel-theme value to true if the theme is designed for the Control Panel. The default value is false.


<page-theme> Child of theme

Set the page-theme value to true if the theme is designed for regular pages. The default value is true.


<roles> Child of theme

The roles element contains a list of role names. Users which have any of these roles will be able to use this theme for their layouts and layout sets. Anyone can use this theme if no role names are set.

<roles>'s children
NameCardinality
role-nameOnly one
Element's model:

(role-name)


<role-name> Child of roles

The role-name designates the name of a security role.


<color-scheme> Child of theme

A theme can have many color schemes. It works very similar to Windows. The Windows XP theme has one set of color schemes, and the Windows Classic theme has another set of color schemes. Each color scheme references a css class name and defines an image path for the location of the color scheme's images.

<color-scheme>'s children
NameCardinality
color-scheme-images-pathOne or none
css-classOnly one
default-csOne or none
<color-scheme>'s attributes
NameValuesDefault
id
name
Element's model:

(default-cs?, css-class, color-scheme-images-path?)


@id Attribute of color-scheme

The id attribute specifies the key for a color scheme that is unique for its parent theme. For convenience, the id attribute can be referenced in the rest of the color-scheme element as ${color-scheme-id}.

Required


@name Attribute of color-scheme

The name attribute specifies the friendly name of a color scheme that is displayed to the user.

Required


<default-cs> Child of color-scheme

Set the default-cs value to true if this is the default color scheme. The default value is false.


<css-class> Child of color-scheme

The css-class value is a css class name that represents the color scheme.

For convenience, the css-class attribute can be referenced in the rest of the color-scheme element as ${css-class}.


<color-scheme-images-path> Child of color-scheme

The color-scheme-images-path value sets the location of the images path for the color scheme.

For convenience, the color-scheme-images-path attribute can be referenced in the rest of the theme element as ${color-scheme-images-path}.

The default value is "${root-path}/images/color_schemes/${css-class}".


<layout-templates> Child of theme

See liferay-layout-templates_7_4_0.dtd.

<layout-templates>'s children
NameCardinality
customOne or none
standardOne or none
Element's model:

(standard?, custom?)


<standard> Child of layout-templates

See liferay-layout-templates_7_4_0.dtd.

<standard>'s children
NameCardinality
layout-templateAny number
Element's model:

(layout-template*)


<layout-template> Child of standard, custom

See liferay-layout-templates_7_4_0.dtd.

<layout-template>'s children
NameCardinality
template-pathOnly one
thumbnail-pathOne or none
<layout-template>'s attributes
NameValuesDefault
id
name
Element's model:

(template-path, thumbnail-path?)


@id Attribute of layout-template

See liferay-layout-templates_7_4_0.dtd.

Required


@name Attribute of layout-template

See liferay-layout-templates_7_4_0.dtd.


<template-path> Child of layout-template

See liferay-layout-templates_7_4_0.dtd.


<thumbnail-path> Child of layout-template

See liferay-layout-templates_7_4_0.dtd.


<custom> Child of layout-templates

See liferay-layout-templates_7_4_0.dtd.

<custom>'s children
NameCardinality
layout-templateAny number
Element's model:

(layout-template*)


<portlet-decorator> Child of theme

A theme can have many portlet decorators. A portlet decorator defines the style of the portlet borders.

<portlet-decorator>'s children
NameCardinality
default-portlet-decoratorOne or none
portlet-decorator-css-classOnly one
portlet-decorator-thumbnail-pathOne or none
<portlet-decorator>'s attributes
NameValuesDefault
id
name
Element's model:

(default-portlet-decorator?, portlet-decorator-css-class, portlet-decorator-thumbnail-path?)


@id Attribute of portlet-decorator

The id attribute specifies the key for a portlet decorator that is unique for its parent theme. For convenience, the id attribute can be referenced in the rest of the portlet decorator element as ${portlet-decorator-id}.

Required


@name Attribute of portlet-decorator

The name attribute specifies the friendly name of a portlet decorator that is displayed to the user.

Required


<default-portlet-decorator> Child of portlet-decorator

Set the default-portlet-decorator value to true if this is the default portlet decorator. The default value is false.


<portlet-decorator-css-class> Child of portlet-decorator

The portlet-decorator-css-class value is a css class name that represents the portlet-decorator.

For convenience, the portlet-decorator-css-class attribute can be referenced in the rest of the portlet-decorator-css-class element as ${portlet-decorator-css-class}.


<portlet-decorator-thumbnail-path> Child of portlet-decorator

The portlet-decorator-thumbnail-path value sets the location of the thumbnail path for the portlet-decorator.

The default value is "${root-path}/images/portlet_decorators/${portlet-decorator-css-class}".