rumahjo/app/component/viewers.js

150 lines
4.6 KiB
JavaScript
Raw Permalink Normal View History

2024-09-07 00:46:58 +00:00
"use client"
import React, { useEffect } from "react";
import { usePathname } from "next/navigation";
function tanggal(a) {
var newDate = new Date();
if (a != undefined) {
if (a === "gugus") {
newDate = new Date(helper.sesiGet('tahun') + '-' + helper.sesiGet('bulan'));
} else {
newDate = new Date(a);
}
}
var namaBulan = ['Januari', 'Februari', 'Maret', 'April', 'Mei', 'Juni', 'Juli', 'Agustus', 'September', 'Oktober', 'November', 'Desember'];
var namaHari = ['Minggu', 'Senin', 'Selasa', 'Rabu', 'Kamis', 'Jum`at', 'Sabtu'];
function buat(newDate) {
var year = newDate.getFullYear();
var month = (newDate.getMonth() + 1) + '';
var day = (newDate.getDate()) + '';
var format = '00';
var ansMonth = format.substring(0, format.length - month.length) + month;
var ansDay = format.substring(0, format.length - day.length) + day;
var dayKnow = ansDay + '-' + ansMonth + '-' + year;
if (a == null) {
return "";
} else {
return dayKnow;
}
}
function buatN(newDate) {
var year = newDate.getFullYear();
var month = newDate.getMonth();
var day = (newDate.getDate()) + '';
var format = '00';
var ansMonth = namaBulan[month];
var ansDay = format.substring(0, format.length - day.length) + day;
var dayKnow = ansDay + ' ' + ansMonth + ' ' + year;
if (a == null) {
return "";
} else {
return dayKnow;
}
}
function buatO(newDate) {
var year = newDate.getFullYear();
var month = (newDate.getMonth() + 1) + '';
var day = (newDate.getDate()) + '';
var format = '00';
var ansMonth = format.substring(0, format.length - month.length) + month;
var ansDay = format.substring(0, format.length - day.length) + day;
var dayKnow = year + '-' + ansMonth + '-' + ansDay;
return {
full: dayKnow,
day: newDate.getDay()
};
}
function buatNum(newDate) {
var year = newDate.getFullYear();
var month = (newDate.getMonth() + 1) + '';
var day = (newDate.getDate()) + '';
var format = '00';
var ansMonth = format.substring(0, format.length - month.length) + month;
var ansDay = format.substring(0, format.length - day.length) + day;
var dayKnow = year + ansMonth + ansDay;
return Number(dayKnow);
}
function buatC(newDate) {
var year = newDate.getFullYear();
var month = newDate.getMonth();
var day = newDate.getDate();
var dateK = new Date(year, month, day);
return dateK;
}
var date = new Date(),
y = date.getFullYear(),
m = date.getMonth();
var firstDay = new Date(newDate.getFullYear(), newDate.getMonth(), 1);
var lastDay = new Date(newDate.getFullYear(), newDate.getMonth() + 1, 0)
var returnData = {
oneDayMilisecond: 86400000,
milisecond: newDate.getTime(),
normal: buatO(newDate).full,
cek1: buatC(newDate),
sekarang: buat(newDate),
sekarang2: buatN(newDate),
cek2: buatC(firstDay),
normal2: buatO(firstDay).full,
awal: buat(firstDay),
awal2: buatN(firstDay),
akhir: buat(lastDay),
akhir2: buatN(lastDay),
cek3: buatC(lastDay),
normal3: buatO(lastDay).full,
angka: buatNum(newDate),
dayn: namaHari[buatO(newDate).day],
day: buatO(newDate).day,
day2n: namaHari[buatO(firstDay).day],
day2: buatO(firstDay).day,
day3n: namaHari[buatO(lastDay).day],
day3: buatO(lastDay).day
}
return returnData;
}
const Viewers = function({children}){
const pathname = usePathname();
useEffect(()=>{
let tokenuser = localStorage.getItem('token-user') ? localStorage.getItem('token-user'):null;
if(!localStorage.getItem('token-user')){
tokenuser = 'token-' + Date.now();
localStorage.setItem('token-user', tokenuser);
}
fetch("/api/viewers", {
method: "POST", // or 'PUT'
headers: {
"Content-Type": "application/json",
},
body: JSON.stringify({
id: tokenuser,
slug: pathname,
nilai: tanggal().normal
}),
})
.then(function(res){
return res.json()
})
.then(function(r){
})
.catch(function(r){
console.log(r)
})
},[pathname])
return <>
{children}
</>
}
export default Viewers;