Ejemplo n.º 1
0
    def add_comms_log(self, request, *args, **kwargs):
        try:
            with transaction.atomic():
                instance = self.get_object()
                mutable=request.data._mutable
                request.data._mutable=True
                request.data['emailuser'] = u'{}'.format(instance.id)
                request.data['staff'] = u'{}'.format(request.user.id)
                request.data._mutable=mutable
                serializer = EmailUserLogEntrySerializer(data=request.data)
                serializer.is_valid(raise_exception=True)
                comms = serializer.save()
                # Save the files
                for f in request.FILES:
                    document = comms.documents.create()
                    document.name = str(request.FILES[f])
                    document._file = request.FILES[f]
                    document.save()
                # End Save Documents

                return add_cache_control(Response(serializer.data))
        except serializers.ValidationError:
            print(traceback.print_exc())
            raise
        except ValidationError as e:
            print(traceback.print_exc())
            raise serializers.ValidationError(repr(e.error_dict))
        except Exception as e:
            print(traceback.print_exc())
            raise serializers.ValidationError(str(e))
Ejemplo n.º 2
0
 def create(self, request, *args, **kwargs):
     response = super(PaymentViewSet, self).create(request, *args, **kwargs)
     # here may be placed additional operations for
     # extracting id of the object and using reverse()
     fallback_url = request.build_absolute_uri('/')
     return add_cache_control(
         HttpResponseRedirect(redirect_to=fallback_url + '/success/'))
Ejemplo n.º 3
0
def first_time(request):
    context = {}
    if request.method == 'POST':
        form = FirstTimeForm(request.POST)
        redirect_url = form.data['redirect_url']
        if not redirect_url:
            redirect_url = '/'
        if form.is_valid():
            # set user attributes
            request.user.first_name = form.cleaned_data['first_name']
            request.user.last_name = form.cleaned_data['last_name']
            request.user.dob = form.cleaned_data['dob']
            request.user.save()
            return redirect(redirect_url)
        context['form'] = form
        context['redirect_url'] = redirect_url
        return render(request, 'mooringlicensing/user_profile.html', context)
    # GET default
    if 'next' in request.GET:
        context['redirect_url'] = request.GET['next']
    else:
        context['redirect_url'] = '/'
    context['dev'] = settings.DEV_STATIC
    context['dev_url'] = settings.DEV_STATIC_URL
    return add_cache_control(
        render(request, 'mooringlicensing/dash/index.html', context))
Ejemplo n.º 4
0
    def get(self, request, format=None):
        data = cache.get('department_users')
        if not data:
            retrieve_department_users()
            data = cache.get('department_users')
        return add_cache_control(Response(data))

        serializer  = UserSerializer(request.user)
Ejemplo n.º 5
0
 def get(self, request, format=None):
     # Return current and future seasons for the DCV permit
     application_type = ApplicationType.objects.get(
         code=settings.APPLICATION_TYPE_DCV_PERMIT['code'])
     fee_constructors = FeeConstructor.get_current_and_future_fee_constructors_by_application_type_and_date(
         application_type, )
     data = [{
         'id': item.fee_season.id,
         'name': item.fee_season.__str__()
     } for item in fee_constructors]
     return add_cache_control(Response(data))
Ejemplo n.º 6
0
    def lookup_dcv_vessel(self, request, *args, **kwargs):
        dcv_vessel = self.get_object()
        serializer = DcvVesselSerializer(dcv_vessel)

        dcv_vessel_data = serializer.data
        dcv_vessel_data['annual_admission_permits'] = [
        ]  # TODO: retrieve the permits
        dcv_vessel_data['authorised_user_permits'] = [
        ]  # TODO: retrieve the permits
        dcv_vessel_data['mooring_licence'] = []  # TODO: retrieve the licences

        return add_cache_control(Response(dcv_vessel_data))
Ejemplo n.º 7
0
 def process_request(self, request):
     #print ("FirstTimeNagScreenMiddleware: REQUEST SESSION")
     if request.user.is_authenticated(
     ) and request.method == 'GET' and 'api' not in request.path and 'admin' not in request.path:
         if (not request.user.first_name or not request.user.last_name):
             path_ft = reverse('first_time')
             path_logout = reverse('accounts:logout')
             if request.path not in (path_ft, path_logout):
                 #response = add_cache_control(redirect(reverse('first_time')+"?next="+urlquote_plus(request.get_full_path())))
                 return add_cache_control(
                     redirect(
                         reverse('first_time') + "?next=" +
                         urlquote_plus(request.get_full_path())))
Ejemplo n.º 8
0
 def comms_log(self, request, *args, **kwargs):
     try:
         instance = self.get_object()
         qs = instance.comms_logs.all()
         serializer = EmailUserCommsSerializer(qs,many=True)
         return add_cache_control(Response(serializer.data))
     except serializers.ValidationError:
         print(traceback.print_exc())
         raise
     except ValidationError as e:
         print(traceback.print_exc())
         raise serializers.ValidationError(repr(e.error_dict))
     except Exception as e:
         print(traceback.print_exc())
         raise serializers.ValidationError(str(e))
Ejemplo n.º 9
0
 def update_personal(self, request, *args, **kwargs):
     try:
         instance = self.get_object()
         serializer = PersonalSerializer(instance,data=request.data)
         serializer.is_valid(raise_exception=True)
         instance = serializer.save()
         serializer = UserSerializer(instance)
         return add_cache_control(Response(serializer.data))
     except serializers.ValidationError:
         print(traceback.print_exc())
         raise
     except ValidationError as e:
         print(traceback.print_exc())
         raise serializers.ValidationError(repr(e.error_dict))
     except Exception as e:
         print(traceback.print_exc())
         raise serializers.ValidationError(str(e))
