Exemplo n.º 1
0
    def partial_update(self, request, pk=None):
        """

        :param request:
        :param pk:
        :return:
        """
        request.data["changed_by"] = self.request.user.username
        instance = get_or_none(Contact, id=pk)
        if not isinstance(instance, Contact):
            return error_response(
                data={"error": "Contact Book does not exist"},
                msg='Contact does not exists',
                status=status.HTTP_404_NOT_FOUND)
        serializer = ContactSerializer(instance=instance,
                                       data=request.data,
                                       partial=True)
        if serializer.is_valid():
            serializer.save()
            return success_response(status=status.HTTP_202_ACCEPTED,
                                    msg='Contact Book is updated',
                                    data=serializer.data)
        return error_response(status=status.HTTP_400_BAD_REQUEST,
                              msg='Invalid data',
                              data=serializer.errors)
Exemplo n.º 2
0
def get_contact(request):
    try:
        if request.method == 'POST':
            myForm = ContactForm(request.POST)
            if myForm.is_valid():
                name = myForm.cleaned_data['name']
                email = myForm.cleaned_data['email']
                message = myForm.cleaned_data['message']
                email_from = settings.EMAIL_HOST_USER
                mobile = myForm.cleaned_data['mobile']
                message = str(mobile) +'   ' + message
                recipient_list = ['*****@*****.**']
                contact_serializer = ContactSerializer(
                    data={'mobile': mobile, 'email': email})
                # if not email:
                #     raise ValueError('Enter a valid email address')
                if contact_serializer.is_valid():
                    new_user = Contact.objects.create(name=name,
                                                      email=email,
                                                      mobile=mobile,
                                                      message=message
                                                      )
                    send_mail(name, message, email_from, recipient_list)
                messages.success(request, 'You are Noted Down, Hang ON!')
                # template = loader.get_template('contact/home.html')
            else:
                form = ContactForm()
            return render(request, 'contact/contact.html', {'form': myForm});
    except Exception as e:
        print(e, traceback.format_exc())
        return JSONResponse({'code': 500, 'response': 'Failed to signup'})
Exemplo n.º 3
0
    def post(self, request, format=None):
        serializer = ContactSerializer(data=request.data)

        if serializer.is_valid():
            msg = serializer.save()
            bot.send_notification(msg)
            return Response(serializer.data, status=status.HTTP_201_CREATED)

        return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST)
Exemplo n.º 4
0
 def post(self, request):
     owner = request.user.username
     contacts = Contact.objects.all().filter(owner=owner)
     contacts.delete
     for contact in request.data:
         contact['owner'] = owner
     serializer = ContactSerializer(data=request.data, many=True)
     if serializer.is_valid():
         serializer.save()
         return Response(serializer.data, status=201)
     return Response(serializer.errors, status=400)
Exemplo n.º 5
0
    def post(self, request):
        user = User.objects.get(username=self.request.user)
        serializer = ContactSerializer(data=request.data)

        if not serializer.is_valid():
            return Response({'serializer': serializer})

        contact = serializer.save()
        user.contact = contact
        user.save()
        return redirect(reverse_lazy(url_employee_contact))
Exemplo n.º 6
0
 def put(self, request: HttpRequest, contact_id: int) -> Response:
     """
     :param request:
     :param id:
     :return:
     """
     contact = self.get_object(contact_id)
     serializer = ContactSerializer(contact, data=request.data)
     if serializer.is_valid():
         serializer.save()
         return Response(serializer.data)
     return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST)
Exemplo n.º 7
0
 def post(self, request: HttpRequest) -> Response:
     """
     :param request:
     :return:
     """
     serializer = ContactSerializer(data=request.data)
     if serializer.is_valid():
         serializer.save()
         return Response({
             "serializer.data": 200,
             "status": status.HTTP_201_CREATED
         })
     return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST)
Exemplo n.º 8
0
 def get(self, request: HttpRequest) -> Response:
     """
     :param request:
     :return:
     """
     contact = Contact.objects.all()
     serializer = ContactSerializer(contact, many=True)
     return Response(serializer.data)
