Example #1
0
def delete_relation(request, 
                    template_name="reviewclone/delete_relation.html"):
    """
    Deletes relation between the current user and another user.
    All relations will be deleted incase some how there is more 
    then one.
    """
    user_2 = None
    if request.POST:
        user_2_id = request.POST.get('user_2')
        user_2 = get_object_or_404(User, pk=user_2_id)
        form = RelationForm(request.POST)
        if form.is_valid():
            Relation.objects.filter(
                user_1 = request.user,
                user_2 = user_2,             
            ).delete()
            messages.add_message(request, messages.INFO, 
                'You are now following %s %s.' % \
                                 (user_2.first_name, user_2.last_name))
            return HttpResponseRedirect(reverse('dashboard'))
    else:
        form = RelationForm()
    return render_to_response(
        template_name,
        {
            'user_2': user_2,
            'form': form,
        },
        context_instance=RequestContext(request)
    )
Example #2
0
def create_relation(request, 
                    template_name="reviewclone/create_relation.html"):
    """
    Creates a relation between the current user and another user.
    If the current user already has a relation with the user
    `has_relation` will be True.
    """
    has_relation = False
    user_2 = None
    if request.POST:
        user_2_id = request.POST.get('user_2')
        user_2 = get_object_or_404(User, pk=user_2_id)
        user_relation = Relation.objects.filter(
            user_1 = request.user,
            user_2 = user_2, 
        )
        if user_relation.count() > 0:
            has_relation = True
        form = RelationForm(request.POST)
        if form.is_valid() and user_relation.count() == 0:
            form.instance.user_1 = request.user
            form.save()
            messages.add_message(request, messages.INFO, 
                'You are now following %s %s.' % \
                                 (user_2.first_name, user_2.last_name))
            return HttpResponseRedirect(reverse('dashboard'))  
    else:
        form = RelationForm()
    return render_to_response(
        template_name,
        {
            'form': form,
            'user_2': user_2,
            'has_relation': has_relation,
        },
        context_instance=RequestContext(request)
    )