Esempio n. 1
0
def edit(request, message_id=None):
    if message_id:
        message = get_object_or_404(Message, pk=message_id)
        if message.expediteur != request.user.get_profile():
            return HttpResponseForbidden()
    else:
        return HttpResponseForbidden()

    if request.POST:
        form = MessageForm(request.POST, instance=message)
        if form.is_valid():
            message = form.save()
            message.objet=sanitizeHtml(message.objet)
            message.contenu=sanitizeHtml(request.POST['contenu'])
            message.save()

            # If the save was successful, redirect to another page
            redirect_url = message.get_absolute_url()#reverse(article_save_success)
            return HttpResponseRedirect(redirect_url)

    else:
        form = MessageForm(instance=message)

    return render_to_response("messages/nouveau.html", {
        'form': form,
    }, context_instance=RequestContext(request))
Esempio n. 2
0
def messages(request, user_id=None):
    context = {}

    message = Message()

    threads = Message.objects.filter(
        recipient=request.user
    ).values_list(
        'sender__user',
        'sender__user__first_name',
        'sender__user__last_name'
    ).distinct()

    if user_id is None and len(threads) > 0:
        first_message = Message.objects.filter(
            Q(recipient=request.user) | Q(sender=request.user)
        )[:1].get()

        current = first_message.recipient if first_message.sender == request.user else first_message.sender
    elif user_id is not None:
        current = user_id
    else:
        current = None

    if request.method == 'POST':
        message.sender = request.user.get_profile()
        message.recipient = UserProfile.objects.get(user__pk=user_id)

        form = MessageForm(request.POST, instance=message)
        form.save()

        return redirect('/messages/' + user_id)
    else:
        form = MessageForm(request.POST, instance=message)


    messages = Message.objects.filter(
        Q(sender=current, recipient=request.user) |
        Q(sender=request.user, recipient=current)
    ).order_by(
        'created'
    )

    context['user'] = request.user
    context['message_form'] = form
    context['current_thread'] = current
    context['threads'] = threads
    context['messages'] = messages

    return render(request, 'messages/index.html', context)
Esempio n. 3
0
def new_message(request, user_id=None):
    context = {}

    message = Message()
    recipient = UserProfile.objects.get(user__pk=user_id)

    if request.method == 'POST':
        message.sender = request.user.get_profile()
        message.recipient = recipient

        form = MessageForm(request.POST, instance=message)
        form.save()

        return redirect('/messages/' + user_id)
    else:
        form = MessageForm(request.POST, instance=message)

    context['user'] = request.user
    context['recipient'] = recipient
    context['form'] = form

    return render(request, 'messages/new.html', context)