Exemplo n.º 9
0
    def create(self, request):
        """

        :param request:
        :return:
        """
        request.data["created_by"] = self.request.user.username
        request.data["changed_by"] = self.request.user.username
        serializer = ContactSerializer(data=request.data)
        if serializer.is_valid():
            serializer.save()
            return success_response(status=status.HTTP_201_CREATED,
                                    msg='Contact  is created',
                                    data=serializer.data)
        return error_response(status=status.HTTP_400_BAD_REQUEST,
                              msg='Invalid data',
                              data=serializer.errors)
Exemplo n.º 10
0
def contact_lists_by_type(request):
    if request.method == 'GET':
        contacts = Contact.objects.all()
        first_name = request.GET.get('f_name', None)
        if first_name is not None:
            contacts = contacts.filter(f_name__icontains=first_name)
            contacts_serializer = ContactSerializer(contacts, many=True)
            return JsonResponse(contacts_serializer.data, safe=False)
Exemplo n.º 11
0
 def get(self,
         request: HttpRequest,
         contact_id: int,
         format=None) -> Response:
     """
     :param id:
     :return:
     """
     contact = self.get_object(contact_id)
     serializer = ContactSerializer(contact)
     return Response(serializer.data)
class AppointmentSerializer(serializers.ModelSerializer):
    id = serializers.ReadOnlyField()
    contact = ContactSerializer(read_only=True)
    notes = AppointmentNoteSerializer(many=True, required=False)
    driving_times = AppointmentDrivingTimeSerializer(many=True, required=False)

    def create(self, validated_data):
        notes = validated_data.pop('notes', [])
        appointment = super().create(validated_data)
        notes_list = []
        for note in notes:
            ans = AppointmentNoteSerializer(data=note)
            ans.is_valid(raise_exception=True)
            notes_list.append(ans.save())
        appointment.notes.set(notes_list)
        return appointment

    def update(self, instance, validated_data):
        notes = validated_data.pop('notes', [])
        super().update(instance, validated_data)
        for note in notes:
            instance_note, _ = instance.notes.get_or_create(type=note['type'])
            instance_note.note = note['note']
            instance_note.save()
        return instance

    def validate_notes(self, value):
        types_list = []
        for note in value:
            if note['type'] in types_list:
                raise serializers.ValidationError(
                    'every type is only allowed once')
            types_list.append(note['type'])
        return value

    def validate_type(self, value):
        if not value:
            raise serializers.ValidationError(
                'type must be an array of one or more string elements')
        return value

    def validate_organization_uuid(self, value):
        if value:
            request = self.context['request']
            user_org_uuid = request.session.get('jwt_organization_uuid')
            if user_org_uuid != str(value):
                raise serializers.ValidationError(
                    'The Organization cannot be different than user\'s '
                    'organization')
        return value

    class Meta:
        model = Appointment
        exclude = ('owner', )
Exemplo n.º 13
0
def contact_list(request):
    """
    List all code contacts, or delete a  contact.
    """
    if request.user.is_authenticated:
        if request.method == 'GET':
            contacts = Contact.objects.all()
            serializer = ContactSerializer(contacts, many=True)
            return Response(serializer.data)
        else:
            return Response(status=status.HTTP_204_NO_CONTENT)
    return Response({'msg': "login required"},
                    status=status.HTTP_403_FORBIDDEN)
Exemplo n.º 14
0
def sendMessage(request):
    """
    send contact message
    """
    if request.method == 'POST':
        data = request.data
        serializer = ContactSerializer(data=data)
        if serializer.is_valid():
            # Email the profile with the
            # contact information
            subject = data['subject']
            message = 'Works!'

            from_email = settings.EMAIL_HOST_USER
            to_list = ['*****@*****.**']
            #print(from_email, to, subject)
            #mail = EmailMultiAlternatives(subject, html_content, "from_email", [to])
            #mail.attach_alternative(html_content, "text/html")
            #mail.send()
            send_mail(subject, message, from_email, to_list) #fail_silently=True

        return Response({"success": "true"}, status=status.HTTP_201_CREATED)
