Esempio n. 1
0
def send_message_api_view(request, thread_id):
    if not request.method == "POST":
        return json_response({"error": "Please use POST."})

    api_key = request.POST.get("api_key")

    if api_key != settings.API_KEY:
        return json_response({"error": "Please pass a correct API key."})

    try:
        thread = Thread.objects.get(id=thread_id)
    except Thread.DoesNotExist:
        return json_response({"error": "No such thread."})

    try:
        sender = User.objects.get(id=request.POST.get("sender_id"))
    except User.DoesNotExist:
        return json_response({"error": "No such user."})

    message_text = request.POST.get("message")

    if not message_text:
        return json_response({"error": "No message found."})

    if len(message_text) > 10000:
        return json_response({"error": "The message is too long."})

    send_message(
                    thread.id,
                    sender.id,
                    message_text
                )

    return json_response({"status": "ok"})
Esempio n. 2
0
def send_message_api_view(request, thread_id):
    if not request.method == "POST":
        return json_response({"error": "Please use POST."})

    api_key = request.POST.get("api_key")

    if api_key != settings.API_KEY:
        return json_response({"error": "Please pass a correct API key."})

    try:
        thread = Thread.objects.get(id=thread_id)
    except Thread.DoesNotExist:
        return json_response({"error": "No such thread."})

    try:
        sender = User.objects.get(id=request.POST.get("sender_id"))
    except User.DoesNotExist:
        return json_response({"error": "No such user."})

    message_text = request.POST.get("message")

    if not message_text:
        return json_response({"error": "No message found."})

    if len(message_text) > 10000:
        return json_response({"error": "The message is too long."})

    send_message(
                    thread.id,
                    sender.id,
                    message_text
                )

    return json_response({"status": "ok"})
Esempio n. 3
0
def send_message_api_view(request,thread_id):
    print ("message")
    if not request.method=='POST':
        return json_response({"error":"Please use POST"})

    try:
        thread = Thread.objects.get(id = thread_id)
    except Thread.DoesNotExist:
        return json_response({"error":"No such thread"})

    try:
        sender=User.objects.get(id=request.POST.get("sender_id"))
    except User.DoesNotExist:
        return json_response({"error":"No such user."})

    message_text=request.POST.get("message")

    if not message_text:
        return json_response({"error":"Message text cannot be empty"})

    if len(message_text)>1000:
        return json_response({"error":"The message must be less than 1000 characters."})

    send_message(
        thread.id,
        sender.id,
        message_text
    )

    return json_response({"status":"Ok"})
Esempio n. 4
0
def send_message_view(request):
    if not request.method=='POST':
        return HttpResponse('Please use POST method')

    if not request.user.is_authenticated():
        return HttpResponse('Please sign in')

    message_text=request.POST.get('message')

    if not message_text:
        return HttpResponse("You can't send empty message ")

    if len(message_text)>1000:
        return  HttpResponse('The message must be less than 1000 characters')

    recipient_name= request.POST.get('recipient_name')

    try:
        recipient=User.objects.get(username=recipient_name)
    except User.DoesNotExist:
        return HttpResponse("This user does not exist.")

    if recipient == request.user:
        return HttpResponse("You can't send message to yourself")

    thread_queryset=Thread.objects.filter(
        participants=recipient
    ).filter(
        participants=request.user
    )


    if thread_queryset.exists():
        thread = None
        for current_thread in thread_queryset:
            if current_thread.participants.count() == 2:
                thread = current_thread
                break
    if not thread_queryset.exists() or thread == None :
        thread=Thread.objects.create()
        thread.participants.add(request.user, recipient)

    send_message(
        thread.id,
        request.user.id,
        message_text,
        request.user.username,
    )

    return HttpResponseRedirect(
        reverse('privatemessages.views.messages_view')
    )
