
META-INF.resources.definition.edit_definition_subscription_info.jsp Maven / Gradle / Ivy
<%--
/**
* SPDX-FileCopyrightText: (c) 2000 Liferay, Inc. https://liferay.com
* SPDX-License-Identifier: LGPL-2.1-or-later OR LicenseRef-Liferay-DXP-EULA-2.0.0-2023-06
*/
--%>
<%@ include file="/init.jsp" %>
<%
CPDefinitionSubscriptionInfoDisplayContext cpDefinitionSubscriptionInfoDisplayContext = (CPDefinitionSubscriptionInfoDisplayContext)request.getAttribute(WebKeys.PORTLET_DISPLAY_CONTEXT);
CPDefinition cpDefinition = cpDefinitionSubscriptionInfoDisplayContext.getCPDefinition();
long cpDefinitionId = cpDefinitionSubscriptionInfoDisplayContext.getCPDefinitionId();
List cpSubscriptionTypes = cpDefinitionSubscriptionInfoDisplayContext.getCPSubscriptionTypes();
String defaultCPSubscriptionType = StringPool.BLANK;
if (!cpSubscriptionTypes.isEmpty()) {
CPSubscriptionType firstCPSubscriptionType = cpSubscriptionTypes.get(0);
defaultCPSubscriptionType = firstCPSubscriptionType.getName();
}
boolean subscriptionEnabled = BeanParamUtil.getBoolean(cpDefinition, request, "subscriptionEnabled", false);
int subscriptionLength = BeanParamUtil.getInteger(cpDefinition, request, "subscriptionLength", 1);
String subscriptionType = BeanParamUtil.getString(cpDefinition, request, "subscriptionType", defaultCPSubscriptionType);
long maxSubscriptionCycles = BeanParamUtil.getLong(cpDefinition, request, "maxSubscriptionCycles");
boolean deliverySubscriptionEnabled = BeanParamUtil.getBoolean(cpDefinition, request, "deliverySubscriptionEnabled", false);
int deliverySubscriptionLength = BeanParamUtil.getInteger(cpDefinition, request, "deliverySubscriptionLength", 1);
String deliverySubscriptionType = BeanParamUtil.getString(cpDefinition, request, "deliverySubscriptionType", defaultCPSubscriptionType);
long deliveryMaxSubscriptionCycles = BeanParamUtil.getLong(cpDefinition, request, "deliveryMaxSubscriptionCycles");
String defaultCPSubscriptionTypeLabel = StringPool.BLANK;
String defaultDeliveryCPSubscriptionTypeLabel = StringPool.BLANK;
CPSubscriptionType cpSubscriptionType = cpDefinitionSubscriptionInfoDisplayContext.getCPSubscriptionType(subscriptionType);
CPSubscriptionType deliveryCPSubscriptionType = cpDefinitionSubscriptionInfoDisplayContext.getCPSubscriptionType(deliverySubscriptionType);
if (cpSubscriptionType != null) {
defaultCPSubscriptionTypeLabel = cpDefinitionSubscriptionInfoDisplayContext.getCPSubscriptionTypeLabel(subscriptionLength, cpSubscriptionType, locale);
}
if (deliveryCPSubscriptionType != null) {
defaultDeliveryCPSubscriptionTypeLabel = cpDefinitionSubscriptionInfoDisplayContext.getCPSubscriptionTypeLabel(deliverySubscriptionLength, deliveryCPSubscriptionType, locale);
}
CPSubscriptionTypeJSPContributor paymentCPSubscriptionTypeJSPContributor = cpDefinitionSubscriptionInfoDisplayContext.getCPSubscriptionTypeJSPContributor(subscriptionType);
CPSubscriptionTypeJSPContributor deliveryCPSubscriptionTypeJSPContributor = cpDefinitionSubscriptionInfoDisplayContext.getCPSubscriptionTypeJSPContributor(deliverySubscriptionType);
boolean ending = false;
boolean deliveryEnding = false;
if (maxSubscriptionCycles > 0) {
ending = true;
}
if (deliveryMaxSubscriptionCycles > 0) {
deliveryEnding = true;
}
%>
<%
for (CPSubscriptionType curCPSubscriptionType : cpSubscriptionTypes) {
%>
<%
}
%>
<%
for (CPSubscriptionType curCPSubscriptionType : cpSubscriptionTypes) {
CPSubscriptionTypeJSPContributor cpSubscriptionTypeJSPContributor = cpDefinitionSubscriptionInfoDisplayContext.getCPSubscriptionTypeJSPContributor(curCPSubscriptionType.getName());
if (cpSubscriptionTypeJSPContributor == null) {
continue;
}
%>
" id=" subscriptionTypeContributor<%= curCPSubscriptionType.getName() %>">
<%
cpSubscriptionTypeJSPContributor.render(cpDefinition, request, PipingServletResponseFactory.createPipingServletResponse(pageContext));
%>
<%
}
%>
function(val) {
var subscriptionEnabled = window.document.querySelector('# subscriptionEnabled');
if (!subscriptionEnabled.checked) {
return true;
}
if (subscriptionEnabled.checked && parseInt(val, 10) > 0) {
return true;
}
return false;
}
">
function(val) {
var subscriptionNeverEndsCheckbox = window.document.querySelector('# neverEnds');
if (subscriptionNeverEndsCheckbox && subscriptionNeverEndsCheckbox.checked) {
return true;
}
if (parseInt(val, 10) > 0) {
return true;
}
return false;
}
<%
for (CPSubscriptionType curCPSubscriptionType : cpSubscriptionTypes) {
%>
<%
}
%>
<%
for (CPSubscriptionType curCPSubscriptionType : cpSubscriptionTypes) {
CPSubscriptionTypeJSPContributor cpSubscriptionTypeJSPContributor = cpDefinitionSubscriptionInfoDisplayContext.getCPSubscriptionTypeJSPContributor(curCPSubscriptionType.getName());
if (cpSubscriptionTypeJSPContributor == null) {
continue;
}
%>
" id=" deliverySubscriptionTypeContributor<%= curCPSubscriptionType.getName() %>">
<%
cpSubscriptionTypeJSPContributor.render(cpDefinition, request, PipingServletResponseFactory.createPipingServletResponse(pageContext), false);
%>
<%
}
%>
function(val) {
var deliverySubscriptionEnabled = window.document.querySelector('# deliverySubscriptionEnabled');
if (!deliverySubscriptionEnabled.checked) {
return true;
}
if (deliverySubscriptionEnabled.checked && parseInt(val, 10) > 0) {
return true;
}
return false;
}
">
function(val) {
var deliveryNeverEndsCheckbox = window.document.querySelector('# deliveryNeverEnds');
if (deliveryNeverEndsCheckbox && deliveryNeverEndsCheckbox.checked) {
return true;
}
if (parseInt(val, 10) > 0) {
return true;
}
return false;
}
Liferay.provide(
window,
' selectSubscriptionType',
(element) => {
if (!element) {
return;
}
const subscriptionType = element.value;
let subscriptionTypeLabel = element.options[element.selectedIndex];
if (subscriptionTypeLabel) {
subscriptionTypeLabel = subscriptionTypeLabel.dataset.label;
}
Array.from(
document.getElementById(
' subscriptionTypeContributors'
).children
).forEach((child) => {
child.classList.add('hide');
});
const subscriptionTypeContributor = document.getElementById(
' subscriptionTypeContributor' +
subscriptionType
);
if (subscriptionTypeContributor) {
subscriptionTypeContributor.classList.remove('hide');
}
document.querySelector(
'# cycleLengthContainer .input-group-text'
).innerHTML = subscriptionTypeLabel;
}
);
Liferay.provide(
window,
' selectDeliverySubscriptionType',
(element) => {
if (!element) {
return;
}
const subscriptionType = element.value;
let subscriptionTypeLabel = element.options[element.selectedIndex];
if (subscriptionTypeLabel) {
subscriptionTypeLabel = subscriptionTypeLabel.dataset.label;
}
Array.from(
document.getElementById(
' deliverySubscriptionTypeContributors'
).children
).forEach((child) => {
child.classList.add('hide');
});
const deliverySubscriptionTypeContributor = document.getElementById(
' deliverySubscriptionTypeContributor' +
subscriptionType
);
if (deliverySubscriptionTypeContributor) {
deliverySubscriptionTypeContributor.classList.remove('hide');
}
document.querySelector(
'# deliveryCycleLengthContainer .input-group-text'
).innerHTML = subscriptionTypeLabel;
}
);
document
.getElementById(' neverEnds')
.addEventListener('change', (event) => {
const formValidator = Liferay.Form.get(
' fm'
).formValidator;
formValidator.validateField(
' maxSubscriptionCycles'
);
});
document
.getElementById(' deliveryNeverEnds')
.addEventListener('change', (event) => {
const formValidator = Liferay.Form.get(
' fm'
).formValidator;
formValidator.validateField(
' deliveryMaxSubscriptionCycles'
);
});
function neverEndsToggle() {
document
.querySelector(
'# neverEndsContainer .never-ends-content'
)
.classList.toggle('hide');
}
function deliveryNeverEndsToggle() {
document
.querySelector(
'# deliveryNeverEndsContainer .never-ends-content'
)
.classList.toggle('hide');
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy