Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
27 commits
Select commit Hold shift + click to select a range
11fc7da
Added in InvitedUser variable to differentiate between users who were…
Meatchema Jan 22, 2026
7f7db93
Merge branch 'development' into issue-1663-change-rsvp-language
Meatchema Jan 22, 2026
f97f9f3
Merge branch 'development' into issue-1663-change-rsvp-language
Meatchema Jan 28, 2026
11a372e
Merge branch 'development' into issue-1663-change-rsvp-language
Meatchema Feb 5, 2026
fa303f1
Fixed the user's Invited label in the table and card
Meatchema Feb 6, 2026
79180c3
Fixed the entry counter in 'volunteer details'-html printParticipants…
Meatchema Feb 6, 2026
fb6af41
Removed datetime restriction so that scanned user can show in volunte…
Meatchema Feb 9, 2026
12ebcff
changed eventVolunteerData to include non-waitlist RSVP's so that the…
Meatchema Feb 9, 2026
d977e8a
Removed resourceReader import statement
Meatchema Feb 9, 2026
0009316
Merge branch 'development' into issue-1663-change-rsvp-language
Meatchema Feb 10, 2026
286cee0
Merge branch 'development' into issue-1663-change-rsvp-language
Meatchema Feb 13, 2026
a3ee57d
Merge branch 'development' into issue-1663-change-rsvp-language
Meatchema Feb 17, 2026
8fb9053
I have changed the verbage from waitlist to waitlisted in volunteerDe…
Meatchema Feb 17, 2026
2440ebb
Changed createCheckbox to a dictionary to increase readability. Also,…
Meatchema Feb 17, 2026
c42cd9d
removed hidden class to show the Senior status after graduate check b…
Meatchema Feb 19, 2026
1fe7b84
added the laborAttendanceByTerm function
Arohasina Feb 19, 2026
2680d7b
removed direct event binding allowing handlers to work accross multip…
Meatchema Feb 24, 2026
f922a9c
reorganized the code so that the page saves after updating the data f…
Meatchema Feb 24, 2026
2ac2493
Merge branch 'development' into graduation-management-first-page
Meatchema Mar 6, 2026
dda493d
Merge branch 'development' into graduation-management-first-page
Meatchema Mar 6, 2026
b6ee7f9
reverted incoming changes to previous changes to make code work again
Meatchema Mar 9, 2026
9a1a508
Merge branch 'development' into graduation-management-first-page
Meatchema Mar 11, 2026
ed8d721
removed laborAttendancebyTerm function
Meatchema Mar 12, 2026
8e66c28
Resolved: Reverted participants.py this file, reinserted rsvp user, r…
Meatchema Mar 13, 2026
ca10c2f
volunteerdetail.htm dictionary reversion
Meatchema Mar 13, 2026
866151a
removed attendedUser object in volunteer.py and reordered callings ba…
Meatchema Mar 13, 2026
e8de989
Removed invited checkbox
Meatchema Mar 13, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 3 additions & 2 deletions app/controllers/admin/volunteers.py
Original file line number Diff line number Diff line change
Expand Up @@ -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)


Expand Down
1 change: 0 additions & 1 deletion app/logic/volunteerSpreadsheet.py
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
13 changes: 6 additions & 7 deletions app/static/js/graduationManagement.js
Original file line number Diff line number Diff line change
Expand Up @@ -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()

Expand Down Expand Up @@ -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() {
Expand All @@ -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);
Expand Down
37 changes: 15 additions & 22 deletions app/templates/events/volunteerDetails.html
Original file line number Diff line number Diff line change
Expand Up @@ -59,31 +59,24 @@ <h4 class="nameSelect" nowrap><b>{{ participant.user.firstName }} {{ participant
{% macro printParticipants(type, attended, rsvp, waitlist) %}
{% set seen = [] %}
{% set combinedParticipants = attended + rsvp + waitlist %}
{% for p in combinedParticipants %}
{% set username = p.user.username %}
{% if username not in seen %}
{% set _ = seen.append(username) %}
{% set status = none %}
{% if p in attended %}
{% set status = 'attended'%}
{% elif p in rsvp %}
{% set status = 'rsvp'%}
{% elif p in waitlist %}
{% set status = 'waitlist'%}
{% endif %}
{% if status %}
{% if type == 'card' %}
{{ createCard(p, status) }}
{% elif type == 'table' %}
{{ createTable(p, status) }}
{% endif %}
{% endif %}
{% endif %}
{% for p in combinedParticipants | unique %}
{% if p in rsvp and not event.isRsvpRequired %}
{{createTable(p, 'invited') if type == 'table' else createCard(p, 'invited') }}
{% endif %}
{% if p in rsvp and event.isRsvpRequired %}
{{createTable(p, 'rsvp') if type == 'table' else createCard(p, 'rsvp') }}
{% endif %}
{% if p in attended%}
{{createTable(p, 'attended') if type == 'table' else createCard(p, 'attended') }}
{% endif %}
{% if p in waitlist %}
{{createTable(p, 'waitlisted') if type == 'table' else createCard(p, 'waitlisted') }}
{% endif %}
{% endfor %}
{% endmacro %}

{% macro createCheckbox(checkboxName) %}
{% set labelText = "RSVP" if checkboxName == 'rsvp' else 'Waitlist' if checkboxName == 'waitlist' else 'Attended' %}
{% set labelText = "RSVP" if checkboxName == 'rsvp' else 'Waitlist' if checkboxName == 'waitlist' else 'Attended' %}
<input class="displayCheckbox noprint" type="checkbox" name="selected_items" id="{{checkboxName}}Select" checked>
<label for="{{checkboxName}}Select">{{labelText}}</label><br>
{% endmacro %}
Expand Down Expand Up @@ -159,7 +152,7 @@ <h3 style="text-align: center; width:180%;">
<hr>
<div class="d-print-block" id="volunteerInformationCardToPrint">
<div class="row sort-here">
{{ printParticipants('card', attendedUser, rsvpUser, waitlistUser) }}
{{ printParticipants('card', rsvpUser, waitlistUser) }}
</div>
</div>

Expand Down
Loading