github reactioncommerce/reaction v0.5.3

REACTION COMMERCE ALPHA RELEASE v0.5.3

RTL i18n

Thanks to contributions from @danielgindi right to left internationalization is now supported.

Take a look at the Russian or Hebrew languages to see RTL in action.

Also contributions from @firstred and @epson121 added Dutch and Croatian translations.

social

Thanks to contributions from @lovetostrike, the initial reactioncommerce:reaction-social package has been published, which gives basic social sharing functionality.

cart

  • if there is neither a sessionCart nor a userCart, create a sessionCart
    • add sessionId to cart.sessions
    • auto insert/update userId if authenticated
    • observers to ensure cart always exists (ie after deletion)
  • if sessionCart is a not a userCart return sessionCart
  • if sessionCart just authenticated, add userId
  • only return a user cart when authenticated
    • copy existing userCart(s) into sessionCart and remove userCart(s)
  • if userCart just logged out, remove sessionId from userCart and create new sessionCart
  • allow multiple sessionId per cart when userCart

TODO:

  • realistically this may not be very solid way to handle sessions.
  • Session handling will need a close review in the future.
  • potential edge cases where multiple session/auth/merge actions to a cart may destroy the cart
  • cart really should have mirrored client and server methods and be tested offline

Issue updates:

  • Remove packages introduced in reactioncommerce/reaction-core#76
  • Resolves #271
  • Resolves #339
  • Resolves #326
  • Resolves #183
  • Strategic updates for issue #16
  • Strategic updates for issue #318
  • Strategic updates for issue #76

guest checkout

  • dashboard enable/disable guest checkout
  • change default step to guest checkout or create/sign-in
  • store email for order - after order completion if guest
  • not visible after destroyed session (ie: refresh)
  • updated checkout and progress bar to use
    cart value instead of session

TODO:

  • validation on email guest entry
  • add account creation instructions to an order completion email
  • potentially add third prompt for account creation after email (or promos,etc)
  • order emails!
  • use workflow states to control checkout ui flow.

Thanks to initial contributions from @prinzdezibel!

accounts

  • use new Accounts collection (previously referred to as customers)
  • create account on user create, or use a session specific account
  • implement Template.dynamic handling of AddressBook edit/add/grid
  • changes to checkout address handling, fix accounts context
  • update addressBook forms to autoform-v0.5.0 compatible (autoform not upgraded)
  • change accounts/shop email from string to emails array
    • emails: {'address': options.email, 'verified': true}
  • changed Shops, Accounts email to an array emails
  • userAccountsDropdown icon for orders, profile
  • user view of order history

TODO:

  • merge session accounts to user account upon email confirmation (and email saved on cart)
  • reduce / cleanup garbage sessions (merge will help)
  • session / accounts/ cart garbage collector
  • account profile / settings
  • on account creation / login with password
    • if confirmed account creation email
      • create a account collection record with this userId
      • update all orders with matching email to match this userId
      • copy all order addresses into Accounts.profile.addressBook
      • copy all social / email info to Accounts.
      • users collection locked down, nothing exposed to client, used for authentication only
    • else
      • if there are more orders with this email
      • display on order view "Add order"

orders

  • moves user orders from cart/checkout folder to dashboard/orders
  • add message for confirmation of email
  • authenticated user can see all orders where userId in list view
  • admin can see all in list view
  • userAccountsDropdown icon for orders
  • add cartId to Orders (instead of using cartId as orderId)

TODO:

  • integrate the admin view of list into dashboard admin flow
  • this is possibly a breaking change to the orders dashboard.
  • remove sessionId from orders on logout

dashboard

  • updates to handling settings from registry (public, private)
  • rename and move settingGeneral to shop/settings
  • rename and move settingsAccounts to shop/accounts

Multi-shop/vendor

  • shop account updates to prep multi-shop dashboard
  • shopId added to cart.items (variants)

Issue updates:

  • Strategic updates for issue #236
  • Strategic updates for issue #327

packages

  • added settings.public to publish public settings to ReactionCore.xxx

testing

Thanks to contributions and docs from @spencern

  • Test coverage for product methods
  • Fix, add coverage for core methods

##general

Don't miss a new reaction release

NewReleases is sending notifications on new releases.