Merge branch 'release/2025.01.23' into feature/CASH-109

This commit is contained in:
CarlNation 2025-01-22 06:26:44 -05:00
commit f0ac77680e
6 changed files with 152 additions and 14 deletions

View file

@ -226,7 +226,7 @@ export default {
if (this.buttonTypeString == "radio") {
classes += " radio-button-container";
} else if (this.buttonTypeString == "servicePackageRadio") {
classes = "package-wrapper col-md-4";
classes = "package-wrapper col";
}
if (this.buttonTypeString == "listCard" && this.buttonsInfo.length > 2) {

View file

@ -20,7 +20,7 @@
</div>
</div>
<div class="row justify-content-center">
<div class="col-md-12 col-xl-8 mb-5">
<div class="col-md-12 mb-5" :class="getColCount()">
<servicePackageQuestion
ref="servicePackage"
cashCmsWidgetName="CashServicePackageQuestionWidget"
@ -32,6 +32,7 @@
:shouldHideRecalibration="shouldHideRecalibration"
@vapsItemsSelected="vapsItemsSelectedAction"
@servicePackageDiscountSelected="servicePackageDiscountSelectedAction"
@currentNumberOfPackages="currentNumberOfPackagesAction"
:servicePackage="servicePackage"
:activePromos="lineItems.promos"
v-on="{ 'buttonEvent.openModal': openModalAction }"
@ -40,7 +41,7 @@
</div>
</div>
<div class="row justify-content-center">
<div class="col-md-12 col-xl-8 p-md-0">
<div class="col-md-12" :class="getColCount()">
<!-- If Cash AND vehicle does not require recal OR if Cash AND State requires showing recal, then show Afterpay banner -->
<afterpayModalBanner
v-if="showAfterpayBanner"
@ -443,6 +444,7 @@ export default {
showSaveProgressPopup: null,
showSaveProgressModal: null,
isSaveProgressComplete: null,
packageNumber: null,
};
},
mounted() {
@ -492,6 +494,16 @@ export default {
},
},
methods: {
getColCount() {
if (this.packageNumber > 2) {
return "col-xl-8";
} else {
return "col-xl-6";
}
},
currentNumberOfPackagesAction(packageNumber) {
this.packageNumber = packageNumber;
},
openModalAction(modalName) {
this.$refs[modalName].openModal();
},

View file

@ -150,6 +150,7 @@ export default {
: "Special: Save $" + this.getServicePackageDiscountPrice(),
},
}));
this.$emit("currentNumberOfPackages", modifiedAnswers.length);
return modifiedAnswers;
},
isServicePackageDiscountOnOrder() {

View file

@ -141,6 +141,9 @@ export default {
.package-main {
.package-wrapper {
margin: 1rem 0;
&:first-child {
margin: 1rem 0 0 0;
}
&:last-child {
margin: 1rem 0 0 0;
}
@ -148,6 +151,12 @@ export default {
margin: 1rem 0.5rem 0 0.5rem;
display: flex;
flex-direction: column;
&:first-child {
margin: 1rem 0.5rem 0 0;
}
&:last-child {
margin: 1rem 0 0 0.5rem;
}
}
label {

View file

@ -80,8 +80,9 @@ const routes = [
return;
}
const fromHeritage = getQuerystringParameter(queryStrings.FROM_HERITAGE) === "true";
const fromReturnUser = from?.name === fmgPageValues.RETURN_USER;
const fromContentSite = getQuerystringParameter(queryStrings.START_TYPE) === "fmg";
const toReturnUserPage = to.query?.fmgPage === fmgPageValues.RETURN_USER;
// Intercept all navigation if a submitted order exists in storage
if (window.sessionStorage.getItem("submittedOrder") !== null) {
@ -92,17 +93,16 @@ const routes = [
}
// On entering the funnel "fresh", read cookie information, decide what to do next.
else if (from.redirectedFrom === undefined || fromReturnUser) {
// if entering the funnel from non-funnel check and see if there is already a funnel cookie.
// if so, send them to return-user page
// if entering the funnel from the content site, check and see if there is already a funnel cookie.
// if so, send them to return-user page.
const funnelCookieLastTouched = getFunnelCookie()?.LastTouched;
if (
to?.query?.fmgPage !== fmgPageValues.RETURN_USER &&
!fromReturnUser &&
!fromHeritage &&
fromContentSite &&
funnelCookieLastTouched !== null &&
funnelCookieLastTouched !== undefined
funnelCookieLastTouched !== undefined &&
!toReturnUserPage
) {
log(" --navigate to return user");
log(" --from content site navigate to return user");
router.push({
path: "/",
query: { fmgPage: fmgPageValues.RETURN_USER },

View file

@ -83,7 +83,6 @@ export default {
.list-button-horizontal-content {
outline: none;
position: relative;
background: $white;
transition: all 150ms linear;
border: 1px solid $gray-500;
border-radius: 0;
@ -110,8 +109,8 @@ export default {
}
.list-button-horizontal-content:hover {
background-color: $blue-700;
color: $white;
background-color: transparent;
color: $blue;
box-shadow: none;
}
@ -220,4 +219,121 @@ export default {
}
}
}
// Special styles when there are multiple list-button-horizontal buttons
// (number of chips, pay w/cash/insurance)
.windshield-chip-count-question {
fieldset {
.d-flex {
.col {
&:first-child {
label {
&.list-group.list-button-horizontal {
z-index: 2;
&:hover {
background-color: $white;
border-top-left-radius: 0.5rem;
border-bottom-left-radius: 0.5rem;
border-top-right-radius: 0;
border-bottom-right-radius: 0;
}
}
}
}
}
}
}
fieldset {
.d-flex {
.col {
label {
&.list-group.list-button-horizontal {
&:hover {
background-color: $white;
border-radius: 0;
}
}
}
}
}
}
fieldset {
.d-flex {
.col {
&:last-child {
label {
&.list-group.list-button-horizontal {
z-index: 2;
&:hover {
background-color: $white;
border-top-right-radius: 0.5rem;
border-bottom-right-radius: 0.5rem;
border-top-left-radius: 0;
border-bottom-left-radius: 0;
}
}
}
}
}
}
}
}
//NOT Windshiled Chip Count
fieldset {
.d-flex {
.col {
&:first-child {
label {
&.list-group.list-button-horizontal {
z-index: 6;
&:hover {
background-color: $white;
border-top-left-radius: 0.5rem;
border-bottom-left-radius: 0.5rem;
border-top-right-radius: 0;
border-bottom-right-radius: 0;
}
}
}
}
}
}
}
fieldset {
.d-flex {
.col {
label {
&.list-group.list-button-horizontal {
&:hover {
background-color: $white;
border-radius: 0;
}
}
}
}
}
}
fieldset {
.d-flex {
.col {
&:last-child {
label {
&.list-group.list-button-horizontal {
z-index: 6;
&:hover {
background-color: $white;
border-top-right-radius: 0.5rem;
border-bottom-right-radius: 0.5rem;
border-top-left-radius: 0;
border-bottom-left-radius: 0;
}
}
}
}
}
}
}
</style>