dinner_dash_redux's People
dinner_dash_redux's Issues
Unregistered user - "register to checkout"
As an unregistered user with items in my cart,
when I click the button register to checkout
from the cart show page, I am redirected to the signup page. After entering valid information and clicking "register", I am redirected back to my cart and my items should still be in my cart.
There should be a flash message that welcomes me as a new user.
Admin - create items
As an admin,
when I visit "/admin/items",
there should be a button Create Item
,
and when I click it I should be able to create an item and set an image, price, name, description and unit price.
Admin dashboard
As an admin,
when I click "login" from /
,
I should be redirected to the admin dashboard page.
On the admin dashboard page I can see recent notifications, the 10 most recently registered users and whether or not they have made a purchase yet.
Note: the admin dashboard has URL /admin
Registered user - help with order
As a registered user with several orders,
regardless of the status of the order,
I should see a button Need help with your order?
, and when I click it, it should show a flash message with "A customer representative will reach out to you over email shortly".
Note: this action should create a notification for the admin. The notification should be displayed on the admin dashboard with information like the user's full name, order number, and detailed information about the items in the placed order.
Items - show page
As a registered or unregistered user,
when I visit /items/item-name
,
I can see information about the item such as item image, item name, item price, item description. There should be a button Add to cart
which adds the item to the cart on click.
Note: if the name of the item is "Awesome Pencils", the url should be items/awesome-pencils
.
Dashboard page - profile image
As a newly registered user,
when I visit the Dashboard page, I should have a default profile image.
I should have the option to upload a profile image.
When I click "upload photo" and select a photo from my file system, the selected photo should be set as my profile image.
Cart - show page
As a registered user,
when I visit my cart,
I should see information about the items in my cart such as item image, item name, item unit price, item quantity and total cost for that item.
I should also see a remove
link which removes the item from the cart on click.
I can also see a button "checkout".
As an unregistered user,
I see the same information as a registered user,
but instead of checkout
, the button should read register to checkout
.
Note: if the registered user's name is Mimi Schatz, the url should be /mimi-schatz/cart
.
for unregistered users, the url should be /my-cart
Registered user - "Checkout"
As a registered user with items in my cart,
when I click "checkout",
my order should be submitted and I should be redirected to my profile page where I can see one new entry in the section displaying information about my recent purchases.
In the section displaying my recent purchases, I should see information about the item count, total order cost and the date when the order was placed.
I should also see a shipping status for my order which will be "pending".
Note: for now, default to changing the order status to "shipped" after three days. Possible statuses for an order: "pending", "shipped", "returned", "cancelled"
Registered user - cancel order
As a registered user with a pending order,
on my profile page in the section where I can see all my orders,
if the order is pending,
I should see a button cancel order
at the end of the table row.
When I click cancel order
the order should be canceled and the status should be changed to "canceled".
If the order has status "shipped", "returned" or "canceled", I should not see a button cancel order
. Instead, I should see a button Need help with your order?
.
Admin - manage items
As an admin,
when I vist the admin dashboard,
there should be a button "Manage items" and when I click it I should be redirected to "/admin/items".
There, I can see a list of all items with information about each item such as item image, item name, item unit price and the total quantity sold thus far.
The list should be ordered by most quantity sold, most sold item should be at the top of the list. There should be a button that reverses the order so the least bought item is on the top.
For each item, there should be a button Edit
and Archive
. On click Edit
I should be taken to an edit page to edit all attributes of the item. On click Archive
, the item should be archived.
Next to the button that orders the list by most/least quantity sold, there should be a button Archived Items
. When I click that button, it should only display archived items. Each archived item should have a button unarchive
. On click unarchive
, the item should be unarchived and appear together with the other live items.
Items - index
As an unregistered user,
when I click the link Items
in the header,
I should be redirected to the items index page.
There, I should see all items. For each item, I see an image, a price and a description about the image. Each item has a button View
, and when I click the View
button for a single item, I should be redirected to the item show page.
As a registered user,
when I navigate to the items index page, I should see the same information as an unregistered user as well as a button "add to cart".
Note: the url should be /items/name-of-item
Guest can register
As a guest,
when I visit "/" and click "Register",
I should be redirected to a page where I can sign up.
I should enter my first and last name, valid email and valid phone number.
When I click "Register" after having entered valid information, I should be redirected to my profile page. On the profile page I can view my account information and recent purchases.
Guest can view root page
As an unregistered user,
when I visit "/",
I'll see an informative and captivating (lol but true) page explaining what this site is all about.
On the main page, there should be a button asking me to register for an account.
On the main page, there should be a Contact link.
On the main page, I should be able to navigate to all items.
On the main page, I should be able to view three featured items.
Items - add to cart
As a registered user,
when I click Add item to cart
for a specific item,
that item should be added to my cart. When I refresh the page, the state of my cart is maintained.
In the header, by the My cart
link, there should be an integer representing the total item count in my cart, and there should be a $ amount representing the total cost of my cart.
When I click My cart
, I should be redirected to my cart show page.
Dashboard page - recent purchases
As a newly registered user,
when I visit the Dashboard page,
I should see a placeholder for where information about my recent purchases would go.
The placeholder should explain why the area is empty and link to all items.
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. ๐๐๐
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google โค๏ธ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.