Ejemplo n.º 10
0
 def pending_org_requests(self, request, *args, **kwargs):
     try:
         instance = self.get_object()
         serializer = OrganisationRequestDTSerializer(
             instance.organisationrequest_set.filter(
                 status='with_assessor'),
             many=True,
             context={'request': request})
         return add_cache_control(Response(serializer.data))
     except serializers.ValidationError:
         print(traceback.print_exc())
         raise
     except ValidationError as e:
         print(traceback.print_exc())
         raise serializers.ValidationError(repr(e.error_dict))
     except Exception as e:
         print(traceback.print_exc())
         raise serializers.ValidationError(str(e))
Ejemplo n.º 11
0
    def update_address(self, request, *args, **kwargs):
        try:
            instance = self.get_object()
            # residential address
            residential_serializer = UserAddressSerializer(data=request.data.get('residential_address'))
            residential_serializer.is_valid(raise_exception=True)
            residential_address, created = Address.objects.get_or_create(
                line1 = residential_serializer.validated_data['line1'],
                locality = residential_serializer.validated_data['locality'],
                state = residential_serializer.validated_data['state'],
                country = residential_serializer.validated_data['country'],
                postcode = residential_serializer.validated_data['postcode'],
                user = instance
            )
            instance.residential_address = residential_address
            # postal address
            postal_address_data = request.data.get('postal_address')
            if postal_address_data and postal_address_data.get('same_as_residential'):
                instance.postal_address = residential_address
            elif postal_address_data:
                postal_serializer = UserAddressSerializer(data=postal_address_data)
                postal_serializer.is_valid(raise_exception=True)
                postal_address, created = Address.objects.get_or_create(
                    line1 = postal_serializer.validated_data['line1'],
                    locality = postal_serializer.validated_data['locality'],
                    state = postal_serializer.validated_data['state'],
                    country = postal_serializer.validated_data['country'],
                    postcode = postal_serializer.validated_data['postcode'],
                    user = instance
                )
                instance.postal_address = postal_address

            instance.save()
            serializer = UserSerializer(instance)
            return add_cache_control(Response(serializer.data))
        except serializers.ValidationError:
            print(traceback.print_exc())
            raise
        except ValidationError as e:
            print(traceback.print_exc())
            raise serializers.ValidationError(repr(e.error_dict))
        except Exception as e:
            print(traceback.print_exc())
            raise serializers.ValidationError(str(e))
Ejemplo n.º 12
0
 def upload_id(self, request, *args, **kwargs):
     try:
         instance = self.get_object()
         instance.upload_identification(request)
         with transaction.atomic():
             instance.save()
             instance.log_user_action(EmailUserAction.ACTION_ID_UPDATE.format(
             '{} {} ({})'.format(instance.first_name, instance.last_name, instance.email)), request)
         serializer = UserSerializer(instance, partial=True)
         return add_cache_control(Response(serializer.data))
     except serializers.ValidationError:
         print(traceback.print_exc())
         raise
     except ValidationError as e:
         print(traceback.print_exc())
         raise serializers.ValidationError(repr(e.error_dict))
     except Exception as e:
         print(traceback.print_exc())
         raise serializers.ValidationError(str(e))
Ejemplo n.º 13
0
 def get(self, request, format=None):
     try:
         data = {
             "date": request.GET.get("date"),
             "override": request.GET.get("override")
         }
         serializer = OracleSerializer(data=data)
         serializer.is_valid(raise_exception=True)
         oracle_integration(
             serializer.validated_data['date'].strftime('%Y-%m-%d'),
             serializer.validated_data['override'])
         data = {'successful': True}
         return add_cache_control(Response(data))
     except serializers.ValidationError:
         print(traceback.print_exc())
         raise
     except ValidationError as e:
         raise serializers.ValidationError(repr(e.error_dict)) if hasattr(
             e, 'error_dict') else serializers.ValidationError(e)
     except Exception as e:
         print(traceback.print_exc())
         raise serializers.ValidationError(str(e[0]))
Ejemplo n.º 14
0
 def update_system_settings(self, request, *args, **kwargs):
     try:
         instance = self.get_object()
         # serializer = UserSystemSettingsSerializer(data=request.data)
         # serializer.is_valid(raise_exception=True)
         user_setting, created = UserSystemSettings.objects.get_or_create(
             user = instance
         )
         serializer = UserSystemSettingsSerializer(user_setting, data=request.data)
         serializer.is_valid(raise_exception=True)
         #instance.residential_address = address
         serializer.save()
         instance = self.get_object()
         serializer = UserSerializer(instance)
         return add_cache_control(Response(serializer.data))
     except serializers.ValidationError:
         print(traceback.print_exc())
         raise
     except ValidationError as e:
         print(traceback.print_exc())
         raise serializers.ValidationError(repr(e.error_dict))
     except Exception as e:
         print(traceback.print_exc())
         raise serializers.ValidationError(str(e))
Ejemplo n.º 15
0
 def get(self, request, format=None):
     #logger.info('request user: {}'.format(request.user))
     serializer  = UserSerializer(request.user, context={'request':request})
     #logger.info('user serializer data: {}'.format(serializer.data))
     response = Response(serializer.data)
     return add_cache_control(response)