workarea-reviews 3.0.8 → 3.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.eslintrc.json +35 -0
- data/.github/workflows/ci.yml +60 -0
- data/.gitignore +1 -2
- data/.rubocop.yml +3 -0
- data/.stylelintrc.json +8 -0
- data/CHANGELOG.md +24 -12
- data/Gemfile +4 -2
- data/Rakefile +4 -5
- data/app/controllers/workarea/admin/reports_controller.decorator +10 -0
- data/app/helpers/workarea/admin/reviews_helper.rb +6 -5
- data/app/helpers/workarea/storefront/reviews_helper.rb +1 -3
- data/app/helpers/workarea/storefront/reviews_schema_org_helper.rb +34 -0
- data/app/mailers/workarea/admin/status_report_mailer.decorator +2 -2
- data/app/models/workarea/insights/most_active_reviewers.rb +34 -0
- data/app/models/workarea/insights/most_reviewed_products.rb +33 -0
- data/app/models/workarea/insights/top_rated_products.rb +33 -0
- data/app/models/workarea/review.rb +5 -16
- data/app/queries/workarea/reports/reviews_by_product.rb +86 -0
- data/app/queries/workarea/reports/reviews_by_user.rb +71 -0
- data/app/seeds/{reviews.rb → workarea/review_seeds.rb} +17 -6
- data/app/view_models/workarea/admin/dashboards/reports_view_model.decorator +11 -0
- data/app/view_models/workarea/admin/reports/reviews_by_product_view_model.rb +27 -0
- data/app/view_models/workarea/storefront/review_view_model.rb +9 -3
- data/app/views/workarea/admin/dashboards/_reviews_by_product_card.html.haml +17 -0
- data/app/views/workarea/admin/insights/_most_active_reviewers.html.haml +22 -0
- data/app/views/workarea/admin/insights/_most_reviewed_products.html.haml +22 -0
- data/app/views/workarea/admin/insights/_top_rated_products.html.haml +22 -0
- data/app/views/workarea/admin/reports/reviews_by_product.html.haml +44 -0
- data/app/views/workarea/storefront/products/_rating.html.haml +1 -2
- data/app/views/workarea/storefront/products/_reviews.html.haml +5 -5
- data/app/views/workarea/storefront/products/_reviews_aggregate.html.haml +2 -2
- data/app/views/workarea/storefront/review_mailer/review_request.html.haml +2 -0
- data/app/views/workarea/storefront/review_requests/show.html.haml +2 -1
- data/config/initializers/append_points.rb +5 -0
- data/config/initializers/configuration.rb +3 -1
- data/config/initializers/scheduled_jobs.rb +8 -6
- data/config/locales/en.yml +46 -0
- data/config/routes.rb +4 -0
- data/lib/workarea/reviews/engine.rb +4 -0
- data/lib/workarea/reviews/version.rb +1 -1
- data/package.json +9 -0
- data/test/dummy/config/initializers/session_store.rb +3 -1
- data/test/helpers/workarea/storefront/reviews_helper_test.rb +1 -1
- data/test/integration/workarea/admin/reviews_integration_test.rb +5 -1
- data/test/models/workarea/insights/most_active_reviewers_test.rb +32 -0
- data/test/models/workarea/insights/most_reviewed_products_test.rb +32 -0
- data/test/models/workarea/insights/top_rated_products_test.rb +49 -0
- data/test/models/workarea/review_test.rb +29 -18
- data/test/queries/workarea/reports/reviews_by_product_test.rb +104 -0
- data/test/queries/workarea/reports/reviews_by_user_test.rb +102 -0
- data/test/system/workarea/admin/reviews_by_product_system_test.rb +60 -0
- data/test/view_models/workarea/storefront/review_view_model_test.rb +46 -0
- data/workarea-reviews.gemspec +1 -1
- data/yarn.lock +3265 -0
- metadata +33 -8
- data/app/controllers/workarea/admin/import_reviews_controller.rb +0 -35
- data/test/helpers/workarea/admin/reviews_helper_test.rb +0 -17
    
        metadata
    CHANGED
    
    | @@ -1,14 +1,14 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: workarea-reviews
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version: 3. | 
| 4 | 
            +
              version: 3.1.2
         | 
