2977 Commits

Author SHA1 Message Date
Adarnof
a630b5b397 Migrate to adarnauth-esi 2016-12-11 20:11:05 -05:00
Basraah
721708ee16 Add ordering to group member list 2016-12-08 12:50:45 +10:00
Basraah
4dabb3198d Merge branch 'group-membership' into group-refactor 2016-12-06 20:20:43 +10:00
Basraah
c0ca73f9ea Added info log when a user removes someone from a group 2016-12-06 20:18:13 +10:00
Basraah
83b62525eb Added support for group leaders to manage groups 2016-12-05 21:49:12 +10:00
Basraah
9eba5607d2 Consolidate member state checking for easier code reuse 2016-12-05 20:42:47 +10:00
Basraah
5fb64d8c06 Switched to use navactive for menu highlighting 2016-12-05 14:35:08 +10:00
Basraah
ed461d9e7a Add blankable fields 2016-12-04 23:41:26 +10:00
Basraah
bf345361b2 Refactor Group extension models into a single OneToOne model
Added group leader field
2016-12-04 23:05:04 +10:00
Basraah
648753a68a Prevent users requesting or leaving non-joinable groups
I have not prevented users joining hidden groups however, as
there may be some use cases where the direct link is provided
for users to request access to the group.

Also prevent users generating leave requests for groups they
are not a member of.
2016-12-04 13:02:25 +10:00
Basraah
42def30c91 Include requestable groups other than open 2016-12-04 09:21:43 +10:00
Basraah
25dadf81f6 Add open/hidden group membership display and remove 2016-12-03 21:45:55 +10:00
Adarnof
961b26a3cb default main char to current char if no user set 2016-11-25 11:14:19 -05:00
Adarnof
9db94e0ac8 correct corp stat display for user-less chars
As a result of api key sso validation, character models can be created without assigning a user. If this occurs and a user attempts to view that character's corp stats, the view is unable to determine a main character due to a not null constraing on the authservicesinfo user field. This checks to see if the character has an associated user, and if not, does not check for associated main characters.

Closes an issue @trustmeimlumi never opened.
2016-11-24 17:53:54 -05:00
Basraah
2dd75b5100 Switched styling to warning, added tooltip 2016-11-24 10:56:36 +10:00
Basraah
eb6d7e9d9a Improve layout on small display resolutions 2016-11-23 22:35:08 +10:00
Basraah
1c4d2533b1 Replace API key management w/ ported profile page
Shows characters on each API key, main character, API key
status and the user groups.
2016-11-23 21:17:44 +10:00
Adarnof
f0a3df5659 correct typo preventing disabling of discourse 2016-11-19 15:13:07 -05:00
Adarnof
666490c169 correct celery start commands 2016-11-13 19:34:52 -05:00
Adarnof
b651ebed87 Discord bot requests administrator role.
Seeing as Discord can't get their roles system to work over the API, this is our only choice.
Closes #569
2016-11-13 17:18:26 -05:00
Adarnof
ea4fd12996 Respect max notification count for logging notifications.
Use a Q query to identify users for logging notifications. Should be much faster.
http://stackoverflow.com/questions/378303/how-to-get-a-list-of-all-users-with-a-specific-permission-group-in-django

