def respuesta(request, slug, post_id): # Maneja la respuesta del usuario a un post. Cualquier post, sea respuesta o en video. tema = Temas.objects.get(slug=slug) if request.method == "POST": form = FormNuevoPost(request.POST) if form.is_valid(): texto = form.cleaned_data.get('texto') perfil_usuario = Perfiles.objects.get(usuario=request.user) post_padre = Posts.objects.get(id=post_id) # Si es una respuesta a un post en un video if post_padre.video is not None: post_respuesta = Posts(texto=texto, es_respuesta=True, creador=perfil_usuario, tema=tema, video=post_padre.video) else: post_respuesta = Posts(texto=texto, es_respuesta=True, creador=perfil_usuario, tema=tema) post_respuesta.save() # Respuesta object respuesta_db = Respuestas(post_respuesta=post_respuesta, post_padre=post_padre) respuesta_db.save() #Notificacion respuesta if perfil_usuario != post_padre.creador: notificacion_respuesta = Notificacion(actor=perfil_usuario, target=post_padre.creador, objeto_id=post_padre.id, tipo_objeto="post", tipo_notificacion="comment") notificacion_respuesta.save() # Redirige a la pagina del post_video si pertenece a un video if post_padre.video is not None: return HttpResponseRedirect(reverse('videos:post_video', kwargs={ 'video_id': post_padre.video.id, 'slug': tema.slug, 'post_id': post_id, 'queryset': u'recientes'})) # Redirige a la pagina del post. else: return HttpResponseRedirect(reverse('temas:post', kwargs={'slug': tema.slug, 'post_id': post_id, 'queryset': u'recientes'})) else: return HttpResponseRedirect(reverse('temas:post', kwargs={'slug': tema.slug, 'post_id': post_id, 'queryset': u'recientes'}))
def respuestas_nueva(): try: respuesta = Respuestas.create( usuario = usuario.form['usuario'], #id de el usuario que pone la respuesta pregunta = pregunta.form['pregunta'], #id de pregunta respuesta = respuesta.form['respuesta']) return "OK", 200 except: return "Error!", 404
def respuestas_borrar(id): try: respuesta = Respuestas.select().where(Respuestas.id == id) if respuesta is not None: respuesta[0].delete() return "Se ha eliminado", 200 else: return "Error!", 404 except: return "Error", 404
def respuestas_actualizar(id): try: respuesta = Respuestas.update( usuario=request.form['usuario'], pregunta=request.form['pregunta'], respuesta=request.form['respuesta']).where(Respuestas.id == id) respuestas.execute() return "Ok!", 200 except: return "Error", 404
def respuestas_nueva(): try: respuesta = Respuestas.create( usuario=usuario. form['usuario'], #id de el usuario que pone la respuesta pregunta=pregunta.form['pregunta'], #id de pregunta respuesta=respuesta.form['respuesta']) return "OK", 200 except: return "Error!", 404
def respuestas_actualizar(id): try: respuesta = Respuestas.update( usuario = request.form['usuario'], pregunta = request.form['pregunta'], respuesta = request.form['respuesta'] ).where(Respuestas.id == id) respuestas.execute() return "Ok!", 200 except: return "Error", 404
def respuestas_info(id): try: respuesta = Respuestas.select().where(Respuesta.id == id) return json.dumps(respuesta(0).to_json()), 200 except: return "Error!", 404
def respuestas_todas(): respuestas = Respuestas.select() lista_respuestas = [respuesta.to_json() for respuesta in respuestas] return json.dumps(lista_respuestas)