forked from liferay/liferay-portal
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathliferay-look-and-feel_7_4_0.dtd
450 lines (376 loc) · 13.8 KB
/
liferay-look-and-feel_7_4_0.dtd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
<!--
<!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">
-->
<!--
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.
-->
<!ELEMENT look-and-feel (compatibility, company-limit?, group-limit?, theme*)>
<!--
The compatibility element specifies a list of Liferay Portal versions that will
properly deploy the themes in this LAF archive.
-->
<!ELEMENT compatibility (version+)>
<!--
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.
-->
<!ELEMENT version (#PCDATA)>
<!--
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.
-->
<!ELEMENT company-limit (company-includes?, company-excludes?)>
<!--
The company-includes element specifies a list of company ids that will have
access to the themes in this LAF archive.
-->
<!ELEMENT company-includes (company-id*)>
<!--
The company-excludes element specifies a list of company ids that will not have
access to the themes in this LAF archive.
-->
<!ELEMENT company-excludes (company-id*)>
<!--
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.
-->
<!ELEMENT company-id (#PCDATA)>
<!--
See the comments in the company-id element.
-->
<!ATTLIST company-id
name CDATA #IMPLIED
pattern CDATA #IMPLIED
>
<!--
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.
-->
<!ELEMENT group-limit (group-includes?, group-excludes?)>
<!--
The group-includes element specifies a list of group ids that will have access
to the themes in this LAF archive.
-->
<!ELEMENT group-includes (group-id*)>
<!--
The group-excludes element specifies a list of group ids that will not have
access to the themes in this LAF archive.
-->
<!ELEMENT group-excludes (group-id*)>
<!--
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.
-->
<!ELEMENT group-id (#PCDATA)>
<!--
See the comments in the group-id element.
-->
<!ATTLIST group-id
name CDATA #IMPLIED
pattern CDATA #IMPLIED
>
<!--
The theme element contains the declarative data of a theme.
-->
<!ELEMENT theme (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*)>
<!--
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}.
-->
<!ATTLIST theme
id CDATA #REQUIRED
>
<!--
The name attribute specifies the friendly name of a theme that is displayed to
the user.
-->
<!ATTLIST theme
name CDATA #REQUIRED
>
<!--
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 "/".
-->
<!ELEMENT root-path (#PCDATA)>
<!--
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".
-->
<!ELEMENT templates-path (#PCDATA)>
<!--
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".
-->
<!ELEMENT css-path (#PCDATA)>
<!--
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".
-->
<!ELEMENT images-path (#PCDATA)>
<!--
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".
-->
<!ELEMENT javascript-path (#PCDATA)>
<!--
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.
-->
<!ELEMENT virtual-path (#PCDATA)>
<!--
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".
-->
<!ELEMENT template-extension (#PCDATA)>
<!--
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 [@NAMESPACE@] in conjunction with the key of the
setting in order to identify the field from JavaScript.
For example, you can access the html field of the setting with:
AUI().one('#[@NAMESPACE@]hello')
-->
<!ELEMENT settings (setting*)>
<!--
See the comments in the settings element.
-->
<!ELEMENT setting (#PCDATA)>
<!--
Set the key attribute to specify the key.
-->
<!ATTLIST setting
key CDATA #REQUIRED
>
<!--
Set the value attribute to specify the default value.
-->
<!ATTLIST setting
value CDATA #IMPLIED
>
<!--
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.
-->
<!ATTLIST setting
configurable CDATA #IMPLIED
>
<!--
Set the type attribute to designate whether the HTML input for the setting is a
checkbox, select, text, or textarea.
-->
<!ATTLIST setting
type CDATA #IMPLIED
>
<!--
Set the options attribute with a comma delimited list to specify the options for
the HTML input.
-->
<!ATTLIST setting
options CDATA #IMPLIED
>
<!--
Set the control-panel-theme value to true if the theme is designed for the
Control Panel. The default value is false.
-->
<!ELEMENT control-panel-theme (#PCDATA)>
<!--
Set the page-theme value to true if the theme is designed for regular pages. The
default value is true.
-->
<!ELEMENT page-theme (#PCDATA)>
<!--
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.
-->
<!ELEMENT roles (role-name)>
<!--
The role-name designates the name of a security role.
-->
<!ELEMENT role-name (#PCDATA)>
<!--
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.
-->
<!ELEMENT color-scheme (default-cs?, css-class, color-scheme-images-path?)>
<!--
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}.
-->
<!ATTLIST color-scheme
id CDATA #REQUIRED
>
<!--
The name attribute specifies the friendly name of a color scheme
that is displayed to the user.
-->
<!ATTLIST color-scheme
name CDATA #REQUIRED
>
<!--
Set the default-cs value to true if this is the default color scheme. The
default value is false.
-->
<!ELEMENT default-cs (#PCDATA)>
<!--
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}.
-->
<!ELEMENT css-class (#PCDATA)>
<!--
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}".
-->
<!ELEMENT color-scheme-images-path (#PCDATA)>
<!--
See liferay-layout-templates_7_4_0.dtd.
-->
<!ELEMENT layout-templates (standard?, custom?)>
<!--
See liferay-layout-templates_7_4_0.dtd.
-->
<!ELEMENT standard (layout-template*)>
<!--
See liferay-layout-templates_7_4_0.dtd.
-->
<!ELEMENT layout-template (template-path, thumbnail-path?)>
<!--
See liferay-layout-templates_7_4_0.dtd.
-->
<!ATTLIST layout-template
id CDATA #REQUIRED
name CDATA #IMPLIED
>
<!--
See liferay-layout-templates_7_4_0.dtd.
-->
<!ELEMENT template-path (#PCDATA)>
<!--
See liferay-layout-templates_7_4_0.dtd.
-->
<!ELEMENT thumbnail-path (#PCDATA)>
<!--
See liferay-layout-templates_7_4_0.dtd.
-->
<!ELEMENT custom (layout-template*)>
<!--
A theme can have many portlet decorators. A portlet decorator defines the style
of the portlet borders.
-->
<!ELEMENT portlet-decorator (default-portlet-decorator?,
portlet-decorator-css-class,
portlet-decorator-thumbnail-path?)>
<!--
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}.
-->
<!ATTLIST portlet-decorator
id CDATA #REQUIRED
>
<!--
The name attribute specifies the friendly name of a portlet decorator that is
displayed to the user.
-->
<!ATTLIST portlet-decorator
name CDATA #REQUIRED
>
<!--
Set the default-portlet-decorator value to true if this is the default portlet
decorator. The default value is false.
-->
<!ELEMENT default-portlet-decorator (#PCDATA)>
<!--
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}.
-->
<!ELEMENT portlet-decorator-css-class (#PCDATA)>
<!--
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}".
-->
<!ELEMENT portlet-decorator-thumbnail-path (#PCDATA)>