spectrumtrail / spectrum

The real new Spectrum marketing and registrations app.
https://spectrumtrailracing.com
5 stars 0 forks source link

Dedicated Volunteer Registration Space on spectrumtrailracing.com (end user) #134

Open runbeyond opened 4 years ago

runbeyond commented 4 years ago

As an end-user

I want to sign up for Spectrum volunteer events

So that I can volunteer at a spectrum race of my choosing in a position that I like at a time that is convenient

Acceptance Criteria:

1) Capture the following volunteer data in a registration form:

willblake01 commented 4 years ago

@ColinW520 @runbeyond Would we want to give volunteers the ability to manage their registration or only add?

willblake01 commented 4 years ago

@ColinW520 @runbeyond

Functional Specifications

Feature Request: Volunteer Registration Sign-Up

Objective Facilitate a volunteer registration process on the website to passively collect volunteer sign ups, promote volunteer sign up (as an easy process) across social media platforms, and make it easier for us to collect and manage volunteer sign ups. Deadline is 5 on priority list. Use case: A user would like to volunteer time or give back to the Spectrum community.

This feature accomplishes the following: -Renders a form for users to complete upon hitting a form route and saves to database -Allows administrators to access and view this information from the admin dashboard -Ability to link the URL on other media platforms

Requirements: For volunteer position selection there should be a drop down menu or a list with radio dial buttons or whatever other solution you find optimal are acceptable

1. Project Specifications

1.1 Adds route to volunteer form 1.1.1 App => config => routes.rb

1.2 Adds model for form inputs 1.2.1 App => models => Add volunteer.rb

1.3 Adds ability to add volunteer info to database 1.3.1 Migration => Add volunteers table to database

1.4 Adds controller for form actions 1.4.1 App => controllers => Add volunteers_controller.rb

1.5 Adds views for form to render on front-end 1.5.1 App => Add volunteers directory => Add _form.html.haml, new.html.haml, _header.html.haml

1.6 Adds views for admin use 1.6.1 App => admin => Add volunteers directory => Add files for level of management requested Form Details: Name, email, preferred volunteer position Volunteer Positions: Parking Aid Station (Morning-Noon) Aid Station (Noon-Afternoon) Finish Line (high fives and awards) Pizza Kitchen (11AM-2PM) Course Tear Down (PM)

Basic Flow: User is on Spectrum site and follows a link or button to submit a form indicating their desired level of involvement

Exception Flow: User is on a social media platform and discovers the volunteer opportunity on a post or advertisement and follows a link to the Spectrum volunteer form

Post conditions Spectrum has persistent access to user volunteer wishes stored in the database and can generate new interest in volunteer opportunities on other platforms

runbeyond commented 4 years ago

Disclaimer that completing the volunteer form does not commit a potential volunteer to anything.

willblake01 commented 4 years ago

@runbeyond @ColinW520 I've got the basic form ready and volunteer records persisting in the database but 2 questions: -Any ideas on how we want to link to the form? -Colin mentioned having a general field for positions, do we want to list the positions in a card next to the form or just leave them to enter whatever they want or leave blank?

image

image

runbeyond commented 4 years ago

Can the positions field also be a pick list?

On Sun, Oct 11, 2020 at 12:41 PM William Blake notifications@github.com wrote:

@runbeyond https://github.com/runbeyond @ColinW520 https://github.com/ColinW520 I've got the basic form ready but 2 questions: -Any ideas on how we want to link to the form? -Colin mentioned having a general field for positions, do we want to list the positions in a card next to the form or just leave them to enter whatever they want or leave blank?

[image: image] https://user-images.githubusercontent.com/16193879/95687030-c3b85600-0bc6-11eb-9f5a-6866b7aeb5b2.png

[image: image] https://user-images.githubusercontent.com/16193879/95687139-653fa780-0bc7-11eb-8e47-72429b80531c.png

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/spectrumtrail/spectrum/issues/134#issuecomment-706749058, or unsubscribe https://github.com/notifications/unsubscribe-auth/AKUR7DPVWPZTWH2J6GAZ2TTSKH365ANCNFSM4KEMTMCQ .

willblake01 commented 4 years ago

@ColinW520 Did I misunderstand what you meant from our meeting? ^^

I have in my notes to use a general field for positions. Was the idea that they would enter something if they had a position in mind but the admin would ultimately assign the position?

willblake01 commented 4 years ago

@runbeyond The only thing with a pick list is we have one for availability "AM/PM/All Day" so it would be incongruent if they were able to choose AM and "Course Tear Down". As I understood it this architecture would force them to focus on and choose a time availability and maybe enter a preference for position and the admin would make the final assignment. To kind of solve the problem of nobody picking "parking" or "course tear down" and everyone choosing "aid station" or "pizza kitchen". Colin's answer should make it clear from an engineering perspective. If this is the case I was wondering if we should show a card next to the form showing the possible positions with a disclaimer that Spectrum will make the final position assignments.

