<div class="registration-membership-summary registration_hide" data-modal-title='Test Are you sure' data-modal-subtitle='Subtitle' data-modal-primary='REMOVE' data-modal-secondary='CANCEL'>
<div class="title">
<h1 class="registration-form-title">
Membership details
</h1>
</div>
<div class="sub-title">
<h2 class="registration-membership-sub-title">Please check that the below information is correct before making payment.</h2>
</div>
<div class="registration-error registration-server-error registration_hide" role="alert">
<span class="registration-error-message">sitecore api error</span>
</div>
<div class="separator"></div>
<div class="minor-title">
<h2 class="registration-membership-minor-title">Membership</h2>
</div>
<div class="sub-title">
<h2 class="registration-form-sub-title">
</h2>
</div>
<div class="registration-membership-container" data-adult-mebership-count="Adult Membership x" data-junior-membership-count="Junior Membership x" data-england-supports-travel-club-expiring=" x England Supporters Travel Club expiring">
<div class="registration-member registration-member--primary">
<div class="bar"></div>
<div class="container">
<div class="heading">
<span class="heading__key">TOTAL COST</span>
<span class="heading__value">500.00</span>
</div>
<div class="detail">
<div class="info-template registration_hide">
<span class="info__key"></span>
<span class="info__value"></span>
</div>
<div class="info">
<span class="info__key">Adult Membership x1</span>
<span class="info__value">£5.00</span>
</div>
</div>
</div>
</div>
</div>
<div class="adults-memberships-container" data-adult-membership-details='Adult Membership Details'>
<div class="separator"></div>
<div class="registration-member registration-member--secondary-with-header">
<div class="bar"></div>
<div class="container">
<div class="heading">
<span class="heading__key">Junior Membership Details</span>
<span class="heading__value">500.00</span>
</div>
<div class="detail">
<div class="info-header registration_hide">
<span class="info__key">Name</span>
<span class="info__value">info-header-value</span>
</div>
<div class="info-template registration_hide">
<span class="info__key"></span>
<span class="info__value"></span>
</div>
<div class="info">
<span class="info__key">FAN</span>
<span class="info__value">DOB: 02/02/2002</span>
</div>
</div>
</div>
</div>
</div>
<div class="juniors-memberships-container">
<div class="separator"></div>
<div class="junior-membership-template registration_hide" data-order-item-id=''>
<div class="registration-member registration-member--secondary-with-header">
<div class="bar"></div>
<div class="container">
<div class="heading">
<span class="heading__key">Junior Membership Details</span>
<span class="heading__value">500.00</span>
</div>
<div class="detail">
<div class="info-header registration_hide">
<span class="info__key">Name</span>
<span class="info__value">info-header-value</span>
</div>
<div class="info-template registration_hide">
<span class="info__key"></span>
<span class="info__value"></span>
</div>
<div class="info">
<span class="info__key">FAN</span>
<span class="info__value">DOB: 02/02/2002</span>
</div>
</div>
</div>
</div>
<div id="fan">
<a id="remove-junior" class="link-button" href="javascript:void(0);">Remove Junior</a>
</div>
</div>
</div>
<div class="cta">
<div class="registration-membership-summary__pay" data-orderId=''>
<a role="button" href="/" class="cta cta--r-primary ">
<p>
PAY</p>
</a>
</div>
<div class="registration-membership-summary__add-junior">
<a role="button" href="/" class="cta cta--r-secondary ">
<p>
ADD JUNIOR</p>
</a>
</div>
</div>
</div>
No notes defined.
{
"title": {
"copy": "Membership details"
},
"sub-title-one": {
"copy": "Please check that the below information is correct before making payment."
},
"sub-title": {
"copy": ""
},
"minor-title": {
"copy": "Membership"
},
"total-cost": {
"copy": "TOTAL COST"
},
"adult-membershipx1": {
"copy": "Adult Membership x1"
},
"adult-membershipx1-price": {
"copy": "£75.00"
},
"total-cost-price": {
"copy": "£105.00"
},
"junior-membershipx1": {
"copy": "Junior Membership x1"
},
"junior-membershipx1-price": {
"copy": "£30.00"
},
"adult-membership-details": {
"copy": "Adult Membership details"
},
"adult-membership-name": {
"copy": "Name"
},
"adult-membership-name-detail": {
"copy": "Name of Adult"
},
"adult-membership-fan": {
"copy": "FAN"
},
"adult-membership-fan-detail": {
"copy": "47894344"
},
"remove-junior": {
"copy": "Remove Junior"
},
"popup-title": {
"copy": "Are you sure you want to remove junior?"
},
"popup-para": {
"copy": "Lorem ipsum dolor sit amet consectetur adipisicing elit. Voluptatum iste optio fugit totam mollitia? Quisquam impedit, provident ipsa fuga vel aspernatur ipsam unde labore quasi doloremque ea harum, amet possimus?"
},
"yes-button": {
"copy": "YES"
},
"no-button": {
"copy": "NO"
},
"btn-1": {
"copy": "PAY"
},
"btn-2": {
"copy": "ADD JUNIOR"
}
}
/* eslint-disable compat/compat */
/* eslint-disable operator-linebreak */
import { showRegistrationLoader } from '../../registration-loader/registration-loader';
import { hideClass } from '../../registration-error/registration-error';
import {
hideServerError,
showServerError,
} from '../../registration-server-error/registration-server-error';
import {
currentPage,
getNode,
onComponentVisible,
showStep,
parentChildList,
cloneElement,
nevigateToNext,
focusBackBtn,
} from '../../registrationUtility';
import {
GET,
membershipRegisterPath,
getMembershipOrderDetailPath,
removeJuniorRegistrationPath,
} from '../../service';
import {
handleConfirmPrimaryBtn,
conformDialogPrimaryBtn,
setDialogTitle,
setDialogSubTitle,
setConfirmDialogPrimaryCtaText,
setConfirmDialogSecondaryCtaText,
} from '../../registration-confirm-modal/registration-confirm-modal';
export default (
currentElement,
addJuniorOption,
registrationConfirmModalElement
) => {
const registrationMembershipContainer = currentElement.querySelector(
'.registration-membership-container'
);
const juniorMembershipSeparator = currentElement.querySelector(
'.juniors-memberships-container .separator'
);
const removeJuniorButton = currentElement.querySelector('.link-button');
const englandSupportsTravelClubExpiring = registrationMembershipContainer.getAttribute(
'data-england-supports-travel-club-expiring'
);
const adultMembershipCost = currentElement.querySelector(
'.registration-membership-container .detail .info .info__value'
);
const juniorMembershipCount = registrationMembershipContainer.getAttribute(
'data-junior-membership-count'
);
const totalCost = currentElement.querySelector(
'.registration-membership-container .heading__value'
);
const expirySubtitle = currentElement.querySelector(
'.registration-form-sub-title'
);
const [totalCostContainer, infoTemplate] = currentElement.querySelectorAll(
'.registration-membership-container .detail, .registration-membership-container .info-template'
);
const addJuniorBtn = currentElement.querySelector(
'.registration-membership-summary__add-junior .cta--r-secondary'
);
const haveJunior = addJuniorOption.querySelector(
'.registration-add-junior-option__yes '
);
const addJuniorBtnClicker = e => {
e.preventDefault();
if (addJuniorBtn.classList.contains('cta--r-secondary')) {
currentElement.classList.add(hideClass);
addJuniorOption.nextElementSibling.classList.remove(
'registration_skip',
'registration_hide'
);
nevigateToNext(addJuniorOption);
}
};
const generateJunior = juniorData => {
const juniorDetail = currentElement.querySelector(
'.junior-membership-template'
);
juniorData.forEach(element => {
const juniorClone = juniorDetail.cloneNode(true);
const [headingValue, infoValue] = juniorClone.querySelectorAll(
'.info-header .info__value, .info .info__value'
);
juniorClone.classList.add('junior-membership-container');
juniorClone.classList.remove('registration_hide');
juniorClone.classList.remove('junior-membership-template');
juniorClone.setAttribute('data-order-item-id', element.orderItemId);
headingValue.innerText = element.customerDisplayName;
infoValue.innerText = element.fanCode;
juniorDetail.parentElement.appendChild(juniorClone);
});
};
const juniorCostDetails = (orderData, adult, junior) => {
if (junior.length > 0) {
const juniorTotalCost = cloneElement(infoTemplate);
juniorMembershipSeparator.classList.remove(hideClass);
juniorTotalCost.classList.add('info', 'junior');
const [infoKey, infoValue] = juniorTotalCost.querySelectorAll(
'.info__key, .info__value'
);
infoKey.innerText = `${juniorMembershipCount}${junior.length}`;
if (adult.totalAmount) {
infoValue.innerText = `£${(
orderData.orderResponse.totalAmount - adult.totalAmount
).toFixed(2)}`;
} else {
infoValue.innerText = `£${orderData.orderResponse.totalAmount.toFixed(
2
)}`;
}
totalCostContainer.appendChild(juniorTotalCost);
} else {
juniorMembershipSeparator.classList.add(hideClass);
}
};
const addJuniorButton = junior => {
addJuniorBtn.classList.add('cta--r-disabled');
addJuniorBtn.classList.remove('cta--r-secondary');
const isValidJuniorCount =
haveJunior.getAttribute('data-junior').toLowerCase() === 'true' &&
junior.length < 5;
if (isValidJuniorCount) {
addJuniorBtn.classList.add('cta--r-secondary');
addJuniorBtn.classList.remove('cta--r-disabled');
}
addJuniorBtn.setAttribute('aria-disabled', !isValidJuniorCount);
addJuniorBtn.setAttribute('disabled', !isValidJuniorCount);
};
const removeJuniors = () => {
currentElement
.querySelectorAll('.junior-membership-container')
.forEach(element => element.remove());
};
const removeJuniorCost = () => {
currentElement
.querySelectorAll('.registration-membership-container .detail .junior')
.forEach(element => element.remove());
};
function triggerContentChange() {
const event = new Event('contentchange');
currentElement.dispatchEvent(event);
}
const removeJuniorRegistration = async (orderId, orderItemId) => {
const removeRes = await GET(
removeJuniorRegistrationPath(orderId, orderItemId)
);
if (removeRes.success) {
const { adult, junior } = parentChildList(
removeRes.orderResponse.orderItems,
removeRes.orderResponse.customerFancode
);
if (
removeRes.orderResponse.customerFancode !==
removeRes.orderResponse.orderItems[0].fanCode &&
junior.length === 1
) {
removeJuniorButton.classList.add(hideClass);
} else {
removeJuniorButton.classList.remove(hideClass);
}
removeJuniorCost();
removeJuniors();
totalCost.innerText = `£${removeRes.orderResponse.totalAmount.toFixed(
2
)}`;
expirySubtitle.innerText = `${
removeRes.orderResponse.orderItems.length
}${englandSupportsTravelClubExpiring} ${
removeRes.orderResponse.expiryDate
}`;
juniorCostDetails(removeRes, adult, junior);
generateJunior(junior);
addJuniorButton(junior);
triggerContentChange();
}
};
const controller = new AbortController();
let removeJuniorCtaClicked;
onComponentVisible(currentElement, async () => {
removeJuniorCtaClicked = false;
if (currentPage.isAdultRegistered === 'false') {
showStep('08');
}
focusBackBtn();
currentPage.page = currentElement;
hideServerError(currentElement);
const payBtn = currentElement.querySelector(
'.registration-membership-summary__pay'
);
totalCostContainer.getElementsByClassName('info')[0].classList.add('adult');
addJuniorBtn.addEventListener('click', e => addJuniorBtnClicker(e), {
signal: controller.signal,
});
const orderData = await GET(
getMembershipOrderDetailPath(payBtn.getAttribute('data-orderId'))
);
if (orderData.success) {
hideServerError(currentElement);
const { adult, junior } = parentChildList(
orderData.orderResponse.orderItems,
orderData.orderResponse.customerFancode
);
const adultCost = currentElement.querySelector(
'.registration-membership-container .detail .adult'
);
if (
orderData.orderResponse.customerFancode !==
orderData.orderResponse.orderItems[0].fanCode &&
junior.length === 1
) {
removeJuniorButton.classList.add(hideClass);
} else {
removeJuniorButton.classList.remove(hideClass);
}
const [
adultContainer,
adultMembershipTitle,
adultHeaderValue,
adultInfoValue,
] = currentElement.querySelectorAll(
'.adults-memberships-container,.adults-memberships-container .heading__key, .adults-memberships-container .info-header .info__value, .adults-memberships-container .info .info__value'
);
if (orderData.orderResponse.customerFancode === adult.fanCode) {
adultHeaderValue.innerText = adult.customerDisplayName;
adultInfoValue.innerText = adult.fanCode;
adultMembershipTitle.innerText = adultContainer.getAttribute(
'data-adult-membership-details'
);
adultMembershipCost.innerText = `£${adult.totalAmount.toFixed(2)}`;
} else {
adultContainer.classList.add('registration_hide');
adultCost.classList.add(hideClass);
}
totalCost.innerText = `£${orderData.orderResponse.totalAmount.toFixed(
2
)}`;
expirySubtitle.innerText = `${
orderData.orderResponse.orderItems.length
}${englandSupportsTravelClubExpiring} ${
orderData.orderResponse.expiryDate
}`;
removeJuniorCost();
removeJuniors();
generateJunior(junior);
triggerContentChange();
juniorCostDetails(orderData, adult, junior);
addJuniorButton(junior);
} else {
showServerError(currentElement, 'Could not find Order');
}
});
// eslint-disable-next-line func-names
currentElement.addEventListener('contentchange', () => {
// const modal = currentElement.querySelector('#remove-junior-modal');
// const yesBtn = currentElement.querySelector('.btn-yes');
// const noBtn = currentElement.querySelector('.btn-no');
let targetElement = null;
currentElement.querySelectorAll('.link-button').forEach(btn => {
btn.addEventListener('click', () => {
targetElement = btn.closest('.junior-membership-container');
setDialogTitle(currentElement.getAttribute('data-modal-title'));
setDialogSubTitle(currentElement.getAttribute('data-modal-subtitle'));
setConfirmDialogPrimaryCtaText(
currentElement.getAttribute('data-modal-primary')
);
setConfirmDialogSecondaryCtaText(
currentElement.getAttribute('data-modal-secondary')
);
registrationConfirmModalElement.showModal();
removeJuniorCtaClicked = true;
});
});
const payBtn = currentElement.querySelector(
'.registration-membership-summary__pay'
);
payBtn.addEventListener('click', async event => {
event.preventDefault();
const response = await GET(
membershipRegisterPath(payBtn.getAttribute('data-orderId'))
);
if (response.success) {
showRegistrationLoader();
const paymentRequest = response.paymentReq;
if (paymentRequest != null) {
getNode(
currentElement,
'#SmartPayRequest_MerchantReference'
).setAttribute('value', paymentRequest.merchantReference);
getNode(
currentElement,
'#SmartPayRequest_PaymentAmount'
).setAttribute('value', paymentRequest.paymentAmount);
getNode(currentElement, '#SmartPayRequest_Currency').setAttribute(
'value',
paymentRequest.currency
);
getNode(
currentElement,
'#SmartPayRequest_ShipBeforeDate'
).setAttribute('value', paymentRequest.shipBeforeDate);
getNode(
currentElement,
'#SmartPayRequest_MerchantSkinCode'
).setAttribute('value', paymentRequest.merchantSkinCode);
getNode(
currentElement,
'#SmartPayRequest_MerchantAccountCode'
).setAttribute('value', paymentRequest.merchantAccountCode);
getNode(
currentElement,
'#SmartPayRequest_SessionValidity'
).setAttribute('value', paymentRequest.sessionValidity);
getNode(
currentElement,
'#SmartPayRequest_MerchantReturnData'
).setAttribute('value', paymentRequest.merchantReturnData);
getNode(currentElement, '#SmartPayRequest_Email').setAttribute(
'value',
paymentRequest.email
);
getNode(currentElement, '#SmartPayRequest_FanCode').setAttribute(
'value',
paymentRequest.fanCode
);
getNode(currentElement, '#SmartPayRequest_Description').setAttribute(
'value',
paymentRequest.description
);
getNode(currentElement, '#SmartPayRequest_Country').setAttribute(
'value',
paymentRequest.country
);
getNode(
currentElement,
'#SmartPayRequest_ShopperLocale'
).setAttribute('value', paymentRequest.shopperLocale);
getNode(currentElement, '#SmartPayRequest_OrderData').setAttribute(
'value',
paymentRequest.orderData
);
getNode(
currentElement,
'#SmartPayRequest_MerchantSignature'
).setAttribute('value', paymentRequest.merchantSignature);
getNode(
currentElement,
'#SmartPayRequest_RecurringContract'
).setAttribute('value', paymentRequest.recurringContract);
// Smartpay Fuse request fields
getNode(
currentElement,
'#SmartPayFuseRequest_access_key'
).setAttribute('value', paymentRequest.accessKey);
getNode(
currentElement,
'#SmartPayFuseRequest_profile_id'
).setAttribute('value', paymentRequest.profileId);
getNode(
currentElement,
'#SmartPayFuseRequest_transaction_uuid'
).setAttribute('value', paymentRequest.transactionUuid);
getNode(
currentElement,
'#SmartPayFuseRequest_signed_field_names'
).setAttribute('value', paymentRequest.signedFieldNames);
getNode(
currentElement,
'#SmartPayFuseRequest_unsigned_field_names'
).setAttribute('value', paymentRequest.unsignedFieldNames);
getNode(
currentElement,
'#SmartPayFuseRequest_signed_date_time'
).setAttribute('value', paymentRequest.signedDateTime);
getNode(currentElement, '#SmartPayFuseRequest_locale').setAttribute(
'value',
paymentRequest.locale
);
getNode(
currentElement,
'#SmartPayFuseRequest_transaction_type'
).setAttribute('value', paymentRequest.transactionType);
getNode(
currentElement,
'#SmartPayFuseRequest_reference_number'
).setAttribute('value', paymentRequest.merchantReference);
getNode(currentElement, '#SmartPayFuseRequest_amount').setAttribute(
'value',
paymentRequest.paymentAmount
);
getNode(currentElement, '#SmartPayFuseRequest_currency').setAttribute(
'value',
paymentRequest.currency
);
getNode(
currentElement,
'#SmartPayFuseRequest_signature'
).setAttribute('value', paymentRequest.signature);
getNode(currentElement, '#PaymentForm').setAttribute(
'action',
paymentRequest.paymentGatewayUrl
);
getNode(currentElement, '#PaymentForm').submit();
}
} else {
showServerError(currentElement, response.error);
}
});
// yesBtn.addEventListener('click', async () => {
// if (targetElement) {
// removeJuniorRegistration(
// payBtn.getAttribute('data-orderId'),
// targetElement.getAttribute('data-order-item-id')
// );
// }
// modal.style.display = 'none';
// });
conformDialogPrimaryBtn.addEventListener('click', e => {
if (removeJuniorCtaClicked) {
e.preventDefault();
handleConfirmPrimaryBtn(() => {
removeJuniorRegistration(
payBtn.getAttribute('data-orderId'),
targetElement.getAttribute('data-order-item-id')
);
});
removeJuniorCtaClicked = false;
}
});
// noBtn.addEventListener('click', () => {
// modal.style.display = 'none';
// targetElement = null;
// });
});
};
.registration-membership-summary {
& > .cta {
margin-top: 40px;
gap: 24px;
.cta--r-secondary,
.cta--r-primary {
min-height: 44px;
font-size: 16px;
margin-bottom: 15px;
}
}
.registration-membership-minor-title {
font-family: $registration-font;
font-size: 16px;
line-height: 24px;
font-weight: 700;
}
.registration-form-sub-title {
margin-bottom: 24px;
margin-top: 0;
}
.info__key {
width: 50%;
}
.info__value {
text-transform: capitalize;
width: 50%;
text-align: right;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.registration-membership-sub-title {
font-family: $registration-font;
font-weight: 400;
font-size: 16px;
color: $light-blue;
line-height: 24px;
margin-top: 24px;
@media screen and (max-width: $mq-medium) {
font-size: 16px;
}
}
.membership-container {
margin-bottom: 32px;
border: 1px solid $blue-accent3;
border-radius: 8px;
background-color: $light-red;
}
.adult-membership-container {
margin-bottom: 20px;
height: 96px;
width: 100%;
border: 1px solid $blue-accent3;
border-top-right-radius: 8px;
border-bottom-right-radius: 8px;
background-color: $light-red;
}
.total-cost {
font-family: $registration-font;
font-size: 16px;
font-weight: 700;
line-height: 24px;
text-align: left;
color: $white;
padding-left: 17px;
}
.details-adult {
font-family: $registration-font;
font-size: 16px;
font-weight: 400;
line-height: 24px;
text-align: left;
color: $white;
padding-left: 17px;
}
.membership-details {
font-family: $registration-font;
font-size: 16px;
font-weight: 400;
line-height: 24px;
text-align: left;
color: $white;
padding-left: 17px;
}
.price {
font-family: $registration-font;
font-size: 16px;
font-weight: 400;
line-height: 24px;
text-align: right;
color: $white;
padding-right: 17px;
}
.membership-container .info {
padding: 4px;
display: flex;
justify-content: space-between;
align-items: center;
border-bottom: 1px solid $blue-accent4;
border-bottom-right-radius: 8px;
border-bottom-left-radius: 8px;
background-color: $blue-accent5;
}
.adult-membership-container .info {
padding: 3.6px;
display: flex;
justify-content: space-between;
align-items: center;
border-bottom: 1px solid $blue-accent4;
background-color: $blue-accent5;
}
.membership-container .info.total-cost {
background-color: $alto1;
border-top-left-radius: 8px;
border-top-right-radius: 8px;
}
.adult-membership-container .info.details-adult {
background-color: $alto1;
border-top-right-radius: 8px;
}
.membership-container .info:last-child {
border-bottom: none;
}
.adult-membership-container .info:last-child {
border-bottom: none;
border-bottom-right-radius: 8px;
}
.adult-membership-wrapper {
display: flex;
align-items: flex-start;
}
.left-border {
width: 8px;
height: 96px;
background-color: $blue-accent5;
border-radius: 2px, 0, 0, 2px;
margin-right: 3px;
}
.separator {
width: 100%;
height: 2px;
background-color: $blue-accent3;
margin: 24px 0;
border-radius: 2px;
}
.link-button {
color: $light-blue;
font-family: $registration-font;
font-size: 16px;
font-weight: 400;
line-height: 26px;
letter-spacing: -0.01em;
text-decoration: underline;
cursor: pointer;
}
.link-button:hover {
color: $white;
font-weight: 700;
}
#fan {
text-align: end;
margin-top: 16px;
margin-bottom: 50px;
}
.modal-remove {
position: fixed;
z-index: 1;
left: 0;
top: 0;
width: 100%;
height: 100%;
background-color: $light-black;
justify-content: center;
align-items: center;
overflow: hidden;
}
.modal-remove-content {
background-color: $white;
padding-top: 80px;
padding-left: 20px;
padding-right: 20px;
border: 1px solid $light-red1;
width: 90%;
max-height: 80vh;
max-width: 600px;
text-align: left;
top: 288px;
left: 416px;
overflow-y: auto;
border-radius: 8px 8px 8px 8px;
box-sizing: border-box;
}
.modal-remove-content h2 {
margin-bottom: 24px;
padding-bottom: 10px;
color: $dark-black;
font-family: $registration-font;
font-size: 26px;
font-weight: 400;
line-height: 28px;
letter-spacing: -0.01em;
text-align: left;
}
.modal-remove-content p {
color: $dark-black;
margin-bottom: 20px;
font-family: $registration-font;
font-size: 16px;
font-weight: 400;
line-height: 24px;
text-align: left;
}
.modal-remove-content .btn-remove-container {
display: flex;
justify-content: space-between;
flex-direction: column;
gap: 20px;
border-radius: 2px;
border: 1px;
margin-bottom: 24px;
}
.modal-remove-content .btn-remove-container button {
width: 100%;
padding: 10px;
border: none;
cursor: pointer;
border-radius: 4px;
font-size: 16px;
color: white;
transition: background-color 0.3s, color 0.3s, border 0.3s;
}
.modal-remove-content .btn-yes {
background-color: $red-rj;
font-family: $registration-font;
font-size: 16px;
font-weight: 700;
line-height: 26px;
letter-spacing: -0.01em;
text-align: center;
}
.modal-remove-content .btn-no {
background-color: $blue-accent6;
font-family: $registration-font;
font-size: 16px;
font-weight: 700;
line-height: 26px;
letter-spacing: -0.01em;
text-align: center;
}
.modal-remove-content .btn-yes:hover {
background-color: $white;
color: $blue;
border: 1px solid $blue;
}
.modal-remove-content .btn-no:hover {
background-color: $white;
color: $blue;
border: 1px solid $blue;
}
}
@media screen and (min-width: $mq-medium) {
.registration-membership-summary {
.modal-remove {
.modal-remove-content {
.btn-remove-container {
flex-direction: row;
}
}
}
}
}
@media screen and (max-width: $mq-medium) {
.registration-membership-summary {
.link-button {
padding: 16px 0;
}
}
}
<div class="registration-membership-summary registration_hide" data-modal-title='Test Are you sure' data-modal-subtitle='Subtitle' data-modal-primary='REMOVE' data-modal-secondary='CANCEL'>
<div class="title">
{{render '@registration-form-title' title}}
</div>
<div class="sub-title">
<h2 class="registration-membership-sub-title">{{sub-title-one.copy}}</h2>
</div>
{{!-- adding error --}}
{{render '@registration-server-error'}}
<div class="separator"></div>
<div class="minor-title">
<h2 class="registration-membership-minor-title">{{minor-title.copy}}</h2>
</div>
<div class="sub-title">
{{render '@registration-form-sub-title' sub-title}}
</div>
<div class="registration-membership-container" data-adult-mebership-count="Adult Membership x"
data-junior-membership-count="Junior Membership x"
data-england-supports-travel-club-expiring=" x England Supporters Travel Club expiring">
{{render '@registration-member' registration-mem-secondary merge="true"}}
</div>
<div class="adults-memberships-container" data-adult-membership-details='Adult Membership Details'>
<div class="separator"></div>
{{render '@registration-member--secondary-with-header' registration-mem-secondary merge="true"}}
</div>
<div class="juniors-memberships-container">
<div class="separator"></div>
<div class="junior-membership-template registration_hide" data-order-item-id=''>
{{render '@registration-member--secondary-with-header' registration-mem-secondary merge="true"}}
<div id="fan">
<a id="remove-junior" class="link-button" href="javascript:void(0);">Remove Junior</a>
</div>
</div>
</div>
<div class="cta">
<div class="registration-membership-summary__pay" data-orderId=''>
{{render '@cta--r-primary' btn-1 merge="true"}}
</div>
<div class="registration-membership-summary__add-junior">
{{render '@cta--r-secondary' btn-2 merge="true"}}
</div>
</div>
</div>