diff --git a/.vscode/extensions.json b/.vscode/extensions.json new file mode 100644 index 0000000..a7cea0b --- /dev/null +++ b/.vscode/extensions.json @@ -0,0 +1,3 @@ +{ + "recommendations": ["Vue.volar"] +} diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 0000000..b2aac94 --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,6 @@ +{ + "files.trimTrailingWhitespace": true, + "editor.insertSpaces": true, + "editor.tabSize": 2, + "editor.wordWrap": "on" +} diff --git a/web/admin/fixtures/auth_export/accounts.json b/web/admin/fixtures/auth_export/accounts.json index 0422e24..a1de3d1 100644 --- a/web/admin/fixtures/auth_export/accounts.json +++ b/web/admin/fixtures/auth_export/accounts.json @@ -1 +1 @@ -{"kind":"identitytoolkit#DownloadAccountResponse","users":[{"localId":"5WddDr1Teytl9YHQ0Lgf2yP86pft","createdAt":"1681846355208","lastLoginAt":"1681846355208","displayName":"v2","passwordHash":"fakeHash:salt=fakeSaltMaXkJGcoDb58rWtYnrD4:password=password","salt":"fakeSaltMaXkJGcoDb58rWtYnrD4","passwordUpdatedAt":1704248415365,"customAttributes":"{\"volunteer\":true}","providerUserInfo":[{"providerId":"password","email":"v2@example.com","federatedId":"v2@example.com","rawId":"v2@example.com","displayName":"v2"}],"validSince":"1704248415","email":"v2@example.com","emailVerified":false,"disabled":false},{"localId":"olN7alG8mHwRg6YYgVjlpR9scwq5","createdAt":"1614344510322","lastLoginAt":"1704077775556","displayName":"VolunteerUser","photoUrl":"","passwordHash":"fakeHash:salt=fakeSaltPdNFgJYXTp3KoHpHPeET:password=password","salt":"fakeSaltPdNFgJYXTp3KoHpHPeET","passwordUpdatedAt":1704248415365,"customAttributes":"{\"admin\": true,\"volunteer\":true}","providerUserInfo":[{"providerId":"password","email":"user@example.com","federatedId":"user@example.com","rawId":"user@example.com","displayName":"VolunteerUser","photoUrl":""}],"validSince":"1704248415","email":"user@example.com","emailVerified":false,"disabled":false,"lastRefreshAt":"2024-01-03T02:20:59.137Z"},{"localId":"woEHhjSLumylkHLkbJKYdV7bTlNF","createdAt":"1681846322321","lastLoginAt":"1684257041600","displayName":"v1","passwordHash":"fakeHash:salt=fakeSaltMmMYfmogc9thU5bAe1wL:password=password","salt":"fakeSaltMmMYfmogc9thU5bAe1wL","passwordUpdatedAt":1704248415365,"customAttributes":"{\"volunteer\":true}","providerUserInfo":[{"providerId":"password","email":"v1@example.com","federatedId":"v1@example.com","rawId":"v1@example.com","displayName":"v1"}],"validSince":"1704248415","email":"v1@example.com","emailVerified":false,"disabled":false}]} \ No newline at end of file +{"kind":"identitytoolkit#DownloadAccountResponse","users":[{"localId":"5WddDr1Teytl9YHQ0Lgf2yP86pft","createdAt":"1681846355208","lastLoginAt":"1681846355208","displayName":"v2","passwordHash":"fakeHash:salt=fakeSaltMaXkJGcoDb58rWtYnrD4:password=password","salt":"fakeSaltMaXkJGcoDb58rWtYnrD4","passwordUpdatedAt":1704985140624,"customAttributes":"{\"volunteer\":true}","providerUserInfo":[{"providerId":"password","email":"v2@example.com","federatedId":"v2@example.com","rawId":"v2@example.com","displayName":"v2"}],"validSince":"1704985140","email":"v2@example.com","emailVerified":false,"disabled":false},{"localId":"olN7alG8mHwRg6YYgVjlpR9scwq5","createdAt":"1614344510322","lastLoginAt":"1704985153659","displayName":"VolunteerUser","photoUrl":"","passwordHash":"fakeHash:salt=fakeSaltPdNFgJYXTp3KoHpHPeET:password=password","salt":"fakeSaltPdNFgJYXTp3KoHpHPeET","passwordUpdatedAt":1704985140624,"customAttributes":"{\"admin\": true,\"volunteer\":true}","providerUserInfo":[{"providerId":"password","email":"user@example.com","federatedId":"user@example.com","rawId":"user@example.com","displayName":"VolunteerUser","photoUrl":""}],"validSince":"1704985140","email":"user@example.com","emailVerified":false,"disabled":false,"lastRefreshAt":"2024-01-11T14:59:13.659Z"},{"localId":"woEHhjSLumylkHLkbJKYdV7bTlNF","createdAt":"1681846322321","lastLoginAt":"1684257041600","displayName":"v1","passwordHash":"fakeHash:salt=fakeSaltMmMYfmogc9thU5bAe1wL:password=password","salt":"fakeSaltMmMYfmogc9thU5bAe1wL","passwordUpdatedAt":1704985140625,"customAttributes":"{\"volunteer\":true}","providerUserInfo":[{"providerId":"password","email":"v1@example.com","federatedId":"v1@example.com","rawId":"v1@example.com","displayName":"v1"}],"validSince":"1704985140","email":"v1@example.com","emailVerified":false,"disabled":false}]} \ No newline at end of file diff --git a/web/admin/fixtures/firestore_export/all_namespaces/all_kinds/all_namespaces_all_kinds.export_metadata b/web/admin/fixtures/firestore_export/all_namespaces/all_kinds/all_namespaces_all_kinds.export_metadata index 44c28ca..732fbc6 100644 Binary files a/web/admin/fixtures/firestore_export/all_namespaces/all_kinds/all_namespaces_all_kinds.export_metadata and b/web/admin/fixtures/firestore_export/all_namespaces/all_kinds/all_namespaces_all_kinds.export_metadata differ diff --git a/web/admin/fixtures/firestore_export/all_namespaces/all_kinds/output-0 b/web/admin/fixtures/firestore_export/all_namespaces/all_kinds/output-0 index 6ff8fea..c242cdd 100644 Binary files a/web/admin/fixtures/firestore_export/all_namespaces/all_kinds/output-0 and b/web/admin/fixtures/firestore_export/all_namespaces/all_kinds/output-0 differ diff --git a/web/admin/fixtures/firestore_export/firestore_export.overall_export_metadata b/web/admin/fixtures/firestore_export/firestore_export.overall_export_metadata index 37d1bd9..5e73261 100644 Binary files a/web/admin/fixtures/firestore_export/firestore_export.overall_export_metadata and b/web/admin/fixtures/firestore_export/firestore_export.overall_export_metadata differ diff --git a/web/admin/src/components/AdminCalendar.vue b/web/admin/src/components/AdminCalendar.vue index 6a53bfb..0b33963 100644 --- a/web/admin/src/components/AdminCalendar.vue +++ b/web/admin/src/components/AdminCalendar.vue @@ -28,12 +28,18 @@ const prevMonth = () => { } const statusClass = (win) => { + + if (win.tasktype === 'Holiday') { + return 'text-bg-holiday' + } + const attending = props.windows.attending.get(win.id) if (attending && attending.winid === win.id) { return 'text-bg-success' } else if (win.numAttending >= win.numNeeded) { return 'text-bg-secondary' } + return 'text-bg-available' } diff --git a/web/admin/src/components/AdminCalendarScheduler.vue b/web/admin/src/components/AdminCalendarScheduler.vue index 22febcb..4c35274 100644 --- a/web/admin/src/components/AdminCalendarScheduler.vue +++ b/web/admin/src/components/AdminCalendarScheduler.vue @@ -119,6 +119,17 @@ function isoDate(date) { const d = dayjs(date) return d.format() } + + + +const windowColor = (win) => { + console.log('windowColor(win)=', win.tasktype, win) + if (win.tasktype === 'Holiday') { + return 'text-bg-holiday' + } + + return 'text-bg-secondary' +} @@ -149,7 +160,7 @@ function isoDate(date) {
-
+
{{w.location}} {{w.tasktype}} {{dayjs(w.starttime.toDate()).format('h:mm A')}} - {{dayjs(w.endtime.toDate()).format('h:mm A')}}
diff --git a/web/admin/src/components/ColorKey.vue b/web/admin/src/components/ColorKey.vue index 7b84d80..8de752c 100644 --- a/web/admin/src/components/ColorKey.vue +++ b/web/admin/src/components/ColorKey.vue @@ -9,5 +9,6 @@ staffing met needs volunteers unavailable + Holiday (Closed)
diff --git a/web/admin/src/components/VolunteerRegistrationForm.vue b/web/admin/src/components/VolunteerRegistrationForm.vue index 5f81042..2941df3 100644 --- a/web/admin/src/components/VolunteerRegistrationForm.vue +++ b/web/admin/src/components/VolunteerRegistrationForm.vue @@ -1,70 +1,69 @@