Portal payments store card added

This commit is contained in:
Cihan Şentürk 2021-01-17 17:26:57 +03:00
parent 86aff08e2c
commit 1508663ed5
3 changed files with 49 additions and 11 deletions

View File

@ -258,12 +258,24 @@
</div> </div>
</div> </div>
<button class="btn btn-icon btn-success" v-on:click="invaildCard" :disabled="loading"> <div class="form-group" v-if="storeCard">
<div v-if="loading" class="aka-loader-frame"> <div class="custom-control custom-checkbox">
<div class="aka-loader"></div> <input @input="changeStoreCard" id="store_card" name="store_card" type="checkbox" value="true" class="custom-control-input">
<label for="store_card" class="custom-control-label">
<strong>{{ textCheckBox }}</strong>
</label>
</div> </div>
<span v-if="!loading" class="btn-inner--text">{{ textButton }}</span> </div>
</button>
<div class="row">
<button class="btn btn-icon btn-success" v-on:click="invaildCard" :disabled="loading">
<div v-if="loading" class="aka-loader-frame">
<div class="aka-loader"></div>
</div>
<span v-if="!loading" class="btn-inner--text">{{ textButton }}</span>
</button>
</div>
</div> </div>
<div class="col-md-6 mt--3"> <div class="col-md-6 mt--3">
@ -327,6 +339,13 @@ export default {
description: "Add Card Style" description: "Add Card Style"
}, },
storeCard: {
type: Boolean,
default: false,
icon: '',
description: "Save card"
},
path: { path: {
type: String, type: String,
default: null, default: null,
@ -393,6 +412,12 @@ export default {
description: "Add Card Style" description: "Add Card Style"
}, },
textCheckBox: {
type: String,
default: 'Store Card',
description: "Selected store card"
},
formData: { formData: {
type: Object, type: Object,
default: () => { default: () => {
@ -401,7 +426,8 @@ export default {
cardNumber: '', cardNumber: '',
cardMonth: '', cardMonth: '',
cardYear: '', cardYear: '',
cardCvv: '' cardCvv: '',
storeCard: false,
} }
} }
}, },
@ -425,7 +451,8 @@ export default {
cardName: 'v-card-name', cardName: 'v-card-name',
cardMonth: 'v-card-month', cardMonth: 'v-card-month',
cardYear: 'v-card-year', cardYear: 'v-card-year',
cardCvv: 'v-card-cvv' cardCvv: 'v-card-cvv',
storeCard: 'v-card-store-card'
}, },
minCardYear: new Date().getFullYear(), minCardYear: new Date().getFullYear(),
isCardNumberMasked: true, isCardNumberMasked: true,
@ -457,6 +484,14 @@ export default {
}, },
methods: { methods: {
changeStoreCard(e) {
this.formData.storeCard = false;
if (e.target.checked) {
this.formData.storeCard = true;
}
},
generateMonthValue(n) { generateMonthValue(n) {
return n < 10 ? `0${n}` : n; return n < 10 ? `0${n}` : n;
}, },

View File

@ -14,7 +14,6 @@ import DashboardPlugin from './../../plugins/dashboard-plugin';
import Global from './../../mixins/global'; import Global from './../../mixins/global';
import Form from './../../plugins/form'; import Form from './../../plugins/form';
import CardForm from './../../components/CreditCard/CardForm'; import CardForm from './../../components/CreditCard/CardForm';
// plugin setup // plugin setup
@ -41,7 +40,8 @@ const app = new Vue({
cardNumber: '', cardNumber: '',
cardMonth: '', cardMonth: '',
cardYear: '', cardYear: '',
cardCvv: '' cardCvv: '',
storeCard: false,
} }
} }
}, },
@ -95,7 +95,8 @@ const app = new Vue({
cardNumber: '', cardNumber: '',
cardMonth: '', cardMonth: '',
cardYear: '', cardYear: '',
cardCvv: '' cardCvv: '',
storeCard: false,
} }
} }
}, },
@ -184,7 +185,8 @@ const app = new Vue({
cardNumber: '', cardNumber: '',
cardMonth: '', cardMonth: '',
cardYear: '', cardYear: '',
cardCvv: '' cardCvv: '',
storeCard: false,
} }
} }
}, },

View File

@ -11,5 +11,6 @@
:text-cvv="'{{ trans('general.card.cvv') }}'" :text-cvv="'{{ trans('general.card.cvv') }}'"
:placeholder-card-cvv="'{{ trans('general.form.enter', ['field' => trans('general.card.cvv')]) }}'" :placeholder-card-cvv="'{{ trans('general.form.enter', ['field' => trans('general.card.cvv')]) }}'"
:textButton="'{{ trans('general.confirm') }}'" :textButton="'{{ trans('general.confirm') }}'"
:store-card="true"
:form-data="formData" :form-data="formData"
/> />