Commit Graph

55 Commits

Author SHA1 Message Date
Steve Smith
36066ee7f3 Fix Security Issues (#644)
* Apply fix for Microsoft Security Advisory CVE-2018-0784

* Apply fix for Microsoft Security Advisory CVE-2018-0785
2021-12-12 18:25:39 -05:00
Shady Nagy
9db2feb930 Shady nagy/net6 (#614)
* udated to .net6

* used the .net6 version RC2

* added editconfig.

* App core new Scoped Namespaces style.

* BlazorAdmin new Scoped Namespaces style.

* Blazor Shared new Scoped Namespaces style.

* Infra new Scoped Namespaces style.

* public api new Scoped Namespaces style.

* web new Scoped Namespaces style.

* FunctionalTests new Scoped Namespaces style.

* Integrational tests new Scoped Namespaces style.

* unit tests new Scoped Namespaces style.

* update github action.

* update github action.

* change the global.
2021-11-05 19:55:48 -04:00
Cédric Michel
ed30f3dcc4 fix bad redirection (#608)
* fix bad redirection
fix cleanning of local storage on startup

* update all nuget package

* avoid magic string
2021-11-01 10:35:26 -04:00
Abu Zafor Khairuzzaman
c02efcd4be Fix profile update routing issue (#564) 2021-10-24 17:51:38 -04:00
Sumit Ghosh
c6bd0543e2 Removed image upload functionality 2021-06-24 15:01:51 +05:30
Viswanatha Swamy
1598d0bbe1 Swamy/remove unused usings and reorganize usings (#489)
* Removed and Reordered the using statements

* Removed and Reordered the usings inside Web Project

* Removed and Reordered the usings inside PublicApi project

* Removed Unused usings and reorganized usings inside Infrastructure project
2020-12-03 08:05:28 -05:00
Steve Smith
e9a9dc06d7 Updating Blazor Admin (#442)
* Updating Blazor services

* Adding Settings and Refactoring Services

* WIP - Fighting with DI

* Configuring dependencies in both Web Startup and BlazorAdmin Program.cs has them working again.

* Everything works; need to optimize calls to ListBrands

* LocalStorageBrandService decorator working

* Added cache duration of 1 minute

* Refactoring to reduce token storage
Fixed issue with dropdowns binding to int

* Remove token stuff from login; moved to CustomAuthStateProvider

* Migrated CatalogTypes to separate service
Implemented cache decorator

* Ardalis/blazor refactor (#440)

* 1. Migrate CatalogItemServices -> CatalogItemService.
3. Add caching to CatalogItemService.

* change to $"Loading {key} from local storage" ?

* docker settings added. (#441)

* docker settings added.

* InDocker Removed

* InDocker removed from web startup.

* removed unused using

* no reload list if close without save

* startup patch for localhost

* file name fixed

* removed docker from launchSettings.

* Configure logging via appsettings

Co-authored-by: Shady Nagy <info@shadynagy.com>
2020-07-30 23:50:51 -04:00
Shady Nagy
4e935df311 Image added (#434)
* Image added

* ImageMaximumBytes

* FileController remove Authorized

* ApplicationCore.Constants.AuthorizationConstants.AUTH_KEY

* SavePicture in the interface.

* IFileSystem in Core

* WebFileSystem in Infrastructure

* PictureUri removed from UpdateCatalogItemRequest

* Modal scroll fix
2020-07-28 17:00:32 -04:00
Steve Smith
b30b0c2eef Code cleanup 2020-07-28 16:12:50 -04:00
Steve Smith
2c9c7dd3d1 Code cleanup 2020-07-28 15:35:48 -04:00
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