* WIP: Basic work on audit
* WIP: Audit modal works
Need to get the ID search working.
* WIP: Javascript shenanigans for asset audit search
It's not clean but it works..
* Improve audit search bar
Optimise for APM!
* Filter asset audit list by never-audited
* Added cable functionality to audit form
Also improved styling
* FIX: Revert partialising of asset search
* Various UX Improvements
Also rearranged asset detail/edit to be more space efficient
* FIX: Remove assets from to-be-audited table when audited
Previously required a page reload
* Improve sample data generator
Does reversion properly and sets colours for asset statuses
* FIX: Gracefully handle 404s in audit search
* FEAT: Add buttons for some common defaults on audit form
TODO: Partialise those fragments and add them to the edit/create forms too.
* FIX: Fix asset sample data command when run alone
* FEAT: More handy buttons
* FIX: Stop quickbuttons being tab-selected
If someone's tabbing through, they won't be needing the buttons...
* FIX: Hide asset detail buttons for basic users
* FIX: Migrations
* Start tests for audit
* Some deduplication for testing code
* Improve asset audit testing
* Remember to test the tests Arona
* Potentially make modal tests more consistent
* FIX?: Up WebDriverWait timeout for modal tests
* FIX?: What about this way...
* Remake migrations
* Fix README badges to point to right branch
While I'm here eh :P
* Use aware time in audit
* Fix migrations again
* Fix for my fix...
* Modify audit exclusions to properly prevent data loss
* pep eiiiiiight
* Move relevant fields and create migration to autogen cable types
* CRUD and ordering
* FIX: Prevent creating duplicate cable types
* FIX: pep8/remove debug print
* FIX: Meta migrations... :>
* FIX: Update tests to match new UX
* Move cabletype menu links into 'Assets' dropdown
* Fix migration
* Specify version of reportlab
Should fix CI - looks like I went a bit too ham-handed in my requirements.txt purge last time...
* [requires.io] dependency update
* Server starts...
Various things are broken, but it runs!
* [requires.io] dependency update
* [requires.io] dependency update
* [requires.io] dependency update
* FIX: Broken migrations
* FIX: Update auth framework
* FIX: Correct static use in templates
* FIX: Fix supplier sort
* FIX: Remaining tests
* Revert "Disable password reset as temporary fix to vulnerability (#396)"
This reverts commit e0c6a56263.
# Conflicts:
# RIGS/urls.py
* FIX: Fix broken newlining in PDFs
Introduced by a change in Django 2.1 'HTML rendered by form widgets no longer includes a closing slash on void elements, e.g. <br>. This is incompatible within XHTML, although some widgets already used aspects of HTML5 such as boolean attributes.'
* FIX: Fix some Django4 deprecation warnings
Why not...
* Refactor dependency file
Should now only include dependencies we actually use, not dependencies of dependencies and unused things
* Add newlines to the paperwork print test event
This will catch the error encountered in 79ec9214f9
* Swap to pycodestyle rather than pep8 in Travis
And eliminate W605 errors
* Bit too heavy handed with the dep purge there...
* Whoops, helps if one installs pycodestyle...
* FIX: Re-add overridden login view
* Better fix for previous commit
* FIX: Bloody smartquotes
Co-authored-by: requires.io <support@requires.io>
* Added search to person, venue, organisation and event archive
* Added search to invoice archive
* Added event search to homepage
* Tidy up event search logic and optimise
* Fixed merge issues
* Stopped 404 on failed search
* Set default ordering of people, organisations & venues to alphabetical (rather than order of addition to database)
* Added invoice search to home page (if you have permissions)
* Made invoice archive sort by reverse invoice date (rather than order added to database)
* Added search help page (very pretty)
* Made single search box for all search types
* FIX: Missing date field breaking archive view
* FEAT: Add omnisearch to header
Tis a bit broken on mobile at the moment...
* CHORE: Conform old code to pep8
* FIX: Select the event form, not the search one in tests!
* Revert "FEAT: Add omnisearch to header"
This reverts commit 6bcb242d6b because it caused MANY more problems than anticipated...
* FIX: Stop 404 on failed search, again
* FEAT: Basic testing of search
* Use a tooltip to help explain the UX
Obviously since it needs a tooltip it isn't brilliant UX but the best I can think of for now...
Co-authored-by: Tom Price <tom@codedinternet.com>
Co-authored-by: David Taylor <david@taylorhq.com>
Co-authored-by: Arona Jones <aj@aronajones.com>
* CHANGE: First pass at opening up RIGS #233
Whilst it makes it something of a misnomer, the intent is to make the 'view_event' perm a permission to view event details like client/price. I don't see the point in giving everyone 'view_event' and adding a new 'view_event_detail'...Open to arguments the other way.
* CHANGE: New user signups now require admin approval
Given that I intend to reveal much more data to new users this seems necessary...
* CHORE: Fix CI
* FIX: Legacy Profiles are now auto-approved correctly
* Add testing of approval mechanism
This fixes the other functional tests failing because the user cannot login without being approved.
* Superusers bypass approval check
This should fix the remainder of the tests
* Prevent unapproved users logging in through embeds
Test suite doing its job...!
* FIX: Require login on events and event embeds again
Little too far to the open side there Arona... Whooooooops!
* FIX: Use has_oembed decorator for events
* FIX: Re-prevent basic seeing reversion
This is to prevent financials/client data leaking when changed. Hopefully can show them a filtered version in future.
* FIX: Remove mitigation for #264
Someone quietly fixed it, it appears
* FEAT: Add admin email notif when an account is activated and awaiting approval
No async or time-since shenanigans yet!
* FIX: Whoops, undo accidental whitespace change
* FEAT: Add a fifteen min cooldown between emails to admins
Probably not the right way to go about it...but it does work!
TODO: How to handle cooldown-emailing shared mailbox addresses?
* FIX: Remove event modal history deadlink for basic users
Also removes some links on the RIGS homepage that will deadlink for them
* FIX: Wrong perms syntax for history pages
* CHORE: Squash migrations
* FIX: Use a setting for cooldown
* FIX: Minor code improvements
* Started POM and assets test
* FEAT: Adapt unit tests from RIGS to assets
* CHORE: pep8...
* Added Asset Create and Edit forms
* Add non-cable asset creation test
* CHORE: Frickin pep8...
* Add cable asset creation test
* Basic asset create validation testing
* Asset edit tests are here
A bit dodgy in places but par for the course for me :P
* Add access level tests
* Delete unused code
Much less effort way to increase coverage stats :D
* Add delete sample data test for completeness
Chasing that sweet 100% coverage...
* Add supplier list page + tests
Also fix the supplier page not being ordered alphabetically
* Helps if I add the migration...
* Add supplier create/edit tests
* Asset duplicate tests
Also fixed some random bugs
* Asset search tests
* 404 tests and test that everything requires authentication
* Test visibility of form errors
And fix supplier form not displaying errors correctly!
* Fix broken search test
Co-authored-by: Matthew Smith <mattysmith22@googlemail.com>
Squashed commit messages below:
Also...
FIX: Person selection workflow in tests now works
FIX: Properly test name requirement in rig creation
And removed the dirty workaround for wercker so that the test no longer passes when it shouldn't. Which led to this mess of attempted fixes, now squashed:
Fine. Hardball.
What about if we click the button a different way...
Disable whole chunk of the test that was previously getting skipped
Perhaps you'd like to pass now Travis
Temporarily disable the offending part of the test.
Something odd is going on...TBC.
Reorder some selenium commands to try and fix test only failing on CI.
Another attempt at a CI test fix
FIX: Should fix rig create test failing on CI
* FEAT: Add oembed for assets
Don't see the worth in doing supplier currently...we don't OEmbed Org/Venue etc after all...
* FIX Copy paste error ;D
* Fix embeds not actually working for unauthenticated users
This is why I should have written tests...
I prevented them from seeing the change stream, didn't prevent them seeing individual histories. This has to be done as otherwise it leaks financial information. If I can be arsed I'll come back to this and allow basic users to see a filtered version.
* FIX#388: Prevent assets losing supplier data on edit
* FEAT: Add associated assets to supplier detail view
* FIX: Tweak supplier list to make detail view accessible
* Potential fix for #380
No idea if it works because I can't reproduce locally. S/O Reckons it should... :P
* FEAT #386: Asset search searches serial number.
Pending addition of advanced search.
* FIX: Order asset categories/statuses alphabetically
Instead of by pk because that's silly.
* FEAT: Statuses can have a CSS class defined in the admin panel
This replaces the hardcoding of colours in the asset list.
* FIX: Squash migrations
* Fixed supplier not working on all the create asset template
* Refactored away "assets" property on "Supplier" by using "related_name" instead
Co-authored-by: Matthew Smith <mattysmith22@googlemail.com>
* FEAT: Initial work on revision history for assets
The revision history for individual items mostly works, though it shows database ID where it should show asset ID. Recent changes feed isn't yet done.
* FEAT: Initial implementation of asset activity stream
* CHORE: Fix pep8
* FIX: Asset history table 'branding'
* FIX: Individual asset version history is now correctly filtered
* FEAT: Make revision history for suppliers accessible
* CHORE: *sings* And a pep8 in a broken tree...
* Refactored out duplicated code from `AssetVersionHistory
* CHORE: pep8
And another random bit of wierd whitespace I found
Co-authored-by: Matthew Smith <mattysmith22@googlemail.com>
Closes#358
Fingers crossed this works I don't have the actual data locally... I know I'm making a mess but needs must.
I genuinely hate whoever decided prefixes were a good idea now.
* FIX: Remove misleading admin site title
* Moved across assets_id sorting to use proper numeric values. Also mofifies SQL command to find free asset IDs so that it works on postgres.
* Changed generateSampleAssetsData.py to include prefices on some cables.
* Fixed pep8
* Fixed missed migration
* Ensured hidden asset fields are completed on every database write
* CMULTI is a thing, and therefore a max prefix length of 5 cannot be a thing
This fixes keyholders being unable to see financials information or create assets. (Well, the latter needs anyone to be able to create assets before it is fully fixed)