Exemplo n.º 1
0
def info_museo(request, id):
    if request.method == "POST":
        if request.user.is_authenticated():
            usuario = request.user
            try:
                museo = Museo.objects.get(id=id)
            except:
                value = "Museo no disponible"
                value += '<br><a href="/">Volver</a>'
                return HttpResponse(value)

            favorito = request.POST.get("favorito")
            if favorito:
                coleccion = Coleccion()
                coleccion.perfil = Perfil.objects.get(usuario=usuario.username)
                coleccion.museo = museo
                coleccion.save()

            quitar_favorito = request.POST.get("quitar")
            if quitar_favorito:
                perfil = Perfil.objects.get(usuario=usuario.username)
                coleccion = Coleccion.objects.filter(perfil=perfil,museo=museo).delete()

            comentando = request.POST.get('comentando')
            if comentando:
                contenido = request.POST.get('contenido')
                if contenido:
                    comentario = Comentario()
                    comentario.contenido = contenido
                    comentario.museo = museo
                    comentario.save()
                    museo.numComentario = museo.numComentario + 1
                    museo.save()
        return HttpResponseRedirect("/museos/"+str(id))
    else:
        try:
            museo = Museo.objects.get(id=id)
            comentarios = Comentario.objects.filter(museo=museo)
            seleccionado = False
            if request.user.is_authenticated():
                perfil = Perfil.objects.get(usuario=request.user.username)
                coleccion = Coleccion.objects.filter(museo=museo,perfil=perfil)
                if coleccion:
                    seleccionado = True
            context ={
                'museo':museo,
                'comentarios':comentarios,
                'seleccionado': seleccionado
            }
            return render(request, 'museo.html',context)
        except:
            value = "Museo no disponible"
            value += '<br><a href="/">Volver</a>'
            return HttpResponse(value)