* Remove unused bluecloth gem
Last released in 2011. It was only required, never called; kramdown
renders the markdown.
* Add specs for Tilt markdown rendering and posts markdown partial
* Remove rails_12factor gem
Last released in 2014. Rails 5+ does this via RAILS_SERVE_STATIC_FILES
and RAILS_LOG_TO_STDOUT, which production.rb already reads.
* Remove memcachier gem from Gemfile and Gemfile.lock
* Remove unused webrat gem
Last released in 2011. Nothing requires it; the specs use Rails'
assert_select and Capybara matchers. Only generator comments mention it.
* Remove crowdin-cli gem
Last released in 2018. Crowdin now ships its own standalone CLI, which
reads crowdin.yml and doesn't need the gem. Also drops the dependencies
only it used (rest-client, gli, crowdin-api and friends).
* Removes the crowdin-cli gem (last released 2018), the dependencies only
it needed, and crowdin.yml. Crowdin was never set up: the config still
has a placeholder project ID and nothing else in the repo mentions it.
Assisted by Claude
* Remove newsletter functionality and associated views and tests
* Remove newsletter functionality and related code across the application
* keep the column
* Remove stale test step
* add back newsletter
* Add migration to update newsletter column comment in members table
---------
Co-authored-by: Daniel O'Connor <daniel.oconnor@gmail.com>
Automatically fade out flash alert messages 3 seconds after the user begins interacting with content (scroll, touch, click, keydown, focusin). Following UX best practices, the auto-dismiss timer is paused while the user hovers over or focuses inside the alert notification itself.
Co-authored-by: CloCkWeRX <365751+CloCkWeRX@users.noreply.github.com>
Members with photo library access get an "Upload from your device" form
on the new photo page. The browser sends the file straight to storage
with @rails/activestorage, so the app only gets its signed id. The photo
is then created and attached to the garden, planting, job or other item,
like a Flickr photo.
An upload must use one of the library's licences (CC BY-SA 4.0 by
default, CC BY 4.0, CC BY-NC 4.0, CC0), and the member must confirm
they took the photo or may share it. Members without access are pointed
to where they can ask for it.
Assisted by Claude
Pass the planting view URL to ActionsMenu in PlantingChip and accept
an optional href prop in ActionsMenu so middle/ctrl clicks open the
planting view in a new tab.
Co-authored-by: google-labs-jules[bot] <161369871+google-labs-jules[bot]@users.noreply.github.com>
* Add crop_job_step association to Job model and migration
- Introduced a has_many association in CropJobStep for jobs with dependent nullify.
- Added crop_job_step reference to Job model with optional association.
- Created migration to add crop_job_step reference to jobs table with foreign key.
- Updated schema to reflect the new association.
- Added tests for crop_job_step association in Job model.
* Add ApplyCropJobTemplate service and for_crop scope to CropJobTemplate model
* Add job idea dismissal feature and related services
- Introduced JobIdeaDismissal model to manage dismissed job ideas for members.
- Added associations and validations for job idea dismissals in the Member model.
- Created JobIdeas service to generate job ideas based on templates and last year's activities.
- Implemented JobIdeas::LastYear and JobIdeas::Templates classes to fetch relevant job ideas.
- Added migration for job_idea_dismissals table and updated schema.
- Developed tests for job idea dismissal functionality and related services.
* Add PlantedLastYear service and update JobIdeas to include it
* Add action attribute to Job model and update related files
* Refactor JobIdeas service: replace LastYear and PlantedLastYear with PastJobs and PastPlantings; update related specs
* Add community and nearby job ideas sources; implement shown and more methods in JobIdeas service
* Implement job idea dismissal duration and snooze functionality; add hidden_until attribute and related specs
* Add Harvest class to JobIdeas service for managing harvest-related job ideas; implement ideas generation and related specs
* Add JobIdeas feature: implement JobIdeasController, views, and related services for job suggestions; include functionality for adding, hiding, and snoozing job ideas
* Refactor button options in job ideas view for improved readability and maintainability
* Enhance Job Ideas feature: add styling for idea cards, implement filtering options, and update controller logic to manage skipped sources; improve localization for job idea reasons and sections
* Add job ideas count and badge display; implement helper methods and update views for better visibility of job ideas
* Enhance Job Ideas feature: add UI elements for job suggestions, implement schedule display for template jobs, and improve localization; update related specs for new functionality
* Enhance Job Ideas feature: implement overlay for job suggestions, add animations for job transitions, and improve UI components; update controller and helper methods for better handling of job ideas
* Refactor Job Ideas feature: remove badge display and related tests; update UI components for better layout and visibility of job suggestions
* Refactor Jobs view and update specs: improve layout for job groups and enhance test coverage for jobs index with ideas
* Refactor Job Ideas feature: replace dismiss! with hide! method, update job count logic, and enhance UI components for better visibility and layout
* Add job ideas feature: implement ideas banner on homepage, enhance overlay logic, and add tests for job ideas display
* widen the range for suggseting jobs
* Fix comment to accurately describe planted crops timeframe in PastPlantings class
- Add reduced motion support for the notepad snail animation.
- Implement focused control tracking for job list interactions.
- Refactor job transmission logic to ensure sequential processing.
- Update notepad HTML structure for better screen reader compatibility.
- Introduce tests for notepad rendering and accessibility features.
- Update styles for notepad title and job suggestions.
- Modify job suggestions controller to filter by garden plantings.
- Implement interactive suggestions in job notepad for crop linking.
- Add link to view all jobs in the garden's notepad.
- Extend tests for job suggestions in garden context.
- Renamed all instances of 'Activity' to 'Job' in views, controllers, and models.
- Updated routes to reflect the change from activities to jobs.
- Modified database schema to rename the activities table to jobs and adjusted related columns.
- Updated locale files to change activity-related translations to jobs.
- Adjusted tests to ensure they reference jobs instead of activities.
- Removed the category field from jobs as they are now a plain list.
- Updated seed data and sample data generation to create jobs instead of activities.
bootstrap-datepicker 1.10 treats a non-input element as an inline calendar,
so the Mark as finished links never showed a picker. Ask for the dropdown.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
- Implemented `planting_alternate_name.js` to load alternate names for crops in the planting form based on user input.
- Added `tab_navigation.js` to manage tab navigation and update the URL hash accordingly.
Update map rendering in member and place views
- Modified `_map.html.haml` to include a custom marker icon for member maps.
- Updated `index.html.haml` and `show.html.haml` to pass `places_map_data` to the map sections.
Refactor asset management in Rails application
- Removed Sprockets from the application configuration and adjusted asset paths.
- Updated asset precompilation settings and removed deprecated asset configurations from environment files.
- Added new build scripts for CSS and updated package dependencies in `package.json` for Bootstrap, Chart.js, and others.
Ensure React and CSS bundles are built before running tests
- Updated `react_bundle.rb` to check for the existence of both JavaScript and CSS bundles and build them if missing.