user can register for an account in top right options
This opens a page to enter details to create an account. Since this uses allauth it has validation for emails and weak passwords etc by default.
After an account is made, it sends an email to verify the account before you can use it
Email shown here for verification
Clicking link in email takes you to this page that then when pressed, verifys the account and allows logging in.
When an account is verified, it can be logged into in the login page like this
Once logged in, the top right of the screen shows your account name and you then have the ability to suggested ideas, edit account settings and do admin things if you are an admin.
Allauth comes with a simple password reset system that sends an email to the user to then change their password, this is all default system so it just works.
On the user settings page there is a toggle for recieving email notifications, this can be saved and is respected when updates are created.
When logged in you can post comments on any project, example comment before being posted here
And then once the comment is posted, it appears below the project permanently.
When you click on an item in the menu it opens a view of specifically that item that states who suggested it and if its funded then the fund button dissapears and it instead lists who funded it.
One Comment and then multiple comments displayed at once, can be viewed when not logged in
Project view lists all projects
category A-Z
category Z-A
price low to high
price high to low
when filtered it only shows items of that category.
Search bar at top of screen allows searching for keywords.
Searching for "draw" brings both things with draw in the title
Searching "wall" brings up the fox since in its description is the word "wall".
Users when logged in can get a form to suggest a project. They can give preliminary settings for a timeframe and what category it is, and based on the two, a price estimate will be automatically filled in.
This price adjusts as you change those settings, here it is with a different price after the settings were adjusted.
These prices are re-calcalated when actually adding to the database, it is not possible for the user to change it and have that effect anything.
When an idea is submitted, it is not immediately added to the full public viewing as it needs to be curated, so it does not immediately show in the listing, but a popup shows up to tell that it will be reviewed.
In the users profile page, there is an option to display every project they have suggested.
Special to projects suggested by you, there is the ability to view updates, this can be viewed in the list view or directly on each item
An email is sent each time an update is made.
To fund an item, user enters in data for payment
Since it uses stripe, card detail validation is automatically handled.
Once a payment is processed user is taken to the final checkout page.
An email is sent to confirm the project is funded (and notification is also sent to the suggester)
Stripe webhooks will go through and nothing will happen if payment went through fine
If i delete the order through the admin pages
And then re-force the stripe webhook, the payment will be re-added to the list and everything will work as before
A list of all funded projects is visible just like with suggested
Updates are viewable for all funded projects same as for suggested projects.
Admins have the ability to edit any details of a project.
This automatically generates an update for that project that will message the suggester and the funder that the changes occured and details what was changed.
Approving is just the same as editting, its just special in that it adds the ability for normal users to view it and fund it.
This produces a special version of the notification telling you where to find the project after its approved
Admins have a delete button available that deletes projects, this doesnt delete the updates/funding of it.
Admins have a delete button available that deletes projects, this doesnt delete the updates/funding of it.
There is a interface on every project to create an update that sends an email if appropriate.
Emailing was added proper late since it was a couple line edit that django full handled, so here is a screenshot the email actually being recieved through Gmail


























































