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