I propose the following standard security roles be setup when using the Store module. Ideally I would like to use DNN security but that means some of the modules may have to change a bit. This way, if the store supports these standard roles we won’t have to make editors into administrators and we can delegate catalog and product maintenance.
Store.Customer
Mainly for future use including review management, upselling and customer loyalty programs.
Store.Editor
Allow Edit mode in Categories, Store Catalog via DNN
Store.Manager
User deals with money, credit card, personal info, processing payments, refunds and returns. Allow checkout on behalf of UserID. Useful for delayed receipt of funds.
Implementation Details
1) A user is automatically enrolled as a Store.Customer after a successful order.
Pseudo Code: If Not UserInRole(Store.Customer) Enroll(UserID,”Store.Customers”)
2A) New Setting in Store|Admin|Reviews
Store.Admin.Reviews.AlowRole Q Allow user role to add reviews?
(Drop down Anyone and available security roles)
Pseudo Code: If StoreAdminReviewsAllowRole=”Anyone” or UserInRole(StoreAdminReviews.AllowRole)
Add Review=true
---or---
2B) Change the review section to a new module and use normal DNN security roles. The Store Product Reviews module can pick up the product number from the URL. View shows reviews, edit allows adding a review.
Any comments or suggestions?