1
22
23 package com.liferay.portlet.journalarticles.action;
24
25 import com.liferay.portal.NoSuchGroupException;
26 import com.liferay.portal.kernel.portlet.ConfigurationAction;
27 import com.liferay.portal.kernel.servlet.SessionErrors;
28 import com.liferay.portal.kernel.servlet.SessionMessages;
29 import com.liferay.portal.kernel.util.Constants;
30 import com.liferay.portal.kernel.util.ParamUtil;
31 import com.liferay.portal.service.GroupLocalServiceUtil;
32 import com.liferay.portlet.PortletPreferencesFactoryUtil;
33
34 import javax.portlet.ActionRequest;
35 import javax.portlet.ActionResponse;
36 import javax.portlet.PortletConfig;
37 import javax.portlet.PortletPreferences;
38 import javax.portlet.RenderRequest;
39 import javax.portlet.RenderResponse;
40
41
47 public class ConfigurationActionImpl implements ConfigurationAction {
48
49 public void processAction(
50 PortletConfig portletConfig, ActionRequest actionRequest,
51 ActionResponse actionResponse)
52 throws Exception {
53
54 try {
55 String cmd = ParamUtil.getString(actionRequest, Constants.CMD);
56
57 if (!cmd.equals(Constants.UPDATE)) {
58 return;
59 }
60
61 long groupId = ParamUtil.getLong(actionRequest, "groupId");
62 String type = ParamUtil.getString(actionRequest, "type");
63 String pageURL = ParamUtil.getString(actionRequest, "pageURL");
64 int pageDelta = ParamUtil.getInteger(actionRequest, "pageDelta");
65 String orderByCol = ParamUtil.getString(
66 actionRequest, "orderByCol");
67 String orderByType = ParamUtil.getString(
68 actionRequest, "orderByType");
69
70 GroupLocalServiceUtil.getGroup(groupId);
71
72 String portletResource = ParamUtil.getString(
73 actionRequest, "portletResource");
74
75 PortletPreferences preferences =
76 PortletPreferencesFactoryUtil.getPortletSetup(
77 actionRequest, portletResource);
78
79 preferences.setValue("group-id", String.valueOf(groupId));
80 preferences.setValue("type", type);
81 preferences.setValue("page-url", pageURL);
82 preferences.setValue("page-delta", String.valueOf(pageDelta));
83 preferences.setValue("order-by-col", orderByCol);
84 preferences.setValue("order-by-type", orderByType);
85
86 preferences.store();
87
88 SessionMessages.add(
89 actionRequest, portletConfig.getPortletName() + ".doConfigure");
90 }
91 catch (NoSuchGroupException nsge) {
92 SessionErrors.add(actionRequest, nsge.getClass().getName());
93 }
94 }
95
96 public String render(
97 PortletConfig portletConfig, RenderRequest renderRequest,
98 RenderResponse renderResponse)
99 throws Exception {
100
101 return "/html/portlet/journal_articles/configuration.jsp";
102 }
103
104 }