Esempio n. 5
0
def send_message_view(request):
    """
    для отправки сообщения через Django (например, если это первое сообщение между двумя людьми)
    """
    if not request.method == "POST":
        return HttpResponse("Please use POST.")

    if not request.user.is_authenticated:
        return HttpResponse("Please sign in.")

    message_text = request.POST.get("message")

    if not message_text:
        return HttpResponse("No message found.")

    if len(message_text) > 10000:
        return HttpResponse("The message is too long.")

    recipient_name = request.POST.get("recipient_name")

    try:
        recipient = User.objects.get(username=recipient_name)
    except User.DoesNotExist:
        return HttpResponse("No such user.")

    if recipient == request.user:
        return HttpResponse("You cannot send messages to yourself.")

    thread_queryset = Thread.objects.filter(
        participants=recipient
    ).filter(
        participants=request.user
    )

    if thread_queryset.exists():
        thread = thread_queryset[0]
    else:
        thread = Thread.objects.create()
        thread.participants.add(request.user, recipient)

    send_message(
        thread.id,
        request.user.id,
        message_text,
        request.user.username
    )

    return HttpResponseRedirect(
        reverse('messages_view')
    )
Esempio n. 6
0
def send_message_view(request):
    if not request.method == "POST":
        return HttpResponse("Please use POST.")

    if not request.user.is_authenticated():
        return HttpResponse("Please sign in.")

    message_text = request.POST.get("message")

    if not message_text:
        return HttpResponse("No message found.")

    if len(message_text) > 10000:
        return HttpResponse("The message is too long.")

    recipient_name = request.POST.get("recipient_name")

    try:
        recipient = User.objects.get(username=recipient_name)
    except User.DoesNotExist:
        return HttpResponse("No such user.")

    if recipient == request.user:
        return HttpResponse("You cannot send messages to yourself.")

    thread_queryset = Thread.objects.filter(
        participants=recipient
    ).filter(
        participants=request.user
    )

    if thread_queryset.exists():
        thread = thread_queryset[0]
    else:
        thread = Thread.objects.create()
        thread.participants.add(request.user, recipient)

    send_message(
                    thread.id,
                    request.user.id,
                    message_text,
                    request.user.username
                )

    return HttpResponseRedirect(
        reverse('privatemessages.views.messages_view')
    )
Esempio n. 7
0
def send_message_view(request):
    if not request.method == "POST":
        return HttpResponse("Please use POST.")

    if not request.user.is_authenticated():
        return HttpResponse("Please sign in.")

    data = json.loads(request.body)
    message_text = data['message']
    # message_text = request.POST.get("message")

    if not message_text:
        return HttpResponse("No message found.")

    if len(message_text) > 10000:
        return HttpResponse("The message is too long.")

    recipient_name = data['recipient_name']
    # recipient_name = request.POST.get("recipient_name")

    try:
        recipient = User.objects.get(username=recipient_name)
    except User.DoesNotExist:
        return HttpResponse("No such user.")

    if recipient == request.user:
        return HttpResponse("You cannot send messages to yourself.")

    thread_queryset = Thread.objects.filter(participants=recipient).filter(
        participants=request.user)

    if thread_queryset.exists():
        thread = thread_queryset[0]
    else:
        thread = Thread.objects.create()
        thread.participants.add(request.user, recipient)

    send_message(thread.id, request.user.id, message_text,
                 request.user.username)

    return HttpResponseRedirect(reverse('privatemessages.views.messages_view'))
Esempio n. 8
0
def send_message_view(request, thread_id=None):
    if not request.method == "POST":
        return HttpResponse("Please use POST.")

    message_text = request.POST.get("message")

    if not message_text:
        messages.warning(request, 'Message Blank')
        return HttpResponseRedirect(request.META.get('HTTP_REFERER'))

    if len(message_text) > 10000:
        messages.warning(request, 'Message Too Long')
        return HttpResponseRedirect(request.META.get('HTTP_REFERER'))

    recipient_name = request.POST.get("recipient_name")
    recipient = User.objects.get(username=recipient_name)

    thread_queryset = Thread.objects.filter(
        participants=recipient
    ).filter(
        participants=request.user
    )

    if thread_id:
        thread_queryset = thread_queryset.filter(id=thread_id)

    if thread_queryset.exists():
        thread = thread_queryset[0]
    else:
        thread = Thread.objects.create()
        thread.participants.add(request.user, recipient)

    send_message(
                    thread.id,
                    request.user.id,
                    message_text,
                    request.user.username
                )

    return HttpResponseRedirect(request.META.get('HTTP_REFERER'))