[ ] Any user that logs in with an @ucsb.edu email (ROLE_MEMBER in the code) should be able to see a menu option: Apply to be a Rider on the main menu bar.
[ ] When clicked, Apply to be a Rider takes the user to a form page at /apply/rider
[ ] The page /apply/rider will show a list of applications that the rider has made previously, with buttons to show, edit, and cancel an application. The columns will show the id of the application, the date created, the date last updated, and the status (see below)
[ ] The user may click "show" to see the details of any application on the page; the url will be /apply/rider/show/:id This takes them to a page where they can see the details of their application, but cannot edit them.
[x] The user may click "edit" only on an application that is "pending"; in that case, they will be taken to a page where they can edit their application. The url will be /apply/rider/edit/:id
[ ] The user may click "cancel" only on an application that is "pending"; in that case, they will shown an "are you sure you want to cancel" this application with options "Yes, Cancel" and "No, Keep my Application Active". If they click Yes, the application will be put into "cancelled" status. This option keeps them on the /apply/rider page.
[ ] The form at /apply/rider will contain the following fields listed below
Acceptance Criteria: Admin Perspective
[ ] On the Admin menu there is an option Rider Applications that takes the admin user to a page /admin/applications/riders
[ ] On that page the admin can see separate tables: one labelled Pending Rider Applications with all currently pending rider applications, and a second labelled All Rider Applications which contains all rider applications.
[ ] Both tables have Review buttons that take the admin to a page /admin/applications/riders/review/:id where the admin can see all of the fields in the application, but can edit the notes field.
[ ] For pending applications, the admin has buttons to "Approve", "Deny", "Save". All three save any edits to the response field. In addition, "Accept" or "Decline" will change the status of the application to "Accepted" or "Declined". There is also a "Return without Saving" button that returns to the /admin/applications/riders without saving any changes to the form.
[ ] For applications in the status "accepted", there is a button on the /admin/applications/riders/review/:id page called "Set Status to Expired", and one called "Return without Saving". In this case the notes field is editable. The "Set Status to Expired" button will update the status to expired and save the changes. The "Return without Saving" returns to the /admin/applications/riders discarding any changes to the form.
[ ] For applications in the status "declined" or "cancelled" there are no editable fields on the /admin/applications/riders/review/:id page and just one button "Return" that returns to the /admin/applications/riders page.
Task
[x] There is a page component for the /apply/rider/edit/:id url that meets all of the acceptance criteria for the rider application edit page, specifically it displays the form and its contents that's being edited.
Acceptance Criteria: Rider Perspective
@ucsb.edu
email (ROLE_MEMBER
in the code) should be able to see a menu option:Apply to be a Rider
on the main menu bar.Apply to be a Rider
takes the user to a form page at/apply/rider
/apply/rider
will show a list of applications that the rider has made previously, with buttons to show, edit, and cancel an application. The columns will show the id of the application, the date created, the date last updated, and the status (see below)/apply/rider/show/:id
This takes them to a page where they can see the details of their application, but cannot edit them./apply/rider/edit/:id
/apply/rider
page./apply/rider
will contain the following fields listed belowAcceptance Criteria: Admin Perspective
Rider Applications
that takes the admin user to a page/admin/applications/riders
Pending Rider Applications
with all currently pending rider applications, and a second labelledAll Rider Applications
which contains all rider applications./admin/applications/riders/review/:id
where the admin can see all of the fields in the application, but can edit thenotes
field./admin/applications/riders
without saving any changes to the form./admin/applications/riders/review/:id
page called "Set Status to Expired", and one called "Return without Saving". In this case the notes field is editable. The "Set Status to Expired" button will update the status to expired and save the changes. The "Return without Saving" returns to the/admin/applications/riders
discarding any changes to the form./admin/applications/riders/review/:id
page and just one button "Return" that returns to the/admin/applications/riders
page.Task
/apply/rider/edit/:id
url that meets all of the acceptance criteria for the rider application edit page, specifically it displays the form and its contents that's being edited.