예제 #1
0
def home_estudiante(request):
    estudiante = utils.reconstruir_estudiante(request)
    envios = Envio.buscar_envios_estudiante(estudiante.id)[0:3]
    notificaciones = Notificacion.buscar_notificaciones_pendientes_usuario(
        estudiante.id)[0:3]
    lista_parejas = ResultadoTarea.parejas_tarea_resultado(estudiante,
                                                           True)[0:3]

    estadisticas = dict()
    estadisticas["respuestas"] = ComentarioPregunta.objects.filter(
        autor_id=estudiante.id).count()
    estadisticas["intentos"] = Envio.objects.filter(
        estudiante_id=estudiante.id).count()
    estadisticas["resueltos"] = ResultadoEstudiante.objects.filter(
        estudiante_id=estudiante.id).filter(resuelto=True).count()
    if estadisticas["intentos"] > 0:
        estadisticas["tasa"] = str(
            int((estadisticas["resueltos"] / estadisticas["intentos"]) *
                100)) + "%"
    else:
        estadisticas["tasa"] = "0%"

    template_name = "dashboard/homes/home_estudiante.html"
    context = {
        "envios_cortados": envios,
        "notificaciones_cortadas": notificaciones,
        "lista_tareas": lista_parejas,
        "estudiante": estudiante,
        "estadisticas": estadisticas
    }

    return utils.render_page(request, template_name, context)
예제 #2
0
def tareas(request, todas=True, titulo="Lista de tareas"):
    """
       Muestra las tareas de un estudiante, usando el template 'tareas.html'
       Si el párametro todas es verdadero se muestran todas las tareas.
       De lo contrario se muestran sólo las tareas pendientes.
    """
    estudiante = utils.reconstruir_estudiante(request)
    lista_parejas = ResultadoTarea.parejas_tarea_resultado(estudiante, todas)
    template_name = "dashboard/tareas/tareas.html"
    context = {"lista_tareas": lista_parejas, "titulo": titulo}
    return utils.render_page(request, template_name, context)