willblake01 commented 4 years ago

Should I remove Vagabond from the event list?

runbeyond commented 4 years ago

No, thanks. It’s an active event. If we stop hosting it, we can deactivate the event and archive the associated race(s).

On Sun, Oct 11, 2020 at 8:55 PM William Blake notifications@github.com wrote:

Should I remove Vagabond from the event list?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/spectrumtrail/spectrum/issues/134#issuecomment-706812981, or unsubscribe https://github.com/notifications/unsubscribe-auth/AKUR7DL5TT7FK3HAVU66IT3SKJOY3ANCNFSM4KEMTMCQ .

willblake01 commented 4 years ago

Oh, sorry, I should have been more clear. Should I not have it in the list as an option to volunteer for? I won't touch it as an actual event. I can just leave it in the list if you could use a volunteer for it or if it's just not worth the trouble of removing.

runbeyond commented 4 years ago

Got it! Great catch. It does not make sense to include it in the list of volunteer events.

On Sun, Oct 11, 2020 at 9:16 PM William Blake notifications@github.com wrote:

Oh, sorry, I should have been more clear. Should I not have it in the list as an option to volunteer for? I won't touch it as an actual event. I can just leave it in the list if you could use a volunteer for it or if it's just not worth the trouble of removing.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/spectrumtrail/spectrum/issues/134#issuecomment-706817391, or unsubscribe https://github.com/notifications/unsubscribe-auth/AKUR7DKITBHLOX2INEE5UHDSKJRH3ANCNFSM4KEMTMCQ .

willblake01 commented 4 years ago

I think part of the idea also is if we move it to a microservice then someone else putting on a race using the service might have different positions.

runbeyond commented 4 years ago

Can you put together something easily that you can show me?

On Mon, Oct 12, 2020 at 9:35 AM William Blake notifications@github.com wrote:

I think part of the idea also is if we move it to a microservice then someone else putting on a race using the service might have different positions.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/spectrumtrail/spectrum/issues/134#issuecomment-707158836, or unsubscribe https://github.com/notifications/unsubscribe-auth/AKUR7DIVA6PYGE7GJBDZU4TSKMH2HANCNFSM4KEMTMCQ .

willblake01 commented 4 years ago

@runbeyond Which of these columns would you find it valuable to have on the admin dashboard volunteer table showing all volunteers? You'll be able to click into a given volunteer if you want to see all fields but listing them all might get a little cluttered for this view and pollute the relevant data. What questions or insights might you be looking for when scanning a view of all volunteers for all events? Here's the table header with all of them:

image

runbeyond commented 4 years ago

@William Blake gwilliamblake@gmail.com let's move this to an applicable story. I will write one now. However, I'd argue that this may not be the highest priority issue for us to work on now. Arguably, we're putting the cart in front of the horse with this feature as it has no impact on the most pressing features which would allow someone to register for a volunteer position.

On Wed, Oct 14, 2020 at 10:04 AM William Blake notifications@github.com wrote:

@runbeyond https://github.com/runbeyond Which of these columns would you find it valuable to have on the admin dashboard volunteer table showing all volunteers? You'll be able to click into a given volunteer if you want to see all fields but listing them all might get a little cluttered for this view and pollute the relevant data. What questions or insights might you be looking for when scanning a view of all volunteers for all events? Here's the table header with all of them:

[image: image] https://user-images.githubusercontent.com/16193879/96007805-7f19fe00-0e04-11eb-8364-bb78a4677f53.png

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/spectrumtrail/spectrum/issues/134#issuecomment-708463536, or unsubscribe https://github.com/notifications/unsubscribe-auth/AKUR7DPLJCJTDYOTGWH4FE3SKW4W5ANCNFSM4KEMTMCQ .

willblake01 commented 4 years ago

@runbeyond @ColinW520 I noticed a conflict in architecture that will block me from proceeding with the first step of the epic. Just wanted to get a consensus for how to proceed. From the details of the epic:

image

My notes from Colin's suggestions at the meeting: -General form field for position (whatever they enter will go into the position column in database)

-Separate data field for time available

*TL;DR How are we going to handle the position input? Include the times and remove that as a separate column or keep positions and times separate? Should positions be a dropdown list or input field?

willblake01 commented 4 years ago

If we decide to use the input field for positions we could do something like this in a card for the volunteer to plan their entry, and then later down the line have it dynamically render only positions that are still available and how many spots are left.

We can add to the copy somewhere that position entries are first preference and the admin will make the final position assignments, otherwise it might make more sense to include time and use a dropdown, just my thoughts as a complete novice.

image

runbeyond commented 4 years ago

I like this as minimally viable. @ColinW520 what are your thoughts on this story?

willblake01 commented 4 years ago

I hope the way I'm writing things out isn't irritating or offensive. Just trying to be super verbose since I'm very new to this and I'm trying to understand the process and learn everything as I go.