fix the validation

This commit is contained in:
hastichavda
2019-11-12 11:00:35 +05:30
parent 80a761dbe0
commit 03d18065c6
10 changed files with 134 additions and 33 deletions

View File

@ -4636,6 +4636,57 @@ input[type=button].btn-block {
display: none;
}
.navbar-light .navbar-brand {
color: rgba(0, 0, 0, 0.9);
}
.navbar-light .navbar-brand:hover,
.navbar-light .navbar-brand:focus {
color: rgba(0, 0, 0, 0.9);
}
.navbar-light .navbar-nav .nav-link {
color: rgba(0, 0, 0, 0.5);
}
.navbar-light .navbar-nav .nav-link:hover,
.navbar-light .navbar-nav .nav-link:focus {
color: rgba(0, 0, 0, 0.7);
}
.navbar-light .navbar-nav .nav-link.disabled {
color: rgba(0, 0, 0, 0.3);
}
.navbar-light .navbar-nav .show > .nav-link,
.navbar-light .navbar-nav .active > .nav-link,
.navbar-light .navbar-nav .nav-link.show,
.navbar-light .navbar-nav .nav-link.active {
color: rgba(0, 0, 0, 0.9);
}
.navbar-light .navbar-toggler {
color: rgba(0, 0, 0, 0.5);
border-color: rgba(0, 0, 0, 0.1);
}
.navbar-light .navbar-toggler-icon {
background-image: url("data:image/svg+xml,%3csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3e%3cpath stroke='rgba(0, 0, 0, 0.5)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}
.navbar-light .navbar-text {
color: rgba(0, 0, 0, 0.5);
}
.navbar-light .navbar-text a {
color: rgba(0, 0, 0, 0.9);
}
.navbar-light .navbar-text a:hover,
.navbar-light .navbar-text a:focus {
color: rgba(0, 0, 0, 0.9);
}
.navbar-dark .navbar-brand {
color: #fff;
}

File diff suppressed because one or more lines are too long

View File

@ -17608,6 +17608,8 @@ function _defineProperty(obj, key, value) { if (key in obj) { Object.definePrope
//
//
//
//
//
@ -17673,7 +17675,8 @@ var _require = __webpack_require__(/*! vuelidate/lib/validators */ "./node_modul
price: {
required: required,
numeric: numeric,
minValue: minValue(0.1)
minValue: minValue(0.1),
maxLength: maxLength(10)
},
description: {
maxLength: maxLength(255)
@ -18074,7 +18077,7 @@ var _require = __webpack_require__(/*! vuelidate/lib/validators */ "./node_modul
break;
}
window.toastr['success'](this.$t('settings.sales_taxes.created_message'));
window.toastr['success'](this.$t('settings.tax_types.created_message'));
window.hub.$emit('newTax', response.data.taxType);
this.closeTaxModal();
this.isLoading = false;
@ -25146,6 +25149,7 @@ function _defineProperty(obj, key, value) { if (key in obj) { Object.definePrope
//
//
//
//
@ -33874,6 +33878,10 @@ function _defineProperty(obj, key, value) { if (key in obj) { Object.definePrope
//
//
//
//
//
//
//
@ -53760,7 +53768,7 @@ exports = module.exports = __webpack_require__(/*! ../../../../../node_modules/c
// module
exports.push([module.i, "\n.overlay[data-v-82d1a2ca] {\n height: 100%;\n width: 100%;\n background: rgba(255,255,255,0.4);\n position: absolute;\n top: 7%;\n left: 13%;\n}\n", ""]);
exports.push([module.i, "\n.overlay[data-v-82d1a2ca] {\r\n height: 100%;\r\n width: 100%;\r\n background: rgba(255,255,255,0.4);\r\n position: absolute;\r\n top: 7%;\r\n left: 13%;\n}\r\n", ""]);
// exports
@ -53779,7 +53787,7 @@ exports = module.exports = __webpack_require__(/*! ../../../../../node_modules/c
// module
exports.push([module.i, "\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n/* .switch-label {\n margin-bottom: 3px !important\n} */\n", ""]);
exports.push([module.i, "\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\n/* .switch-label {\r\n margin-bottom: 3px !important\r\n} */\r\n", ""]);
// exports
@ -53798,7 +53806,7 @@ exports = module.exports = __webpack_require__(/*! ../../../../../../node_module
// module
exports.push([module.i, "\n.rtl {\n\tdirection: rtl;\n}\n.required-date {\n border: 1px solid #FB7178;\n border-radius: 5px;\n}\n.vdp-datepicker {\n\tposition: relative;\n\ttext-align: left;\n}\n.vdp-datepicker * {\n\tbox-sizing: border-box;\n}\n.vdp-datepicker__calendar {\n\tposition: absolute;\n\tz-index: 100;\n\tbackground: #fff;\n\twidth: 300px;\n\tborder: 1px solid #ccc;\n}\n.vdp-datepicker__calendar header {\n\tdisplay: block;\n\tline-height: 40px;\n}\n.vdp-datepicker__calendar header span {\n\tdisplay: inline-block;\n\ttext-align: center;\n\twidth: 71.42857142857143%;\n\tfloat: left;\n}\n.vdp-datepicker__calendar header .prev,\n.vdp-datepicker__calendar header .next {\n\twidth: 14.285714285714286%;\n\tfloat: left;\n\ttext-indent: -10000px;\n\tposition: relative;\n}\n.vdp-datepicker__calendar header .prev:after,\n.vdp-datepicker__calendar header .next:after {\n\tcontent: '';\n\tposition: absolute;\n\tleft: 50%;\n\ttop: 50%;\n\ttransform: translateX(-50%) translateY(-50%);\n\tborder: 6px solid transparent;\n}\n.vdp-datepicker__calendar header .prev:after {\n\tborder-right: 10px solid #000;\n\tmargin-left: -5px;\n}\n.vdp-datepicker__calendar header .prev.disabled:after {\n\tborder-right: 10px solid #ddd;\n}\n.vdp-datepicker__calendar header .next:after {\n\tborder-left: 10px solid #000;\n\tmargin-left: 5px;\n}\n.vdp-datepicker__calendar header .next.disabled:after {\n\tborder-left: 10px solid #ddd;\n}\n.vdp-datepicker__calendar header .prev:not(.disabled),\n.vdp-datepicker__calendar header .next:not(.disabled),\n.vdp-datepicker__calendar header .up:not(.disabled) {\n\tcursor: pointer;\n}\n.vdp-datepicker__calendar header .prev:not(.disabled):hover,\n.vdp-datepicker__calendar header .next:not(.disabled):hover,\n.vdp-datepicker__calendar header .up:not(.disabled):hover {\n\tbackground: #eee;\n}\n.vdp-datepicker__calendar .disabled {\n\tcolor: #ddd;\n\tcursor: default;\n}\n.vdp-datepicker__calendar .flex-rtl {\n\tdisplay: flex;\n\twidth: inherit;\n\tflex-wrap: wrap;\n}\n.vdp-datepicker__calendar .cell {\n\tdisplay: inline-block;\n\tpadding: 0 5px;\n\twidth: 14.285714285714286%;\n\theight: 40px;\n\tline-height: 40px;\n\ttext-align: center;\n\tvertical-align: middle;\n\tborder: 1px solid transparent;\n}\n.vdp-datepicker__calendar .cell:not(.blank):not(.disabled).day,\n.vdp-datepicker__calendar .cell:not(.blank):not(.disabled).month,\n.vdp-datepicker__calendar .cell:not(.blank):not(.disabled).year {\n\tcursor: pointer;\n}\n.vdp-datepicker__calendar .cell:not(.blank):not(.disabled).day:hover,\n.vdp-datepicker__calendar .cell:not(.blank):not(.disabled).month:hover,\n.vdp-datepicker__calendar .cell:not(.blank):not(.disabled).year:hover {\n\tborder: 1px solid #4bd;\n}\n.vdp-datepicker__calendar .cell.selected {\n\tbackground: #4bd;\n}\n.vdp-datepicker__calendar .cell.selected:hover {\n\tbackground: #4bd;\n}\n.vdp-datepicker__calendar .cell.selected.highlighted {\n\tbackground: #4bd;\n}\n.vdp-datepicker__calendar .cell.highlighted {\n\tbackground: #cae5ed;\n}\n.vdp-datepicker__calendar .cell.highlighted.disabled {\n\tcolor: #a3a3a3;\n}\n.vdp-datepicker__calendar .cell.grey {\n\tcolor: #888;\n}\n.vdp-datepicker__calendar .cell.grey:hover {\n\tbackground: inherit;\n}\n.vdp-datepicker__calendar .cell.day-header {\n\tfont-size: 75%;\n\twhite-space: nowrap;\n\tcursor: inherit;\n}\n.vdp-datepicker__calendar .cell.day-header:hover {\n\tbackground: inherit;\n}\n.vdp-datepicker__calendar .month,\n.vdp-datepicker__calendar .year {\n\twidth: 33.333%;\n}\n.vdp-datepicker__clear-button,\n.vdp-datepicker__calendar-button {\n\tcursor: pointer;\n\tfont-style: normal;\n}\n.vdp-datepicker__clear-button.disabled,\n.vdp-datepicker__calendar-button.disabled {\n\tcolor: #999;\n\tcursor: default;\n}\n", ""]);
exports.push([module.i, "\n.rtl {\r\n\tdirection: rtl;\n}\n.required-date {\r\n border: 1px solid #FB7178;\r\n border-radius: 5px;\n}\n.vdp-datepicker {\r\n\tposition: relative;\r\n\ttext-align: left;\n}\n.vdp-datepicker * {\r\n\tbox-sizing: border-box;\n}\n.vdp-datepicker__calendar {\r\n\tposition: absolute;\r\n\tz-index: 100;\r\n\tbackground: #fff;\r\n\twidth: 300px;\r\n\tborder: 1px solid #ccc;\n}\n.vdp-datepicker__calendar header {\r\n\tdisplay: block;\r\n\tline-height: 40px;\n}\n.vdp-datepicker__calendar header span {\r\n\tdisplay: inline-block;\r\n\ttext-align: center;\r\n\twidth: 71.42857142857143%;\r\n\tfloat: left;\n}\n.vdp-datepicker__calendar header .prev,\r\n.vdp-datepicker__calendar header .next {\r\n\twidth: 14.285714285714286%;\r\n\tfloat: left;\r\n\ttext-indent: -10000px;\r\n\tposition: relative;\n}\n.vdp-datepicker__calendar header .prev:after,\r\n.vdp-datepicker__calendar header .next:after {\r\n\tcontent: '';\r\n\tposition: absolute;\r\n\tleft: 50%;\r\n\ttop: 50%;\r\n\ttransform: translateX(-50%) translateY(-50%);\r\n\tborder: 6px solid transparent;\n}\n.vdp-datepicker__calendar header .prev:after {\r\n\tborder-right: 10px solid #000;\r\n\tmargin-left: -5px;\n}\n.vdp-datepicker__calendar header .prev.disabled:after {\r\n\tborder-right: 10px solid #ddd;\n}\n.vdp-datepicker__calendar header .next:after {\r\n\tborder-left: 10px solid #000;\r\n\tmargin-left: 5px;\n}\n.vdp-datepicker__calendar header .next.disabled:after {\r\n\tborder-left: 10px solid #ddd;\n}\n.vdp-datepicker__calendar header .prev:not(.disabled),\r\n.vdp-datepicker__calendar header .next:not(.disabled),\r\n.vdp-datepicker__calendar header .up:not(.disabled) {\r\n\tcursor: pointer;\n}\n.vdp-datepicker__calendar header .prev:not(.disabled):hover,\r\n.vdp-datepicker__calendar header .next:not(.disabled):hover,\r\n.vdp-datepicker__calendar header .up:not(.disabled):hover {\r\n\tbackground: #eee;\n}\n.vdp-datepicker__calendar .disabled {\r\n\tcolor: #ddd;\r\n\tcursor: default;\n}\n.vdp-datepicker__calendar .flex-rtl {\r\n\tdisplay: flex;\r\n\twidth: inherit;\r\n\tflex-wrap: wrap;\n}\n.vdp-datepicker__calendar .cell {\r\n\tdisplay: inline-block;\r\n\tpadding: 0 5px;\r\n\twidth: 14.285714285714286%;\r\n\theight: 40px;\r\n\tline-height: 40px;\r\n\ttext-align: center;\r\n\tvertical-align: middle;\r\n\tborder: 1px solid transparent;\n}\n.vdp-datepicker__calendar .cell:not(.blank):not(.disabled).day,\r\n.vdp-datepicker__calendar .cell:not(.blank):not(.disabled).month,\r\n.vdp-datepicker__calendar .cell:not(.blank):not(.disabled).year {\r\n\tcursor: pointer;\n}\n.vdp-datepicker__calendar .cell:not(.blank):not(.disabled).day:hover,\r\n.vdp-datepicker__calendar .cell:not(.blank):not(.disabled).month:hover,\r\n.vdp-datepicker__calendar .cell:not(.blank):not(.disabled).year:hover {\r\n\tborder: 1px solid #4bd;\n}\n.vdp-datepicker__calendar .cell.selected {\r\n\tbackground: #4bd;\n}\n.vdp-datepicker__calendar .cell.selected:hover {\r\n\tbackground: #4bd;\n}\n.vdp-datepicker__calendar .cell.selected.highlighted {\r\n\tbackground: #4bd;\n}\n.vdp-datepicker__calendar .cell.highlighted {\r\n\tbackground: #cae5ed;\n}\n.vdp-datepicker__calendar .cell.highlighted.disabled {\r\n\tcolor: #a3a3a3;\n}\n.vdp-datepicker__calendar .cell.grey {\r\n\tcolor: #888;\n}\n.vdp-datepicker__calendar .cell.grey:hover {\r\n\tbackground: inherit;\n}\n.vdp-datepicker__calendar .cell.day-header {\r\n\tfont-size: 75%;\r\n\twhite-space: nowrap;\r\n\tcursor: inherit;\n}\n.vdp-datepicker__calendar .cell.day-header:hover {\r\n\tbackground: inherit;\n}\n.vdp-datepicker__calendar .month,\r\n.vdp-datepicker__calendar .year {\r\n\twidth: 33.333%;\n}\n.vdp-datepicker__clear-button,\r\n.vdp-datepicker__calendar-button {\r\n\tcursor: pointer;\r\n\tfont-style: normal;\n}\n.vdp-datepicker__clear-button.disabled,\r\n.vdp-datepicker__calendar-button.disabled {\r\n\tcolor: #999;\r\n\tcursor: default;\n}\r\n", ""]);
// exports
@ -53817,7 +53825,7 @@ exports = module.exports = __webpack_require__(/*! ../../../../../../node_module
// module
exports.push([module.i, "\n.fade-enter-active, .fade-leave-active {\n transition: opacity .5s;\n}\n.fade-enter, .fade-leave-to /* .fade-leave-active below version 2.1.8 */ {\n opacity: 0;\n}\n", ""]);
exports.push([module.i, "\n.fade-enter-active, .fade-leave-active {\r\n transition: opacity .5s;\n}\n.fade-enter, .fade-leave-to /* .fade-leave-active below version 2.1.8 */ {\r\n opacity: 0;\n}\r\n", ""]);
// exports
@ -53836,7 +53844,7 @@ exports = module.exports = __webpack_require__(/*! ../../../../../../node_module
// module
exports.push([module.i, "\n.fade-enter-active, .fade-leave-active {\n transition: opacity .5s;\n}\n.fade-enter, .fade-leave-to /* .fade-leave-active below version 2.1.8 */ {\n opacity: 0;\n}\n", ""]);
exports.push([module.i, "\n.fade-enter-active, .fade-leave-active {\r\n transition: opacity .5s;\n}\n.fade-enter, .fade-leave-to /* .fade-leave-active below version 2.1.8 */ {\r\n opacity: 0;\n}\r\n", ""]);
// exports
@ -53855,7 +53863,7 @@ exports = module.exports = __webpack_require__(/*! ../../../../../node_modules/c
// module
exports.push([module.i, "\n.graph-container[data-v-f00ab88a] {\n height: 300px;\n}\n", ""]);
exports.push([module.i, "\n.graph-container[data-v-f00ab88a] {\r\n height: 300px;\n}\r\n", ""]);
// exports
@ -53912,7 +53920,7 @@ exports = module.exports = __webpack_require__(/*! ../../../../../../node_module
// module
exports.push([module.i, "\n.tab[data-v-66c9f590] {\n padding: 0 !important;\n}\n.tab-link[data-v-66c9f590] {\n padding: 10px 30px;\n display: block\n}\n", ""]);
exports.push([module.i, "\n.tab[data-v-66c9f590] {\r\n padding: 0 !important;\n}\n.tab-link[data-v-66c9f590] {\r\n padding: 10px 30px;\r\n display: block\n}\r\n", ""]);
// exports
@ -120263,6 +120271,18 @@ var render = function() {
? _c("span", { staticClass: "text-danger" }, [
_vm._v(_vm._s(_vm.$tc("validation.numbers_only")))
])
: _vm._e(),
_vm._v(" "),
!_vm.$v.formData.price.maxLength
? _c("span", { staticClass: "text-danger" }, [
_vm._v(_vm._s(_vm.$t("validation.price_maxlength")))
])
: _vm._e(),
_vm._v(" "),
!_vm.$v.formData.price.minValue
? _c("span", { staticClass: "text-danger" }, [
_vm._v(_vm._s(_vm.$t("validation.price_minValue")))
])
: _vm._e()
])
: _vm._e()
@ -129607,11 +129627,7 @@ var render = function() {
_vm._b(
{
staticClass: "input-field",
on: {
input: function($event) {
return _vm.$v.formData.amount.$touch()
}
},
class: { invalid: _vm.$v.formData.amount.$error },
model: {
value: _vm.amount,
callback: function($$v) {
@ -129643,6 +129659,14 @@ var render = function() {
_vm._s(_vm.$t("validation.amount_maxlength"))
)
])
: _vm._e(),
_vm._v(" "),
!_vm.$v.formData.amount.maxValue
? _c("span", { staticClass: "text-danger" }, [
_vm._v(
_vm._s(_vm.$t("validation.amount_minvalue"))
)
])
: _vm._e()
])
: _vm._e()
@ -133923,12 +133947,7 @@ var render = function() {
_vm._b(
{
staticClass: "input-field",
attrs: { invalid: _vm.$v.formData.price.$error },
on: {
input: function($event) {
return _vm.$v.formData.price.$touch()
}
},
class: { invalid: _vm.$v.formData.price.$error },
model: {
value: _vm.price,
callback: function($$v) {
@ -133962,6 +133981,14 @@ var render = function() {
_vm._s(_vm.$t("validation.price_maxlength"))
)
])
: _vm._e(),
_vm._v(" "),
!_vm.$v.formData.price.minValue
? _c("span", { staticClass: "text-danger" }, [
_vm._v(
_vm._s(_vm.$t("validation.price_minValue"))
)
])
: _vm._e()
])
: _vm._e()
@ -168764,7 +168791,8 @@ __webpack_require__.r(__webpack_exports__);
preferences: 'Preferences',
notifications: 'Notifications',
tax_types: 'Tax Types',
expense_category: 'Expense Categories'
expense_category: 'Expense Categories',
mail_configuration: 'Mail Configuration'
},
title: 'Settings',
setting: 'Settings | Settings',
@ -168887,6 +168915,10 @@ __webpack_require__.r(__webpack_exports__);
select_time_zone: 'select Time Zone',
select_date_formate: 'select Date Formate',
select_financial_year: 'select financial year'
},
mail_configuration: {
mail_confiuration: 'Mail Configuration | Mail Configurations',
description: 'Below details will be used to create the main Administrator account. Also you can change the details anytime after logging in.'
}
},
wizard: {
@ -168991,7 +169023,9 @@ __webpack_require__.r(__webpack_exports__);
payment_greater_than_due_amount: 'Entered Payment is more than due amount of this invoice.',
quantity_maxlength: 'Quantity should not be greater than 10 characters.',
price_maxlength: 'Price should not be greater than 10 characters.',
price_minValue: 'Price should be greater than 0 digits',
amount_maxlength: 'Amount should not be greater than 10 characters.',
amount_minvalue: 'Amount should br greater than 0 digits',
description_maxlength: 'Description should not be greater than 255 characters.',
maximum_options_error: 'Maximum of {max} options selected. First remove a selected option to select another.',
notes_maxlength: 'Notes should not be greater than 255 characters.',
@ -179466,8 +179500,8 @@ Vue.component('font-awesome-icon', _fortawesome_vue_fontawesome__WEBPACK_IMPORTE
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
__webpack_require__(/*! /Users/bytefury/project/web/crater/resources/assets/js/app.js */"./resources/assets/js/app.js");
module.exports = __webpack_require__(/*! /Users/bytefury/project/web/crater/resources/assets/sass/laraspace.scss */"./resources/assets/sass/laraspace.scss");
__webpack_require__(/*! E:\laragon\www\crater\resources\assets\js\app.js */"./resources/assets/js/app.js");
module.exports = __webpack_require__(/*! E:\laragon\www\crater\resources\assets\sass\laraspace.scss */"./resources/assets/sass/laraspace.scss");
/***/ }),

File diff suppressed because one or more lines are too long

View File

@ -35,6 +35,8 @@
<div v-if="$v.formData.price.$error">
<span v-if="!$v.formData.price.required" class="text-danger">{{ $tc('validation.required') }}</span>
<span v-if="!$v.formData.price.numeric" class="text-danger">{{ $tc('validation.numbers_only') }}</span>
<span v-if="!$v.formData.price.maxLength" class="text-danger">{{ $t('validation.price_maxlength') }}</span>
<span v-if="!$v.formData.price.minValue" class="text-danger">{{ $t('validation.price_minValue') }}</span>
</div>
</div>
</div>
@ -138,7 +140,8 @@ export default {
price: {
required,
numeric,
minValue: minValue(0.1)
minValue: minValue(0.1),
maxLength: maxLength(10)
},
description: {
maxLength: maxLength(255)

View File

@ -189,7 +189,7 @@ export default {
response = await this.updateTaxType(this.formData)
}
if (response.data) {
window.toastr['success'](this.$t('settings.sales_taxes.created_message'))
window.toastr['success'](this.$t('settings.tax_types.created_message'))
window.hub.$emit('newTax', response.data.taxType)
this.closeTaxModal()
this.isLoading = false

View File

@ -521,7 +521,8 @@ export default {
preferences: 'Preferences',
notifications: 'Notifications',
tax_types: 'Tax Types',
expense_category: 'Expense Categories'
expense_category: 'Expense Categories',
mail_configuration: 'Mail Configuration'
},
title: 'Settings',
setting: 'Settings | Settings',
@ -644,6 +645,10 @@ export default {
select_time_zone: 'select Time Zone',
select_date_formate: 'select Date Formate',
select_financial_year: 'select financial year'
},
mail_configuration: {
mail_confiuration: 'Mail Configuration | Mail Configurations',
description: 'Below details will be used to create the main Administrator account. Also you can change the details anytime after logging in.'
}
},
wizard: {
@ -748,7 +753,9 @@ export default {
payment_greater_than_due_amount: 'Entered Payment is more than due amount of this invoice.',
quantity_maxlength: 'Quantity should not be greater than 10 characters.',
price_maxlength: 'Price should not be greater than 10 characters.',
price_minValue: 'Price should be greater than 0 digits',
amount_maxlength: 'Amount should not be greater than 10 characters.',
amount_minvalue: 'Amount should br greater than 0 digits',
description_maxlength: 'Description should not be greater than 255 characters.',
maximum_options_error: 'Maximum of {max} options selected. First remove a selected option to select another.',
notes_maxlength: 'Notes should not be greater than 255 characters.',

View File

@ -92,13 +92,14 @@
<money
v-model="amount"
v-bind="defaultCurrencyForInput"
:class="{'invalid' : $v.formData.amount.$error}"
class="input-field"
@input="$v.formData.amount.$touch()"
/>
</div>
<div v-if="$v.formData.amount.$error">
<span v-if="!$v.formData.amount.required" class="text-danger">{{ $t('validation.required') }}</span>
<span v-if="!$v.formData.amount.maxLength" class="text-danger">{{ $t('validation.amount_maxlength') }}</span>
<span v-if="!$v.formData.amount.maxValue" class="text-danger">{{ $t('validation.amount_minvalue') }}</span>
</div>
</div>
<div class="form-group col-sm-6">

View File

@ -34,16 +34,16 @@
<label>{{ $t('items.price') }}</label><span class="text-danger"> *</span>
<div class="base-input">
<money
:invalid="$v.formData.price.$error"
:class="{'invalid' : $v.formData.price.$error}"
v-model="price"
v-bind="defaultCurrencyForInput"
class="input-field"
@input="$v.formData.price.$touch()"
/>
</div>
<div v-if="$v.formData.price.$error">
<span v-if="!$v.formData.price.required" class="text-danger">{{ $t('validation.required') }} </span>
<span v-if="!$v.formData.price.maxLength" class="text-danger">{{ $t('validation.price_maxlength') }}</span>
<span v-if="!$v.formData.price.minValue" class="text-danger">{{ $t('validation.price_minValue') }}</span>
</div>
</div>
<div class="form-group">
@ -93,6 +93,7 @@
import { validationMixin } from 'vuelidate'
import { mapActions, mapGetters } from 'vuex'
const { required, minLength, numeric, alpha, minValue, maxLength } = require('vuelidate/lib/validators')
export default {
mixins: {
validationMixin

View File

@ -113,7 +113,11 @@
<h3 class="page-title">{{ $t('settings.preferences.discount_setting') }}</h3>
<div class="flex-box">
<div class="left">
<base-switch v-model="discount_per_item" class="btn-switch" @change="setDiscount" />
<base-switch
v-model="discount_per_item"
class="btn-switch"
@change="setDiscount"
/>
</div>
<div class="right ml-15">
<p class="box-title"> {{ $t('settings.preferences.discount_per_item') }} </p>