diff --git a/azure-pipelines.yml b/azure-pipelines.yml
index 036eb3d23..f11da4951 100644
--- a/azure-pipelines.yml
+++ b/azure-pipelines.yml
@@ -30,6 +30,7 @@ resources:
variables:
- group: Digital-Infrastructure
+ - group: FixMyGlass-BuildBranches
stages:
# PR's
@@ -47,6 +48,7 @@ stages:
# Dev Build/Deploy
- ${{ else }}:
- stage: Dev
+ condition: eq(variables['Build.SourceBranch'], variables['dev-branch'] )
variables:
- group: FixMyGlassDev
jobs:
@@ -88,6 +90,7 @@ stages:
# QA Build/Deploy
- stage: Qa
+ condition: eq(variables['Build.SourceBranch'], variables['qa-branch'] )
variables:
- group: FixMyGlassQa
jobs:
diff --git a/src/common-components/dropdown-question/dropdown-question.vue b/src/common-components/dropdown-question/dropdown-question.vue
index 6d358d1e1..a64d873f9 100644
--- a/src/common-components/dropdown-question/dropdown-question.vue
+++ b/src/common-components/dropdown-question/dropdown-question.vue
@@ -105,6 +105,7 @@ export default {
.dropdown-question {
label {
color: $black;
+ font-weight: 500;
}
.form-label {
margin-bottom: .25rem;
diff --git a/src/common-components/loading-modal/loading-modal.vue b/src/common-components/loading-modal/loading-modal.vue
index bcdb4454c..741800792 100644
--- a/src/common-components/loading-modal/loading-modal.vue
+++ b/src/common-components/loading-modal/loading-modal.vue
@@ -10,7 +10,7 @@
Please wait...
- This process can take up 20 seconds.
+ This process can take up to 20 seconds.
diff --git a/src/common-components/textbox-question/textbox-question.vue b/src/common-components/textbox-question/textbox-question.vue
index fd7992064..3919388ce 100644
--- a/src/common-components/textbox-question/textbox-question.vue
+++ b/src/common-components/textbox-question/textbox-question.vue
@@ -52,13 +52,26 @@ export default {
default: '',
},
validationRules: String,
- cmsWidgetName: String,
+ cmsWidgetName: String
},
setup(props) {
+ const propsClone = Object.assign({}, props);
+ const modelValue = propsClone.modelValue;
+ let initialValue;
+
+ switch (typeof modelValue) {
+ case "number":
+ initialValue = modelValue;
+ break;
+ default:
+ initialValue = (modelValue && modelValue.length > 0) ? modelValue : "";
+ break;
+ }
+
const fieldOptions = {
type: "text",
- value: props.modelValue,
- initialValue: (props.modelValue && props.modelValue.length > 0) ? props.modelValue : "",
+ value: modelValue,
+ initialValue: initialValue
};
const {
@@ -124,6 +137,7 @@ export default {
.textbox-question {
label {
color: $black;
+ font-weight: 500;
}
input {
&.has-icon {
diff --git a/src/constants/error-messages.js b/src/constants/error-messages.js
index 963ba0b5d..a9f09326b 100644
--- a/src/constants/error-messages.js
+++ b/src/constants/error-messages.js
@@ -13,6 +13,7 @@ const errorMessages = {
ZIP_REQUIRED: "Please enter your ZIP",
ZIP_FORMAT: "Please enter a valid ZIP",
LICENSE_PLATE_REQUIRED: "Please enter your license plate number",
+ REGISTRATION_ZIP_REQUIRED: "Please enter your registration ZIP code",
FIRST_NAME_REQUIRED: "Please enter your first name",
LAST_NAME_REQUIRED: "Please enter your last name",
EMAIL_ADDRESS_REQUIRED: "Please enter your email address",
@@ -20,7 +21,7 @@ const errorMessages = {
SERVICE_ZIP_REQUIRED: "Please enter your Service ZIP",
SERVICE_ZIP_FORMAT: "Please enter a valid Service ZIP",
VIN_REQUIRED: "Please enter your VIN",
- VIN_FORMAT: "Please enter a valid VIN",
+ VIN_FORMAT: "Invalid VIN. Please make sure that you entered the correct 17-digit, alpha-numeric number. VINs do not contain the letters I, O, or Q",
OPTION_REQUIRED: "Please select an option",
};
diff --git a/src/helpers/damage-helper.js b/src/helpers/damage-helper.js
index a9b14b98d..f47499bed 100644
--- a/src/helpers/damage-helper.js
+++ b/src/helpers/damage-helper.js
@@ -26,7 +26,6 @@ export function getDamageString() {
export function getIsWindshieldOnly () {
const damageLocations = store.getters.damage.glassToReplace;
const returnString = damageLocations.length === 1 && damageLocations[0]?.location === "Windshield" ? "windshield" : "glass";
- console.log(damageLocations);
return returnString;
}
diff --git a/src/layouts/address-lookup/address-lookup.vue b/src/layouts/address-lookup/address-lookup.vue
index b6140be2f..d4072486c 100644
--- a/src/layouts/address-lookup/address-lookup.vue
+++ b/src/layouts/address-lookup/address-lookup.vue
@@ -8,7 +8,7 @@
-
+
diff --git a/src/layouts/estimate/estimate.vue b/src/layouts/estimate/estimate.vue
index 4dde1dd61..fe62d7647 100644
--- a/src/layouts/estimate/estimate.vue
+++ b/src/layouts/estimate/estimate.vue
@@ -11,7 +11,7 @@
\ No newline at end of file
diff --git a/src/layouts/license-plate-lookup/license-plate-lookup.vue b/src/layouts/license-plate-lookup/license-plate-lookup.vue
index 90af5b0fe..5e7fdc2c1 100644
--- a/src/layouts/license-plate-lookup/license-plate-lookup.vue
+++ b/src/layouts/license-plate-lookup/license-plate-lookup.vue
@@ -84,7 +84,7 @@ defineRule(
"license-plate-required",
required(errorMessages.LICENSE_PLATE_REQUIRED)
);
-defineRule("zip-required", required(errorMessages.ZIP_REQUIRED));
+defineRule("zip-required", required(errorMessages.REGISTRATION_ZIP_REQUIRED));
defineRule(
"email-address-required",
required(errorMessages.EMAIL_ADDRESS_REQUIRED)
diff --git a/src/layouts/vin-lookup/vin-lookup.vue b/src/layouts/vin-lookup/vin-lookup.vue
index 05c251bfd..e9ce8fb43 100644
--- a/src/layouts/vin-lookup/vin-lookup.vue
+++ b/src/layouts/vin-lookup/vin-lookup.vue
@@ -64,14 +64,6 @@
alertClass="alert-warning"
cmsWidgetName="NoMatchAlertWidget"
/>
-
{
diff --git a/src/mixins/analytics-mixin.js b/src/mixins/analytics-mixin.js
index 6b1943241..d13e1b222 100644
--- a/src/mixins/analytics-mixin.js
+++ b/src/mixins/analytics-mixin.js
@@ -6,12 +6,10 @@ import { analyticsPageEvents, GaCategories, GaActions, GaLabels, GaEvents } from
import baseMixin from "@/mixins/base-mixin";
-// We will need current page name for multiple methods, define it once to re-use.
-const currentPageName = getPageNameByQueryString();
-
export default {
methods: {
logPageView(pageEvent) {
+ const currentPageName = getPageNameByQueryString();
var payload = {
userId: getDeviceIdValue(),
sessionKey: getSessionKeyValue(),
@@ -26,6 +24,7 @@ export default {
},
logCustomEvent(category, action, label, value) {
+ const currentPageName = getPageNameByQueryString();
var payload = {
userId: getDeviceIdValue(),
sessionKey: getSessionKeyValue(),
@@ -42,6 +41,7 @@ export default {
},
pushEventToGA(category, action, label, pushToLogApp = false) {
+ const currentPageName = getPageNameByQueryString();
const eventToBePushed = {
'event': GaEvents.GENERIC_EVENT,
'category': category,
@@ -60,6 +60,7 @@ export default {
},
pushPageViewToGA() {
+ const currentPageName = getPageNameByQueryString();
const pageViewEvent = {
'event': GaEvents.PAGE_VIEW_EVENT,
'pagePath': `/fmg/?${queryStrings.FMG_PAGE}=${currentPageName}`,
diff --git a/src/styles/common-error-styles.scss b/src/styles/common-error-styles.scss
index 67bd9473b..7ebc9fb28 100644
--- a/src/styles/common-error-styles.scss
+++ b/src/styles/common-error-styles.scss
@@ -1,7 +1,8 @@
html {
.has-error {
&.list-button,
- &.list-card {
+ &.list-card,
+ &.list-card.list-button {
border: 1px solid $red;
color: $red;
input[type=checkbox]:focus + label,
@@ -15,6 +16,14 @@ html {
box-shadow: 0px 0px 0px 4px $red-200;
border-radius: 10px;
}
+ label {
+ border: 1px solid transparent;
+ }
+ label:hover {
+ box-shadow: 0px 0px 0px 4px $red-200;
+ border-radius: 10px;
+ border: 1px solid $red;
+ }
}
&.list-button-horizontal {
color: $red;
@@ -106,14 +115,17 @@ html {
color: $red;
font-size: .875rem;
font-weight: 500;
+ height: 1.5rem;
+ margin-top: .25rem !important;
}
.form-test-invalid {
&.btn.btn-primary {
- color: $gray;
+ color: $gray-600;
background: $gray-200;
cursor: pointer;
pointer-events: all;
+ font-weight: $font-weight-normal;
}
&.btn.btn-primary:hover,
&.btn.btn-primary:focus,
diff --git a/src/ux-components/alert/alert.vue b/src/ux-components/alert/alert.vue
index 7cd719ba7..050a5fd47 100644
--- a/src/ux-components/alert/alert.vue
+++ b/src/ux-components/alert/alert.vue
@@ -4,16 +4,16 @@
role="alert"
:class="[isDismissible ? 'alert-dismissible' : '', this.alertClass]"
>
- {{ alertHeadline }}
+ {{ alertHeadline }}
-
+
{{ copy.split(':')[1].split(',')[1] }}
-
+
-
+