Exemplo n.º 15
0
 def retrieve(request, pk=None):
     """
     :param request:
     :param pk:
     :return:
     """
     instance = get_or_none(Contact, id=pk)
     if isinstance(instance, Contact):
         serializer = ContactSerializer(instance=instance)
         return success_response(data=serializer.data,
                                 status=status.HTTP_200_OK,
                                 msg='success')
     return error_response(data={"error": "Contact Book does not exist"},
                           msg='Contact does not exists',
                           status=status.HTTP_404_NOT_FOUND)
Exemplo n.º 16
0
def contactlist(request):
    if request.method == 'GET':
        contacts = Contact.objects.all()

        contact_serializer = ContactSerializer(contacts, many=True)
        return JsonResponse(contact_serializer.data, safe=False)

    elif request.method == 'POST':
        contact_data = JSONParser().parse(request)
        contact_serializer = ContactSerializer(data=contact_data)
        if contact_serializer.is_valid():
            contact_serializer.save()
            return JsonResponse(contact_serializer.data,
                                status=status.HTTP_201_CREATED)
        return JsonResponse(contact_serializer.errors,
                            status=status.HTTP_400_BAD_REQUEST)
Exemplo n.º 17
0
def detail_contact(request, id):
    """
    Retrieve, update or delete a code snippet.
    """
    if request.user.is_authenticated:
        try:
            contact = Contact.objects.get(pk=id)
        except Contact.DoesNotExist:
            return Response(status=status.HTTP_404_NOT_FOUND)

        if request.method == 'GET':
            serializer = ContactSerializer(contact)
            return Response(serializer.data)

        elif request.method == 'DELETE':
            contact.delete()
            return Response(status=status.HTTP_204_NO_CONTENT)
        else:
            return Response(status=status.HTTP_204_NO_CONTENT)
    return Response({'msg': "login required"},
                    status=status.HTTP_403_FORBIDDEN)
Exemplo n.º 18
0
def contact_update(request, pk):
    try:
        contact = Contact.objects.get(pk=pk)
    except Contact.DoesNotExist:
        return JsonResponse({'message': 'The contact does not exist'},
                            status=status.HTTP_404_NOT_FOUND)
    if request.method == 'GET':
        contact_serializer = ContactSerializer(contact)
        return JsonResponse(contact_serializer.data)
    elif request.method == 'PUT':
        contact_details = JSONParser().parse(request)
        contact_serializer = ContactSerializer(contact, data=contact_details)
        if contact_serializer.is_valid():
            contact_serializer.save()
            return JsonResponse(contact_serializer.data)
        return JsonResponse(contact_serializer.errors,
                            status=status.HTTP_400_BAD_REQUEST)
    elif request.method == 'DELETE':
        contact.delete()
        return JsonResponse({'message': 'Contact was deleted successfully!'},
                            status=status.HTTP_204_NO_CONTENT)
Exemplo n.º 19
0
def contact_list(request):
    if request.method == 'GET':
        contacts = Contact.objects.all()
        contact_serializer = ContactSerializer(contacts, many=True)
        return JsonResponse(contact_serializer.data, safe=False)
    elif request.method == 'POST':
        contact_serializer = ContactSerializer(data=request.data)
        if contact_serializer.is_valid():
            contact_serializer.save()
            return JsonResponse(contact_serializer.data,
                                status=status.HTTP_201_CREATED)
        return JsonResponse(contact_serializer.errors,
                            status=status.HTTP_400_BAD_REQUEST)
    elif request.method == 'DELETE':
        count = Contact.objects.all().delete()
        return JsonResponse(
            {
                'message': '{} Contact were deleted successfully!'.format(
                    count[0])
            },
            status=status.HTTP_204_NO_CONTENT)
Exemplo n.º 20
0
class CourseSerializers(serializers.ModelSerializer):
    """Courses serializer"""
    contacts = ContactSerializer(many=True, )
    branches = BranchSerializer(many=True)
    category = serializers.PrimaryKeyRelatedField(
        queryset=Category.objects.all())

    class Meta:
        model = Courses
        fields = ("contacts", "branches", "name", "description", "category",
                  "logo")

    def create(self, validated_data):
        branches = validated_data.pop("branches")
        contact = validated_data.pop("contacts")
        course = Courses.objects.create(**validated_data)

        for branches in branches:
            Branch.objects.create(course=course, **branches)

        for contact in contact:
            Contact.objects.create(course=course, **contact)

        return course
