Apexie GDPR Consent

This commit is contained in:
ItzLightyHD 2022-07-04 16:35:38 +02:00
parent b1f37e608b
commit fb00080756
2 changed files with 46 additions and 11 deletions

View File

@ -346,6 +346,28 @@
</div>
</div>
<div class="modal fade" id="gdprconsent" tabindex="-2" aria-labelledby="gdpr" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="expiredLabel">GDPR Consent</h5>
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
</div>
<div class="modal-body">
<p class="lead">We use cookies in this website to give you the best experience on our
site. To find out more, read our
<a href="https://www.privacypolicygenerator.info/live.php?token=p519PrZBe1HRup8NtyGsCRpByyUSCDM1">privacy policy</a> and <a href="https://www.cookiepolicygenerator.com/live.php?token=4XCEj5MsPl1JX41C4R5NtaZ2fRotqRGv">cookie policy.</a></p>
</div>
<div class="modal-footer">
<!-- Yes -->
<button type="button" class="btn btn-secondary" data-bs-dismiss="modal" id="gdpr-button">
Ok
</button>
</div>
</div>
</div>
</div>
<!-- Main script + Other JS libraries -->
<script src="https://code.jquery.com/jquery-3.6.0.min.js"
integrity="sha256-/xUj+3OJU5yExlq6GSYGSHk7tPXikynS7ogEvDej/m4=" crossorigin="anonymous"></script>

View File

@ -44,12 +44,12 @@ const lastTimeUserLoggedIn = localStorage.getItem("apexie-discord-login-time")!;
const sessionExpiresIn = localStorage.getItem("apexie-discord-login-expires")!;
const sessionExpired = localStorage.getItem("apexie-discord-login-expired")!;
var sessionExpiredModal = new Modal(document.getElementById("sessionexpired")!);
let sessionExpiredModal = new Modal(document.getElementById("sessionexpired")!);
const getData = async () => {
// Use the access token from the parameters of the URL
const accessToken = new URLSearchParams(window.location.search).get("access_token");
const sessionExpiresIn = new URLSearchParams(window.location.search).get("expires_in");
const accessToken = new URLSearchParams(window.location.search).get("access_token")!;
const sessionExpires = new URLSearchParams(window.location.search).get("expires_in")!;
if (accessToken) {
if (!sessionExpiresIn) return;
// Get the user's data from Discord
@ -63,7 +63,7 @@ const getData = async () => {
// Save the user's data to cookies with expiry time set to sessionExpiresIn
localStorage.setItem("apexie-discord-login", JSON.stringify(user.data));
localStorage.setItem("apexie-discord-login-time", new Date().toISOString());
localStorage.setItem("apexie-discord-login-expires", sessionExpiresIn);
localStorage.setItem("apexie-discord-login-expires", sessionExpires);
localStorage.setItem("apexie-discord-login-expired", "false");
// Redirect to the main page
window.location.href = "/";
@ -99,6 +99,26 @@ if (discordUserData) {
getData();
}
let gdprConsent = localStorage.getItem("apexie-gdprconsent")!;
let gdprConsentModal = new Modal(document.getElementById("gdprconsent")!);
if (!isLoggedIn) {
console.log("User is not logged in");
loginButton.setAttribute("href", loginLink);
} else {
console.log(`${JSON.parse(discordUserData).username} is logged in`);
}
if(!gdprConsent) {
gdprConsentModal.show();
const gdprConsentButton = document.getElementById("gdpr-button")!;
gdprConsentButton.addEventListener("click", () => {
localStorage.setItem("apexie-gdprconsent", "true");
gdprConsentModal.hide();
});
}
if (sessionExpired === "true") {
sessionExpiredModal.show();
@ -118,11 +138,4 @@ if (sessionExpired === "true") {
localStorage.setItem("apexie-discord-login-expired", "false");
sessionExpiredModal.hide();
});
}
if (!isLoggedIn) {
console.log("User is not logged in");
loginButton.setAttribute("href", loginLink);
} else {
console.log(`${JSON.parse(discordUserData).username} is logged in`);
}