<%-- /** * Copyright (c) 2000-present Liferay, Inc. All rights reserved. * * This library is free software; you can redistribute it and/or modify it under * the terms of the GNU Lesser General Public License as published by the Free * Software Foundation; either version 2.1 of the License, or (at your option) * any later version. * * This library is distributed in the hope that it will be useful, but WITHOUT * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more * details. */ --%> <%@ include file="/init.jsp" %> <% String redirect = ParamUtil.getString(request, "redirect"); long gadgetId = ParamUtil.getLong(request, "gadgetId"); Gadget gadget = null; try { gadget = GadgetLocalServiceUtil.getGadget(gadgetId); } catch (NoSuchGadgetException nsge) { } String portletCategoryNames = StringPool.BLANK; if (gadget != null) { portletCategoryNames = gadget.getPortletCategoryNames(); } String editorGadgetURL = ParamUtil.getString(request, "editorGadgetURL"); boolean editorGadget = false; String publishGadgetRedirect = StringPool.BLANK; if (Validator.isNotNull(editorGadgetURL)) { editorGadget = true; PortletURL publishGadgetRedirectURL = renderResponse.createRenderURL(); publishGadgetRedirectURL.setParameter("mvcPath", "/editor/publish_gadget_redirect.jsp"); publishGadgetRedirectURL.setWindowState(LiferayWindowState.POP_UP); publishGadgetRedirect = publishGadgetRedirectURL.toString(); } %>

function saveGadget() { submitForm(document.fm); } Liferay.Util.focusFormField(document.fm.name); var selectedPortletCategoryNamesNode = A.one('#portletCategoryNames'); var portletCategoryNames = selectedPortletCategoryNamesNode.val(); var selectedPortletCategoryNames = []; if (portletCategoryNames) { selectedPortletCategoryNames = portletCategoryNames.split(','); } var CategoryTreeNode = A.Component.create( { ATTRS: { category: { value: '' } }, EXTENDS: A.TreeNodeCheck, NAME: 'CategoryTreeNode' } ); var onCheckedChange = function(event) { var category = event.target.get('category') if (event.newVal) { if (A.Array.indexOf(selectedPortletCategoryNames, category) == -1) { selectedPortletCategoryNames.push(category); selectedPortletCategoryNamesNode.val(selectedPortletCategoryNames.join()); } } else { A.Array.removeItem(selectedPortletCategoryNames, category); selectedPortletCategoryNamesNode.val(selectedPortletCategoryNames.join()); } }; var treeView = new A.TreeView( { boundingBox: '#categoryTreeView', on: { '*:checkedChange': onCheckedChange }, type: 'normal' } ).render(); <% PortletLister portletLister = PortletListerFactoryUtil.getPortletLister(); portletLister.setIteratePortlets(false); portletLister.setThemeDisplay(themeDisplay); portletLister.setUser(user); TreeView treeView = portletLister.getTreeView(); for (TreeNodeView treeNodeView : treeView.getList()) { %> var category = '<%= treeNodeView.getObjId() %>'; var checked = ((<%= gadget == null %> && category == 'root//category.gadgets') || A.Array.indexOf(selectedPortletCategoryNames, category) > -1); var categoryTreeNode = new CategoryTreeNode( { alwaysShowHitArea: false, checked: checked, category: category, id: '<%= treeNodeView.getId() %>', label: '<%= UnicodeFormatter.toString(LanguageUtil.get(user.getLocale(), treeNodeView.getName())) %>', leaf: false } ); var parentNode = treeView.getNodeById('<%= treeNodeView.getParentId() %>') || treeView; parentNode.appendChild(categoryTreeNode); <% } %> treeView.expandAll(); <% if (gadget == null) { PortalUtil.addPortletBreadcrumbEntry(request, LanguageUtil.get(pageContext, "publish-gadget"), currentURL); } else { PortalUtil.addPortletBreadcrumbEntry(request, LanguageUtil.get(pageContext, "edit"), currentURL); } %>