Albania Software House Demo Application
- LAMP, PHP 7.1.*
- Symfony 3.4.*
- Elasticsearch 6.8.*
- The current shopping cart will expire after 4 minutes (depending on the `cart_expiration`= 4 parameter) (countdown visible on the checkout page).
- Upon cart expiration the products will be returned to the inventory.
- The cart is created upon first product add. Product removal will not delete/recreate the current active cart. (or associated expiration).
- The client will be able to finalize the purchase by paying the original price if the product price goes UP while the cart is not expired and the product was in cart! The client will be notified.
- The client will receive an automatic discount if the product price goes DOWN while the cart is not expired! The client will be notified.
- The client can shop anonymously, but will be required to login/register before checkout.
- When a registered client logs in, if a cart was left open from a previous client sesssion (and not expired), that cart will subsitute the eventual client cart created from the anonymous shopping before logging in. The client will be notified.
- A cron job runs every minute to expire orders&items not purchased before the timeout (default cart_expiration is 4 minutes).
- Instalation instructions can be provided upon request. Test fixtures are generated automaticaly.
- Please let me konw if you encounter issues or bugs. I will fix & redeploy the demo app.
- Home page
search
is implemeted through Elasticsearch . - A fuzzy search is done across all product properties.
- An ajax request will be fired automatically if query >= 3 characters.
- If the query return No Results
all
the products will be shown (as opposed tonone
). - The Elasticsearch Index will be updated automatically upon entities creation/deletion/update.
- For a product to be listed on the homepage it should be:
- Listed on the
Inventory
. enabled
on theInventory
.
- Listed on the
- Products whose inventory
quantity=0
will be listed butnot purchasable
.
- Current cart with the products and total can be purchased.
- It is possible to update/delete current cart products&quantities.
- Order History for logged-in users is also shown on this page.
-
ROLE_SUPER_ADMIN
ROLE_ALLOWED_TO_SWITCH
ROLE_ADMIN
ROLE_STAFF
ROLE_CONTRIBUTOR
ROLE_GUEST
ROLE_USER
ROLE_CLIENT
ROLE_USER
Usernane | Password | Role | Info |
---|---|---|---|
client | client | ROLE_CLIENT |
Can purchase/finalize orders. Default role on registration. No Backend access. |
superadmin | superadmin | ROLE_SUPER_ADMIN |
Create/Impersonate/Edit/Delete Users. +Edit Orders&Items. Can purchase/finalize orders. Can NOT delete orders or order-items. +ROLE_ADMIN inherited permissions. |
admin | admin | ROLE_ADMIN |
Can NOT purchase/finalize orders. Missing ROLE_CLIENT . +Export Users. +ROLE_STAFF inherited permissions. |
staff | staff | ROLE_STAFF |
Can NOT purchase/finalize orders. +List/+View Users, +List/+View/+Export Orders&Items. +Export, +Delete the rest. +ROLE_CONTRIBUTOR inherited permissions. |
contributor | contributor | ROLE_CONTRIBUTOR |
Can NOT purchase/finalize orders. +Create/Edit entities, -Export/-Delete entities. -Users, -Orders, -Items. +ROLE_GUEST inherited permissions. |
guest | guest | ROLE_GUEST |
Backend guest. Can NOT purchase/finalize orders. Can only +List and +View entities. -Orders, -Items, -Users |
- Home Page - http://104.248.249.221/
- Registration Page - http://104.248.249.221/register/
- Login - http://104.248.249.221/login
- Backend Admin Dashboard - http://104.248.249.221/admin/dashboard