1
19
20 package com.liferay.portlet.navigation.action;
21
22 import com.liferay.portal.kernel.portlet.BaseConfigurationAction;
23 import com.liferay.portal.kernel.servlet.SessionMessages;
24 import com.liferay.portal.kernel.util.Constants;
25 import com.liferay.portal.kernel.util.ParamUtil;
26 import com.liferay.portlet.PortletPreferencesFactoryUtil;
27
28 import javax.portlet.ActionRequest;
29 import javax.portlet.ActionResponse;
30 import javax.portlet.PortletConfig;
31 import javax.portlet.PortletPreferences;
32 import javax.portlet.RenderRequest;
33 import javax.portlet.RenderResponse;
34
35
41 public class ConfigurationActionImpl extends BaseConfigurationAction {
42
43 public void processAction(
44 PortletConfig portletConfig, ActionRequest actionRequest,
45 ActionResponse actionResponse)
46 throws Exception {
47
48 String cmd = ParamUtil.getString(actionRequest, Constants.CMD);
49
50 if (!cmd.equals(Constants.UPDATE)) {
51 return;
52 }
53
54 String displayStyle = ParamUtil.getString(
55 actionRequest, "displayStyle");
56 String bulletStyle = ParamUtil.getString(actionRequest, "bulletStyle");
57 String headerType = ParamUtil.getString(actionRequest, "headerType");
58 String rootLayoutType = ParamUtil.getString(
59 actionRequest, "rootLayoutType");
60 int rootLayoutLevel = ParamUtil.getInteger(
61 actionRequest, "rootLayoutLevel");
62 String includedLayouts = ParamUtil.getString(
63 actionRequest, "includedLayouts");
64 boolean nestedChildren = ParamUtil.getBoolean(
65 actionRequest, "nestedChildren");
66
67 String portletResource = ParamUtil.getString(
68 actionRequest, "portletResource");
69
70 PortletPreferences preferences =
71 PortletPreferencesFactoryUtil.getPortletSetup(
72 actionRequest, portletResource);
73
74 preferences.setValue("display-style", displayStyle);
75 preferences.setValue("bullet-style", bulletStyle);
76
77 if (displayStyle.equals("[custom]")) {
78 preferences.setValue("header-type", headerType);
79 preferences.setValue("root-layout-type", rootLayoutType);
80 preferences.setValue(
81 "root-layout-level", String.valueOf(rootLayoutLevel));
82 preferences.setValue("included-layouts", includedLayouts);
83 preferences.setValue(
84 "nested-children", String.valueOf(nestedChildren));
85 }
86
87 preferences.store();
88
89 SessionMessages.add(
90 actionRequest, portletConfig.getPortletName() + ".doConfigure");
91 }
92
93 public String render(
94 PortletConfig portletConfig, RenderRequest renderRequest,
95 RenderResponse renderResponse)
96 throws Exception {
97
98 return "/html/portlet/navigation/configuration.jsp";
99 }
100
101 }