96 lines
3.4 KiB
Vue
96 lines
3.4 KiB
Vue
<template>
|
|
<div class="row col-md-10 col-md-offset-1">
|
|
<div class="col-md-12">
|
|
<h3 class="text-center">Pendaftaran Kehadiran</h3>
|
|
<hr />
|
|
<form @submit.prevent="edit()" id="edit_form">
|
|
<div class="form-group">
|
|
<label for="name">Nama : </label>
|
|
<input type="text" name="name" class="form-control" readonly :value="data.user.name" required />
|
|
</div>
|
|
|
|
<div class="form-group">
|
|
<label for="no_kp">No. Kad Pengenalan :</label>
|
|
<input type="text" name="no_kp" class="form-control" readonly :value="data.user.no_kp" required />
|
|
</div>
|
|
|
|
<div class="form-group">
|
|
<label for="no_anggota">No. Anggota : </label>
|
|
<input type="text" name="no_anggota" class="form-control" readonly :value="data.user.no_anggota"
|
|
required />
|
|
</div>
|
|
|
|
<div class="form-group">
|
|
<label for="no_anggota">Unit : </label>
|
|
<input type="text" name="unit" class="form-control" readonly :value="data.user.unit" required />
|
|
</div>
|
|
|
|
<div class="form-group">
|
|
<label for="role">Kehadiran :</label>
|
|
<select class="form-control" id="kehadiran" name="kehadiran" value="" required>
|
|
<option value="1">Fizikal</option>
|
|
<option value="2">Maya</option>
|
|
</select>
|
|
</div>
|
|
|
|
<div>
|
|
<p> <i>*Elaun akan diberikan setelah pengundi membuat pengesahan kehadiran</i></p>
|
|
<p> <i>*Pendaftaran online sehingga jam 10 pagi</i></p>
|
|
</div>
|
|
|
|
<center><input type="submit" value="SAYA TERIMA" class="btn btn-primary"
|
|
v-if="data.election.status == 2 && data.user.kehadiran == 0" /></center>
|
|
</form>
|
|
</div>
|
|
</div>
|
|
</template>
|
|
|
|
|
|
|
|
<script>
|
|
export default {
|
|
data: function () {
|
|
return {
|
|
loading: false,
|
|
userSubmitted: false // Add a flag to track if the user has already submitted
|
|
}
|
|
},
|
|
|
|
methods: {
|
|
// refreshUser: function () {
|
|
|
|
// var vm = this;
|
|
// axios.get(config.API + 'voter/' + this.data.user.id)
|
|
// .then(response => {
|
|
// vm.data.user = response.data;
|
|
// console.log(response.data)
|
|
// })
|
|
// },
|
|
|
|
|
|
|
|
edit: function () {
|
|
if (this.loading) return;
|
|
this.loading = true;
|
|
var vm = this;
|
|
this.util.notify('Adding Attendance', 'loading');
|
|
axios.put(config.API + 'attendance/' + this.data.user.id, $('#edit_form').serialize())
|
|
.then(response => {
|
|
$.notifyClose();
|
|
vm.loading = false;
|
|
if (vm.util.showResult(response, 'success')) {
|
|
// vm.refreshUser();
|
|
location.reload();
|
|
|
|
|
|
}
|
|
})
|
|
.catch(error => {
|
|
$.notifyClose();
|
|
vm.loading = false;
|
|
vm.util.showResult(error, 'error')
|
|
})
|
|
}
|
|
}
|
|
}
|
|
</script> |