def _get_queryset(self): user = self.request.user if is_internal(self.request): return Organisation.objects.all() elif is_customer(self.request): return user.commercialoperator_organisations.all() return Organisation.objects.none()
def get(self, *args, **kwargs): if self.request.user.is_authenticated(): if is_internal(self.request): return redirect('internal') return redirect('external') kwargs['form'] = LoginForm return super(CommercialOperatorRoutingView, self).get(*args, **kwargs)
def get_queryset(self): user = self.request.user if is_internal(self.request): return OrganisationRequest.objects.all() elif is_customer(self.request): return user.organisationrequest_set.all() return OrganisationRequest.objects.none()
def get_queryset(self): user = self.request.user if user.is_authenticated() and is_internal(self.request): #queryset = Referral.objects.filter(referral=user) queryset = DistrictProposal.objects.all() return queryset return DistrictProposal.objects.none()
def get_queryset(self): if is_internal(self.request): return Approval.objects.all() elif is_customer(self.request): user_orgs = [org.id for org in self.request.user.commercialoperator_organisations.all()] queryset = Approval.objects.filter(Q(org_applicant_id__in = user_orgs) | Q(submitter = self.request.user)) return queryset return Approval.objects.none()
def get_queryset(self): user = self.request.user if is_internal(self.request): return OrganisationContact.objects.all() elif is_customer(self.request): user_orgs = [ org.id for org in user.commercialoperator_organisations.all() ] return OrganisationContact.objects.filter( Q(organisation_id__in=user_orgs)) return OrganisationContact.objects.none()
def get_queryset(self): user = self.request.user if is_internal(self.request): return Booking.objects.all() elif is_customer(self.request): user_orgs = [ org.id for org in user.commercialoperator_organisations.all() ] return Booking.objects.filter( Q(proposal__org_applicant_id__in=user_orgs) | Q(proposal__submitter=user)) return Booking.objects.none()
def get(self, request, format=None): members = [] if is_internal(request): group = OrganisationAccessGroup.objects.first() if group: for m in group.all_members: members.append({'name': m.get_full_name(), 'id': m.id}) else: for m in EmailUser.objects.filter(is_superuser=True, is_staff=True, is_active=True): members.append({'name': m.get_full_name(), 'id': m.id}) return Response(members)
def get_queryset(self): user = self.request.user if is_internal(self.request): return ParkBooking.objects.all().exclude( booking__booking_type=Booking.BOOKING_TYPE_TEMPORARY) elif is_customer(self.request): user_orgs = [ org.id for org in user.commercialoperator_organisations.all() ] return ParkBooking.objects.filter( Q(booking__proposal__org_applicant_id__in=user_orgs) | Q(booking__proposal__submitter=user)).exclude( booking__booking_type=Booking.BOOKING_TYPE_TEMPORARY) return ParkBooking.objects.none()
def get_queryset(self): if is_internal(self.request): return Compliance.objects.all().exclude( processing_status='discarded') elif is_customer(self.request): user_orgs = [ org.id for org in self.request.user.commercialoperator_organisations.all() ] queryset = Compliance.objects.filter( Q(proposal__org_applicant_id__in=user_orgs) | Q(proposal__submitter=self.request.user)).exclude( processing_status='discarded') return queryset return Compliance.objects.none()
def get_context_data(self, **kwargs): context = super(HelpView, self).get_context_data(**kwargs) if self.request.user.is_authenticated(): application_type = kwargs.get('application_type', None) if kwargs.get('help_type', None)=='assessor': if is_internal(self.request): qs = HelpPage.objects.filter(application_type__name__icontains=application_type, help_type=HelpPage.HELP_TEXT_INTERNAL).order_by('-version') context['help'] = qs.first() # else: # return TemplateResponse(self.request, 'commercialoperator/not-permitted.html', context) # context['permitted'] = False else: qs = HelpPage.objects.filter(application_type__name__icontains=application_type, help_type=HelpPage.HELP_TEXT_EXTERNAL).order_by('-version') context['help'] = qs.first() return context
def update_details(self, request, *args, **kwargs): try: org = self.get_object() instance = org.organisation data = request.data serializer = DetailsSerializer(instance, data=data, context={'request': request}) serializer.is_valid(raise_exception=True) instance = serializer.save() #serializer = self.get_serializer(org) if is_internal( request) and 'apply_application_discount' in request.data: data = request.data if not data['apply_application_discount']: data['application_discount'] = 0 if not data['apply_licence_discount']: data['licence_discount'] = 0 if data['application_discount'] == 0: data['apply_application_discount'] = False if data['licence_discount'] == 0: data['apply_licence_discount'] = False serializer = SaveDiscountSerializer(org, data=data) serializer.is_valid(raise_exception=True) instance = serializer.save() serializer = self.get_serializer(org) return Response(serializer.data) except serializers.ValidationError as e: print(e.get_full_details()) #raise serializers.ValidationError(str( e.get_full_details() )) raise except ValidationError as e: if hasattr(e, 'error_dict'): raise serializers.ValidationError(repr(e.error_dict)) if hasattr(e, 'message'): raise serializers.ValidationError(e.message) except Exception as e: print(traceback.print_exc()) raise serializers.ValidationError(str(e))
def get_queryset(self): user = self.request.user if is_internal(self.request): #user.is_authenticated(): qs = Proposal.objects.all().exclude( application_type=self.excluded_type) return qs.exclude(migrated=True) #return Proposal.objects.filter(region__isnull=False) elif is_customer(self.request): user_orgs = [ org.id for org in user.commercialoperator_organisations.all() ] queryset = Proposal.objects.filter( Q(org_applicant_id__in=user_orgs) | Q(submitter=user)).exclude(migrated=True) #queryset = Proposal.objects.filter(region__isnull=False).filter( Q(applicant_id__in = user_orgs) | Q(submitter = user) ) return queryset.exclude(application_type=self.excluded_type) logger.warn( "User is neither customer nor internal user: {} <{}>".format( user.get_full_name(), user.email)) return Proposal.objects.none()
def test_func(self): return is_internal(self.request)
def is_internal(context): # checks if user is a departmentuser and logged in via single sign-on request = context['request'] return commercialoperator_helpers.is_internal(request)
def check_owner(self, organisation): return is_in_organisation_contacts(self.request, organisation) or is_internal(self.request) or self.request.user.is_superuser