Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release 1.2.0 #2258

Merged
merged 179 commits into from
May 17, 2017
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
179 commits
Select commit Hold shift + click to select a range
325adc9
Show Sidebar shipping in checkout
impactmass Mar 1, 2017
b9c4f47
Set actionView after payment checkout step
impactmass Mar 1, 2017
071dffa
Hide sidebar on entry to profile page
impactmass Mar 2, 2017
4700cd0
Merge origin development
joykare Mar 13, 2017
cb54270
Merge branch 'development' of github.com:reactioncommerce/reaction in…
joykare Mar 15, 2017
4287301
Merge branch 'development' of github.com:reactioncommerce/reaction in…
joykare Mar 16, 2017
ce8fe91
Using publish-counts to record count of orders in order tabs
Mar 20, 2017
77e81c1
Add alert and checkout message when item quantities have been adjusted
joykare Mar 21, 2017
4789f41
Code cleanup
Mar 21, 2017
9fd8d60
Add 'Show More' button for pagination (to be refined)
Mar 21, 2017
357d509
Update errors to include when cart is already full
joykare Mar 22, 2017
07251f0
Removing unnecessary subscription.ready from composer function
Mar 22, 2017
02d3028
Modify orders cursor to use state instead; identify filter from 'show…
Mar 22, 2017
8c840fc
Actually deny when out of stock
joykare Mar 23, 2017
f36c717
Fix 'Show More' button functionality
Mar 23, 2017
07dc11b
Add more descriptive error messages
joykare Mar 23, 2017
51c1473
Merge branch 'development' of github.com:reactioncommerce/reaction in…
joykare Mar 23, 2017
4d797a7
Merge branch 'development' into joykare-inventory-tracking-1928
joykare Mar 23, 2017
b411d7d
Using publish-counts to record count of orders in order tabs
Mar 20, 2017
090c1dd
Code cleanup
Mar 21, 2017
d323449
Add 'Show More' button for pagination (to be refined)
Mar 21, 2017
a30eb0e
Removing unnecessary subscription.ready from composer function
Mar 22, 2017
08009a1
Modify orders cursor to use state instead; identify filter from 'show…
Mar 22, 2017
b8d14a4
Fix 'Show More' button functionality
Mar 23, 2017
88d34e2
Merge branch 'kieha-orders-pagination-1921' of https://github.com/rea…
Mar 24, 2017
b1ca5b5
Fix console error on Quantity
joykare Mar 24, 2017
e4339cf
Fix PR arising issue on quantity
joykare Mar 24, 2017
d20a93a
Using reactiveDict to store order limits
Mar 27, 2017
26ca6d9
Using camelcase for naming
Mar 27, 2017
db6c5fc
Passing filter to PaginatedOrders subscription for query builder in p…
Mar 27, 2017
bf0b58e
Publishing order counts using Mongo aggregate pipeline
Mar 27, 2017
e271555
Merge branch 'development' into joykare-inventory-tracking-1928
Mar 28, 2017
896a3d3
Merge branch 'development' into joykare-inventory-tracking-1928
Mar 28, 2017
3a33c26
Merge branch 'development' into joykare-inventory-tracking-1928
brent-hoover Mar 28, 2017
6efe0c8
Clean up a few edge cases
joykare Mar 28, 2017
0d41925
Merge branch 'development' into kieha-orders-pagination-1921
brent-hoover Mar 28, 2017
b9c12c3
Merge branch 'kieha-orders-pagination-1921' of https://github.com/rea…
Mar 28, 2017
60e6891
Add i18n translations
joykare Mar 28, 2017
6d6e665
Merge branch 'joykare-inventory-tracking-1928' of github.com:reaction…
joykare Mar 28, 2017
9f109e6
Remove file changes different from development
joykare Mar 28, 2017
6990879
Turns out I don't need this publication; it doesn't work well anyway …
Mar 28, 2017
713da1c
Merge branch 'master' into development
Mar 28, 2017
85ed068
Merge branch 'development' into joykare-inventory-tracking-1928
Mar 29, 2017
d15edf5
Remove all references to addressbook.js
joykare Mar 29, 2017
bc16da9
Set custom layout to override based on priority field (#2023)
impactmass Mar 29, 2017
c0c665d
Method to aggregate order counts
Mar 29, 2017
9839568
Merge branch 'development' into kieha-orders-pagination-1921
Mar 29, 2017
b8f4fa7
Merge branch 'kieha-orders-pagination-1921' of https://github.com/rea…
Mar 29, 2017
634975e
Merge branch 'development' into joykare-inventory-tracking-1928
Mar 29, 2017
fad6051
Merge pull request #2034 from reactioncommerce/joykare-inventory-trac…
Mar 29, 2017
c301ed3
fix createDefaultAdminUser behavior with users in the system
callmephilip Mar 29, 2017
6160ea2
Resolve cart addition issue (#2048)
joykare Mar 30, 2017
115e88f
Merge branch 'development' into kieha-orders-pagination-1921
Mar 30, 2017
046035c
Calling aggregate function in React container
Mar 30, 2017
b2497cf
Merge branch 'kieha-orders-pagination-1921' of https://github.com/rea…
Mar 30, 2017
336c094
Rewriting aggregate method to use wrapAsync
Mar 30, 2017
51bf059
Returning Toplevel products as per scroll limit for non admin users f…
hrath2015 Mar 30, 2017
fa5d47e
Refactor calling aggregate function in React container
Mar 30, 2017
e34fc1a
Removing unnecessary order subscriptions in order template
Mar 30, 2017
e6a0b70
Removing unnecessary order Counts.publish from Orders publication
Mar 30, 2017
f953573
Merge branch 'development' into kieha-orders-pagination-1921
Mar 30, 2017
bc01921
[WIP] Broken Formatting for Non-USD currencies (#2062)
abdulsemiu-atanda Mar 31, 2017
6b495f0
Merge branch 'development' into kieha-orders-pagination-1921
Mar 31, 2017
aa47224
Set order count to 0 if there are no orders in the database
Mar 31, 2017
f786b66
Remove unnecessary parameter to order/count
Mar 31, 2017
e319385
Changes to order template:
Mar 31, 2017
c64dfd1
Using publish-counts to display order counts
Apr 3, 2017
bb64188
Removing unnecessary orders/count method
Apr 3, 2017
b04b92c
Adding i18n on Show More button
Apr 3, 2017
7fa095c
Adding optional check on filter in PaginatedOrders publication
Apr 3, 2017
41dd705
Merge branch 'development' into patch-1
brent-hoover Apr 4, 2017
b3a2501
Sending subscription limit as props to React component
Apr 4, 2017
a7c1e87
Don't subscribe to all media (#2073)
mikemurray Apr 4, 2017
1f1ef9c
Merge branch 'development' into kieha-orders-pagination-1921
Apr 5, 2017
6d7cfc6
Fix endless spinner issue
Apr 5, 2017
af12de4
Add requirements to readme
Apr 5, 2017
50487ac
Merge branch 'development' into spencer-docs-requirements
Apr 5, 2017
5d478a6
Move requirements below installation
Apr 5, 2017
8706d6e
Merge pull request #2085 from reactioncommerce/spencer-docs-requirements
Apr 5, 2017
de624d4
Remove isHidden check from core startup b/c blocking safari - fixes #…
spencern Apr 5, 2017
a0ec38c
Request versions (reaction -v) output in issue template (#2087)
spencern Apr 6, 2017
875c670
Merge branch 'development' into kieha-orders-pagination-1921
Apr 6, 2017
e53dd4d
Merge branch 'development' into patch-1
brent-hoover Apr 6, 2017
4691799
Fetch all Shippo carriers (#2078)
impactmass Apr 7, 2017
244a600
Fix transliteration package to 1.5.2 which doesn’t leak ES6 into bundle
spencern Apr 7, 2017
cf04dfe
Merge branch 'development' into kieha-orders-pagination-1921
Apr 7, 2017
8b2e4fa
Merge branch 'development' into spencer-fix-2088-blank-safari
Apr 7, 2017
d5e9838
Merge pull request #2089 from reactioncommerce/spencer-fix-2088-blank…
Apr 7, 2017
6cdfb48
Merge branch 'development' into kieha-orders-pagination-1921
Apr 7, 2017
cc0b1b9
Merge pull request #2036 from reactioncommerce/kieha-orders-paginatio…
Apr 7, 2017
fae0078
Fix issue #2026 changed price not displayed for prod on grid page (#2…
hrath2015 Apr 7, 2017
a912715
Convert text field to select field for countries (#2082)
brent-hoover Apr 7, 2017
cf3b957
Merge branch 'development' into spencer-fix-prerender
Apr 7, 2017
24aa8bf
[WIP] #2070 Fix PDP Url Path For Grid Settings (#2094)
Apr 9, 2017
7a76354
Merge branch 'development' into patch-1
brent-hoover Apr 9, 2017
b8620b1
Remove legacy PDP (#2097)
impactmass Apr 11, 2017
6ee9cdd
Merge branch 'development' into patch-1
Apr 11, 2017
3d75819
Set total quantity as actual sum of quantity
brent-hoover Apr 12, 2017
228fc33
Don't break out order items
brent-hoover Apr 12, 2017
6864416
set cartItemId to just _id since they are the same now
brent-hoover Apr 12, 2017
d8f8f38
Fix unrelated error with missing import
brent-hoover Apr 12, 2017
9afb9a8
Create shipping record
brent-hoover Apr 12, 2017
f6b0bca
Don't use cartItemId
brent-hoover Apr 12, 2017
7945691
Group lineItems by _id rather than cartItemId
brent-hoover Apr 12, 2017
d513d4f
Use _id rather than cartItemId. Use sum of quantities rather than length
brent-hoover Apr 12, 2017
657f532
Restore check for empty items array to fix test
brent-hoover Apr 12, 2017
bb9aad8
Change cartItemId to _id
joykare Apr 12, 2017
ad737c0
2067 Improper Product Title Wrap (#2108)
abdulsemiu-atanda Apr 12, 2017
a1690d0
Fix Avalara document id (#2114)
brent-hoover Apr 12, 2017
25eb7b7
Use order.items to display line items
joykare Apr 12, 2017
4a57629
Merge branch 'development' into spencer-fix-prerender
Apr 12, 2017
bc3e6a0
Merge pull request #2091 from reactioncommerce/spencer-fix-prerender
Apr 12, 2017
f5bee13
Update core.js
Apr 12, 2017
da25d62
Merge branch 'development' into patch-1
Apr 12, 2017
5ebd3e6
Merge pull request #2060 from callmephilip/patch-1
Apr 12, 2017
234df11
Merge branch 'development' into brent-fix-explode-orders-2102
brent-hoover Apr 13, 2017
db064ab
If cartItemId exists from legacy orders, then use those
brent-hoover Apr 13, 2017
5cf275d
Don't create default admin user when running in app test mode
brent-hoover Apr 14, 2017
ba88b25
Fix "Set Custom Value" on Avalara Usage Type (#2107)
impactmass Apr 14, 2017
1e5ffa8
Merge branch 'development' into brent-fix-test-runner
brent-hoover Apr 14, 2017
cbf602f
Merge pull request #2124 from reactioncommerce/brent-fix-test-runner
Apr 14, 2017
3fc1948
Merge branch 'development' into brent-fix-explode-orders-2102
Apr 14, 2017
ea62de2
Merge pull request #2119 from reactioncommerce/brent-fix-explode-orde…
Apr 14, 2017
ed979ef
Fixes #2116 failure to send email (#2118)
spencern Apr 14, 2017
9101c01
Fix missing import
brent-hoover Apr 18, 2017
c7c51f6
Add import, adjust Proptypes
brent-hoover Apr 18, 2017
7e31fb5
Update read only Quantity in top variant #1919 (#2065)
joykare Apr 18, 2017
808366e
Merge branch 'development' into brent-fix-issue-2112
kieckhafer Apr 18, 2017
ad16176
Merge pull request #2132 from reactioncommerce/brent-fix-issue-2112
kieckhafer Apr 18, 2017
8a15bd3
1994 Console Dropzone Warnings (#2138)
abdulsemiu-atanda Apr 19, 2017
a31b8ac
Merge release 1.1.1 (master) into development
Apr 19, 2017
86e6ddb
Update Summary Card for Order (#2105)
joykare Apr 20, 2017
8afa559
Add to Cart Alert Behavior (#2076)
abdulsemiu-atanda Apr 20, 2017
cbb52b6
[WIP] 2137 Specify Shippo Version (#2146)
abdulsemiu-atanda Apr 21, 2017
a74c5b5
fix currency formatting in invoice (#2147)
abdulsemiu-atanda Apr 22, 2017
501c43e
language dropdown updates (#2148)
kieckhafer Apr 24, 2017
67c2eb5
fix dark-gray background on notification hover state (#2163)
abdulsemiu-atanda Apr 25, 2017
b0685c0
Cancel Order (#2022)
Apr 26, 2017
e7d2313
Adds Reaction method for adding roles to a default role set.
spencern Apr 26, 2017
815d58a
Tests for adding default roles
spencern Apr 27, 2017
fb07802
One more test
spencern Apr 27, 2017
5dcb2ff
Merge branch 'development' into spencer-method-for-adding-default-roles
spencern Apr 27, 2017
df4afe0
Run all tests instead of just `addDefaultRoles` tests
spencern Apr 28, 2017
c4d2f3f
Fix for Account Meteor Method tests that relied on Shops not being reset
spencern Apr 28, 2017
b5fc5c2
Merge pull request #2174 from reactioncommerce/spencer-method-for-add…
kieckhafer May 1, 2017
47f0561
[WIP] 2115 Inconsistent Product Image of Cart Item (#2171)
abdulsemiu-atanda May 2, 2017
38dde68
Order methods test (#2159)
May 2, 2017
2edc852
PDP Cleanup - Basic Details Card, Tax Card & Inventory Card (#2086)
May 3, 2017
16e7a10
update the way address data is provided (#2208)
kieckhafer May 4, 2017
a44c23d
METEOR 1.4.4.2 (#2206)
May 4, 2017
cdb2ac3
Added Kuwait, Saudi Arabia and Qatar currencies (#2204)
lcampanis May 5, 2017
0e9ed5b
fix email log panel closing when email is sent (#2205)
abdulsemiu-atanda May 8, 2017
945ffd9
add order id to completed screen (#2202)
May 8, 2017
659dd7f
Fix Email Notification During Order Refund (#2200)
May 8, 2017
90d5fb8
1638 Completed Order Logged Out State (#2201)
abdulsemiu-atanda May 8, 2017
c672868
fix create product should flip into edit mode (#2221)
abdulsemiu-atanda May 9, 2017
1b1e0ca
Toggle Variant Visibility when Ancestor Product Visibility is Toggled…
May 9, 2017
90bfd6b
Fix missing shop (#2224)
jshimko May 9, 2017
78901a9
swap unicode with missing semi-colon for regular apostrophe (#2223)
kieckhafer May 9, 2017
dfa806e
made social share buttons on PDP ADA compliant (#2196)
minimart May 9, 2017
e8151a1
Fix permissions for items shown in admin dashboard (#2145)
impactmass May 9, 2017
e97a032
Pin vsivsi:job-collection meteor package to 1.4.0 (#2228)
hrath2015 May 9, 2017
8887269
React Router (#2123)
mikemurray May 9, 2017
ad0f8d9
LingoHub based on development (#2218)
May 10, 2017
a731478
2217 Add Product Name To Invoice (#2226)
abdulsemiu-atanda May 10, 2017
f1306aa
Permissions Fix: Use passed in "audience" param in ReactionApps (#2235)
impactmass May 11, 2017
3529f9c
fix display of unpublished option images (#2236)
abdulsemiu-atanda May 11, 2017
a6cc84f
Restore helper to limit dropdown icons
impactmass May 11, 2017
e368543
Merge pull request #2253 from reactioncommerce/revert-dropdowns-2252
spencern May 11, 2017
4de6b06
1987 Panel Expander Arrow Overlapping on Dropdown (#2211)
abdulsemiu-atanda May 11, 2017
b0b201c
Fixes #2243 Paypal Express requiring login for guest accounts (#2255)
spencern May 12, 2017
07e4962
Updated README.md
May 12, 2017
45e524f
Update version
May 12, 2017
749bd36
readme.md updates
kieckhafer May 16, 2017
638b525
Removed unused code
mikemurray May 16, 2017
cd598b4
Merge pull request #2282 from reactioncommerce/mikemurray-patch-1
kieckhafer May 16, 2017
f4f7f61
fix 2278 Router tables not initializing (#2279)
hrath2015 May 16, 2017
650679b
fix notification dropdown links (#2280)
kieckhafer May 16, 2017
f735548
style / small updates for release 1.2 (#2283)
kieckhafer May 16, 2017
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 8 additions & 1 deletion .bithoundrc
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,14 @@
"mute": [
"wdio-mocha-framework",
"griddle-react",
"nodemailer"
"nodemailer",
"twilio",
"react-addons-create-fragment",
"react-addons-pure-render-mixin",
"react-addons-test-utils",
"react-dom",
"react",
"transliteration"
],
"unused-ignores": [
"jquery",
Expand Down
14 changes: 6 additions & 8 deletions .meteor/packages
Original file line number Diff line number Diff line change
Expand Up @@ -11,14 +11,14 @@ meteor-base@1.0.4 # Packages every Meteor app needs to have
mobile-experience@1.0.4 # Packages for a great mobile UX
blaze-html-templates@1.0.4 # Compile .html files into Meteor Blaze views
es5-shim@4.6.15 # ECMAScript 5 compatibility for older browsers.
ecmascript@0.7.2 # Enable ECMAScript2015+ syntax in app code
ecmascript@0.7.3 # Enable ECMAScript2015+ syntax in app code
audit-argument-checks@1.0.7 # ensure meteor method argument validation
browser-policy@1.1.0 # security-related policies enforced by newer browsers
juliancwirko:postcss # CSS post-processing plugin (replaces standard-minifier-css)
abernix:standard-minifier-js # a minifier plugin used for Meteor apps by default
session@1.1.7 # ReactiveDict whose contents are preserved across Hot Code Push
tracker@1.1.2 # Meteor transparent reactive programming library
mongo@1.1.16
tracker@1.1.3 # Meteor transparent reactive programming library
mongo@1.1.17
random@1.0.10
reactive-var@1.0.11
reactive-dict@1.1.8
Expand All @@ -36,8 +36,8 @@ mdg:validated-method
shell-server@0.2.3

# Meteor Auth Packages
accounts-base@1.2.16
accounts-password@1.3.5
accounts-base@1.2.17
accounts-password@1.3.6
accounts-facebook@1.1.1
accounts-google@1.1.2
accounts-twitter@1.2.1
Expand All @@ -63,9 +63,7 @@ jeremy:stripe
jparker:gravatar
juliancwirko:s-alert
juliancwirko:s-alert-stackslide
kadira:blaze-layout
kadira:dochead
kadira:flow-router-ssr
matb33:collection-hooks
meteorhacks:ssr
meteorhacks:subs-manager
Expand All @@ -74,7 +72,7 @@ ongoworks:security
raix:ui-dropped-event
risul:moment-timezone
tmeasday:publish-counts
vsivsi:job-collection
vsivsi:job-collection@1.4.0
react-meteor-data
percolate:migrations
gadicc:blaze-react-component
Expand Down
2 changes: 1 addition & 1 deletion .meteor/release
Original file line number Diff line number Diff line change
@@ -1 +1 @@
METEOR@1.4.4.1
METEOR@1.4.4.2
29 changes: 11 additions & 18 deletions .meteor/versions
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
abernix:minifier-js@1.3.19
abernix:standard-minifier-js@1.3.19
accounts-base@1.2.16
accounts-base@1.2.17
accounts-facebook@1.1.1
accounts-google@1.1.2
accounts-oauth@1.1.15
accounts-password@1.3.5
accounts-password@1.3.6
accounts-twitter@1.2.1
alanning:roles@1.2.16
aldeed:autoform@5.8.1
aldeed:browser-tests@0.1.0
aldeed:browser-tests@0.1.1
aldeed:collection2@2.10.0
aldeed:collection2-core@1.2.0
aldeed:schema-deny@1.1.0
Expand Down Expand Up @@ -55,8 +55,7 @@ cfs:ui@0.1.3
cfs:upload-http@0.0.20
cfs:worker@0.1.4
check@1.2.5
chuangbo:cookie@1.1.0
coffeescript@1.11.1_4
coffeescript@1.12.3_1
dburles:factory@1.1.0
ddp@1.2.5
ddp-client@1.3.4
Expand All @@ -65,20 +64,20 @@ ddp-rate-limiter@1.0.7
ddp-server@1.3.14
deps@1.0.12
diff-sequence@1.0.7
dispatch:mocha@0.3.0
dispatch:mocha@0.4.1
dispatch:run-as-user@1.1.1
ecmascript@0.7.3
ecmascript-runtime@0.3.15
ejson@1.0.13
email@1.2.0
email@1.2.1
es5-shim@4.6.15
facebook-config-ui@1.0.0
facebook-oauth@1.3.0
fastclick@1.0.13
gadicc:blaze-react-component@1.4.0
geojson-utils@1.0.10
google-config-ui@1.0.0
google-oauth@1.2.3
google-oauth@1.2.4
hot-code-push@1.0.4
html-tools@1.0.11
htmljs@1.0.11
Expand All @@ -93,9 +92,7 @@ jquery@1.11.10
juliancwirko:postcss@1.2.0
juliancwirko:s-alert@3.2.0
juliancwirko:s-alert-stackslide@3.1.3
kadira:blaze-layout@2.3.0
kadira:dochead@1.5.0
kadira:flow-router-ssr@3.13.0
launch-screen@1.1.1
less@2.7.9
livedata@1.0.18
Expand All @@ -106,20 +103,16 @@ mdg:validated-method@1.1.0
mdg:validation-error@0.5.1
meteor@1.6.1
meteor-base@1.0.4
meteorhacks:fast-render@2.16.0
meteorhacks:inject-data@2.0.0
meteorhacks:meteorx@1.4.1
meteorhacks:picker@1.0.3
meteorhacks:ssr@2.2.0
meteorhacks:subs-manager@1.6.4
minifier-css@1.2.16
minimongo@1.0.21
minimongo@1.0.23
mobile-experience@1.0.4
mobile-status-bar@1.0.14
modules@0.8.2
modules-runtime@0.7.10
momentjs:moment@2.17.1
mongo@1.1.16
mongo@1.1.17
mongo-id@1.0.6
mongo-livedata@1.0.12
mrt:later@1.6.1
Expand All @@ -131,7 +124,7 @@ oauth-encryption@1.2.1
oauth1@1.1.11
oauth2@1.1.11
observe-sequence@1.0.16
ongoworks:security@2.0.1
ongoworks:security@2.1.0
ordered-dict@1.0.9
percolate:migrations@0.9.8
practicalmeteor:chai@2.1.0_1
Expand Down Expand Up @@ -162,7 +155,7 @@ templating-runtime@1.3.2
templating-tools@1.1.2
tmeasday:check-npm-versions@0.3.1
tmeasday:publish-counts@0.8.0
tracker@1.1.2
tracker@1.1.3
twitter-config-ui@1.0.0
twitter-oauth@1.2.0
ui@1.0.13
Expand Down
2 changes: 1 addition & 1 deletion Dockerfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
FROM reactioncommerce/base:v1.3.0
FROM reactioncommerce/base:v1.3.1

# Default environment variables
ENV ROOT_URL "http://localhost"
Expand Down
78 changes: 35 additions & 43 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,24 +2,24 @@

[![bitHound Overall Score](https://www.bithound.io/github/reactioncommerce/reaction/badges/score.svg)](https://www.bithound.io/github/reactioncommerce/reaction) [![bitHound Dev Dependencies](https://www.bithound.io/github/reactioncommerce/reaction/badges/devDependencies.svg)](https://www.bithound.io/github/reactioncommerce/reaction/9a858eb459d7260d5ae59124c2b364bc791a3e70/dependencies/npm) [![bitHound Code](https://www.bithound.io/github/reactioncommerce/reaction/badges/code.svg)](https://www.bithound.io/github/reactioncommerce/reaction) [![Circle CI](https://circleci.com/gh/reactioncommerce/reaction.svg?style=svg)](https://circleci.com/gh/reactioncommerce/reaction) [![Gitter](https://badges.gitter.im/JoinChat.svg)](https://gitter.im/reactioncommerce/reaction?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)

Reaction is an event-driven, real-time reactive commerce platform built with JavaScript (ES6). It plays nicely with npm and Docker, and is based entirely on JavaScript, CSS, and HTML.
Reaction is an event-driven, real-time reactive commerce platform built with JavaScript (ES6). It plays nicely with npm and Docker, and is based entirely on JavaScript, CSS, and HTML.

![Reaction v.1.0.0](https://raw.githubusercontent.com/reactioncommerce/reaction-docs/master/assets/rc-desktop.png)

## Features

Reaction’s out-of-the-box core features include:

* Drag-and-drop merchandising
* Order processing
* Payments
* Shipping
* Taxes
* Discounts
* Analytics
* Integration with dozens of third-party apps
- Drag-and-drop merchandising
- Order processing
- Payments
- Shipping
- Taxes
- Discounts
- Analytics
- Integration with dozens of third-party apps

And, since anything in our codebase can be extended, overwritten, or installed as a package, you may also develop, scale, and customize anything on our platform.
Since anything in our codebase can be extended, overwritten, or installed as a package, you may also develop, scale, and customize anything on our platform.

## Installation

Expand All @@ -32,61 +32,53 @@ cd reaction
reaction
```

_Reaction requires Meteor, Git, MongoDB, OS Specific Build Tools, and (optionally) ImageMagick. See our [Requirements Docs](https://docs.reactioncommerce.com/reaction-docs/master/requirements) for requirements installation information._
Reaction requires Meteor, Git, MongoDB, OS Specific Build Tools, and (optionally) ImageMagick.

For more information on setup and configuration, check out the [installation](https://docs.reactioncommerce.com/reaction-docs/development/installation) and [configuration](https://docs.reactioncommerce.com/reaction-docs/development/configuration) docs.

## Participation

If you are interested in participating in the development of Reaction, that's really great!
See our [Requirements Docs](https://docs.reactioncommerce.com/reaction-docs/master/requirements) for requirements that you may need to install for Reaction.

Our [community guidelines](https://docs.reactioncommerce.com/reaction-docs/master/guidelines) can be found in our [documentation](https://docs.reactioncommerce.com/). This is a good place to start getting more familar with Reaction.

The [Reaction Gitter channel](https://gitter.im/reactioncommerce/reaction) and [forum](http://discourse.reactioncommerce.com/) are good places to engage with core contributors and the community.
For more information on setup and configuration, check out the [installation](https://docs.reactioncommerce.com/reaction-docs/development/installation) and [configuration](https://docs.reactioncommerce.com/reaction-docs/development/configuration) docs.

### Planning

For a high level review our roadmap, take a look at the [Reaction features page](http://reactioncommerce.com/features).
For an overview of our roadmap, visit our [Features & Roadmap page](https://reactioncommerce.com/roadmap).

For a kanban-esque, hardcore, real time progress overview of all Reaction Commerce projects use our [project board](https://waffle.io/reactioncommerce/reaction).
You will find the roadmap defined as projects on the [Reaction repository's project page](https://github.com/reactioncommerce/reaction/projects).

### Testing

Testing is another great way to contribute. If you do discover a bug, [create an issue](https://github.com/reactioncommerce/reaction/issues/new) to report it.

Integration tests can be run at the command line with `reaction test`. Use `npm run-script test-local` to run local tests.
Specific features in progress are found on the [Reaction repository's milestones page](https://github.com/reactioncommerce/reaction/milestones).

### Documentation

The Reaction documentation source is located in the [reaction-docs](https://github.com/reactioncommerce/reaction-docs) repository, while the documentation site is the [reactioncommerce/redoc](https://github.com/reactioncommerce/redoc) application.
Multiple branches, release documentation is found at <https://docs.reactioncommerce.com>

The Reaction documentation source is located in the [reaction-docs](https://github.com/reactioncommerce/reaction-docs) repository, while the documentation site is the [reactioncommerce/redoc](https://github.com/reactioncommerce/redoc) application.

### Deployment
### Contributing

We require that all releases are deployable as [Docker](https://www.docker.com/) containers. Athough we haven't tested out other methods of deployment, our community has documented deployment strategies for [Heroku](https://github.com/reactioncommerce/reaction/issues/1363), AWS, [Digital Ocean](https://gist.github.com/jshimko/745ca66748846551692e24c267a56060), and Galaxy.
Star us on GitHub, it helps!

##### Docker
If you are interested in participating in the development of Reaction, that's really great!

Docker images are pushed when Reaction sucessfully builds and passes all tests on the `master` or `development` branches. These images are released on [Reaction Commerce Docker Hub](https://hub.docker.com/u/reactioncommerce/). There are two images available: [reactioncommerce:prequel](https://hub.docker.com/r/reactioncommerce/prequel/) - the latest `development` image and [reactioncommerce:reaction](https://hub.docker.com/r/reactioncommerce/reaction/), the `master` image.
The [Reaction Gitter channel](https://gitter.im/reactioncommerce/reaction) and [forum](https://forums.reactioncommerce.com/) are good places to engage with core contributors, the community, and to get familiar with Reaction. Our [community guidelines](https://docs.reactioncommerce.com/reaction-docs/master/guidelines) can be found in our [documentation](https://docs.reactioncommerce.com/).

Check out the [issues](https://github.com/reactioncommerce/reaction/issues) page, and if you find something you want to work on, let us know in the comments. If you're interested in a particular [project](https://github.com/reactioncommerce/reaction/projects) and you aren’t sure where to begin, feel free to ask. Start small!

### Contributing
If your contribution doesn't fit with an existing issue, go ahead and [create an issue](https://github.com/reactioncommerce/reaction/issues/new) before submitting a [Pull Request](https://help.github.com/articles/about-pull-requests/). This will allow the Reaction team to give feedback if necessary.

Want to contribute? That's great! [Here's how you can get started](https://guides.github.com/activities/contributing-to-open-source/#contributing).
Pull Requests should:

Check out our Issues page, and if you find something you want to work on, let us know in the comments. If you're interested in a particular [project](https://github.com/reactioncommerce/reaction/projects) and you aren’t sure where to begin, feel free to ask. Start small!
- Be very focused in scope. Smaller scopes are easier for us to digest and approve.
- Note any existing associated issues.
- Lint and adhere to the [Reaction style guide](https://docs.reactioncommerce.com/reaction-docs/master/styleguide).
- Pass both [acceptance tests and unit testing](https://docs.reactioncommerce.com/reaction-docs/master/testing-reaction).

If your contribution doesn't fit with an existing issue, go ahead and [create an issue](https://github.com/reactioncommerce/reaction/issues/new) before submitting a [Pull Request](https://help.github.com/articles/about-pull-requests/). This will allow the Reaction team to give feedback if necessary.
### Testing

Pull Requests should:
Testing is another great way to contribute. If you do discover a bug, [create an issue](https://github.com/reactioncommerce/reaction/issues/new) to report it.

- Include an associated issue
- Comply with the Contributor License Agreement
- Adhere to the [Reaction style guide](https://docs.reactioncommerce.com/reaction-docs/master/styleguide)
- Pass both [acceptance tests and unit testing](https://docs.reactioncommerce.com/reaction-docs/master/testing-reaction)
Integration tests can be run at the command line with `reaction test`.

Be sure to read our [Community Guidelines](https://docs.reactioncommerce.com/reaction-docs/master/guidelines) to get more familiar with Reaction. And if you have any questions or comments, feel free to reach out via [Gitter](https://gitter.im/reactioncommerce/reaction) or our [forums](http://discourse.reactioncommerce.com/).
### Deployment

### What's Next
We ensure that all releases are deployable as [Docker](https://www.docker.com/) containers. While we don't regularly test other methods of deployment, our community has documented deployment strategies for AWS, [Digital Ocean](https://gist.github.com/jshimko/745ca66748846551692e24c267a56060), and Galaxy.

For an overview of our roadmap, visit our [Features & Roadmap page](https://reactioncommerce.com/roadmap). Or, if you'd like to see what we're doing in real time, check out our [Project Board](https://waffle.io/reactioncommerce/reaction). You can also see what we're doing [by project](https://github.com/reactioncommerce/reaction/projects) or [by release date](https://github.com/reactioncommerce/reaction/milestones).
For an introduction to Docker deployment, [the Reaction deployment guide](https://docs.reactioncommerce.com/reaction-docs/master/deploying) has detailed examples. Reaction Commerce also offers a managed deployment platform integrated with the Reaction command line.
7 changes: 5 additions & 2 deletions client/modules/accounts/templates/members/member.js
Original file line number Diff line number Diff line change
Expand Up @@ -80,8 +80,11 @@ Template.memberSettings.helpers({
// Get all permissions, add them to an array
if (registryItem.permissions) {
for (const permission of registryItem.permissions) {
permission.shopId = shopId;
permissions.push(permission);
// check needed because of non-object perms in the permissions array (e.g "admin", "owner")
if (typeof permission === "object") {
permission.shopId = shopId;
permissions.push(permission);
}
}
}

Expand Down
35 changes: 22 additions & 13 deletions client/modules/core/helpers/apps.js
Original file line number Diff line number Diff line change
Expand Up @@ -47,11 +47,6 @@ export function Apps(optionHash) {
const reactionApps = [];
let options = {};

// remove audience permissions for owner
if (Reaction.hasOwnerAccess() && optionHash.audience) {
delete optionHash.audience;
}

// allow for object or option.hash
if (optionHash) {
if (optionHash.hash) {
Expand All @@ -66,6 +61,11 @@ export function Apps(optionHash) {
options.shopId = Reaction.getShopId();
}

// remove audience permissions for owner (still needed here for older/legacy calls)
if (Reaction.hasOwnerAccess() && options.audience) {
delete options.audience;
}

//
// build filter to only get matching registry elements
//
Expand All @@ -89,24 +89,33 @@ export function Apps(optionHash) {
}
}

// fetch the packages
delete filter["registry.audience"]; // Temporarily remove "audience" key (see comment below)

// TODO: Review fix for filter on Packages.find(filter)
// The current "filter" setup uses "audience" field which is not present in the registry array in most (if not all) docs
// in the Packages coll.
// For now, the audience checks (after the Package.find call) filters out the registry items based on permissions. But
// part of the filtering should have been handled by the Package.find call, if the "audience" filter works as it should.
Packages.find(filter).forEach((app) => {
const matchingRegistry = _.filter(app.registry, function (item) {
const itemFilter = registryFilter;
const itemFilter = _.cloneDeep(registryFilter);

// check audience permissions only if they exist as part of optionHash and are part of the registry item
// ideally all routes should use it, safe for backwards compatibility though
// owner bypasses permissions
if (!Reaction.hasOwnerAccess() && item.audience && registryFilter.audience) {
if (!Reaction.hasOwnerAccess() && item.permissions && registryFilter.audience) {
let hasAccess;

for (const permission of registryFilter.audience) {
if (item.audience.indexOf(permission) > -1) {
hasAccess = true;
}
// make sure user also has audience perms
if (Roles.userIsInRole(Meteor.userId(), permission, Reaction.getShopId())) {
// This checks that the registry item contains a permissions matches with the user's permission for the shop
const hasPermissionToRegistryItem = item.permissions.indexOf(permission) > -1;
// This checks that the user's permission set have the right value that is on the registry item
const hasRoleAccessForShop = Roles.userIsInRole(Meteor.userId(), permission, Reaction.getShopId());

// both checks must pass for access to be granted
if (hasPermissionToRegistryItem && hasRoleAccessForShop) {
hasAccess = true;
break;
}
}

Expand Down
11 changes: 8 additions & 3 deletions client/modules/core/main.js
Original file line number Diff line number Diff line change
Expand Up @@ -197,10 +197,15 @@ export default {
},

getUserPreferences(packageName, preference, defaultValue) {
const profile = Meteor.user().profile;
if (profile && profile.preferences && profile.preferences[packageName] && profile.preferences[packageName][preference]) {
return profile.preferences[packageName][preference];
const user = Meteor.user();

if (user) {
const profile = Meteor.user().profile;
if (profile && profile.preferences && profile.preferences[packageName] && profile.preferences[packageName][preference]) {
return profile.preferences[packageName][preference];
}
}

return defaultValue || undefined;
},

Expand Down
Loading