2021-07-09 22:18:22 +00:00
|
|
|
<!-- The Modal -->
|
|
|
|
<div class="modal fade" id="redeemVoucherModal">
|
|
|
|
<div class="modal-dialog">
|
|
|
|
<div class="modal-content">
|
|
|
|
|
|
|
|
<!-- Modal Header -->
|
|
|
|
<div class="modal-header">
|
2021-12-13 09:42:22 +00:00
|
|
|
<h4 class="modal-title">{{__('Redeem voucher code')}}</h4>
|
|
|
|
|
2021-07-09 22:18:22 +00:00
|
|
|
<button type="button" class="close" data-dismiss="modal">×</button>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
<!-- Modal body -->
|
|
|
|
<div class="modal-body">
|
2021-07-10 06:58:11 +00:00
|
|
|
<form id="redeemVoucherForm" onsubmit="return false" method="post" action="{{route('voucher.redeem')}}">
|
2021-07-09 22:18:22 +00:00
|
|
|
<div class="form-group">
|
2021-12-13 09:42:22 +00:00
|
|
|
<label for="redeemVoucherCode">{{__('Code')}}</label>
|
2021-07-09 22:18:22 +00:00
|
|
|
<div class="input-group">
|
|
|
|
<div class="input-group-prepend">
|
|
|
|
<div class="input-group-text">
|
|
|
|
<i class="fas fa-money-check-alt"></i>
|
|
|
|
</div>
|
|
|
|
</div>
|
2021-07-10 07:41:24 +00:00
|
|
|
<input id="redeemVoucherCode" name="code" placeholder="SUMMER" type="text"
|
|
|
|
class="form-control">
|
2021-07-09 22:18:22 +00:00
|
|
|
</div>
|
2021-07-10 06:58:11 +00:00
|
|
|
<span id="redeemVoucherCodeError" class="text-danger"></span>
|
|
|
|
<span id="redeemVoucherCodeSuccess" class="text-success"></span>
|
2021-07-09 22:18:22 +00:00
|
|
|
</div>
|
|
|
|
</form>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
<!-- Modal footer -->
|
|
|
|
<div class="modal-footer">
|
2021-12-13 09:42:22 +00:00
|
|
|
<button type="button" class="btn btn-danger" data-dismiss="modal">{{__('Close')}}</button>
|
2021-07-10 07:41:24 +00:00
|
|
|
<button name="submit" id="redeemVoucherSubmit" onclick="redeemVoucherCode()" type="button"
|
2021-12-13 09:42:22 +00:00
|
|
|
class="btn btn-primary">{{__('Redeem')}}
|
2021-07-10 07:41:24 +00:00
|
|
|
</button>
|
2021-07-09 22:18:22 +00:00
|
|
|
</div>
|
|
|
|
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
|
|
<script>
|
2021-07-10 07:41:24 +00:00
|
|
|
function redeemVoucherCode() {
|
2021-07-10 06:58:11 +00:00
|
|
|
let form = document.getElementById('redeemVoucherForm')
|
|
|
|
let button = document.getElementById('redeemVoucherSubmit')
|
|
|
|
let input = document.getElementById('redeemVoucherCode')
|
|
|
|
|
2021-07-10 07:41:24 +00:00
|
|
|
console.log(form.method, form.action)
|
2021-07-10 06:58:11 +00:00
|
|
|
button.disabled = true
|
|
|
|
|
2021-07-09 22:18:22 +00:00
|
|
|
$.ajax({
|
2021-07-10 07:41:24 +00:00
|
|
|
method: form.method,
|
|
|
|
url: form.action,
|
2021-07-10 06:58:11 +00:00
|
|
|
dataType: 'json',
|
|
|
|
data: {
|
2021-09-09 19:06:08 +00:00
|
|
|
"_token": "{{ csrf_token() }}",
|
2021-07-10 07:41:24 +00:00
|
|
|
code: input.value
|
2021-07-10 06:58:11 +00:00
|
|
|
},
|
2021-07-10 07:41:24 +00:00
|
|
|
success: function (response) {
|
2021-07-10 06:58:11 +00:00
|
|
|
resetForm()
|
|
|
|
redeemVoucherSetSuccess(response)
|
2021-07-12 10:59:41 +00:00
|
|
|
setTimeout(() => {
|
|
|
|
$('#redeemVoucherModal').modal('toggle');
|
|
|
|
} , 1500)
|
2021-07-10 06:58:11 +00:00
|
|
|
},
|
2021-07-10 07:41:24 +00:00
|
|
|
error: function (jqXHR, textStatus, errorThrown) {
|
2021-07-10 06:58:11 +00:00
|
|
|
resetForm()
|
2021-07-10 07:41:24 +00:00
|
|
|
redeemVoucherSetError(jqXHR)
|
2021-07-10 06:58:11 +00:00
|
|
|
console.error(jqXHR.responseJSON)
|
|
|
|
},
|
|
|
|
|
2021-07-09 22:18:22 +00:00
|
|
|
})
|
|
|
|
}
|
2021-07-10 06:58:11 +00:00
|
|
|
|
2021-07-10 07:41:24 +00:00
|
|
|
function resetForm() {
|
2021-07-10 06:58:11 +00:00
|
|
|
let button = document.getElementById('redeemVoucherSubmit')
|
|
|
|
let input = document.getElementById('redeemVoucherCode')
|
|
|
|
let successLabel = document.getElementById('redeemVoucherCodeSuccess')
|
|
|
|
let errorLabel = document.getElementById('redeemVoucherCodeError')
|
|
|
|
|
|
|
|
input.classList.remove('is-invalid')
|
|
|
|
input.classList.remove('is-valid')
|
|
|
|
successLabel.innerHTML = ''
|
|
|
|
errorLabel.innerHTML = ''
|
|
|
|
button.disabled = false
|
|
|
|
}
|
|
|
|
|
2021-07-10 07:41:24 +00:00
|
|
|
function redeemVoucherSetError(error) {
|
2021-07-10 06:58:11 +00:00
|
|
|
let input = document.getElementById('redeemVoucherCode')
|
|
|
|
let errorLabel = document.getElementById('redeemVoucherCodeError')
|
|
|
|
|
|
|
|
input.classList.add("is-invalid")
|
2021-07-10 07:41:24 +00:00
|
|
|
|
|
|
|
errorLabel.innerHTML = error.status === 422 ? error.responseJSON.errors.code[0] : error.responseJSON.message
|
2021-07-10 06:58:11 +00:00
|
|
|
}
|
|
|
|
|
2021-07-10 07:41:24 +00:00
|
|
|
function redeemVoucherSetSuccess(response) {
|
2021-07-10 06:58:11 +00:00
|
|
|
let input = document.getElementById('redeemVoucherCode')
|
|
|
|
let successLabel = document.getElementById('redeemVoucherCodeSuccess')
|
|
|
|
|
|
|
|
successLabel.innerHTML = response.success
|
|
|
|
input.classList.remove('is-invalid')
|
|
|
|
input.classList.add('is-valid')
|
|
|
|
}
|
2021-07-09 22:18:22 +00:00
|
|
|
</script>
|