| 5 5 | 
             
            platform: ruby
         | 
| 6 6 | 
             
            authors:
         | 
| 7 7 | 
             
            - Ben Crouse
         | 
| 8 8 | 
             
            autorequire: 
         | 
| 9 9 | 
             
            bindir: bin
         | 
| 10 10 | 
             
            cert_chain: []
         | 
| 11 | 
            -
            date:  | 
| 11 | 
            +
            date: 2020-10-30 00:00:00.000000000 Z
         | 
| 12 12 | 
             
            dependencies:
         | 
| 13 13 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 14 14 | 
             
              name: workarea
         | 
| @@ -19,7 +19,7 @@ dependencies: | |
| 19 19 | 
             
                    version: 3.x
         | 
| 20 20 | 
             
                - - ">="
         | 
| 21 21 | 
             
                  - !ruby/object:Gem::Version
         | 
| 22 | 
            -
                    version: 3. | 
| 22 | 
            +
                    version: 3.5.x
         | 
| 23 23 | 
             
              type: :runtime
         | 
| 24 24 | 
             
              prerelease: false
         | 
| 25 25 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| @@ -29,7 +29,7 @@ dependencies: | |
| 29 29 | 
             
                    version: 3.x
         | 
| 30 30 | 
             
                - - ">="
         | 
| 31 31 | 
             
                  - !ruby/object:Gem::Version
         | 
| 32 | 
            -
                    version: 3. | 
| 32 | 
            +
                    version: 3.5.x
         | 
| 33 33 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 34 34 | 
             
              name: recaptcha
         | 
| 35 35 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| @@ -54,11 +54,15 @@ files: | |
| 54 54 | 
             
            - ".editorconfig"
         | 
| 55 55 | 
             
            - ".eslintignore"
         | 
| 56 56 | 
             
            - ".eslintrc"
         | 
| 57 | 
            +
            - ".eslintrc.json"
         | 
| 57 58 | 
             
            - ".github/ISSUE_TEMPLATE/bug_report.md"
         | 
| 58 59 | 
             
            - ".github/ISSUE_TEMPLATE/documentation-request.md"
         | 
| 59 60 | 
             
            - ".github/ISSUE_TEMPLATE/feature_request.md"
         | 
| 61 | 
            +
            - ".github/workflows/ci.yml"
         | 
| 60 62 | 
             
            - ".gitignore"
         | 
| 63 | 
            +
            - ".rubocop.yml"
         | 
| 61 64 | 
             
            - ".scss-lint.yml"
         | 
| 65 | 
            +
            - ".stylelintrc.json"
         | 
| 62 66 | 
             
            - ".yardopts"
         | 
| 63 67 | 
             
            - CHANGELOG.md
         | 
| 64 68 | 
             
            - CODE_OF_CONDUCT.md
         | 
| @@ -80,29 +84,37 @@ files: | |
| 80 84 | 
             
            - app/assets/stylesheets/workarea/storefront/reviews/components/_reviews_aggregate.scss
         | 
| 81 85 | 
             
            - app/assets/stylesheets/workarea/storefront/reviews/components/_write_review.scss
         | 
| 82 86 | 
             
            - app/controllers/workarea/admin/catalog_products_controller.decorator
         | 
| 83 | 
            -
            - app/controllers/workarea/admin/ | 
| 87 | 
            +
            - app/controllers/workarea/admin/reports_controller.decorator
         | 
| 84 88 | 
             
            - app/controllers/workarea/admin/reviews_controller.rb
         | 
| 85 89 | 
             
            - app/controllers/workarea/storefront/review_requests_controller.rb
         | 
| 86 90 | 
             
            - app/controllers/workarea/storefront/reviews_controller.rb
         | 
