// script.js let users = []; let logs = []; document.getElementById('userForm').addEventListener('submit', function(event) { event.preventDefault(); const username = document.getElementById('username').value; const email = document.getElementById('email').value; const user = { id: Date.now(), username: username, email: email, accessLevel: 'User', // Default access level points: 0, // Default points logins: [] // Array to track login timestamps }; users.push(user); logAction(username, 'User added'); renderUserList(); this.reset(); // Clear the form }); function renderUserList() { const userList = document.getElementById('userList'); userList.innerHTML = ''; // Clear the list before rendering users.forEach((user) => { const row = document.createElement('tr'); row.innerHTML = ` ${user.username} ${user.email} ${user.points} `; userList.appendChild(row); }); } function deleteUser(userId) { const user = users.find(user => user.id === userId); if (user) { logAction(user.username, 'User deleted'); } users = users.filter(user => user.id !== userId); renderUserList(); } function changeAccessLevel(userId, newLevel) { const user = users.find(user => user.id === userId); if (user) { const oldLevel = user.accessLevel; user.accessLevel = newLevel; logAction(user.username, `Access level changed from ${oldLevel} to ${newLevel}`); } } function adjustPoints(userId) { const inputField = document.getElementById(`points-${userId}`); const pointsToAdd = parseInt(inputField.value) || 0; const user = users.find(user => user.id === userId); if (user) { user.points += pointsToAdd; // Adjust points based on the input value logAction(user.username, `Points adjusted by ${pointsToAdd}`); inputField.value = ''; // Clear the input renderUserList(); // Re-render the user list } } function logAction(username, action) { const timestamp = new Date().toLocaleString(); logs.push({username, action, timestamp}); renderLogList(); } function renderLogList() { const logList = document.getElementById('logList'); logList.innerHTML = ''; // Clear the list before rendering logs.forEach(log => { const row = document.createElement('tr'); row.innerHTML = ` ${log.username} ${log.action} ${log.timestamp} `; logList.appendChild(row); }); }