Ejemplo n.º 1
0
def excluir_postagem(request, id_postagem):

    post = Post.objects.get(id=id_postagem)
    if post.perfil == get_perfil_logado(request):
        post.delete()
        messages.success(request, feedback.POSTAGEM_EXCLUIDA_SUCESS)
    elif get_perfil_logado(request).usuario.is_superuser:
        post.delete()
        messages.success(request, feedback.POSTAGEM_EXCLUIDA_SUCESS)
    else:
        messages.error(request, feedback.POSTAGEM_PERFIL_NAO_TEM_AUTORIZACAO)

    return redirect('index')
Ejemplo n.º 2
0
def postagens(request):
    perfil_logado = get_perfil_logado(request)
    perfis_contatos = perfil_logado.contatos.all()

    p1 = Postagem.objects.filter(perfil=perfil_logado)
    p2 = Postagem.objects.filter(perfil__in=perfis_contatos)

    all_postagens = p1.union(p2)
    all_postagens = all_postagens.order_by('-data_de_criacao')

    return render(request, 'timeline.html', {
        'postagens': all_postagens,
        'perfil_logado': get_perfil_logado(request)
    })
Ejemplo n.º 3
0
def perfil_logado_processor(request):
	if request.user is not None and not isinstance(request.user, AnonymousUser):
		perfil = get_perfil_logado(request)
		logged_is_prof = is_prof(request, request.user)
		return {'perfil_logado': perfil, 'logged_is_prof' : logged_is_prof}
	else:
		return []
Ejemplo n.º 4
0
def perfil_logado_processor(request):
    if request.user is not None and not isinstance(request.user,
                                                   AnonymousUser):
        perfil = get_perfil_logado(request)
        logged_is_prof = is_prof(request, request.user)
        return {'perfil_logado': perfil, 'logged_is_prof': logged_is_prof}
    else:
        return []
Ejemplo n.º 5
0
def comentar(request, id_postagem):
    post = Post.objects.get(id=id_postagem)

    if post.comentar(get_perfil_logado(request), request.POST['comentario']):
        messages.success(request, feedback.COMENTARIO_SUCESS)
    else:
        messages.error(request, feedback.COMENTARIO_ERROR)

    return redirect('index')
Ejemplo n.º 6
0
def pagina_de_superusuario(request):
    perfil = get_perfil_logado(request)
    if not perfil.usuario.is_superuser:
        messages.error(request,
                       'Você não tem autorização para entrar nesta página.')
        return redirect('index')

    perfis_bd = Perfil.objects.all()
    paginator = Paginator(perfis_bd, 15)
    page = request.GET.get('page')
    task = paginator.get_page(page)

    context = {
        'perfil_logado': get_perfil_logado(request),
        'perfis_bd': task,
        'range_paginator': range(1, task.paginator.num_pages + 1),
        'current_page': int(page) if page else 1
    }
    return render(request, 'super_usuario.html', context)
Ejemplo n.º 7
0
    def post(request):
        form = CriarPostagemForm(request.POST)

        if form.is_valid():
            dados = form.cleaned_data

            postagem = Postagem(nome_postagem=dados['nome_postagem'],
                                texto=dados['texto'],
                                perfil=get_perfil_logado(request))
            postagem.save()
            return redirect('index')

        return render(request, 'criar_postagem.html', {'form': form})
Ejemplo n.º 8
0
def curtir_postagem(request, id_postagem):
    post = Post.objects.get(id=id_postagem)
    perfil = get_perfil_logado(request)

    if post.perfil_reagiu_gostei(perfil):
        post.remover_gostar(perfil)
        messages.success(request, feedback.GOSTEI_REMOVE_SUCESS)
    else:
        if post.perfil_reagiu_nao_gostei(perfil):
            post.remover_nao_gostar(perfil)
            messages.error(request, feedback.GOSTEI_REMOVE_SUCESS)
        post.gostar(perfil)
        messages.success(request, feedback.GOSTEI_ADD_SUCESS)

    return redirect('index')
Ejemplo n.º 9
0
def nova_postagem(request):
    if request.POST:
        if request.FILES or request.POST['texto']:
            post = Post()
            post.perfil = get_perfil_logado(request)
            form = FormPost(request.POST, request.FILES, instance=post)
            if form.is_valid():
                form.save()
                messages.success(request, feedback.POSTAGEM_SUCESS)
            else:
                messages.error(request, feedback.POSTAGEM_ERROR)
                messages.error(request, form.errors)
        else:
            messages.error(request, feedback.POSTAGEM_EMPTY)
    return redirect('index')
Ejemplo n.º 10
0
def timeline(request):
    template_name = 'timeline.html'
    user = get_perfil_logado(request)
    form = PostagemForm()
    friends = user.contatos.all()
    postagens = Postagem.objects.filter(
        perfil__in=friends) | Postagem.objects.filter(perfil=user)
    postagens.order_by('data_postagem').reverse()
    context = {'perfil_logado': user, 'form': form, 'posts': postagens}
    if request.method == 'POST':
        form = PostagemForm(request.POST)
        if form.is_valid():
            data_form = form.cleaned_data
            post = Postagem(texto=data_form['texto'],
                            perfil=context['perfil_logado'])
            post.save()
            return redirect('/')
    return render(request, template_name, context)
Ejemplo n.º 11
0
def detail_postagem(request, id_postagem):
    return render(
        request, 'postagem.html', {
            'postagem': Postagem.objects.get(id=id_postagem),
            'perfil_logado': get_perfil_logado(request)
        })
Ejemplo n.º 12
0
 def get(request):
     return render(request, 'criar_postagem.html',
                   {'perfil_logado': get_perfil_logado(request)})