1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package org.kuali.rice.krad.uif.element;
17
18 import org.apache.commons.lang.StringUtils;
19 import org.kuali.rice.krad.datadictionary.parse.BeanTag;
20 import org.kuali.rice.krad.datadictionary.parse.BeanTagAttribute;
21 import org.kuali.rice.krad.uif.CssConstants;
22 import org.kuali.rice.krad.uif.UifConstants;
23 import org.kuali.rice.krad.uif.component.Component;
24 import org.kuali.rice.krad.uif.lifecycle.ViewLifecycle;
25 import org.kuali.rice.krad.uif.util.LifecycleElement;
26 import org.kuali.rice.krad.uif.view.View;
27
28
29
30
31
32
33
34
35
36
37 @BeanTag(name = "viewHeader-bean", parent = "Uif-ViewHeader")
38 public class ViewHeader extends Header {
39
40 private Message areaTitleMessage;
41 private Message supportTitleMessage;
42 private Message metadataMessage;
43 private boolean sticky;
44
45
46
47
48
49
50
51 @Override
52 public void performFinalize(Object model, LifecycleElement parent) {
53 super.performFinalize(model, parent);
54
55 View view = ViewLifecycle.getView();
56 if (supportTitleMessage != null &&
57 view.getCurrentPage() != null && view.getCurrentPage().getHeader() != null &&
58 view.isUnifiedHeader()) {
59 Header pageHeader = view.getCurrentPage().getHeader();
60
61
62 pageHeader.addStyleClass(CssConstants.Classes.HIDE_HEADER_TEXT_STYLE_CLASS);
63
64 Message pageHeaderMessage = pageHeader.getRichHeaderMessage();
65
66 if (pageHeaderMessage != null && StringUtils.isBlank(supportTitleMessage.getMessageText())) {
67 pageHeaderMessage.addStyleClass(CssConstants.Classes.SUPPORT_TITLE_STYLE_CLASS);
68
69
70 supportTitleMessage = pageHeaderMessage;
71 } else if (StringUtils.isNotBlank(pageHeader.getHeaderText()) && StringUtils.isBlank(
72 supportTitleMessage.getMessageText())) {
73
74 supportTitleMessage.setMessageText(pageHeader.getHeaderText().trim());
75 }
76 }
77
78
79 if (this.getUpperGroup() == null && this.getLowerGroup() == null) {
80 this.getCssClasses().addAll(0, view.getContentContainerCssClasses());
81
82 if (this.isSticky()) {
83 this.addDataAttribute(UifConstants.DataAttributes.STICKY, "true");
84 }
85 }
86 }
87
88
89
90
91
92
93
94 @BeanTagAttribute(name = "areaTitleText")
95 public String getAreaTitleText() {
96 return areaTitleMessage.getMessageText();
97 }
98
99
100
101
102
103
104 public void setAreaTitleText(String areaTitle) {
105 areaTitleMessage.setMessageText(areaTitle);
106 }
107
108
109
110
111
112
113 @BeanTagAttribute(name = "areaTitleMessage", type = BeanTagAttribute.AttributeType.SINGLEBEAN)
114 public Message getAreaTitleMessage() {
115 return areaTitleMessage;
116 }
117
118
119
120
121
122
123 public void setAreaTitleMessage(Message areaTitleMessage) {
124 this.areaTitleMessage = areaTitleMessage;
125 }
126
127
128
129
130
131
132
133
134
135 @BeanTagAttribute(name = "supportTitleText")
136 public String getSupportTitleText() {
137 return supportTitleMessage.getMessageText();
138 }
139
140
141
142
143
144
145 public void setSupportTitleText(String supportTitle) {
146 supportTitleMessage.setMessageText(supportTitle);
147 }
148
149
150
151
152
153
154
155
156
157
158 @BeanTagAttribute(name = "supportTitleMessage", type = BeanTagAttribute.AttributeType.SINGLEBEAN)
159 public Message getSupportTitleMessage() {
160 return supportTitleMessage;
161 }
162
163
164
165
166
167
168 public void setSupportTitleMessage(Message supportTitleMessage) {
169 this.supportTitleMessage = supportTitleMessage;
170 }
171
172
173
174
175
176
177
178 @BeanTagAttribute(name = "metadataText")
179 public String getMetadataText() {
180 return metadataMessage.getMessageText();
181 }
182
183
184
185
186
187
188 public void setMetadataText(String metadataText) {
189 metadataMessage.setMessageText(metadataText);
190 }
191
192
193
194
195
196
197
198 @BeanTagAttribute(name = "metadataMessage", type = BeanTagAttribute.AttributeType.SINGLEBEAN)
199 public Message getMetadataMessage() {
200 return metadataMessage;
201 }
202
203
204
205
206
207
208 public void setMetadataMessage(Message metadataMessage) {
209 this.metadataMessage = metadataMessage;
210 }
211
212
213
214
215
216
217 @BeanTagAttribute(name = "sticky")
218 public boolean isSticky() {
219 return sticky;
220 }
221
222
223
224
225
226
227 public void setSticky(boolean sticky) {
228 this.sticky = sticky;
229 }
230 }