Closes #576
2016-11-13 17:11:24 -05:00
Adarnof
97743cfe16 Prevent admin error when EveCharacter has no assigned user. 2016-11-13 16:51:15 -05:00
Adarnof
b4dc624b17 Correctly throw ApiInvalidError when API key deleted (222)
Do not assume keys are invalid on unrecognized codes.
Closes #574
2016-11-05 20:47:51 -04:00
Adarnof
ff5055f151 Prevent simultaneous execution of multiple group update tasks.
Prevents multiple group creation on services using group caching.
2016-11-05 16:58:23 -04:00
Basraah
dc4b4bbdf5 Wait until transaction completes to call group syncs (#571)
Prevents syncing of old groups when celery workers execute faster than db transactions can be completed.
2016-11-02 20:28:20 -04:00
Basraah
2d3055480c Fix users cannot delete mumble account (#567)
Added helper method for checking a user exists
Added a check for already deleted mumble accounts
2016-11-01 23:25:55 -04:00
Adarnof
98e1689aab Record API SSO status (#568)
Added sso_verified flag to EveApiKeyPair
Set sso_verified flag when user validates API key
Allow users to SSO validate existing API keys
2016-11-01 23:22:15 -04:00
Adarnof
e77c162fa0 API SSO, Beautification of Tables, and more. (#562)
# One Thousandth Commit 🎉 🎈 🎆 🍾

* Allow requiring API ownership validation by SSO.
Closes #163

* Add Discourse group name length restrictions.

* Redirect after api addition/deletion of main character

* Correct admin searching for removed discourse_username field in AuthServicesInfo

* Correct admin function to sync user Discourse groups

* Beautify tables by removing borders and hiding when empty.

*Add buttons on dead-end pages to return to originating view.
2016-10-27 23:28:00 -04:00
Adarnof
4ea7fdeaf2 Correct corputils permission handling around API display.
Now allows users with corp_apis permission to see some APIs when searching, if result is in corp.
Correct type mismatch when determining if user with corp_apis can see member list.
Correctly pull EveWho memberlist in corp mode when API missing from settings.py
Closes #552
2016-10-26 01:03:15 +00:00
Adarnof
f9dd03dc0f Handle NoneType iteration errors on empty fleetup result.
Closes #558
2016-10-26 00:24:45 +00:00
Adarnof
6d2036e84b Prevent errors when deleting users before joining TS3
Closes #554
2016-10-25 22:08:28 +00:00
Adarnof
00341f8a50 Delay new Discourse user group sync to allow request to complete.
Ensures Discourse creates user model to avoid 404s when calling API.
2016-10-25 21:59:58 +00:00
Adarnof
5ee65706cb Correct discourse login for non-superusers.
Correct TS3 error handling.
Closes #554
2016-10-25 21:12:23 +00:00
Adarnof
4ff21b25c3 Discourse SSO (#560)
* Alter Discourse support to act as SSO provider.
Correct service group sync retry queueing.

* Correct default database enviroment variable names.

* Redirect to requested page after succesful login.

* Correct default redirect handling.
Correct attribute used to logout users on Discourse.
Improve logging messages to use parsed path on Discourse.

* Correct task retry syntax using bind=True.
Inherit from base exception so can catch TeamspeakErrors.
2016-10-25 14:52:12 -04:00
Adarnof
1daf77709d Abort API refresh when API servers unreachable.
Sorry aboot today.
2016-10-21 20:39:00 -04:00
Adarnof
bba36d9ae0 Correct disable_market to not require external DB call 2016-10-21 13:47:29 +00:00
Adarnof
04a11b113a Correct missing request arg for messages.
Correct disable_service tasks to remove password check.
Addresses #557
2016-10-21 13:04:05 +00:00
Adarnof
deb94c06fd prevent error being raised on OK empty response
closes #554
2016-10-18 13:45:15 -04:00
Adarnof
e242b8cfec correct dict unpacking of escape characters
closes #554
2016-10-18 13:16:17 -04:00
Sebastian
3704586ec9 changed user to allianceserver at supervisor templates. (#553)
* changed user to allianceserver at supervisor templates. this fixes supervisor: couldn't chdir to...

* deleted unnecessary row for discord
2016-10-18 10:33:11 -04:00
Adarnof
90d88c4598 avoid keyerror when determining groups to remove 2016-10-18 00:43:28 -04:00
Adarnof
f3d1fc87b2 Update views.py 2016-10-17 20:21:22 -04:00
Adarnof
31d454b1d2 include missing request args for messages 2016-10-17 19:59:39 -04:00
Adarnof
a14c90fd6d Remove old admin staticfiles
Closes #551
2016-10-17 09:55:14 -04:00
Adarnof
d6a522300a import EveManager
closes #550
2016-10-17 09:08:43 -04:00
Adarnof
1b4f5e4e88 Adarnof's Little Things (#547)
* Port to Django 1.10
Initial migrations for current states of all models. Requires faking to retain data.
Removed all references to render_to_response, replacing with render shortcut.
Same for HttpResponseRedirect to render shortcut.
Corrected notification signal import to wait for app registry to finish loading.

* Correct typos from render conversion

* Modify models to suppress Django field warnings

* Script for automatic database conversion
 - fakes initial migrations to preserve data
Include LOGIN_URL setting

* Correct context processor import typo

* Removed pathfinder support.
Current pathfinder versions require SSO, not APIs added to database.
Conditionally load additional database definitions only if services are enabled.
Prevents errors when running auth without creating all possible databases.

* Condense context processors

* Include Django 1.10 installation in migrate script
Remove syncdb/evolve, replace with migrate for update script

* Replaced member/blue perms with user state system
Removed sigtracker
Initial migrations for default perms and groups
Removed perm bootstrapping on first run

* Clean up services list

* Remove fleet fittings page

* Provide action feedback via django messaging
Display unread notification count
Correct left navbar alignment

* Stop storing service passwords.
Provide them one time upon activation or reset.
Closes #177

* Add group sync buttons to admin site
Allow searcing of AuthServicesInfo models
Display user main character

* Correct button CSS to remove underlines on hover

* Added bulk actions to notifications
Altered notification default ordering

* Centralize API key validation.
Remove unused error count on API key model.
Restructure API key refresh task to queue all keys per user and await completion.
Closes #350

* Example configuration files for supervisor.
Copy to /etc/supervisor/conf.d and restart to take effect.
Closes #521
Closes #266

* Pre-save receiver for member/blue state switching
Removed is_blue field
Added link to admin site

* Remove all hardcoded URLs from views and templates
Correct missing render arguments
Closes #540

* Correct celeryd process directory

* Migration to automatically set user states.
Runs instead of waiting for next API refresh cycle. Should make the transition much easier.

* Verify service accounts accessible to member state

* Restructure project to remove unnecessary apps.
(celerytask, util, portal, registraion apps)
Added workarounds for python 3 compatibility.

* Correct python2 compatibility

* Check services against state being changed to

* Python3 compatibility fixes

* Relocate x2bool py3 fix

* SSO integration for logging in to existing accounts.

* Add missing url names for fleetup reverse

* Sanitize groupnames before syncing.

* Correct trailing slash preventing url resolution

* Alter group name sanitization to allow periods and hyphens

* Correct state check on pre_save model for corp/alliance group assignment

* Remove sigtracker table from old dbs to allow user deletion

* Include missing celery configuration

* Teamspeak error handling

* Prevent celery worker deadlock on async group result wait

* Correct active navbar links for translated urls.
Correct corp status url resolution for some links.
Remove DiscordAuthToken model.
2016-10-16 18:01:14 -04:00
Adarnof
56136d050a correct type mismatch on ID comparison
Closes #350
2016-09-11 15:39:17 -04:00
moriartyj
812268211c Added Discord nickname syncing with EVE alliance character name (#525) 2016-09-03 23:13:54 -04:00
Adarnof
c382b0fd1f Include market in deactivate_services 2016-08-17 13:42:16 -04:00
Adarnof
b0c41598cf limit usernames to 30 characters 2016-08-10 18:40:06 -04:00