| 87 91 | 
             
            - app/helpers/workarea/admin/reviews_helper.rb
         | 
| 88 92 | 
             
            - app/helpers/workarea/storefront/reviews_helper.rb
         | 
| 93 | 
            +
            - app/helpers/workarea/storefront/reviews_schema_org_helper.rb
         | 
| 89 94 | 
             
            - app/mailers/workarea/admin/status_report_mailer.decorator
         | 
| 90 95 | 
             
            - app/mailers/workarea/storefront/review_mailer.rb
         | 
| 91 96 | 
             
            - app/models/workarea/catalog/product.decorator
         | 
| 92 97 | 
             
            - app/models/workarea/fulfillment.decorator
         | 
| 98 | 
            +
            - app/models/workarea/insights/most_active_reviewers.rb
         | 
| 99 | 
            +
            - app/models/workarea/insights/most_reviewed_products.rb
         | 
| 100 | 
            +
            - app/models/workarea/insights/top_rated_products.rb
         | 
| 93 101 | 
             
            - app/models/workarea/review.rb
         | 
| 94 102 | 
             
            - app/models/workarea/review/request.rb
         | 
| 95 103 | 
             
            - app/models/workarea/search/admin/review.rb
         | 
| 96 104 | 
             
            - app/models/workarea/search/storefront/product.decorator
         | 
| 97 105 | 
             
            - app/models/workarea/sort.decorator
         | 
| 106 | 
            +
            - app/queries/workarea/reports/reviews_by_product.rb
         | 
| 107 | 
            +
            - app/queries/workarea/reports/reviews_by_user.rb
         | 
| 98 108 | 
             
            - app/queries/workarea/review_request_params.rb
         | 
| 99 109 | 
             
            - app/queries/workarea/review_summary.rb
         | 
| 100 110 | 
             
            - app/queries/workarea/search/admin_reviews.rb
         | 
| 101 111 | 
             
            - app/queries/workarea/search/category_browse.decorator
         | 
| 102 112 | 
             
            - app/queries/workarea/search/product_search.decorator
         | 
| 103 | 
            -
            - app/seeds/ | 
| 113 | 
            +
            - app/seeds/workarea/review_seeds.rb
         | 
| 104 114 | 
             
            - app/services/workarea/create_review.rb
         | 
| 115 | 
            +
            - app/view_models/workarea/admin/dashboards/reports_view_model.decorator
         | 
| 105 116 | 
             
            - app/view_models/workarea/admin/product_view_model.decorator
         | 
| 117 | 
            +
            - app/view_models/workarea/admin/reports/reviews_by_product_view_model.rb
         | 
| 106 118 | 
             
            - app/view_models/workarea/admin/review_view_model.rb
         | 
| 107 119 | 
             
            - app/view_models/workarea/admin/reviews_search_view_model.rb
         | 
| 108 120 | 
             
            - app/view_models/workarea/storefront/product_view_model.decorator
         | 
| @@ -110,6 +122,11 @@ files: | |
| 110 122 | 
             
            - app/views/workarea/admin/activities/_review_create.html.haml
         | 
| 111 123 | 
             
            - app/views/workarea/admin/activities/_review_destroy.html.haml
         | 
| 112 124 | 
             
            - app/views/workarea/admin/activities/_review_update.html.haml
         | 
| 125 | 
            +
            - app/views/workarea/admin/dashboards/_reviews_by_product_card.html.haml
         | 
| 126 | 
            +
            - app/views/workarea/admin/insights/_most_active_reviewers.html.haml
         | 
| 127 | 
            +
            - app/views/workarea/admin/insights/_most_reviewed_products.html.haml
         | 
| 128 | 
            +
            - app/views/workarea/admin/insights/_top_rated_products.html.haml
         | 
| 129 | 
            +
            - app/views/workarea/admin/reports/reviews_by_product.html.haml
         | 
