Spaces:
Running
Running
<html lang="en"> | |
<!-- Mirrored from es-teams-database2025.onrender.com/activity by HTTrack Website Copier/3.x [XR&CO'2017], Fri, 14 Feb 2025 22:34:57 GMT --> | |
<!-- Added by HTTrack --><meta http-equiv="content-type" content="text/html;charset=UTF-8" /><!-- /Added by HTTrack --> | |
<head> | |
<meta charset="UTF-8"> | |
<meta name="viewport" content="width=device-width, initial-scale=1.0"> | |
<title>ES TEAMS ACTIVITY LOGS</title> | |
<script src="../external.html?link=https://cdn.tailwindcss.com/"></script> | |
<style> | |
/* Animation for heading */ | |
@keyframes marquee { | |
from { transform: translateX(100%); } | |
to { transform: translateX(-100%); } | |
} | |
.marquee { | |
white-space: nowrap; | |
overflow: hidden; | |
display: inline-block; | |
animation: marquee 8s linear infinite; | |
} | |
/* Profile image frame */ | |
.profile-frame { | |
width: 80px; | |
height: 80px; | |
border-radius: 50%; | |
overflow: hidden; | |
border: 3px solid cyan; | |
} | |
/* Green blinking dot */ | |
@keyframes blink { | |
50% { opacity: 0; } | |
} | |
.blinking-dot { | |
width: 10px; | |
height: 10px; | |
background-color: limegreen; | |
border-radius: 50%; | |
animation: blink 1s infinite; | |
} | |
/* Glowing log out button */ | |
.logout-btn { | |
background-color: red; | |
color: white; | |
padding: 10px 20px; | |
border-radius: 10px; | |
box-shadow: 0 0 10px red; | |
transition: transform 0.2s; | |
} | |
.logout-btn:hover { | |
transform: scale(1.1); | |
} | |
/* Box for content */ | |
.content-box { | |
background-color: rgba(255, 255, 255, 0.1); | |
padding: 20px; | |
border-radius: 15px; | |
border-left: 5px solid cyan; | |
box-shadow: 0 0 10px cyan; | |
width: 80%; | |
margin: 20px auto; | |
text-align: center; | |
} | |
/* Scrollable activity log */ | |
.activity-log-box { | |
max-height: 300px; | |
overflow-y: auto; | |
padding: 10px; | |
background-color: rgba(255, 255, 255, 0.1); | |
border-radius: 10px; | |
box-shadow: 0 0 10px cyan; | |
} | |
.activity-log-item { | |
display: flex; | |
justify-content: space-between; | |
background-color: rgba(255, 255, 255, 0.2); | |
margin: 5px 0; | |
padding: 5px; | |
border-radius: 5px; | |
} | |
</style> | |
</head> | |
<body class="bg-gray-900 text-white flex flex-col items-center justify-center min-h-screen p-5"> | |
<!-- Top Section --> | |
<div class="w-full flex justify-between items-center px-5"> | |
<!-- Back Button --> | |
<button data-action="Navigated to Home" onclick="goToLogin()" class="text-3xl" id="logout-btn">←</button> | |
<!-- Profile Picture --> | |
<div class="profile-frame"> | |
<img id="profile-img" src="#" alt="Profile" class="w-full h-full object-cover"> | |
</div> | |
</div> | |
<!-- Heading --> | |
<h1 class="text-3xl font-bold text-cyan-400 mt-5 marquee">ππ¦ π§πππ π¦ πππ§ππ©ππ§π¬ ππ’ππ¦</h1> | |
<p class="text-lg text-gray-300 mt-2">Welcome to your activity log where you see all your current progress.</p> | |
<!-- Device Information Box --> | |
<div class="content-box"> | |
<h3 class="text-xl font-semibold">πππ©πππ ππ‘ππ’</h3> | |
<p>Date: <span id="device-date"></span></p> | |
<p>Time: <span id="device-time"></span></p> | |
<p>Uptime: <span id="device-uptime"></span></p> | |
</div> | |
<!-- Title Activity Logs Box --> | |
<div class="content-box"> | |
<h3 class="text-xl font-semibold">ππ’ππ¦</h3> | |
<div class="activity-log-box" id="activity-log"> | |
<!-- Activity logs will be added here dynamically --> | |
</div> | |
</div> | |
<!-- Log Out Button --> | |
<button onclick="goToLogin()" class="logout-btn fixed bottom-5 right-5">ππ’π π’π¨π§</button> | |
<!-- JavaScript --> | |
<script> | |
// Global event listener for button clicks | |
function handleButtonClick(button) { | |
const action = button.getAttribute('data-action'); | |
logActivity(action || 'Button clicked'); | |
} | |
// Load profile image from local storage | |
function loadProfileImage() { | |
let userData = JSON.parse(localStorage.getItem("userData")) || {}; | |
if (userData.profilePic) { | |
document.getElementById("profile-img").src = userData.profilePic; | |
} else { | |
document.getElementById("profile-img").src = "../files.catbox.moe/wyin55.jpg"; // Default placeholder | |
} | |
} | |
// Load activity log from local storage | |
function loadActivityLog() { | |
let activities = JSON.parse(localStorage.getItem("activityLog")) || []; | |
let logContainer = document.getElementById("activity-log"); | |
logContainer.innerHTML = ""; // Clear previous logs | |
if (activities.length === 0) { | |
logContainer.innerHTML = "<p class='text-gray-400'>No activities yet.</p>"; | |
return; | |
} | |
activities.forEach(activity => { | |
let activityItem = document.createElement("div"); | |
activityItem.className = "activity-log-item"; | |
activityItem.innerHTML = ` | |
<span>${activity}</span> | |
<div class="blinking-dot"></div> | |
`; | |
logContainer.appendChild(activityItem); | |
}); | |
} | |
// Log activity | |
function logActivity(action) { | |
let activities = JSON.parse(localStorage.getItem("activityLog")) || []; | |
let timestamp = new Date().toLocaleTimeString(); | |
activities.unshift(`${action} at ${timestamp}`); // Add new activity at the top | |
if (activities.length > 10) { | |
activities.pop(); // Remove the oldest activity if there are more than 10 | |
} | |
localStorage.setItem("activityLog", JSON.stringify(activities)); | |
loadActivityLog(); // Refresh activity log | |
} | |
// Update device information | |
let startTime = new Date().getTime(); | |
function updateDeviceInfo() { | |
const date = new Date(); | |
document.getElementById("device-date").textContent = date.toLocaleDateString(); | |
// Update time every second | |
setInterval(function() { | |
document.getElementById("device-time").textContent = new Date().toLocaleTimeString(); | |
}, 1000); | |
// Calculate uptime in seconds | |
setInterval(function() { | |
let uptime = Math.floor((new Date().getTime() - startTime) / 1000); | |
document.getElementById("device-uptime").textContent = `${uptime} seconds`; | |
}, 1000); // Refresh every second | |
} | |
// Initialize page | |
window.onload = function() { | |
loadProfileImage(); | |
loadActivityLog(); | |
updateDeviceInfo(); | |
}; | |
// Redirect to the login page | |
function goToLogin() { | |
// Log activity on logout | |
logActivity('Logged out'); | |
// Redirect to the login page (or index page if preferred) | |
window.location.href = "index-2.html"; // Redirect to index.html | |
} | |
// Add event listener to buttons dynamically on page load | |
document.querySelectorAll("button").forEach(button => { | |
button.addEventListener('click', function() { | |
logActivity(`Button clicked: ${button.innerText || 'Unnamed button'}`); | |
}); | |
}); | |
</script> | |
</body> | |
<!-- Mirrored from es-teams-database2025.onrender.com/activity by HTTrack Website Copier/3.x [XR&CO'2017], Fri, 14 Feb 2025 22:34:59 GMT --> | |
</html> |