* feat: use latest merge date/start date where available for availability text for schemes and locations
* feat: add tests for availability text
* feat: use startdate instead to track merges on schemes and locations
* feat: test startdates are set correctly on merged schemes and locations
* feat: add migration file
* feat: add scheme activating soon tests
* feat: add activating soon to scheme filtering
* feat: update scheme active_status
* feat: update tests
* refactor: lint
* feat: move merge orgs validation after orgs validation
* feat: update schema
* CLDC-2812: update app config to run from relative root
* Deploy to staging on pushes to branch
* Add action mailer relative root config for review envs
* Temporary pipeline to deploy this branch for testing
* Update aws deploy pipeline to allow different prefixes for roles and tasks
* Prepare database when deploying review apps
* Update app nav and sentry to take account of relative root
* Update more fixed paths
* Update header root link path
* Rack attack path
* Revert "Deploy to staging on pushes to branch"
This reverts commit b05f13d474.
* Start updating workflows
* Update teardown pipeline to drop database
* Ensure destroy infra step runs after drop database
* Remove user_password_path because it can't be found
* Don't override path helpers in navigation items helper tests
* Checkout infra code to run workflow
* Try separating workflow call to job
* Sync with infra repo updates
* Use workflow on dev
* Don't trigger on push to branch
* Avoid rack attack path helper issue
* Update review apps teardown pipeline
* Update infra repo reference to main
* Fix linting
* Fix /logs redirect
* Fix lettings_logs_current and sales_logs_current checks in navigation items helper
* Fix existing bug in schemes nav item highlighting
* Use starts with rather than == in logs nav items current checks
* Split off non-support schemes current nav item checks
---------
Co-authored-by: Sam Seed <sam.seed@softwire.com>
* feat: only show editable duplicate sets for user and org
* feat: simplify and refactor
* feat: update tests
* feat: add and update tests
* feat: reset not routed questions twice to catch newly not routed questions after the first set are cleared
* Revert "feat: reset not routed questions twice to catch newly not routed questions after the first set are cleared"
This reverts commit 3007284670.
* TEST FOR PO TO BE REVERTED
* TEST FOR PO TO BE REVERTED (set back to dec 31)
* TEST UPDATE TESTS
* REVERT THIS TEST UPDATE
* REVERT THIS TEST UPDATE
* feat: timecop tests
* refactor: lint
* feat: add update methods
* feat: update tests (and TO BE REVERTED: change collection year)
* feat: update tests
* feat: update tests
* feat: update form end_date tests REVERT LATER
* feat: update tests
* refactor: lint
* feat: revert to previous end dates now passed PO review
* feat: use scoping to simplify editable set logic
* feat: reset not routed questions twice to catch newly not routed questions after the first set are cleared
* feat: only clear newly not routed answers on second pass
* refactor: lint
* refactor: renaming
* feat: add tests
* CLDC-2863: rename maintenance_mode_enabled? to service_unavailable?
* CLDC-2863: update 'maintenance' to 'service unavailable' in tests
* CLDC-2863: rename check_maintenance to check_maintenance_status
* CLDC-2863: implement service_moved functionality
* CLDC-2863: add tests for service_moved functionality
* CLDC-2863: add tests for when both feature toggles are on
* CLDC-2863: remove full stop from service moved page title
* CLDC-2863: turn on service moved feature
* CLDC-2863: turn off service moved feature
* feat: match locations/schemes with leading zeroes in bulk upload
* refactor: lint
* feat: also allow user to input extra leading zeroes and test
* refactor: lint
* feat: match email regardless of casing in bulk upload
* feat: allow null emails
* feat: set encoding by bom for file IO before parsing
* Revert "feat: set encoding by bom for file IO before parsing"
This reverts commit 03d2d17e7b.
* feat: set encoding by bom for file IO before parsing
* feat: set bom encoding for illness task as well
* feat: use StringIOs in testing and fix row count bug found
* feat: revert toheaders: false
* feat: timecop around tests
* feat: timecop around tests
* feat: fix flaky merge test
* feat: skip over logs that fail validations
* feat: test error added correctly and fix typo
* CLDC-2862: first attempt at creating maintenance page
* CLDC-2907: try turning off maintenance mode to see if tests pass
* CLDC-2862: write tests for MaintenanceController
* CLDC-2862: test header bar links hidden in maintenance mode
* CLDC-2862: lint
* CLDC-2862: add requests tests
* CLDC-2862: try disabling schduled job in maintenance mode
* CLDC-2862: turn on maintenance mode temporarily
* CLDC-2862: turn off maintenance mode again
* CLDC-2862: ensure cookies, notices etc still available in maintenance mode
* CLDC-2862: update content on maintenance page
* CLDC-2862: destroy sidekiq cron jobs on shutdown
* CLDC-2862: turn maintenance mode back on
* CLDC-2862: try destroying cron jobs on startup
* CLDC-2862: try destroying cron jobs on shutdown again, but with fix
* CLDC-2862: turn maintenance mode off again
* CLDC-2862: move job destruction to sidekiq server startup
* CLDC-2862: turn MM back on
* CLDC-2862: turn MM off again
* CLDC-2862: update 'contact the helpdesk' content
* CLDC-2862: check notices/statements still viewable in MM
* CLDC-2862: check cookies page still viewable in MM
* CLDC-2862: confirm cookie banner visible regardless of MM
* CLDC-2862: reenable MM
* CLDC-2862: turn maintenance mode off again
* feat: set encoding by bom for file IO before parsing
* feat: set bom encoding for illness task as well
* feat: use StringIOs in testing and fix row count bug found
* feat: revert toheaders: false
* feat: timecop around tests
* feat: timecop around tests
* feat: fix flaky merge test
* feat: set encoding by bom for file IO before parsing
* feat: set bom encoding for illness task as well
* feat: use StringIOs in testing and fix row count bug found
* feat: revert toheaders: false
* feat: don't add old_id to new location as there is a uniqueness constraint on this attribute
* feat: don't add old_id to new scheme for consistency
* feat: update tests
* feat: don't validate on log save so they can be added to new orgs without dsas during a merge, and test
* refactor: lint
* feat: remove old_visible_id from post merge schemes/locations so they aren't searchable in bulk upload
* feat: update tests
* feat: update tests
* feat: don't add old_id to new location as there is a uniqueness constraint on this attribute
* feat: don't add old_id to new scheme for consistency
* feat: update tests
* feat: unrelated html fix
* feat: add period to rent range soft vals for 22/23 and 23/24
* feat: update tests
* feat: move period after brent in soft validation page
* Allow custom merge date in merge organisations service
* Allow optional merge date in merge orgs task
* Add a rake task for merging into a new organinsation
* CLDC-2895 Add squish to the names of locations, schemes, users, and institutions
* CLDC-2895 Add rake task to squish the names of all locations, schemes, users, and organisations
* CLDC-2895 Add tests to squish_names rake tasks