diff --git a/app/controllers/admin/volunteers.py b/app/controllers/admin/volunteers.py index 2dbe81479..81ad6f418 100644 --- a/app/controllers/admin/volunteers.py +++ b/app/controllers/admin/volunteers.py @@ -116,10 +116,11 @@ def volunteerDetailsPage(eventID): waitlistUser = list(set([obj for obj in eventRsvpData if obj.rsvpWaitlist])) rsvpUser = list(set([obj for obj in eventRsvpData if not obj.rsvpWaitlist ])) + return render_template("/events/volunteerDetails.html", waitlistUser = waitlistUser, - attendedUser= eventParticipantData, - rsvpUser= rsvpUser, + attendedUser = eventParticipantData, + rsvpUser = rsvpUser, event = event) diff --git a/app/logic/volunteerSpreadsheet.py b/app/logic/volunteerSpreadsheet.py index 255cbc97b..8bbada14a 100644 --- a/app/logic/volunteerSpreadsheet.py +++ b/app/logic/volunteerSpreadsheet.py @@ -225,7 +225,6 @@ def calculateRetentionRate(fallDict, springDict): return retentionDict - def makeDataXls(sheetName, sheetData, workbook, sheetDesc=None): # assumes the length of the column titles matches the length of the data (columnTitles, dataTuples) = sheetData diff --git a/app/static/js/graduationManagement.js b/app/static/js/graduationManagement.js index ccbf80cb2..037e8c73e 100644 --- a/app/static/js/graduationManagement.js +++ b/app/static/js/graduationManagement.js @@ -18,8 +18,7 @@ $(document).ready(function() { return true; }); - $('.graduated-checkbox').not('.hasHandler').addClass("hasHandler") - $('.graduated-checkbox').change(checkboxClickHandler); + $(document).on('change', '.graduated-checkbox', checkboxClickHandler); initializePage() @@ -123,9 +122,7 @@ $(document).ready(function() { } function redrawTable() { - gradStudentsTable.draw(); - $('.graduated-checkbox').not('.hasHandler').change(checkboxClickHandler); - $('.graduated-checkbox').not('.hasHandler').addClass("hasHandler") + gradStudentsTable.draw(); } function checkboxClickHandler() { @@ -137,20 +134,22 @@ $(document).ready(function() { data: {status: hasGraduated ? 1 : 0}, url: `/${username}/setGraduationStatus`, success: function(response) { - initializePage() msgFlash(`Saved graduation status for ${username}.`, "success", 1000) const row = $(`tr[data-username="${username}"]`); + var currentPage = gradStudentsTable.page(); if (hasGraduated) { row.data('status', 'alumni'); $(`#${username}ClassLevel`).text("Alumni"); if (!showGraduatedStudents()) { row.addClass('hidden'); - redrawTable(); } } else { row.data('status', 'enrolled'); $(`#${username}ClassLevel`).text("Senior"); + row.removeClass('hidden'); } + gradStudentsTable.draw(); + gradStudentsTable.page(currentPage).draw(false); }, error: function(status, error) { console.error("Error updating graduation status:", error); diff --git a/app/templates/events/volunteerDetails.html b/app/templates/events/volunteerDetails.html index 6464a869c..6cef14b5e 100644 --- a/app/templates/events/volunteerDetails.html +++ b/app/templates/events/volunteerDetails.html @@ -59,31 +59,24 @@