From d95ffdbef621c2cb6bd278f82518f18c7819e706 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 15 Sep 2025 07:38:14 +0000 Subject: [PATCH 001/335] Bump puma from 7.0.2 to 7.0.3 Bumps [puma](https://github.com/puma/puma) from 7.0.2 to 7.0.3. - [Release notes](https://github.com/puma/puma/releases) - [Changelog](https://github.com/puma/puma/blob/master/History.md) - [Commits](https://github.com/puma/puma/compare/v7.0.2...v7.0.3) --- updated-dependencies: - dependency-name: puma dependency-version: 7.0.3 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- Gemfile.lock | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Gemfile.lock b/Gemfile.lock index 41f0f1878..85ddd9d7a 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -475,7 +475,7 @@ GEM date stringio public_suffix (6.0.1) - puma (7.0.2) + puma (7.0.3) nio4r (~> 2.0) query_diet (0.7.2) racc (1.8.1) From 64acd4c00c8aa4ecd56f927e655babc24f49c7c3 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 16 Sep 2025 07:01:15 +0000 Subject: [PATCH 002/335] Bump active_utils from 3.5.0 to 3.6.0 Bumps [active_utils](https://github.com/shopify/active_utils) from 3.5.0 to 3.6.0. - [Release notes](https://github.com/shopify/active_utils/releases) - [Changelog](https://github.com/Shopify/active_utils/blob/main/CHANGELOG.md) - [Commits](https://github.com/shopify/active_utils/compare/v3.5.0...v3.6.0) --- updated-dependencies: - dependency-name: active_utils dependency-version: 3.6.0 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- Gemfile.lock | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Gemfile.lock b/Gemfile.lock index 41f0f1878..d74724666 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -84,7 +84,7 @@ GEM activesupport (>= 7.1) active_record_union (1.3.0) activerecord (>= 4.0) - active_utils (3.5.0) + active_utils (3.6.0) activesupport (>= 4.2) i18n activejob (7.2.2.2) From aa7641ad916f1fd388ba7ccdfecb50b421461607 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 17 Sep 2025 19:11:30 +0000 Subject: [PATCH 003/335] Bump rexml from 3.4.1 to 3.4.2 Bumps [rexml](https://github.com/ruby/rexml) from 3.4.1 to 3.4.2. - [Release notes](https://github.com/ruby/rexml/releases) - [Changelog](https://github.com/ruby/rexml/blob/master/NEWS.md) - [Commits](https://github.com/ruby/rexml/compare/v3.4.1...v3.4.2) --- updated-dependencies: - dependency-name: rexml dependency-version: 3.4.2 dependency-type: indirect ... Signed-off-by: dependabot[bot] --- Gemfile.lock | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Gemfile.lock b/Gemfile.lock index 41f0f1878..f0fec698f 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -557,7 +557,7 @@ GEM http-cookie (>= 1.0.2, < 2.0) mime-types (>= 1.16, < 4.0) netrc (~> 0.8) - rexml (3.4.1) + rexml (3.4.2) rouge (4.1.2) rspec (3.13.0) rspec-core (~> 3.13.0) From 600e61a28269e0c4c263a77080e189f99370e411 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 18 Sep 2025 07:01:16 +0000 Subject: [PATCH 004/335] Bump recaptcha from 5.20.1 to 5.21.1 Bumps [recaptcha](https://github.com/ambethia/recaptcha) from 5.20.1 to 5.21.1. - [Changelog](https://github.com/ambethia/recaptcha/blob/master/CHANGELOG.md) - [Commits](https://github.com/ambethia/recaptcha/compare/v5.20.1...v5.21.1) --- updated-dependencies: - dependency-name: recaptcha dependency-version: 5.21.1 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- Gemfile.lock | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Gemfile.lock b/Gemfile.lock index 41f0f1878..2de53f1cd 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -543,7 +543,7 @@ GEM rdoc (6.14.2) erb psych (>= 4.0.0) - recaptcha (5.20.1) + recaptcha (5.21.1) redis-client (0.23.2) connection_pool regexp_parser (2.11.2) From 5db6a86607b074a7c6f62cba19576eaf403de70d Mon Sep 17 00:00:00 2001 From: "google-labs-jules[bot]" <161369871+google-labs-jules[bot]@users.noreply.github.com> Date: Sat, 20 Sep 2025 08:54:12 +0000 Subject: [PATCH 005/335] Add ability to copy/duplicate an activity --- app/controllers/activities_controller.rb | 2 ++ app/helpers/buttons_helper.rb | 13 +++++++++++++ app/helpers/icons_helper.rb | 4 ++++ app/views/activities/_actions.haml | 1 + config/locales/en.yml | 1 + 5 files changed, 21 insertions(+) diff --git a/app/controllers/activities_controller.rb b/app/controllers/activities_controller.rb index 3cb447def..3d72ed439 100644 --- a/app/controllers/activities_controller.rb +++ b/app/controllers/activities_controller.rb @@ -33,6 +33,8 @@ class ActivitiesController < DataController due_date: Date.today ) @activity.name = params[:name] if params[:name] + @activity.description = params[:description] if params[:description] + @activity.category = params[:category] if params[:category] @activity.due_date = params[:due_date] if params[:due_date] if params[:garden_id] @activity.garden = Garden.find_by( diff --git a/app/helpers/buttons_helper.rb b/app/helpers/buttons_helper.rb index ac929f711..2d214dea2 100644 --- a/app/helpers/buttons_helper.rb +++ b/app/helpers/buttons_helper.rb @@ -88,6 +88,19 @@ module ButtonsHelper edit_button(edit_activity_path(activity), classes:) end + def activity_copy_button(activity, classes: 'btn') + link_to new_activity_path( + name: activity.name, + description: activity.description, + category: activity.category, + garden_id: activity.garden_id, + planting_id: activity.planting_id, + due_date: activity.due_date + ), class: classes do + copy_icon + ' ' + t('buttons.copy') + end + end + def activity_finish_button(activity, classes: 'btn btn-default btn-secondary') return unless can?(:edit, activity) || activity.finished diff --git a/app/helpers/icons_helper.rb b/app/helpers/icons_helper.rb index 71721ef04..80c118d00 100644 --- a/app/helpers/icons_helper.rb +++ b/app/helpers/icons_helper.rb @@ -59,6 +59,10 @@ module IconsHelper image_icon 'delete' end + def copy_icon + icon('far', 'copy') + end + def add_photo_icon image_icon 'add-photo' end diff --git a/app/views/activities/_actions.haml b/app/views/activities/_actions.haml index 1631b7042..c87a01625 100644 --- a/app/views/activities/_actions.haml +++ b/app/views/activities/_actions.haml @@ -3,6 +3,7 @@ %a#activity-actions-button.btn.btn-info.dropdown-toggle{"aria-expanded" => "false", "aria-haspopup" => "true", "data-bs-toggle" => "dropdown", type: "button", href: '#'} Actions .dropdown-menu.dropdown-menu-xs{"aria-labelledby" => "planting-actions-button"} = activity_edit_button(activity, classes: 'dropdown-item') + = activity_copy_button(activity, classes: 'dropdown-item') - if activity.active = activity_finish_button(activity, classes: 'dropdown-item') .dropdown-divider diff --git a/config/locales/en.yml b/config/locales/en.yml index d0c1adc4d..56680c272 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -72,6 +72,7 @@ en: add: Add add_photo: Add photo add_seed_to_stash: Add %{crop_name} seeds to stash + copy: Copy delete: Delete edit: Edit harvest: Harvest From 54acc369abc910e90d47cae8c75cdb498fec86c2 Mon Sep 17 00:00:00 2001 From: Daniel O'Connor Date: Sat, 20 Sep 2025 09:43:22 +0000 Subject: [PATCH 006/335] Rubocop --- app/controllers/activities_controller.rb | 18 ++++++++---------- app/controllers/plantings_controller.rb | 8 +++----- app/helpers/auto_suggest_helper.rb | 2 +- app/helpers/event_helper.rb | 4 ++-- app/models/forum.rb | 1 + app/models/garden_type.rb | 1 + app/models/member.rb | 9 ++++++--- app/models/plant_part.rb | 1 + app/models/role.rb | 1 + app/models/seed.rb | 3 ++- app/resources/base_resource.rb | 2 +- 11 files changed, 27 insertions(+), 23 deletions(-) diff --git a/app/controllers/activities_controller.rb b/app/controllers/activities_controller.rb index 3d72ed439..84f676873 100644 --- a/app/controllers/activities_controller.rb +++ b/app/controllers/activities_controller.rb @@ -67,16 +67,14 @@ class ActivitiesController < DataController end def update - if @activity.update(activity_params) - if activity_params[:finished].present? - link = new_activity_path( - name: @activity.name, - garden_id: @activity.garden_id, - planting_id: @activity.planting_id, - due_date: 2.weeks.from_now.to_date - ) - flash[:notice] = t('activities.finished_prompt_html', link: link).html_safe - end + if @activity.update(activity_params) && activity_params[:finished].present? + link = new_activity_path( + name: @activity.name, + garden_id: @activity.garden_id, + planting_id: @activity.planting_id, + due_date: 2.weeks.from_now.to_date + ) + flash[:notice] = t('activities.finished_prompt_html', link: link).html_safe end respond_with @activity end diff --git a/app/controllers/plantings_controller.rb b/app/controllers/plantings_controller.rb index 8e6228163..78cfc88d3 100644 --- a/app/controllers/plantings_controller.rb +++ b/app/controllers/plantings_controller.rb @@ -83,11 +83,9 @@ class PlantingsController < DataController end def update - if @planting.update(planting_params) - if planting_params[:finished].present? && @planting.garden.plantings.current.empty? - link = new_activity_path(name: 'Cultivate soil', garden_id: @planting.garden_id) - flash[:notice] = t('plantings.finished_prompt_html', link: link).html_safe - end + if @planting.update(planting_params) && planting_params[:finished].present? && @planting.garden.plantings.current.empty? + link = new_activity_path(name: 'Cultivate soil', garden_id: @planting.garden_id) + flash[:notice] = t('plantings.finished_prompt_html', link: link).html_safe end respond_with @planting end diff --git a/app/helpers/auto_suggest_helper.rb b/app/helpers/auto_suggest_helper.rb index ff0558ef2..9cc75107d 100644 --- a/app/helpers/auto_suggest_helper.rb +++ b/app/helpers/auto_suggest_helper.rb @@ -13,7 +13,7 @@ module AutoSuggestHelper resource = resource.class.name.downcase source_path = Rails.application.routes.url_helpers.send("search_#{source}s_path", format: :json) %( -