* Correct duplicate error and success messages to user
* Read out all buffer bytes before sending command
* Convert ts3 manager to use a single connection
Each instance of the class will now use a single connection and should
be cleanly disconnected when finished.
Compatible with `with` clauses and will automatically disconnect from
the TS3 server when it exits the `with` block.
* Update TS3 manager consumers to use new style
* Update unit tests to use new style manager
Force bcrypt 2y for PHP apps
2b isn't supported by older versions of PHP supplied by e.g. Ubuntu
14.04. 2a is insecure.
Remove plaintext warning
No services store plaintext passwords anymore.
Switch form to password field
Insecure, but 2b is not supported by IPS4 according to user reports. This manager needs to be changed to use the IPS4 API at some point anyway, so really a stop gap measure.
Will cause Django to fake any initial migrations for tables that already exist. Required as we have moved some tables to other apps.
If the tables don't exist, the initial migrations run as normal.
* Add service access permissions and migration
`ENABLE_AUTH_<servicename> = True` will have the new permission applied
to the settings configured `DEFAULT_AUTH_GROUP` group or `Member` if
none is configured.
`ENABLE_BLUE_<servicename> = True` will have the new permission applied
to the settings configured `DEFAULT_BLUE_GROUP` group or `Blue` if none
is configured.
* Move views and hooks to permissions based access
* Remove access restriction to services view
Hypothetically non-member/blues could be granted permission to access
services manually as desired now. A user that has no permissions to
access any services will see a blank services list.
* Remove obsolete service settings
* Remove references to obsolete settings
* Adjusted tests to support permissions based access
* Fix incorrectly named permissions
* Add simple get_services generator function
* Added signals for user and groups perm changes
* Update validate_services to support permissions
deactivate_services removed as its surplus to requirements.
* Removed state parameter from validate_services calls
* Update tests to support signals changes
* Fix incorrect call to validate_services task
* Fix validate_services and test
* Add validate_user to changed user groups signal
* Added tests for new signals
* Remove unnecessary post_add signals
* Added documentation for service permissions
* Added detection for members with service active
If there are any service users in the Member or Blue groups active, then
the permission will be added to the respective Member or Blue group.
This means its no longer necessary to maintain the service enablesettings to migrate to permissions based service.
Remove obsolete state based status checking
* Correct invalid html
* Add bundle files for CDN CSS and javascript
* Replace static javascript refs with bundles
* Change password reset templates to use a basefile
And switch to use bundles
* Remove third party libraries
* Remove awkward margin styling on navbars
* SeAT service in modular service app format
* Replace string concatenation with formatters
* Fix incorrect references to user
* Fix exception when user doesn't have seat active
* Prevent deletion of seat API keys by default
* Improve api response error handling
* Corrected notification message
* Added missing view returns
* Update SeAT to use permissions based access
* Update password generator to new style
* Correct logging message
* Fix seat role update tasks
* Correct validate user logic
* Add seat test settings
* Added basic seat unit tests
* Added add permissions function from other branch
* Remove obsolete settings references
* Add public field to AuthGroup
* Add permission for users to join non-public groups
By default this permission will be applied to the "Member" group to
maintain the current behaviour.
* Allow users to join public groups
Users without the 'groupmanagement.request_groups' permission will be
able to join groups marked as public but will not be able to see or join
any other groups.
* Prevent None state change from purging groups
Currently when a user drops from Blue or Member state all groups and
permissions are discarded. This softens that approach by not removing
public groups and creates a distinction between the two activities. An
argument could maybe be made for not removing permissions on a state
change, but that is beyond the scope of this change.
* Correct syntax for removing filtered groups
* Add unit tests for disable user and member
* Update services signals tests
* Correct mocking call
* Remove permissions checking from menu item
* Added block for page_title as title fragment
* Add permissions auditing tool
* Added tests for permissions audit tool
* Added documentation for permissions tool
* Add permissions tool to coverage
* Fix and update javascript
Reformatted javascript.
Updated javascript to reduce duplicate code.
* Replace countdown and dateformat with moment
Improves i18n
Fixes#685