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 package info.magnolia.cms.util;
35
36 import info.magnolia.cms.core.Content;
37 import info.magnolia.cms.core.MetaData;
38
39 import java.util.Calendar;
40
41 import javax.jcr.Node;
42
43 import org.apache.commons.lang3.StringUtils;
44 import org.slf4j.Logger;
45 import org.slf4j.LoggerFactory;
46
47
48
49
50
51
52
53
54
55 @Deprecated
56 public class MetaDataUtil {
57 private static final Logger log = LoggerFactory.getLogger(MetaDataUtil.class);
58
59 public static String getPropertyValueString(Content content, String propertyName) {
60 return getPropertyValueString(content, propertyName, null);
61 }
62
63
64
65
66 public static String getPropertyValueString(Content content, String propertyName, String dateFormat) {
67 try {
68 if (propertyName.equals(MetaData.CREATION_DATE) || propertyName.equals(MetaData.LAST_MODIFIED) || propertyName.equals(MetaData.LAST_ACTION)) {
69 final Calendar date;
70 if (propertyName.equals(MetaData.CREATION_DATE)) {
71 date = content.getMetaData().getCreationDate();
72 } else if (propertyName.equals(MetaData.LAST_MODIFIED)) {
73 date = content.getMetaData().getModificationDate();
74 } else if (propertyName.equals(MetaData.LAST_ACTION)) {
75 date = content.getMetaData().getLastActionDate();
76 } else {
77 date = content.getMetaData().getDateProperty(propertyName);
78 }
79
80 if (date != null) {
81 return DateUtil.format(date.getTime(), dateFormat);
82 }
83 } else if (propertyName.equals(MetaData.ACTIVATED)) {
84 return Boolean.toString(content.getMetaData().getBooleanProperty(propertyName));
85 } else {
86 return content.getMetaData().getStringProperty(propertyName);
87 }
88 } catch (Exception e) {
89 log.debug("Exception caught: {}", e.getMessage(), e);
90 }
91 return StringUtils.EMPTY;
92 }
93
94
95
96
97 public static String getActivationStatusIcon(Content content) {
98 return getActivationStatusIcon(content.getJCRNode());
99 }
100
101
102
103
104
105
106
107 public static String getActivationStatusIcon(Node node) {
108
109 MetaData metaData = info.magnolia.jcr.util.MetaDataUtil.getMetaData(node);
110 String iconFileName;
111 switch (metaData.getActivationStatus()) {
112 case MetaData.ACTIVATION_STATUS_MODIFIED:
113 iconFileName = "indicator_yellow.gif";
114 break;
115 case MetaData.ACTIVATION_STATUS_ACTIVATED:
116 iconFileName = "indicator_green.gif";
117 break;
118 default:
119 iconFileName = "indicator_red.gif";
120 }
121
122 return iconFileName;
123 }
124
125 }