| 113 130 | 
             
            - app/views/workarea/admin/reviews/_aux_navigation.html.haml
         | 
| 114 131 | 
             
            - app/views/workarea/admin/reviews/_catalog_products_aux_link.html.haml
         | 
| 115 132 | 
             
            - app/views/workarea/admin/reviews/_dashboard_navigation.html.haml
         | 
| @@ -145,6 +162,7 @@ files: | |
| 145 162 | 
             
            - lib/workarea/reviews.rb
         | 
| 146 163 | 
             
            - lib/workarea/reviews/engine.rb
         | 
| 147 164 | 
             
            - lib/workarea/reviews/version.rb
         | 
| 165 | 
            +
            - package.json
         | 
| 148 166 | 
             
            - test/dummy/Rakefile
         | 
| 149 167 | 
             
            - test/dummy/app/assets/config/manifest.js
         | 
| 150 168 | 
             
            - test/dummy/app/assets/images/.keep
         | 
| @@ -193,7 +211,6 @@ files: | |
| 193 211 | 
             
            - test/dummy/log/.keep
         | 
| 194 212 | 
             
            - test/factories/reviews.rb
         | 
| 195 213 | 
             
            - test/fixtures/reviews.csv
         | 
| 196 | 
            -
            - test/helpers/workarea/admin/reviews_helper_test.rb
         | 
| 197 214 | 
             
            - test/helpers/workarea/storefront/reviews_helper_test.rb
         | 
| 198 215 | 
             
            - test/integration/workarea/admin/reviews_integration_test.rb
         | 
| 199 216 | 
             
            - test/integration/workarea/storefront/review_requests_integration_test.rb
         | 
| @@ -201,20 +218,28 @@ files: | |
| 201 218 | 
             
            - test/javascripts/fixtures/product_review_ajax_submit.html.haml
         | 
| 202 219 | 
             
            - test/javascripts/product_review_ajax_submit_spec.js
         | 
| 203 220 | 
             
            - test/javascripts/spec_helper.js
         | 
| 221 | 
            +
            - test/models/workarea/insights/most_active_reviewers_test.rb
         | 
| 222 | 
            +
            - test/models/workarea/insights/most_reviewed_products_test.rb
         | 
| 223 | 
            +
            - test/models/workarea/insights/top_rated_products_test.rb
         | 
| 204 224 | 
             
            - test/models/workarea/review/request_test.rb
         | 
| 205 225 | 
             
            - test/models/workarea/review_test.rb
         | 
| 206 226 | 
             
            - test/models/workarea/search/storefront/product_test.decorator
         | 
| 227 | 
            +
            - test/queries/workarea/reports/reviews_by_product_test.rb
         | 
| 228 | 
            +
            - test/queries/workarea/reports/reviews_by_user_test.rb
         | 
| 207 229 | 
             
            - test/queries/workarea/review_request_params_test.rb
         | 
| 208 230 | 
             
            - test/services/workarea/create_review_test.rb
         | 
| 209 231 | 
             
            - test/system/workarea/admin/review_system_test.rb
         | 
| 232 | 
            +
            - test/system/workarea/admin/reviews_by_product_system_test.rb
         | 
| 210 233 | 
             
            - test/system/workarea/storefront/review_request_system_test.rb
         | 
| 211 234 | 
             
            - test/system/workarea/storefront/review_system_test.rb
         | 
| 212 235 | 
             
            - test/teaspoon_env.rb
         | 
| 213 236 | 
             
            - test/test_helper.rb
         | 
| 237 | 
            +
            - test/view_models/workarea/storefront/review_view_model_test.rb
         | 
| 214 238 | 
             
            - test/workers/workarea/create_review_requests_test.rb
         | 
| 215 239 | 
             
            - test/workers/workarea/schedule_review_requests_test.rb
         | 
| 216 240 | 
             
            - test/workers/workarea/send_review_requests_test.rb
         | 
| 217 241 | 
             
            - workarea-reviews.gemspec
         | 
