Added analytics

This commit is contained in:
Mirai Kumiko 2025-03-16 21:57:30 +01:00
parent 043432bb9f
commit 94e101431d
2 changed files with 91 additions and 0 deletions

35
assets/js/analytics.js Normal file
View file

@ -0,0 +1,35 @@
async function getIpAndCountry() {
try {
const response = await fetch("https://freeipapi.com/api/json")
const data = await response.json()
return {
ip: data.ipAddress,
country: data.countryName
}
} catch (error) {
return { ip: "Unknown", country: "Unknown" }
}
}
const url = "https://analytics.miraikumiko.com/api/send"
const referrer = document.referrer
const userAgent = navigator.userAgent
const pageUrl = window.location.href
const clientData = await getIpAndCountry()
const data = {
referrer: referrer,
user_agent: userAgent,
page_url: pageUrl,
ip: clientData.ip,
country: clientData.country
}
fetch(url, {
method: "POST",
headers: {
"Token": "AAAA1234"
},
body: JSON.stringify(data)
})

View file

@ -0,0 +1,56 @@
<!DOCTYPE html>
<html lang="{{ with .Site.LanguageCode }}{{ . }}{{ else }}en-US{{ end }}">
<head>
<meta http-equiv="X-Clacks-Overhead" content="GNU Terry Pratchett" />
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
{{- partial "favicon.html" . -}}
<title>{{- block "title" . }}{{ with .Title }}{{ . }} | {{ end }}{{ .Site.Title }}{{- end }}</title>
{{- partial "seo_tags.html" . -}}
<meta name="referrer" content="no-referrer-when-downgrade" />
{{ $style := print (default "original" .Site.Params.themeStyle) ".css" | resources.Get | minify }}
<link href="{{ $style.RelPermalink }}" rel="stylesheet">
{{ if (.Page.Store.Get "hasCodeBlock") }}
{{ $syntax := resources.Get "syntax.css" | minify }}
<link href="{{ $syntax.RelPermalink }}" rel="stylesheet">
{{ end }}
{{ with .Params.style }}
{{ $extra := resources.Get . | minify }}
<link href="{{ $extra.RelPermalink }}" rel="stylesheet">
{{ end }}
{{ with .OutputFormats.Get "rss" -}}
{{ printf `<link rel="%s" type="%s" href="%s" title="%s" />` .Rel .MediaType.Type .Permalink $.Site.Title | safeHTML }}
{{ end -}}
<!-- A partial to be overwritten by the user.
Simply place a custom_head.html into
your local /layouts/partials-directory -->
{{- partial "custom_head.html" . -}}
</head>
<body>
<header>
{{- partial "header.html" . -}}
</header>
<main id="main-content">
{{- block "main" . }}{{- end }}
</main>
<footer>
{{- partial "footer.html" . -}}
</footer>
<!-- A partial to be overwritten by the user.
Simply place a custom_body.html into
your local /layouts/partials-directory -->
{{- partial "custom_body.html" . -}}
{{ $analyticsJS := resources.Get "js/analytics.js" | resources.Minify }}
<script type="module" src="{{ $analyticsJS.RelPermalink }}"></script>
</body>
</html>