diff --git a/assets/css/style.css b/assets/css/style.css index b5638e6..d3ae1a4 100644 --- a/assets/css/style.css +++ b/assets/css/style.css @@ -758,15 +758,3 @@ br { text-decoration: underline; color: var(--white) !important; } - -.review:hover { - background: var(--surface1); -} - -#review-person { - text-decoration: none; -} - -#review-person:hover { - text-decoration: underline; -} diff --git a/assets/js/index.js b/assets/js/index.js index af43ccc..e44a1e1 100644 --- a/assets/js/index.js +++ b/assets/js/index.js @@ -1,6 +1,5 @@ import * as wakatime from "./wakatime.js"; import * as github from "./github.js"; -import * as reviewdb from "./reviewdb.js"; const timeElem = document.getElementById('time'); const timezone = 'Europe/Berlin'; @@ -17,45 +16,6 @@ function getTime(timezone) { }); }; -export function formatTime(ms) { - const totalSecs = Math.floor(ms / 1000); - const hours = Math.floor(totalSecs / 3600); - const mins = Math.floor((totalSecs % 3600) / 60); - const secs = totalSecs % 60; - - return `${String(hours).padStart(1, "0")}:${String(mins).padStart(2, "0")}:${String(secs).padStart(2, "0")}`; -} - -export function formatVerbose(ms) { - const totalSecs = Math.floor(ms / 1000); - const hours = Math.floor(totalSecs / 3600); - const mins = Math.floor((totalSecs % 3600) / 60); - const secs = totalSecs % 60; - - return `${hours}h ${mins}m ${secs}s`; -} - -export function msToTimestamp(ms, seconds=true) { - if (seconds) { - const timestamp = new Date(ms).toLocaleTimeString('en-GB', { - hour: "2-digit", - minute: "2-digit", - second: "2-digit" - }); - return timestamp; - } else { - const timestamp = new Date(ms).toLocaleTimeString('en-GB', { - hour: "2-digit", - minute: "2-digit" - }); - return timestamp; - } -} - -export function msToDate(ms) { - return new Date(ms).toISOString(); -} - timeElem.innerHTML = getTime(timezone); setInterval(() => { @@ -94,7 +54,6 @@ function lan() { const activity = document.querySelector('.activity'); const activityNameElem = document.getElementById('activity-name'); const activityImageElem = document.getElementById('activity-image'); - const uname = document.getElementById('username'); const gameActivity = data.activities.find(activity => activity.type === 0); const status = data.activities.find(activity => activity.type === 4); @@ -105,27 +64,26 @@ function lan() { offline: "#80848e" }; - const userName = data.discord_user.display_name - - uname.innerText = userName; - uname.href = `https://discord.com/users/${data.discord_user.id}` - pfpElem.src = `https://cdn.discordapp.com/avatars/${user}/${data.discord_user.avatar}.webp` const borderColor = statusColors[data.discord_status] || statusColors.offline; pfpElem.style.borderColor = borderColor; if (status) { - statusElem.innerHTML = `"${status.state}" - ${userName}`; + statusElem.innerHTML = `"${ + status.state + }" - zyqunix`; } else { statusElem.innerHTML = `Empty void. Nothingness.`; } - if (gameActivity) { + const parts = []; if (gameActivity.name) - parts.push(`Playing ${gameActivity.name}`); + parts.push(`Playing ${ + gameActivity.name + }`); if (gameActivity.details) @@ -135,20 +93,18 @@ function lan() { if (gameActivity.state) parts.push(gameActivity.state); - if (gameActivity.timestamps.start) - parts.push(`Since ${new Date(gameActivity.timestamps.start).toLocaleTimeString('en-GB', { - hour: "2-digit", - minute: "2-digit", - second: "2-digit" - })}`); activityNameElem.innerHTML = parts.join(': '); if (gameActivity.assets && gameActivity.assets.large_image) { - activityImageElem.src =`https://cdn.discordapp.com/app-assets/${gameActivity.application_id}/${gameActivity.assets.large_image}.png`; + const imgId = gameActivity.assets.large_image; + const imageUrl = imgId.startsWith("mp:external/") ? `https://media.discordapp.net/${ + imgId.replace("mp:", "") + }` : `https://cdn.discordapp.com/app-assets/${ + gameActivity.application_id + }/${imgId}.png`; + activityImageElem.src = imageUrl; activityImageElem.style.display = "block"; - activityImageElem.style.width = "64px"; - activityImageElem.style.height = "64px"; } else { activityImageElem.style.display = "none"; } @@ -163,7 +119,7 @@ window.onload = () => { setInterval(() => { lan(); -}, 60000); +}, 6000); function generateLanguageCards(languagesData) { const container = document.querySelector('.languages'); @@ -288,7 +244,6 @@ function fetchWeather(location) { wakatime.fetchWakatime("#wakapi"); github.writeGithubStats("#github-full"); -reviewdb.writeReviews("#reviews"); const messages = [ "Coding", diff --git a/assets/js/reviewdb.js b/assets/js/reviewdb.js deleted file mode 100644 index 8a2483b..0000000 --- a/assets/js/reviewdb.js +++ /dev/null @@ -1,42 +0,0 @@ -import { msToDate, msToTimestamp } from "./index.js"; - -const API_URL = "https://manti.vendicated.dev/api/reviewdb"; -const user = "1201415921802170388"; - -export async function fetchReviews(user) { - const response = await fetch(`${API_URL}/users/${user}/reviews`); - if (!response.ok) throw new Error(`Error fetching reviews: ${response.status} ${response.statusText}`); - const data = await response.json(); - data.reviews = data.reviews.filter(r => r.id !== 0); - return data; -} - -export async function writeReviews(target) { - const element = document.querySelector(target); - const data = await fetchReviews(user); - - element.innerHTML = ""; - - data.reviews.forEach(review => { - const el = document.createElement("div"); - el.classList.add("shadow", "review"); - el.style.transition = "background 0.3s"; - el.style.margin = "10px"; - el.style.padding = "15px"; - el.style.border = "2px solid var(--surface1)"; - el.style.borderRadius = "5px"; - el.innerHTML = ` -
${review.comment}
- `; - element.appendChild(el); - }); -} diff --git a/index.html b/index.html index fc6bead..f739833 100644 --- a/index.html +++ b/index.html @@ -13,7 +13,7 @@