finish all admin

This commit is contained in:
kicap1992
2022-11-27 00:58:30 +08:00
parent 369e9b7829
commit 83188d84c1
36 changed files with 5249 additions and 329 deletions

View File

@ -18,7 +18,9 @@
<!-- /.dropdown js__dropdown -->
<div class="form-group">
<div id="map" style="width: 100%; height: 500px"></div>
</div>
<div class="form-group text-center" id="title_peta"></div>
<!-- /#flot-chart-1.flot-chart -->
</div>
<!-- /.box-content -->
@ -27,7 +29,7 @@
<div class="col-xs-12">
<div class="box-content">
<h4 class="box-title" id="header_absensi">Absensi Karyawan</h4>
<h4 class="box-title" id="header_absensi">Absensi Pegawai</h4>
<div class="card-content">
<div style="overflow-x: auto">
@ -42,16 +44,16 @@
</thead>
<tbody>
<?php
foreach ($list_karyawan as $key => $value) {
?>
<tr>
<td><?=$value->nik?></td>
<td><?=$value->nama?></td>
<td id="status_<?=$value->nik?>"> <?=$value->status_kerja?> </td>
<td id="lu_<?=$value->nik?>"> - </td>
</tr>
<?php
}
foreach ($list_karyawan as $key => $value) {
?>
<tr>
<td><?= $value->nik ?></td>
<td><?= $value->nama ?></td>
<td id="status_<?= $value->nik ?>"> <?= $value->status_kerja ?> </td>
<td id="lu_<?= $value->nik ?>"> - </td>
</tr>
<?php
}
?>
</tbody>
</table>
@ -73,7 +75,7 @@
<?php $this->load->view('admin/scripts') ?>
<script src="<?= base_url() ?>assets/plugin/datatables/media/js/jquery.dataTables.min.js"></script>
<script src="<?= base_url() ?>assets/plugin/datatables/media/js/dataTables.bootstrap.min.js"></script>
<script src="<?= base_url() ?>assets/plugin/datatables/media/js/dataTables.bootstrap.min.js"></script>
<script src="https://maps.googleapis.com/maps/api/js?key=AIzaSyD7B9RynI4hQM_Y4BG9GYxsTLWwYkGASRo&libraries=geometry,drawing,places&v=weekly&region=ID&language=id"></script>
@ -83,7 +85,7 @@
})
var id_dinas = <?= $id_dinas ?>;
$("#header_peta").html(`Peta Absensi <i>(${getTodayDate()})</i>`)
$("#header_absensi").html(`Absensi Karyawan <i>(${getTodayDate()})</i>`)
$("#header_absensi").html(`Absensi Pegawai <i>(${getTodayDate()})</i>`)
let markersOverlay = [];
@ -206,8 +208,8 @@
<input type="text" class="form-control" value="${markers[i]['status']}" disabled>
</div>
</div>`
$("#lu_"+markers[i]['nik']).html(markers[i]['last_updated']);
$("#status_"+markers[i]['nik']).html(markers[i]['status']);
$("#lu_" + markers[i]['nik']).html(markers[i]['last_updated']);
$("#status_" + markers[i]['nik']).html(markers[i]['status']);
addInfoWindow(marker, html);
} else {
addInfoWindow(marker, dinas_html);
@ -243,6 +245,76 @@
}
}
}
function addMinutes(time, minutes) {
return new Date(new Date('1970-01-01T' + time + 'Z').getTime() + minutes * 60000).toISOString().substr(11, 5);
}
async function check_data() {
// console.log("selalu jalankan")
// get current time
const today = new Date();
const time = today.getHours() + ":" + today.getMinutes() + ":" + today.getSeconds();
let data
try {
// get today day name in id
const day = today.toLocaleString('id-ID', {
weekday: 'long'
});
// console.log(day)
data = await $.ajax({
url: server_url_api + "check_jadwal?hari=" + day + "&id_dinas=" + id_dinas,
type: 'get',
async: false,
// beforeSend: function(res) {
// block_ui("Mengambil Data Informasi Libur");
// },
});
data = data.data
// console.log(data);
// create const jam_masuk and jam_pulang
let jam_masuk = data.jam_masuk
let jam_pulang = data.jam_pulang
// add 30 minutes before jam_masuk
// add 30 minutes after jam_pulang
jam_masuk = addMinutes(jam_masuk, -30)
jam_pulang = addMinutes(jam_pulang, 30)
if (time >= jam_masuk && time <= jam_pulang) {
$("#map").attr("hidden", false);
$("#title_peta").attr("style", "display:none");
} else {
$("#map").attr("hidden", true);
$("#title_peta").attr("style", "display:block");
$("#title_peta").html("Peta tidak dapat ditampilkan saat ini, Diluar Jam Kerja");
}
} catch (error) {
// await $.unblockUI();
const statusCode = error.status;
console.log(error)
console.log(statusCode)
$("#map").attr("hidden", true);
$("#title_peta").attr("style", "display:block");
$("#title_peta").html("Peta tidak dapat ditampilkan saat ini, Diluar Jam Kerja ");
}
}
check_data()
setInterval(
check_data, 5000
)
</script>
</body>