Commit Graph

45 Commits

Author SHA1 Message Date
Shady Nagy
e1f9ddd192 BlazorShared and Services (#430)
* Service to Services

* Change Shared project to BlazorShared

* change refrerances to BlazorShared
2020-07-25 17:28:21 -04:00
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
Joni
a382a0f947 Fix typo (#341) 2019-12-26 07:04:23 -07:00
Eric Fleming
29d1497a3f Mediatr example (#325)
* 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

* Installing MediatR nuget packages

* Configure MediatR in Startup

* Creating GetMyOrders MediatR query and handler

* Adding GetOrderDetails MediatR handler

* Refactoring out default values

* Added tests for GetOrderDetails mediator handler

* Defaulting values on Models for now

* Removing some spaces

* Splitting files

* Splitting out the GetOrderDetails files

* Adding test for GetMyOrders

* restructuing folders

* Using constant
2019-11-15 13:36:51 -05:00
Steve Smith
8e1952158a Update BaseApiController.cs 2019-08-30 10:05:23 -04:00
Eric Fleming
89ab19cf19 Removing the AccountController 2019-06-21 21:40:02 -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
Steve Smith
8941e6b9a6 Login POST Test Working (#198)
* Got login test working

With request verification token
2019-01-25 13:54:35 -05:00
Steve Smith
1b610dd7a4 Adding functional tests (#197)
* Working on login tests

* Testing login with an integration test

Working on login functional test.

* Got functional login test working
2019-01-25 13:13:01 -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
Steve Smith
bc328077b0 Adding slugify parameter transform (#185)
* Adding slugify parameter transform

Fixes #172

* Cleaning up code

And slugifying my orders
2019-01-11 12:39:48 -05:00
Steve Smith
6c41a1bab9 Upgrade to 2.2 (#171)
* Initial Web2 project working

* Initial WebRazorPages project working

* Adding additional sln files

* Removing old project

* Fixed integration tests

* Getting FunctionalTests working.

* Got Swagger working in Web

* Moved web2 to web
2018-12-28 10:04:35 -08:00
Hemant Kumar Dundigalla
6299d5ccc7 Removed all the unused directives in the Solution with the assistance of Resharper 2018-10-06 23:21:15 +01:00
Steve Smith
8bd20ef98b Fix OrderDetails to use Id, Customer
Fixes #106
2018-06-11 14:28:47 -04:00
Steve Smith
48ad346b3c Updating Dockerfiles
Adding instructions and cleaning up.
2018-06-07 15:50:32 -04:00
Jeremy Hutchinson
f953495e38 Standardize namespaces to all be under the Microsoft.eShopOnWeb namespace and update default namespaces. (#102) 2018-06-05 08:52:54 -04:00
Steve Smith
814d3e249c Adding Tests and Refactoring
Functional Tests for RazorPages added
2018-05-31 12:28:55 -04:00
Steve Smith
3d46c80cff Adding 2FA Authenticator Support (#66)
* Adding support for 2fa, more auth options

* WIP getting auth stuff working

* Added Manage views. 2FA working now for MVC app.

* Switching to using a controller for no-UI logout scenario

* Adding Razor Pages impl of 2FA auth stuff. Works.
2017-10-23 21:58:21 -04:00
Steve Smith
4a549c3401 Cleaning up Checkout auth (#64) 2017-10-23 13:51:27 -04:00
Steve Smith
16a6f83ef4 Adding Auth (#62)
* Refactoring ViewModels into Razor Pages models

* Cleaning up Basket viewcomponent

* Refactoring services.
Fixed bug in basket item counter.

* Adding Auth filters to Web and WebWithRazor
2017-10-23 11:22:54 -04:00
Steve Smith
16d81ae450 Refactoring Services (#61)
* Refactoring ViewModels into Razor Pages models

* Cleaning up Basket viewcomponent

* Refactoring services.
Fixed bug in basket item counter.
2017-10-23 10:52:33 -04:00
Steve Smith
dea73a5f5e Adding Razor Pages Version (#60)
* In progress copying code into new RP project
Cleaning up namespaces and whitespace in original Web project

* Cleaning up some more namespaces

* Removing unused page.

* Index page loads correctly.

* Fixing up paging.

* Moving views; getting ready to convert to RPs

* Auto stash before merge of "master" and "origin/master"

Basket and Checkout pages wired up

* WIP on Account pages

* Working on signin/signout

* Working on auth

* Getting order history working
Fixing auth bug

* Fixing Checkout issue

* Fixing link
2017-10-23 09:23:57 -04:00
Steve Smith
0eb4d72b89 Refactoring and Adding Tests (#58)
* Moving Identity seeding to its own class and method.

* Adding tests for AddItem

* Added catalog api controller and functional tests
Added and cleaned up some comments

* Adding integration tests for OrderRepository

* Getting integration test for order working with inmemory db
2017-10-20 12:52:42 -04:00
Steve Smith
aca618316a Initial Upgrade to .NET Core 2.0 (#50)
* Ardalis/upgrade1 (#44)

* Upgrading to netcore 2.0
Updating repository to support async options and refactoring to use it.

* Starting work on tracking customer orders feature.

* Cleaning up some bugs
Working on basket view component implementation

* Fixing up styles, especially for basket in header.

* Adding Order Features (#47)

* Working on order model binding from checkout page - WIP

* Small layout tweaks (#43)

* Updating quantities implemented.

* Fixed basket widget count

* Order History (#49)

* working on creating and viewing orders.
* Working on wiring up listing of orders
* List orders page works as expected. Needed to support ThenInclude scenarios. Currently using strings.
2017-09-22 11:28:55 -04:00
Steve Smith
ecb4889dd3 Basket persistence (#41)
* Renamed Cart to Basket throughout
* Implemented cookie-based anonymous basket handling and transfer to user upon login. Still need to implement transfer upon registration.
2017-08-22 13:51:08 -04:00
Steve Smith
3a95375ae7 Renaming Cart to Basket (#38) 2017-08-15 14:28:36 -04:00
Steve Smith
a8f150aac7 Implementing Registration. (#32) 2017-08-07 15:21:03 -04:00
Steve Smith
97ef1c79a0 Controller cleanup (#30)
* Cleaning up routes.

* Adding signout functionality

* Added simple checkout behavior
2017-08-07 14:12:48 -04:00
Steve Smith
d7eb59c097 Refactoring and Adding Tests (#28)
* Introducing repository and refactoring services.
Changing entities to use int keys everywhere.

* Refactoring application services to live in web project and only reference repositories, not EF contexts.

* Cleaning up implementations

* Moving logic out of CatalogController
Moving entity knowledge out of viewmodels.

* Implementing specification includes better for catalogservice

* Cleaning up and adding specification unit tests
2017-08-07 13:25:11 -04:00
Steve Smith
b67f8cc050 Cart Updates (#26)
* ardalis/cart-updates

Updating how items are added to cart and displayed in cart.

* Cleaning up UI
2017-08-07 09:49:12 -04:00
Steve Smith
acdc072cb9 Merge branch 'ardalis/basket-add' into master 2017-07-27 11:39:42 -04:00
Steve Smith
11ace4ea35 cleaning up controllers (#19) 2017-07-26 17:43:32 -04:00
Steve Smith
af406f86ef Updated logging
Moved images to use static files
Got login working with demo user.
2017-07-26 17:30:29 -04:00
Steve Smith
925ad6b557 Cleaning things up and getting add item to cart working for anonymous or authenticated users. 2017-07-24 16:45:54 -04:00
Nick Kirby
e13f26bf56 Use camel case method parameters 2017-05-07 19:52:17 +01:00
Steve Smith
bc088beb83 Fixed route 2017-04-30 08:20:27 -04:00
Steve Smith
dfe0106ce3 Unit tests working; added logger adapter. 2017-04-30 08:06:06 -04:00
Steve Smith
6f908bb8e5 Looking to unit test logging but blocked by extension method currently. 2017-04-28 20:27:18 -04:00
Steve Smith
5dbbc4c791 Adding unit tests, refactoring file access to a service, adding CatalogImageMissingException. 2017-04-28 19:56:32 -04:00
Steve Smith
222319f6bc Merge branch 'master' into ardalis/basket 2017-04-20 22:44:25 -04:00
Steve Smith
408c5d97ec Working on wiring up identity and basket 2017-04-20 17:04:03 -04:00
Steve Smith
e019654143 Adding cart/basket support and applicationuser (without EF requirement) 2017-04-17 23:37:42 -04:00
Steve Smith
d48d8bf24d removing unused code 2017-03-22 21:44:40 -04:00
Steve Smith
884f7c0cfb adding initial project and solution files 2017-03-22 20:58:43 -04:00