* move mobile notifications to a separate backend, remove critical notification * remove outdated mobile app code * MOBILE_APP_PUSH_NOTIFICATIONS_ENABLED -> FEATURE_MOBILE_APP_INTEGRATION_ENABLED * create error log if no devices are set up * move mobile auth related code to the mobile_app Django app * move mobile auth related code to the mobile_app Django app * move mobile auth related code to the mobile_app Django app * fix typing * add GCMDevice todos * add user connection capabilities * add user connect/disconnect to the messaging backend * move APNS endpoint to mobile_app Django app * restore critical notifications * support hackathon app * tweak migrations so mobile app auth tokens are preserved * reuse notify_by IDs * use mobile app template to render push notification * add GCM/FCM (Android) support * fix unlink user * logger.error -> logger.info
25 lines
875 B
Python
25 lines
875 B
Python
from rest_framework import mixins, viewsets
|
|
from rest_framework.permissions import IsAuthenticated
|
|
|
|
from apps.api.serializers.team import TeamSerializer
|
|
from apps.auth_token.auth import PluginAuthentication
|
|
from apps.mobile_app.auth import MobileAppAuthTokenAuthentication
|
|
from apps.user_management.models import Team
|
|
|
|
|
|
class TeamViewSet(mixins.ListModelMixin, viewsets.GenericViewSet):
|
|
authentication_classes = (
|
|
MobileAppAuthTokenAuthentication,
|
|
PluginAuthentication,
|
|
)
|
|
permission_classes = (IsAuthenticated,)
|
|
|
|
serializer_class = TeamSerializer
|
|
|
|
def get_queryset(self):
|
|
teams = list(self.request.user.teams.all())
|
|
|
|
# dirty hack to render "General" team in team select on the frontend
|
|
general_team = Team(public_primary_key=None, name="General", email=None, avatar_url=None)
|
|
|
|
return teams + [general_team]
|