| 242 | 
            +
            - yarn.lock
         | 
| 218 243 | 
             
            homepage: https://github.com/workarea-commerce/workarea-reviews
         | 
| 219 244 | 
             
            licenses:
         | 
| 220 245 | 
             
            - Business Software License
         | 
| @@ -234,7 +259,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement | |
| 234 259 | 
             
                - !ruby/object:Gem::Version
         | 
| 235 260 | 
             
                  version: '0'
         | 
| 236 261 | 
             
            requirements: []
         | 
| 237 | 
            -
            rubygems_version: 3.0. | 
| 262 | 
            +
            rubygems_version: 3.0.3
         | 
| 238 263 | 
             
            signing_key: 
         | 
| 239 264 | 
             
            specification_version: 4
         | 
| 240 265 | 
             
            summary: Reviews plugin for the Workarea ecommerce platform
         | 
| @@ -1,35 +0,0 @@ | |
| 1 | 
            -
            module Workarea
         | 
| 2 | 
            -
              module Admin
         | 
| 3 | 
            -
                class ImportReviewsController < Admin::ApplicationController
         | 
| 4 | 
            -
                  required_permissions :marketing
         | 
| 5 | 
            -
             | 
| 6 | 
            -
                  def new
         | 
| 7 | 
            -
                    @import = Import::Review.new
         | 
| 8 | 
            -
                  end
         | 
| 9 | 
            -
             | 
| 10 | 
            -
                  def create
         | 
| 11 | 
            -
                    @import = Import::Review.new(import_params)
         | 
| 12 | 
            -
             | 
| 13 | 
            -
                    if @import.save
         | 
| 14 | 
            -
                      ProcessImport.perform_async(@import.to_global_id)
         | 
| 15 | 
            -
             | 
| 16 | 
            -
                      flash[:success] = t('workarea.admin.import_reviews.flash_messages.processing')
         | 
| 17 | 
            -
                      redirect_to reviews_path
         | 
| 18 | 
            -
                    else
         | 
| 19 | 
            -
                      render :new, status: :unprocessable_entity
         | 
| 20 | 
            -
                    end
         | 
| 21 | 
            -
                  end
         | 
| 22 | 
            -
             | 
| 23 | 
            -
                  def sample
         | 
| 24 | 
            -
                    send_file Reviews::Engine.root.join('public/workarea/import_samples/reviews.csv')
         | 
| 25 | 
            -
                  end
         | 
| 26 | 
            -
             | 
| 27 | 
            -
                  private
         | 
| 28 | 
            -
             | 
| 29 | 
            -
                  def import_params
         | 
| 30 | 
            -
                    params.fetch(:import_review, {})
         | 
| 31 | 
            -
                          .merge(created_by_id: current_user.id)
         | 
| 32 | 
            -
                  end
         | 
| 33 | 
            -
                end
         | 
| 34 | 
            -
              end
         | 
| 35 | 
            -
            end
         | 
| @@ -1,17 +0,0 @@ | |
| 1 | 
            -
            require 'test_helper'
         | 
| 2 | 
            -
             | 
| 3 | 
            -
            module Workarea
         | 
| 4 | 
            -
              module Admin
         | 
| 5 | 
            -
                class ReviewsHelperTest < ViewTest
         | 
| 6 | 
            -
                  def test_reviewer_info_only_shows_link_when_user_is_present
         | 
| 7 | 
            -
                    review = create_review(
         | 
| 8 | 
            -
                      user_id: nil,
         | 
| 9 | 
            -
                      product_id: create_product.id,
         | 
| 10 | 
            -
                      user_info: 'Userless User'
         | 
| 11 | 
            -
                    )
         | 
| 12 | 
            -
             | 
| 13 | 
            -
                    assert_equal('Userless User', reviewer_info(review))
         | 
| 14 | 
            -
                  end
         | 
| 15 | 
            -
                end
         | 
| 16 | 
            -
              end
         | 
| 17 | 
            -
            end
         |