Commit Graph

17 Commits

Author SHA1 Message Date
Steve Smith
8d3ac693d4 Add Blazor WebAssembly Admin Page (#426)
* Added Blazor Client
Configured PublicAPI CORS to allow traffic from client

* Make admin page home page; remove extra pages
Add CatalogType list endpoint

* Wired up Types and Brands in the API and the admin list page

* Adding a custom HttpClient to talk securely to API

* Ardalis/blazor (#419)

* Login added

* AuthService will handel http request secure and not secure.

* Logout added

* CatalogBrandService in it is own service

* Get token from localstorage when refresh.

* used GetAsync

* Fixed Login and Logout switch.

* CatalogItemService added

* CatalogTypeService added & Auth for CatalogType.
using not used removed.

* Made BlazorComponent and BlazorLayoutComponent for refresh.
Index now small enough to be in one file.

* Removed the service from program main and use lazy singleton.

* used OnInitialized

* Refactoring and detecting login status in login.razor

* Refactoring login to redirect if user is already logged in

* Blazor login with MVC (#420)

* Blazor login with MVC

* return back the PasswordSignInAsync in Login page

* CRUD added (#422)

* CRUD added

* Unit Test changed to meet new redirect /admin

* CreateCatalogItemRequest added.

* Action caption added.

* Validation added for name and price.

* Updated port of api
Redirect to returnUrl from login

* Add username to /admin; link to my profile

* Working on authorization of /admin

* Working on custom auth locking down /admin page

* Microsoft authorize working.Login.razor removed.Login from SignInMana… (#425)

* Microsoft authorize working.Login.razor removed.Login from SignInManager and create token from it.unit test fixed.

* GetTokenFromController function used in CustomAuthStateProvider

* Cleaned up button styles
Refactored to use codebehind for List component
Updated Not Authorized view

Co-authored-by: Shady Nagy <shadynagi@gmail.com>
2020-07-24 12:36:47 -04:00
Steve Smith
dd5a435cb4 Adding Endpoints with Authorization in separate PublicApi project (#413)
* Adding tests for GetById endpoint

* Updating tests and messages

* Adding paged endpoint and also AutoMapper

* Authenticate endpoint works as bool with tests

* Got JWT token security working with Create and Delete endpoints and Swashbuckle.

* Working on getting cookie and jwt token auth working in the same app
All tests are passing

* Creating new project and moving APIs
Build succeeds; tests need updated.

* all tests passing after moving services to PublicApi project

* Fix authorize attributes

* Uncomment and update ApiCatalogControllerLists tests

Co-authored-by: Eric Fleming <eric-fleming18@hotmail.com>
2020-06-30 11:36:28 -04:00
yigith
3b1339787f 401 fix (#408)
* transfer basket on login

* review page

* unit tests for TransferBasketAsync
2020-06-24 20:48:23 -04:00
yigith
5c0f7fae29 preserve filters while paginating (#405) 2020-06-20 21:35:29 -04:00
Eric Fleming
d8848a96fb Carry basket with login (#404)
* Updating Checkout screen to login correctly when checking out

* Cleanup cshtml
2020-06-17 21:14:02 -04:00
Eric Fleming
248b8ed632 Prevent negative item orders (#392)
* Pulling changes over from previous branch

* Adding exception and guard clause
2020-06-12 21:06:23 -04:00
Cédric Michel
516d87aaa1 manage basket checkout after login (#371) 2020-05-06 15:53:52 -04:00
Cédric Michel
3e228035c0 Feature/respect encapsulation (#349)
* resolve osbsolete method

* put all properties as private, align unit test

* fix version of version in MD, add instruction to install ef tool

* fix url stored
2020-02-03 12:47:59 -07:00
Eric Fleming
f3f74a342e Admin page (#324)
* Updates based on documentation

* Getting the build passing

* Getting app functioning

* A few cleanups to confirm it's working as expected

* Fixing functional tests

* Updating dockerfile for 3.0

* Functional Tests now run sequentially

* Updating to latest version of moq

* Adding migration for post 3.0 upgrades

* Removing commented out lines

* Moving address and catalogitemordered configuration in to classes that own them

* Adding admin user

* Adding admin catalog screen

- will also only display menu option if user is logged in as an admin

* WIP - squash this

* Allow user to edit a catalog item

* Adding entry for new service

* Invalidating cache after catalog item update

- also a little bit of cleanup

* Fixing bad merge

* Removing Picture Uri and making Id readonly

* Adjusting style in menu dropdown so all options are shown

* Creating Cache helpers with unit tests
2019-12-10 22:04:59 -05:00
Konrad Masalski
d422c42c24 minor code rearange, quantity as optional parameter, removed some unused fields 2019-10-28 22:44:40 +01:00
Eric Fleming
1cf176c107 Update style for when the basket is empty 2019-09-11 21:13:30 -04:00
Ovi
70e009bda2 Allow to remove items from the basket setting quantity to zero 2019-09-11 09:16:00 -04:00
Nemi Chand
1c0dbfa9bd Adding Continue shopping link/button to Cart 2019-07-15 23:01:14 +05:30
Eric Fleming
835528ece0 Removing unused uri composer 2019-05-23 21:40:44 -04:00
Eric Fleming
555c3295f1 Renaming CatalogServices to CatalogViewModelService
- I believe this causes some confusion when people see "Service" in the Web project. We have another service in there named BasketViewModelService instead of BasketService anyways. Adding "ViewModel" to the name is a better representation of what the "services" in the Web project represent.
2019-03-30 15:29:32 -04:00
Eric Fleming
5956ad9b57 Fixing pager styles 2019-02-19 21:54:03 -05:00
Steve Smith
99c416142f Consolidate Web and WebRazorPages Projects (#192)
* Moved Privacy, Home page to Razor Pages

* Migrating Basket from RazorPages to Web.

* Removed BasketController; refactored viewmodels

* Moved BasketComponent into Pages/Shared
Added auth rules to Startup for Pages
Added notes to controllers about Pages usage.

* Fixed broken my orders test
Consolidated Functional Tests

* Fixed logo link to home page
Fixed Order Detail Total $ format
2019-01-18 13:29:00 -05:00