refactor: Extract inline CSS/JS to separate files for monitoring module
- Create individual CSS files: monitoring.css, alerts.css, health.css, logs.css, metrics.css, resources.css
- Create individual JS files: monitoring.js, alerts.js, health.js, logs.js, metrics.js, resources.js
- Update HTML files to reference external CSS/JS files
- Add CSS/JS files for other modules (analytics, chat, mail, meet, tasks, etc.)
- Remove obsolete implementation plan files
2025-12-07 09:56:27 -03:00
|
|
|
|
function openCompose(replyTo = null, forward = null) {
|
2025-12-20 19:58:04 -03:00
|
|
|
|
const modal = document.getElementById("composeModal");
|
|
|
|
|
|
if (modal) {
|
|
|
|
|
|
modal.classList.remove("hidden");
|
|
|
|
|
|
modal.classList.remove("minimized");
|
|
|
|
|
|
if (replyTo) {
|
|
|
|
|
|
document.getElementById("composeTo").value = replyTo;
|
refactor: Extract inline CSS/JS to separate files for monitoring module
- Create individual CSS files: monitoring.css, alerts.css, health.css, logs.css, metrics.css, resources.css
- Create individual JS files: monitoring.js, alerts.js, health.js, logs.js, metrics.js, resources.js
- Update HTML files to reference external CSS/JS files
- Add CSS/JS files for other modules (analytics, chat, mail, meet, tasks, etc.)
- Remove obsolete implementation plan files
2025-12-07 09:56:27 -03:00
|
|
|
|
}
|
2025-12-20 19:58:04 -03:00
|
|
|
|
}
|
refactor: Extract inline CSS/JS to separate files for monitoring module
- Create individual CSS files: monitoring.css, alerts.css, health.css, logs.css, metrics.css, resources.css
- Create individual JS files: monitoring.js, alerts.js, health.js, logs.js, metrics.js, resources.js
- Update HTML files to reference external CSS/JS files
- Add CSS/JS files for other modules (analytics, chat, mail, meet, tasks, etc.)
- Remove obsolete implementation plan files
2025-12-07 09:56:27 -03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
function closeCompose() {
|
2025-12-20 19:58:04 -03:00
|
|
|
|
const modal = document.getElementById("composeModal");
|
|
|
|
|
|
if (modal) {
|
|
|
|
|
|
modal.classList.add("hidden");
|
|
|
|
|
|
document.getElementById("composeTo").value = "";
|
|
|
|
|
|
document.getElementById("composeCc").value = "";
|
|
|
|
|
|
document.getElementById("composeBcc").value = "";
|
|
|
|
|
|
document.getElementById("composeSubject").value = "";
|
|
|
|
|
|
document.getElementById("composeBody").value = "";
|
|
|
|
|
|
}
|
refactor: Extract inline CSS/JS to separate files for monitoring module
- Create individual CSS files: monitoring.css, alerts.css, health.css, logs.css, metrics.css, resources.css
- Create individual JS files: monitoring.js, alerts.js, health.js, logs.js, metrics.js, resources.js
- Update HTML files to reference external CSS/JS files
- Add CSS/JS files for other modules (analytics, chat, mail, meet, tasks, etc.)
- Remove obsolete implementation plan files
2025-12-07 09:56:27 -03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
function minimizeCompose() {
|
2025-12-20 19:58:04 -03:00
|
|
|
|
const modal = document.getElementById("composeModal");
|
|
|
|
|
|
if (modal) {
|
|
|
|
|
|
modal.classList.toggle("minimized");
|
|
|
|
|
|
}
|
refactor: Extract inline CSS/JS to separate files for monitoring module
- Create individual CSS files: monitoring.css, alerts.css, health.css, logs.css, metrics.css, resources.css
- Create individual JS files: monitoring.js, alerts.js, health.js, logs.js, metrics.js, resources.js
- Update HTML files to reference external CSS/JS files
- Add CSS/JS files for other modules (analytics, chat, mail, meet, tasks, etc.)
- Remove obsolete implementation plan files
2025-12-07 09:56:27 -03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
function toggleCcBcc() {
|
2025-12-20 19:58:04 -03:00
|
|
|
|
const ccBcc = document.getElementById("ccBccFields");
|
|
|
|
|
|
if (ccBcc) {
|
|
|
|
|
|
ccBcc.classList.toggle("hidden");
|
|
|
|
|
|
}
|
refactor: Extract inline CSS/JS to separate files for monitoring module
- Create individual CSS files: monitoring.css, alerts.css, health.css, logs.css, metrics.css, resources.css
- Create individual JS files: monitoring.js, alerts.js, health.js, logs.js, metrics.js, resources.js
- Update HTML files to reference external CSS/JS files
- Add CSS/JS files for other modules (analytics, chat, mail, meet, tasks, etc.)
- Remove obsolete implementation plan files
2025-12-07 09:56:27 -03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
function toggleScheduleMenu() {
|
2025-12-20 19:58:04 -03:00
|
|
|
|
const menu = document.getElementById("scheduleMenu");
|
|
|
|
|
|
if (menu) {
|
|
|
|
|
|
menu.classList.toggle("hidden");
|
|
|
|
|
|
}
|
refactor: Extract inline CSS/JS to separate files for monitoring module
- Create individual CSS files: monitoring.css, alerts.css, health.css, logs.css, metrics.css, resources.css
- Create individual JS files: monitoring.js, alerts.js, health.js, logs.js, metrics.js, resources.js
- Update HTML files to reference external CSS/JS files
- Add CSS/JS files for other modules (analytics, chat, mail, meet, tasks, etc.)
- Remove obsolete implementation plan files
2025-12-07 09:56:27 -03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
function scheduleSend(when) {
|
2025-12-20 19:58:04 -03:00
|
|
|
|
console.log("Scheduling send for:", when);
|
|
|
|
|
|
toggleScheduleMenu();
|
refactor: Extract inline CSS/JS to separate files for monitoring module
- Create individual CSS files: monitoring.css, alerts.css, health.css, logs.css, metrics.css, resources.css
- Create individual JS files: monitoring.js, alerts.js, health.js, logs.js, metrics.js, resources.js
- Update HTML files to reference external CSS/JS files
- Add CSS/JS files for other modules (analytics, chat, mail, meet, tasks, etc.)
- Remove obsolete implementation plan files
2025-12-07 09:56:27 -03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
function toggleSelectAll() {
|
2025-12-20 19:58:04 -03:00
|
|
|
|
const selectAll = document.getElementById("selectAll");
|
|
|
|
|
|
const checkboxes = document.querySelectorAll(".email-checkbox");
|
|
|
|
|
|
checkboxes.forEach((cb) => (cb.checked = selectAll.checked));
|
|
|
|
|
|
updateBulkActions();
|
refactor: Extract inline CSS/JS to separate files for monitoring module
- Create individual CSS files: monitoring.css, alerts.css, health.css, logs.css, metrics.css, resources.css
- Create individual JS files: monitoring.js, alerts.js, health.js, logs.js, metrics.js, resources.js
- Update HTML files to reference external CSS/JS files
- Add CSS/JS files for other modules (analytics, chat, mail, meet, tasks, etc.)
- Remove obsolete implementation plan files
2025-12-07 09:56:27 -03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
function updateBulkActions() {
|
2025-12-20 19:58:04 -03:00
|
|
|
|
const checked = document.querySelectorAll(".email-checkbox:checked");
|
|
|
|
|
|
const bulkActions = document.getElementById("bulkActions");
|
|
|
|
|
|
if (bulkActions) {
|
|
|
|
|
|
bulkActions.style.display = checked.length > 0 ? "flex" : "none";
|
|
|
|
|
|
}
|
refactor: Extract inline CSS/JS to separate files for monitoring module
- Create individual CSS files: monitoring.css, alerts.css, health.css, logs.css, metrics.css, resources.css
- Create individual JS files: monitoring.js, alerts.js, health.js, logs.js, metrics.js, resources.js
- Update HTML files to reference external CSS/JS files
- Add CSS/JS files for other modules (analytics, chat, mail, meet, tasks, etc.)
- Remove obsolete implementation plan files
2025-12-07 09:56:27 -03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
function openTemplatesModal() {
|
2025-12-20 19:58:04 -03:00
|
|
|
|
const modal = document.getElementById("templatesModal");
|
|
|
|
|
|
if (modal) modal.classList.remove("hidden");
|
refactor: Extract inline CSS/JS to separate files for monitoring module
- Create individual CSS files: monitoring.css, alerts.css, health.css, logs.css, metrics.css, resources.css
- Create individual JS files: monitoring.js, alerts.js, health.js, logs.js, metrics.js, resources.js
- Update HTML files to reference external CSS/JS files
- Add CSS/JS files for other modules (analytics, chat, mail, meet, tasks, etc.)
- Remove obsolete implementation plan files
2025-12-07 09:56:27 -03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
function closeTemplatesModal() {
|
2025-12-20 19:58:04 -03:00
|
|
|
|
const modal = document.getElementById("templatesModal");
|
|
|
|
|
|
if (modal) modal.classList.add("hidden");
|
refactor: Extract inline CSS/JS to separate files for monitoring module
- Create individual CSS files: monitoring.css, alerts.css, health.css, logs.css, metrics.css, resources.css
- Create individual JS files: monitoring.js, alerts.js, health.js, logs.js, metrics.js, resources.js
- Update HTML files to reference external CSS/JS files
- Add CSS/JS files for other modules (analytics, chat, mail, meet, tasks, etc.)
- Remove obsolete implementation plan files
2025-12-07 09:56:27 -03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
function openSignaturesModal() {
|
2025-12-20 19:58:04 -03:00
|
|
|
|
const modal = document.getElementById("signaturesModal");
|
|
|
|
|
|
if (modal) modal.classList.remove("hidden");
|
refactor: Extract inline CSS/JS to separate files for monitoring module
- Create individual CSS files: monitoring.css, alerts.css, health.css, logs.css, metrics.css, resources.css
- Create individual JS files: monitoring.js, alerts.js, health.js, logs.js, metrics.js, resources.js
- Update HTML files to reference external CSS/JS files
- Add CSS/JS files for other modules (analytics, chat, mail, meet, tasks, etc.)
- Remove obsolete implementation plan files
2025-12-07 09:56:27 -03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
function closeSignaturesModal() {
|
2025-12-20 19:58:04 -03:00
|
|
|
|
const modal = document.getElementById("signaturesModal");
|
|
|
|
|
|
if (modal) modal.classList.add("hidden");
|
refactor: Extract inline CSS/JS to separate files for monitoring module
- Create individual CSS files: monitoring.css, alerts.css, health.css, logs.css, metrics.css, resources.css
- Create individual JS files: monitoring.js, alerts.js, health.js, logs.js, metrics.js, resources.js
- Update HTML files to reference external CSS/JS files
- Add CSS/JS files for other modules (analytics, chat, mail, meet, tasks, etc.)
- Remove obsolete implementation plan files
2025-12-07 09:56:27 -03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
function openRulesModal() {
|
2025-12-20 19:58:04 -03:00
|
|
|
|
const modal = document.getElementById("rulesModal");
|
|
|
|
|
|
if (modal) modal.classList.remove("hidden");
|
refactor: Extract inline CSS/JS to separate files for monitoring module
- Create individual CSS files: monitoring.css, alerts.css, health.css, logs.css, metrics.css, resources.css
- Create individual JS files: monitoring.js, alerts.js, health.js, logs.js, metrics.js, resources.js
- Update HTML files to reference external CSS/JS files
- Add CSS/JS files for other modules (analytics, chat, mail, meet, tasks, etc.)
- Remove obsolete implementation plan files
2025-12-07 09:56:27 -03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
function closeRulesModal() {
|
2025-12-20 19:58:04 -03:00
|
|
|
|
const modal = document.getElementById("rulesModal");
|
|
|
|
|
|
if (modal) modal.classList.add("hidden");
|
refactor: Extract inline CSS/JS to separate files for monitoring module
- Create individual CSS files: monitoring.css, alerts.css, health.css, logs.css, metrics.css, resources.css
- Create individual JS files: monitoring.js, alerts.js, health.js, logs.js, metrics.js, resources.js
- Update HTML files to reference external CSS/JS files
- Add CSS/JS files for other modules (analytics, chat, mail, meet, tasks, etc.)
- Remove obsolete implementation plan files
2025-12-07 09:56:27 -03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
function useTemplate(name) {
|
2025-12-20 19:58:04 -03:00
|
|
|
|
console.log("Using template:", name);
|
|
|
|
|
|
closeTemplatesModal();
|
refactor: Extract inline CSS/JS to separate files for monitoring module
- Create individual CSS files: monitoring.css, alerts.css, health.css, logs.css, metrics.css, resources.css
- Create individual JS files: monitoring.js, alerts.js, health.js, logs.js, metrics.js, resources.js
- Update HTML files to reference external CSS/JS files
- Add CSS/JS files for other modules (analytics, chat, mail, meet, tasks, etc.)
- Remove obsolete implementation plan files
2025-12-07 09:56:27 -03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
function useSignature(name) {
|
2025-12-20 19:58:04 -03:00
|
|
|
|
console.log("Using signature:", name);
|
|
|
|
|
|
closeSignaturesModal();
|
refactor: Extract inline CSS/JS to separate files for monitoring module
- Create individual CSS files: monitoring.css, alerts.css, health.css, logs.css, metrics.css, resources.css
- Create individual JS files: monitoring.js, alerts.js, health.js, logs.js, metrics.js, resources.js
- Update HTML files to reference external CSS/JS files
- Add CSS/JS files for other modules (analytics, chat, mail, meet, tasks, etc.)
- Remove obsolete implementation plan files
2025-12-07 09:56:27 -03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
function archiveSelected() {
|
2025-12-20 19:58:04 -03:00
|
|
|
|
const checked = document.querySelectorAll(".email-checkbox:checked");
|
|
|
|
|
|
console.log("Archiving", checked.length, "emails");
|
refactor: Extract inline CSS/JS to separate files for monitoring module
- Create individual CSS files: monitoring.css, alerts.css, health.css, logs.css, metrics.css, resources.css
- Create individual JS files: monitoring.js, alerts.js, health.js, logs.js, metrics.js, resources.js
- Update HTML files to reference external CSS/JS files
- Add CSS/JS files for other modules (analytics, chat, mail, meet, tasks, etc.)
- Remove obsolete implementation plan files
2025-12-07 09:56:27 -03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
function deleteSelected() {
|
2025-12-20 19:58:04 -03:00
|
|
|
|
const checked = document.querySelectorAll(".email-checkbox:checked");
|
|
|
|
|
|
if (confirm(`Delete ${checked.length} email(s)?`)) {
|
|
|
|
|
|
console.log("Deleting", checked.length, "emails");
|
|
|
|
|
|
}
|
refactor: Extract inline CSS/JS to separate files for monitoring module
- Create individual CSS files: monitoring.css, alerts.css, health.css, logs.css, metrics.css, resources.css
- Create individual JS files: monitoring.js, alerts.js, health.js, logs.js, metrics.js, resources.js
- Update HTML files to reference external CSS/JS files
- Add CSS/JS files for other modules (analytics, chat, mail, meet, tasks, etc.)
- Remove obsolete implementation plan files
2025-12-07 09:56:27 -03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
function markSelectedRead() {
|
2025-12-20 19:58:04 -03:00
|
|
|
|
const checked = document.querySelectorAll(".email-checkbox:checked");
|
|
|
|
|
|
console.log("Marking", checked.length, "emails as read");
|
refactor: Extract inline CSS/JS to separate files for monitoring module
- Create individual CSS files: monitoring.css, alerts.css, health.css, logs.css, metrics.css, resources.css
- Create individual JS files: monitoring.js, alerts.js, health.js, logs.js, metrics.js, resources.js
- Update HTML files to reference external CSS/JS files
- Add CSS/JS files for other modules (analytics, chat, mail, meet, tasks, etc.)
- Remove obsolete implementation plan files
2025-12-07 09:56:27 -03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
function handleAttachment(input) {
|
2025-12-20 19:58:04 -03:00
|
|
|
|
const files = input.files;
|
|
|
|
|
|
const attachmentList = document.getElementById("attachmentList");
|
|
|
|
|
|
if (attachmentList && files.length > 0) {
|
|
|
|
|
|
for (const file of files) {
|
|
|
|
|
|
const item = document.createElement("div");
|
|
|
|
|
|
item.className = "attachment-item";
|
|
|
|
|
|
item.innerHTML = `
|
refactor: Extract inline CSS/JS to separate files for monitoring module
- Create individual CSS files: monitoring.css, alerts.css, health.css, logs.css, metrics.css, resources.css
- Create individual JS files: monitoring.js, alerts.js, health.js, logs.js, metrics.js, resources.js
- Update HTML files to reference external CSS/JS files
- Add CSS/JS files for other modules (analytics, chat, mail, meet, tasks, etc.)
- Remove obsolete implementation plan files
2025-12-07 09:56:27 -03:00
|
|
|
|
<span>${file.name}</span>
|
|
|
|
|
|
<button type="button" onclick="this.parentElement.remove()">×</button>
|
|
|
|
|
|
`;
|
2025-12-20 19:58:04 -03:00
|
|
|
|
attachmentList.appendChild(item);
|
refactor: Extract inline CSS/JS to separate files for monitoring module
- Create individual CSS files: monitoring.css, alerts.css, health.css, logs.css, metrics.css, resources.css
- Create individual JS files: monitoring.js, alerts.js, health.js, logs.js, metrics.js, resources.js
- Update HTML files to reference external CSS/JS files
- Add CSS/JS files for other modules (analytics, chat, mail, meet, tasks, etc.)
- Remove obsolete implementation plan files
2025-12-07 09:56:27 -03:00
|
|
|
|
}
|
2025-12-20 19:58:04 -03:00
|
|
|
|
}
|
refactor: Extract inline CSS/JS to separate files for monitoring module
- Create individual CSS files: monitoring.css, alerts.css, health.css, logs.css, metrics.css, resources.css
- Create individual JS files: monitoring.js, alerts.js, health.js, logs.js, metrics.js, resources.js
- Update HTML files to reference external CSS/JS files
- Add CSS/JS files for other modules (analytics, chat, mail, meet, tasks, etc.)
- Remove obsolete implementation plan files
2025-12-07 09:56:27 -03:00
|
|
|
|
}
|
|
|
|
|
|
|
2025-12-20 19:58:04 -03:00
|
|
|
|
document.addEventListener("keydown", function (e) {
|
|
|
|
|
|
if (e.key === "Escape") {
|
|
|
|
|
|
closeCompose();
|
|
|
|
|
|
closeTemplatesModal();
|
|
|
|
|
|
closeSignaturesModal();
|
|
|
|
|
|
closeRulesModal();
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
if (e.ctrlKey && e.key === "n") {
|
|
|
|
|
|
e.preventDefault();
|
|
|
|
|
|
openCompose();
|
|
|
|
|
|
}
|
refactor: Extract inline CSS/JS to separate files for monitoring module
- Create individual CSS files: monitoring.css, alerts.css, health.css, logs.css, metrics.css, resources.css
- Create individual JS files: monitoring.js, alerts.js, health.js, logs.js, metrics.js, resources.js
- Update HTML files to reference external CSS/JS files
- Add CSS/JS files for other modules (analytics, chat, mail, meet, tasks, etc.)
- Remove obsolete implementation plan files
2025-12-07 09:56:27 -03:00
|
|
|
|
});
|
|
|
|
|
|
|
2025-12-20 19:58:04 -03:00
|
|
|
|
document.addEventListener("DOMContentLoaded", function () {
|
|
|
|
|
|
document.querySelectorAll(".email-checkbox").forEach((cb) => {
|
|
|
|
|
|
cb.addEventListener("change", updateBulkActions);
|
|
|
|
|
|
});
|
refactor: Extract inline CSS/JS to separate files for monitoring module
- Create individual CSS files: monitoring.css, alerts.css, health.css, logs.css, metrics.css, resources.css
- Create individual JS files: monitoring.js, alerts.js, health.js, logs.js, metrics.js, resources.js
- Update HTML files to reference external CSS/JS files
- Add CSS/JS files for other modules (analytics, chat, mail, meet, tasks, etc.)
- Remove obsolete implementation plan files
2025-12-07 09:56:27 -03:00
|
|
|
|
});
|