All Downloads are FREE. Search and download functionalities are using the official Maven repository.

META-INF.resources.select_structure_field.jsp Maven / Gradle / Ivy

There is a newer version: 5.0.147
Show newest version
<%--
/**
 * 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 portletResource = ParamUtil.getString(request, "portletResource");
String className = ParamUtil.getString(request, "className");
long classTypeId = ParamUtil.getLong(request, "classTypeId");
String ddmStructureFieldName = ParamUtil.getString(request, "ddmStructureFieldName");
Serializable ddmStructureFieldValue = ParamUtil.getString(request, "ddmStructureFieldValue");
String eventName = ParamUtil.getString(request, "eventName", liferayPortletResponse.getNamespace() + "selectDDMStructureField");

AssetRendererFactory assetRendererFactory = AssetRendererFactoryRegistryUtil.getAssetRendererFactoryByClassName(className);

ClassTypeReader classTypeReader = assetRendererFactory.getClassTypeReader();

ClassType classType = classTypeReader.getClassType(classTypeId, locale);

PortletURL portletURL = renderResponse.createRenderURL();

portletURL.setParameter("mvcPath", "/select_structure_field.jsp");
portletURL.setParameter("portletResource", portletResource);
portletURL.setParameter("className", className);
portletURL.setParameter("classTypeId", String.valueOf(classTypeId));
%>

<% String label = field.getLabel(); String name = field.getName(); long ddmStructureId = field.getClassTypeId(); %> " data-form-id="<%= renderResponse.getNamespace() + name + "fieldForm" %>" name="selectStructureFieldSubtype" type="radio" <%= name.equals(ddmStructureFieldName) ? "checked" : StringPool.BLANK %> /> <% String fieldsNamespace = StringUtil.randomId(); %> <% com.liferay.dynamic.data.mapping.storage.Field ddmField = new com.liferay.dynamic.data.mapping.storage.Field(); ddmField.setDefaultLocale(themeDisplay.getLocale()); ddmField.setDDMStructureId(ddmStructureId); ddmField.setName(name); if (name.equals(ddmStructureFieldName)) { ddmField.setValue(themeDisplay.getLocale(), ddmStructureFieldValue); } %> <% Map data = new HashMap(); data.put("fieldsnamespace", fieldsNamespace); data.put("form", renderResponse.getNamespace() + name + "fieldForm"); data.put("label", label); data.put("name", name); %>
var Util = Liferay.Util; var structureFormContainer = A.one('#selectDDMStructureFieldForm'); var fieldSubtypeForms = structureFormContainer.all('form'); var toggleDisabledFormFields = function(form, state) { Util.toggleDisabled(form.all('input, select, textarea'), state); }; var submitForm = function(applyButton) { var result = Util.getAttributes(applyButton, 'data-'); var fieldsnamespace = result.fieldsnamespace; var ddmForm = Liferay.component('' + fieldsnamespace + 'ddmForm'); ddmForm.updateDDMFormInputValue(); var form = A.one('#' + result.form); A.io.request( form.attr('action'), { dataType: 'JSON', form: { id: form }, on: { success: function(event, id, obj) { var respondData = this.get('responseData'); var message = A.one('#message'); if (respondData.success) { result.className = '<%= AssetPublisherUtil.getClassName(assetRendererFactory) %>'; result.displayValue = respondData.displayValue; result.value = respondData.value; message.hide(); Util.getOpener().Liferay.fire('<%= HtmlUtil.escapeJS(eventName) %>', result); Util.getWindow().destroy(); } else { message.show(); } } } } ); }; structureFormContainer.delegate( 'click', function(event) { submitForm(event.currentTarget); }, '.selector-button' ); structureFormContainer.delegate( 'submit', function(event) { var buttonId = event.currentTarget.one('#buttonId').attr('value'); submitForm(structureFormContainer.one('#' + buttonId)); }, 'form' ); A.one('#classTypeFieldsSearchContainer').delegate( 'click', function(event) { var target = event.currentTarget; var buttonId = target.attr('data-button-id'); var formId = target.attr('data-form-id'); Util.toggleDisabled(structureFormContainer.all('.selector-button'), true); Util.toggleDisabled('#' + buttonId, false); toggleDisabledFormFields(fieldSubtypeForms, true); toggleDisabledFormFields(A.one('#' + formId), false); }, 'input[name=selectStructureFieldSubtype]' );




© 2015 - 2025 Weber Informatics LLC | Privacy Policy