1
22
23 package com.liferay.portlet.pollsdisplay.action;
24
25 import com.liferay.portal.kernel.portlet.ConfigurationAction;
26 import com.liferay.portal.kernel.util.Constants;
27 import com.liferay.portal.kernel.util.ParamUtil;
28 import com.liferay.portlet.PortletPreferencesFactoryUtil;
29 import com.liferay.portlet.polls.NoSuchQuestionException;
30 import com.liferay.portlet.polls.service.PollsQuestionServiceUtil;
31 import com.liferay.util.servlet.SessionErrors;
32 import com.liferay.util.servlet.SessionMessages;
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 config, ActionRequest req, ActionResponse res)
51 throws Exception {
52
53 try {
54 String cmd = ParamUtil.getString(req, Constants.CMD);
55
56 if (!cmd.equals(Constants.UPDATE)) {
57 return;
58 }
59
60 long questionId = ParamUtil.getLong(req, "questionId");
61
62 PollsQuestionServiceUtil.getQuestion(questionId);
63
64 String portletResource = ParamUtil.getString(
65 req, "portletResource");
66
67 PortletPreferences prefs =
68 PortletPreferencesFactoryUtil.getPortletSetup(
69 req, portletResource, true, true);
70
71 prefs.setValue("question-id", String.valueOf(questionId));
72
73 prefs.store();
74
75 SessionMessages.add(req, config.getPortletName() + ".doConfigure");
76 }
77 catch (NoSuchQuestionException nsqe) {
78 SessionErrors.add(req, nsqe.getClass().getName());
79 }
80 }
81
82 public String render(
83 PortletConfig config, RenderRequest req, RenderResponse res)
84 throws Exception {
85
86 return "/html/portlet/polls_display/configuration.jsp";
87 }
88
89 }