예제 #1
0
class CadastraComentario(View):
    """Classe para fazer o cadastro dos comentários"""
    template = 'criar_comentario.html'

    @method_decorator(autenticado())
    def get(self, request, identificador=None):
        """Envia o formulário para a criação ou edição dos comentários"""

        form = ComentarioForm()

        return render(request, self.template, {'form': form})

    @method_decorator(autenticado())
    def post(self, request, identificador=None):
        """Envia para o banco os comentários criados ou editados"""

        form = ComentarioForm(request.POST)
        if form.is_valid():
            comentario = form.save(commit=False)
            comentario.usuario = UsuarioModel.objects.get(pk=2)
            comentario.post = PostModel.objects.get(pk=identificador)
            comentario.like = 0
            comentario.save()
            return redirect('/')

        return render(request, self.template, {'form': form})
예제 #2
0
class CadastraPost(View):
    """View para fazer o cadastro e edição dos posts"""
    template = 'postagem.html'

    @method_decorator(autenticado())
    def get(self, request, identificador=None):
        """Envia o formulário para a criação ou edição dos Posts"""

        if identificador:
            post = PostModel.objects.get(pk=identificador)
            form = PostEditForm(instance=post)
        else:
            form = PostForm()

        return render(request, self.template, {'form': form})

    @method_decorator(autenticado())
    def post(self, request, identificador=None):
        """Envia para o banco os Posts criados ou editados"""
        user = UsuarioModel.objects.get(pk=request.user.id)
        if identificador:
            post = PostModel.objects.get(pk=identificador)
            form = PostEditForm(instance=post, data=request.POST)
        else:
            form = PostForm(request.POST)
        print form.is_valid(), form
        if form.is_valid():
            post = form.save(commit=False)
            post.usuario = UsuarioModel.objects.get(pk=user)
            print post
            post.save()
            return redirect('/')

        return render(request, self.template, {'form': form})
예제 #3
0
class VerPost(View):
    """Classe para visualização dos posts"""
    template = 'ver_post.html'

    def get(self, request, identificador=None):
        """Requisita o post a ser visualizado"""
        context_dict = {}
        post = PostModel.objects.get(pk=identificador)
        context_dict['post'] = post
        comentarios = ComentarioModel.objects.filter(post=identificador)
        context_dict['comentarios'] = comentarios
        form = ComentarioForm()
        context_dict['comentar'] = form

        return render(request, self.template, context_dict, {'form': form})

    @method_decorator(autenticado())
    def post(self, request, identificador=None):
        """Envia os comentários para a postagem"""
        print identificador
        form = ComentarioForm(request.POST)
        if form.is_valid():
            comentario = form.save(commit=False)
            comentario.usuario = UsuarioModel.objects.get(pk=request.user.id)
            comentario.post = PostModel.objects.get(pk=identificador)
            comentario.like = 0
            comentario.save()

            return redirect("/ver_post/%d" % comentario.post_id)
예제 #4
0
class Perfil(View):
    """Perfil para visualização e edição do usuário"""
    template = "ver_post.html"

    @method_decorator(autenticado())
    def get(self, request):
        """Envia os dados para a página"""
        jogo = UsuarioModel.objects.get(pk=request.user.id)
        print jogo.jogo
        return render(request, self.template, {'jogo': jogo.jogo})
예제 #5
0
class Like(View):
    """Classe para mexer nas curtidas dos comentários"""
    @method_decorator(autenticado())
    def post(self, request, identificador=None):
        """Função para aumentar ou diminuir os likes dos comentários"""
        user = UsuarioModel.objects.get(pk=request.user.id)
        comentario = ComentarioModel.objects.get(pk=identificador)
        curtidas = CurtirModel.objects.filter(usuario=user, coment=comentario)
        if curtidas.count() == 0:
            comentario.like += 1
            comentario.save()
            curtida = CurtirModel.objects.create(usuario=user,
                                                 coment=comentario)
            curtida.save()
        else:
            comentario.like -= 1
            comentario.save()
            curtida = CurtirModel.objects.get(usuario=user, coment=comentario)
            curtida.delete()

        return redirect("/ver_post/%d" % comentario.post_id)
예제 #6
0
class LikePost(View):
    """Classe para dar curtidas ao post"""
    template = 'ver_post.html'

    @method_decorator(autenticado())
    def post(self, request, identificador=None):
        """Função para aumentar e diminuir as curtidas dos posts"""
        user = UsuarioModel.objects.get(pk=request.user.id)
        post = PostModel.objects.get(pk=identificador)
        curtidas = CurtirModel.objects.filter(usuario=user, post=post)
        if curtidas.count() == 0:
            post.curtidas += 1
            post.save()
            curtida = CurtirModel.objects.create(usuario=user, post=post)
            curtida.save()
        else:
            post.curtidas -= 1
            post.save()
            curtida = CurtirModel.objects.get(usuario=user, post=post)
            curtida.delete()

        return redirect("/ver_post/%d" % int(identificador))