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.Date;
40
41 import org.apache.commons.lang.StringUtils;
42 import org.slf4j.Logger;
43 import org.slf4j.LoggerFactory;
44
45
46
47
48
49
50 public class MetaDataUtil {
51 private static final Logger log = LoggerFactory.getLogger(MetaDataUtil.class);
52
53 public static String getPropertyValueString(Content content, String propertyName) {
54 return getPropertyValueString(content, propertyName, null);
55 }
56
57
58
59
60
61 public static String getPropertyValueString(Content content, String propertyName, String dateFormat) {
62 try {
63 if (propertyName.equals(MetaData.CREATION_DATE) || propertyName.equals(MetaData.LAST_MODIFIED) || propertyName.equals(MetaData.LAST_ACTION)) {
64 Date date = content.getMetaData().getDateProperty(propertyName).getTime();
65
66 return DateUtil.format(date, dateFormat);
67 }
68 else if (propertyName.equals(MetaData.ACTIVATED)) {
69 return Boolean.toString(content.getMetaData().getBooleanProperty(propertyName));
70 }
71 else {
72 return content.getMetaData().getStringProperty(propertyName);
73 }
74 }
75 catch (Exception e) {
76 if (log.isDebugEnabled()) {
77 log.debug("Exception caught: " + e.getMessage(), e);
78 }
79 }
80 return StringUtils.EMPTY;
81 }
82
83 public static String getActivationStatusIcon(Content content) {
84 String imgSrc;
85 switch (content.getMetaData().getActivationStatus()) {
86 case MetaData.ACTIVATION_STATUS_MODIFIED :
87 imgSrc = "indicator_yellow.gif";
88 break;
89 case MetaData.ACTIVATION_STATUS_ACTIVATED :
90 imgSrc = "indicator_green.gif";
91 break;
92 default :
93 imgSrc = "indicator_red.gif";
94 }
95 return imgSrc;
96 }
97
98 }