Exemplo n.º 21
0
 def get(self, request):
     user = User.objects.get(username=request.user)
     serializer = ContactSerializer(instance=user.contact)
     return Response({'serializer': serializer})
Exemplo n.º 22
0
 def get(self, request, format=None):
     contacts = Contact.objects.all()
     serializer = ContactSerializer(contacts, many=True)
     return Response(serializer.data)
Exemplo n.º 23
0
def contact_detail(request, pk):
    """
    Retrieve, update or delete a code snippet.
    """
    try:
        contact = Contact.objects.get(pk=pk)
    except Contact.DoesNotExist:
        return Response(status=404)

    if request.method == 'GET':
        serializer = ContactSerializer(contact)
        return Response(serializer.data)

    elif request.method == 'PUT':
        serializer = ContactSerializer(contact, data=request.data)
        if serializer.is_valid():
            serializer.save()
            return Response(serializer.data, status=200)
        return Response(serializer.errors, status=400)

    elif request.method == 'DELETE':
        contact.delete()
        return Response(status=204)

    elif request.method == 'POST':
        serializer = ContactSerializer(data=request.data)
        if serializer.is_valid():
            serializer.save()
            return Response(serializer.data, status=201)
        return Response(serializer.errors, status=400)
Exemplo n.º 24
0
 def get(self, request):
     owner = request.user.username
     contacts = Contact.objects.filter(owner=owner)
     serializer = ContactSerializer(contacts, many=True)
     return Response(serializer.data)
Exemplo n.º 25
0
class AccountSerializer(serializers.ModelSerializer):
    def validate_legalname(self, value):
        if not value:
            raise serializers.ValidationError("Legalname empty or missing")
        return value

    def validate_vat(self, value):
        if not value:
            raise serializers.ValidationError("Vat empty or missing")

        if Account.objects.filter(vat=value).count() > 0:
            raise serializers.ValidationError("Vat already exist")

        return value

    def validate_address(self, value):
        if not value:
            raise serializers.ValidationError("Address empty or missing")
        return value

    def validate_city(self, value):
        if not value:
            raise serializers.ValidationError("City empty or missing")
        return value

    def validate_zipcode(self, value):
        if not value:
            raise serializers.ValidationError("Zipcode empty or missing")
        return value

    def validate_country(self, value):
        if not value:
            raise serializers.ValidationError("Country empty or missing")
        return value

    def validate_province(self, value):
        if not value:
            raise serializers.ValidationError("Province empty or missing")
        return value

    def validate_phone(self, value):
        if not value:
            raise serializers.ValidationError("Phone empty or missing")
        return value

    def validate_email(self, value):
        if not value:
            raise serializers.ValidationError("Email empty or missing")
        return value

    def validate_type(self, value):
        if not value:
            raise serializers.ValidationError("Customer Type empty or missing")
        return value

    account_type = serializers.ChoiceField(choices=fields.CUSTOMER_TYPE,
                                           source="type",
                                           read_only=True)
    contacts = ContactSerializer(many=True,
                                 source="contact_set",
                                 read_only=True)
    notes = NoteSerializer(many=True, source="note_set", read_only=True)

    class Meta:
        model = Account
        fields = [
            "id",
            "name",
            "legalname",
            "vat",
            "address",
            "city",
            "zipcode",
            "country",
            "province",
            "geo",
            "phone",
            "email",
            "pec",
            "sdi",
            "account_type",
            "update_date",
            "create_date",
            "contacts",
            "notes",
        ]
        read_only_fields = ["id"]
Exemplo n.º 26
0
    def post(self, request):
        user = User.objects.get(username=request.user)
        serializer = ContactSerializer(data=request.data)

        serializer.update(instance=user.contact, validated_data=request.data)
        return redirect(reverse_lazy(url_employee_contact))
Exemplo n.º 27
0
 def get(self, request):
     contact = ContactSerializer()
     return Response({'serializer': contact})
Exemplo n.º 28
0
 def post(self, request, format=None):
     serializer = ContactSerializer(data=request.data)
     if serializer.is_valid():
         serializer.save(created=request.user)
         return Response(serializer.data, status=status.HTTP_200_OK)
     return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST)