mirror of
https://github.com/assenzostefano/Apexie-Website.git
synced 2025-02-16 14:30:42 +01:00
Apexie GDPR Consent
This commit is contained in:
parent
b1f37e608b
commit
fb00080756
@ -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>
|
||||
|
35
src/index.ts
35
src/index.ts
@ -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`);
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user