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