1
14
15 package com.liferay.portlet.imagegallery.asset;
16
17 import com.liferay.portal.kernel.portlet.LiferayPortletRequest;
18 import com.liferay.portal.kernel.portlet.LiferayPortletResponse;
19 import com.liferay.portal.kernel.util.HtmlUtil;
20 import com.liferay.portal.security.permission.ActionKeys;
21 import com.liferay.portal.theme.ThemeDisplay;
22 import com.liferay.portal.util.PortletKeys;
23 import com.liferay.portal.util.WebKeys;
24 import com.liferay.portlet.asset.model.BaseAssetRenderer;
25 import com.liferay.portlet.imagegallery.model.IGImage;
26 import com.liferay.portlet.imagegallery.service.permission.IGPermission;
27
28 import javax.portlet.PortletURL;
29 import javax.portlet.RenderRequest;
30 import javax.portlet.RenderResponse;
31 import javax.portlet.WindowState;
32
33
38 public class IGImageAssetRenderer extends BaseAssetRenderer {
39
40 public IGImageAssetRenderer(IGImage image) {
41 _image = image;
42 }
43
44 public long getClassPK() {
45 return _image.getImageId();
46 }
47
48 public long getGroupId() {
49 return _image.getGroupId();
50 }
51
52 public String getSummary() {
53 return HtmlUtil.stripHtml(_image.getDescription());
54 }
55
56 public String getTitle() {
57 return _image.getName();
58 }
59
60 public PortletURL getURLEdit(
61 LiferayPortletRequest liferayPortletRequest,
62 LiferayPortletResponse liferayPortletResponse) {
63
64 ThemeDisplay themeDisplay =
65 (ThemeDisplay)liferayPortletRequest.getAttribute(
66 WebKeys.THEME_DISPLAY);
67
68 PortletURL editPortletURL = null;
69
70 if (IGPermission.contains(
71 themeDisplay.getPermissionChecker(),
72 themeDisplay.getScopeGroupId(), ActionKeys.ADD_IMAGE)) {
73
74 editPortletURL = liferayPortletResponse.createRenderURL(
75 PortletKeys.IMAGE_GALLERY);
76
77 editPortletURL.setParameter(
78 "struts_action", "/image_gallery/edit_image");
79 editPortletURL.setParameter(
80 "folderId", String.valueOf(_image.getFolderId()));
81 editPortletURL.setParameter(
82 "imageId", String.valueOf(_image.getImageId()));
83 }
84
85 return editPortletURL;
86 }
87
88 public String getURLViewInContext(
89 LiferayPortletRequest liferayPortletRequest,
90 LiferayPortletResponse liferayPortletResponse,
91 String noSuchEntryRedirect)
92 throws Exception {
93
94 PortletURL viewPortletURL = liferayPortletResponse.createRenderURL(
95 PortletKeys.IMAGE_GALLERY);
96
97 viewPortletURL.setWindowState(WindowState.MAXIMIZED);
98
99 viewPortletURL.setParameter("struts_action", "/image_gallery/view");
100 viewPortletURL.setParameter(
101 "groupId", String.valueOf(_image.getGroupId()));
102 viewPortletURL.setParameter(
103 "folderId", String.valueOf(_image.getFolderId()));
104
105 return viewPortletURL.toString();
106 }
107
108 public long getUserId() {
109 return _image.getUserId();
110 }
111
112 public String getViewInContextMessage() {
113 return "view-album";
114 }
115
116 public boolean isPrintable() {
117 return true;
118 }
119
120 public String render(
121 RenderRequest renderRequest, RenderResponse renderResponse,
122 String template) {
123
124 if (template.equals(TEMPLATE_ABSTRACT) ||
125 template.equals(TEMPLATE_FULL_CONTENT)) {
126
127 renderRequest.setAttribute(WebKeys.IMAGE_GALLERY_IMAGE, _image);
128
129 return "/html/portlet/image_gallery/asset/" + template + ".jsp";
130 }
131 else {
132 return null;
133 }
134 }
135
136 private IGImage _image;
137
138 }