From e612698c225a0854d8493fce71489675b735f3ea Mon Sep 17 00:00:00 2001 From: Lav Kush <170819619+Lav-developer@users.noreply.github.com> Date: Wed, 6 May 2026 21:38:33 +0530 Subject: [PATCH 1/2] Revamp admin flows for add/edit modes and contributor visibility --- admin.html | 28 ++++++++++++++++++++++++++- admin.js | 56 ++++++++++++++++++++++++++++++++++++++++++++---------- script.js | 13 ++----------- 3 files changed, 75 insertions(+), 22 deletions(-) diff --git a/admin.html b/admin.html index 92b7c7a..a874158 100644 --- a/admin.html +++ b/admin.html @@ -786,7 +786,22 @@

DSMNRU content dashboard

-
+
+ +
+
+
+
+
+
+ + +
+
+
+ + +
@@ -929,6 +948,13 @@

DSMNRU content dashboard

+
+ + +
diff --git a/admin.js b/admin.js index 1e8385f..aa729fc 100644 --- a/admin.js +++ b/admin.js @@ -87,6 +87,7 @@ document.addEventListener('DOMContentLoaded', function() { const course = document.getElementById('pyqCourse').value.trim(); const semester = document.getElementById('pyqSemester').value.trim(); const subject = document.getElementById('pyqSubject').value.trim(); + const branch = document.getElementById('pyqBranch').value.trim(); const session = document.getElementById('pyqSession').value.trim(); const file = document.getElementById('pyqFile').value; @@ -96,7 +97,7 @@ document.addEventListener('DOMContentLoaded', function() { } let currentSubject = subject; - let title = buildPyqTitle(course, semester, currentSubject, session); + let title = buildPyqTitle(course, branch, semester, currentSubject, session); let duplicateExists = await pyqTitleExists(title); if (duplicateExists === null) { @@ -123,7 +124,7 @@ document.addEventListener('DOMContentLoaded', function() { continue; } - title = buildPyqTitle(course, semester, currentSubject, session); + title = buildPyqTitle(course, branch, semester, currentSubject, session); duplicateExists = await pyqTitleExists(title); if (duplicateExists === null) { @@ -131,10 +132,14 @@ document.addEventListener('DOMContentLoaded', function() { } } - addItem('pyqs', { title, file, course, semester, subject: currentSubject, session }); + addItem('pyqs', { title, file, course, branch, semester, subject: currentSubject, session }); this.reset(); }); + + + setupAdminModeSwitcher(); + // Edit form document.getElementById('editForm').addEventListener('submit', function(e) { e.preventDefault(); @@ -463,8 +468,9 @@ function saveData() { console.warn('saveData() called - this project now uses Firestore. Use addItem/editItem/deleteItem instead.'); } -function buildPyqTitle(course, semester, subject, session) { - return `${normalizePyqText(course)} ${normalizePyqText(semester)} Sem ${normalizePyqText(subject)} {${normalizePyqText(session)}}`; +function buildPyqTitle(course, branch, semester, subject, session) { + const branchPart = normalizePyqText(branch); + return `${normalizePyqText(course)}${branchPart ? ` ${branchPart}` : ''} ${normalizePyqText(semester)} Sem ${normalizePyqText(subject)} {${normalizePyqText(session)}}`; } function normalizePyqText(value) { @@ -765,7 +771,7 @@ function renderContributors(contributors) {
-