* feat: add needstype filter
* feat: update filters view
* feat: use helper methods for view
* feat: update helper methods, and show managing and owning filters as well in support secondary nav
* refactor: lint
* feat: update helper logic
* feat: update tests
* feat: add needstype test and slight refactor
* refactor: reorganise filter lists
* refactor: erblint
* Always show filter for support, only check visible logs
* Remove needstype for support users on orgs page
---------
Co-authored-by: Kat <katrina@kosiak.co.uk>
* feat: wip commit
* feat: rest of assigned to filter behaviour
* feat: start to update tests
* feat: update tests
* feat: update tests
* refactor: linting
* feat: add new test
* feat: add new test
* feat: update filters_count
* feat: let support users see all users
* feat: let users select users from stock owners/managing agents too
* refactor: typo
* feat: update tests
* Change number validation to allow 0 at the beginning
* Update valid_phone_number?
* Move tests to request
* Make phone required for new users
* Allow + in the numbers
* Feature test
* Move and rename some tests
* Add a merge organisation link
* Add merge page
* Don't display a second nav bar for support
* Fix spacing
* fix spacing and typos
* Validate that the user belongs to either the managing or owning organisation
* do not reset created_by and remove user_organisation_chosen?
* Do not default managing organisation to owning organisation
* validate user belongs to organisation
* update tests to specify created_by
* clear create_by for support users
* refactor
* typo
* rebase lint
* Add `updated_by` to logs to track who was the last person to update a log
- Reset `created_by` automatically when a form is updated and the owner does not belong to the managing or owning organisation
* move reset_invalidated_dependent_fields!, update schema file and fix tests
Co-authored-by: James Rose <james@jbpr.net>
* Add abstract log class and sales log class
Created a parent log class for sales log and lettings log. Any bits common
to both sales and lettings can live in the parent class. As the sales log
functionality is built up any commonalities with lettings log can be extracted
into the parent log class. The sales log model is set up without a json form
and instead the form is defined in code - like the setup section of the lettings
log.
* update sales logs controller
* update lettings controller specs
* update filter method name
* update organisations controller
* use lettings method
* Add deleted tests back
* lint
Co-authored-by: Kat <katrina@madetech.com>
Co-authored-by: Kat <kosiak.katrina@gmail.com>
This renames the case_log to lettings_log as everything we've written so
far has been geared towards lettings of social housing so it makes sense to
have the name describe this. This is also a precursor to adding in stuff for
sales logs (whatever shape that takes)
Co-authored-by: James Rose <james@jbpr.net>
* only stock owning orgs see schemes in nav bar
* lint
* added to organisation factory and fixed tests
* removed schemes from secondary navigation bar for non stock owning orgs
* test
* lint
* remove factory la
* added empty feature for viewing user specific organisation
* refactored contexts in features
* correctly failing feature
* code to have user link
* spec to test we are at correct sub menu for Users
* added view for users view
* edited text to pass remaining tests
* fixed hidde3n field view
* removed hidden field in the table
* correct context
* added extra field to test hidden content
* test TabNavHelper with correct property
* fixed tab highlights
* spec for sub nav logs
* spec for all sub menus
* testing users inside org
* better test for listing users
* all test for search inside org users
* pressing button
* passing feature
* better test with multiple orgs
* almost done
* fixed failing test
* rubocop
* expanded tests
* typo
* selecting subset due to null present in the list as well
Co-authored-by: Ted <ted.booton@madetech.com>
* Get all organisations in controller
* Display organisations data in the table
* Route to logs for specific organisation
* add tests
* update spec
* lint fixes
* set up failing test for organisation logs page
* fix failing test
* write test for organisations support user page
* Update a organisation page test and lint
* added pagination test with next and previous links and total count for support user
* test for pagination in organisations title
* Added "Organisations" to to organisations page title
* add pagination test for organisations page 2, remove second before block
* Add the remaining pagination tests
* Redirect when accessing organisation logs by non support user
* Test for displaying logs for specific organisation
* Add test for org name
* Add a failing log filter test for specific org
* Extract filter methods into a helper
* Allow logs filtering for specific org
* Fix test, support user was creating an extra org, remove orgs filter for specific org
* Remove redundant test, lint
* Reuse primary navigation component and add sub navigation for support users
* allow support users edit or and add sub navigation to about this org
* allow support users to access the edit org page
* only allow to edit existing editable fields
* display correct values in the organisations table
* allow support user to update org
* user table component for organisations table
* use guard clause for organisation logs page
* remove create a new lettings log from organisation logs
* Move case logs filter from helpers to modules
* lint erb
* yarn lint
* bring back if statement in logs controller
* update modules import
* let!
* test for links first in the org cotroller spec
* interpolate number of orgs
* conditionally render sub navigation
Co-authored-by: Kat <katrina@madetech.com>
Co-authored-by: Dushan Despotovic <dushan@madetech.com>
Co-authored-by: JG <moarpheus@gmail.com>
* Confirmable
* Remove obsolete rake task
* Skip confirmation for inactive users
* Send beta onboarding template if migrated from Softwire
* Default controller
* Use correct link
* Redirect confirmation to set password
* Confirm account within 3 days
* Only redirect to set password if not previously set
* Rubocop
* Confirm factory bot users
* Set password condition
* Changing email requires reconfirming
* No need to explicitly trigger email, devise does that for us now
* Remove flash banner
* Mock notify
* Mock in the right spec
* Test redirect and text
* User is confirmable
* Rubocop
* Redirect to url so we don't bypass authenticity token
* Update content
* Add test for resend invite flow
* Update link to resend confirmation email
* Rename password reset resend confirmation partial
* Expired link error page
* Remove resend confirmation link
* Update seed
* Expory contact
* Time zone
Co-authored-by: Paul Robert Lloyd <me+git@paulrobertlloyd.com>
* Clean up user routes
* Make user registerable
* Merge
* Turbo devise strikes again
* URL naming
* Dashes not underscores
* Consistent syntax
* Turning off turbo changes our html
* Update password link not working yet
* New user path
* Password edit path
* Updating password keeps you signed in and redirects to show
* Set new user org
* Write a failing spec for user creation
* Reset user password and redirect back to org users page
* Test redirect
* Use invite template
* Request specs over feature specs
* Add email validation
* Add basic info read page
* Header
* Better org seed
* Use gem component
* Tabs
* Users
* Users is a table rather than a summary list
* Table rows
* User is trackable
* Date format
* View component init
* Add pages and routes to render
* Partials
* Match the prototype design
* Nested layout is nicer
* Except of course they're not the same width
* Add button with wrong link
* Add user routes
* Don't move account route for now
* Add component test
* Rubocop
* Request spec
* Test views
* Add a feature spec for tab switching
* Move styling methods into helper
* PR suggestions
* PR comments