Esempio n. 1
0
def home():
    rc = RepositorioCurso()
    general = rc.get_general()
    if general[3]:
        return render_template("index.html", mensaje=None, hay_repo=True)
    else:
        return render_template("index.html", mensaje=None, hay_repo=False)
Esempio n. 2
0
def update(id_curso):
    rc = RepositorioCurso()
    if request.method == "GET":
        curso = rc.get_one(int(id_curso))
        if not curso:
            return "Error: curso no encontrado. id_curso: " + str(id_curso)
        form = FlaskForm()
        return render_template("nuevo_curso.html",
                               mensaje=None,
                               form=form,
                               curso=curso)
    else:
        # Capturar los datos del request
        id_c = request.form["id_curso"]
        anio = request.form["anio"]
        division = request.form["division"]
        descripcion = request.form["descripcion"]
        curso = Curso(id_c, anio, division, descripcion)
        #HACER EL UPDATE
        if rc.update(curso):
            mensaje = "Datos del curso modificados"
        else:
            mensaje = "Error al modificar los datos del curso"
        #Redirigir a cursos:
        return redirect(url_for('cursos', mensaje=mensaje))
Esempio n. 3
0
def cursos():
    if request.args.get("mensaje"):
        mensaje = request.args.get("mensaje")
    else:
        mensaje = None
    rc = RepositorioCurso()
    cursos = rc.get_all()
    form = FlaskForm()
    return render_template("cursos.html",
                           mensaje=mensaje,
                           cursos=cursos,
                           form=form)
Esempio n. 4
0
def subir():
    import subprocess
    rc = RepositorioCurso()
    general = rc.get_general()
    if general[2] and general[3] and general[4]:
        x = subprocess.run(["./publicador.sh", general[3], general[4]],
                           stdout=subprocess.PIPE,
                           encoding="utf-8")
        flash(x.stdout)
        return redirect(url_for('home'))
    else:
        flash("Error: sin mail, usuario o contraseña para subir el sitio")
        return redirect(url_for('home'))
Esempio n. 5
0
def delete(id_curso):
    # Hace el delete, verificando antes que no tenga materias guardadas
    rc = RepositorioCurso()
    if rc.cuantas_materias(id_curso) == 0:
        if rc.delete(id_curso):
            mensaje = "Curso eliminado"
        else:
            mensaje = "Error al eliminar el curso"
    else:
        mensaje = "Error: el curso tiene materias asignadas"

    #Redirigir a cursos:
    return redirect(url_for('cursos', mensaje=mensaje))
Esempio n. 6
0
def general():
    if request.method == "GET":
        rc = RepositorioCurso()
        general = rc.get_general()
        if not general:
            return "Error: datos no encontrados."
        form = FlaskForm()
        return render_template("general.html", form=form, general=general)
    else:
        # Capturar los datos del request
        nombre = request.form["nombre"]
        numero = request.form["numero"]
        mail = request.form["mail"]
        tipo_hosting = request.form["tipo_hosting"]
        if tipo_hosting == "github":
            usuario = request.form["usuario_github"]
            clave = request.form["clave_github"]

        #HACER EL UPDATE
        rc = RepositorioCurso()
        if tipo_hosting == "github":
            if rc.actualizar_general(nombre, numero, mail, usuario, clave):
                mensaje = "Datos de la escuela y el proyecto modificados"
            else:
                mensaje = "Error al modificar los datos de la escuela"
        else:
            if rc.actualizar_general(nombre, numero, mail):
                mensaje = "Datos de la escuela modificados"
            else:
                mensaje = "Error al modificar los datos de la escuela"
        #Redirigir a cursos:
        return redirect(url_for('home', mensaje=mensaje))
Esempio n. 7
0
def materias(id_curso=None):
    rc = RepositorioCurso()
    cursos = rc.get_all()
    if request.args.get("mensaje"):
        mensaje = request.args.get("mensaje")
    else:
        mensaje = None
    rm = RepositorioMateria()
    if id_curso and int(id_curso) > 0:
        materias = rm.get_all_curso(id_curso)
        curso = rc.get_one(id_curso)
    else:
        materias = rm.get_all()
        curso = None
    form = FlaskForm()
    return render_template("materias.html",
                           mensaje=mensaje,
                           materias=materias,
                           form=form,
                           cursos=cursos,
                           curso=curso)
Esempio n. 8
0
def create():
    if request.method == "GET":
        form = FlaskForm()
        return render_template("nuevo_curso.html",
                               form=form,
                               mensaje=None,
                               curso=None)
    else:
        # Capturar los datos del request
        anio = request.form["anio"]
        division = request.form["division"]
        descripcion = request.form["descripcion"]
        curso = Curso(None, anio, division, descripcion)
        #GUARDAR EL NUEVO CURSO
        rc = RepositorioCurso()
        id_curso = rc.create(curso)
        if id_curso:
            mensaje = "Curso creado correctamente"
        else:
            mensaje = "Error al crear el curso"

        #Redirigir a cursos:
        return redirect(url_for('cursos', mensaje=mensaje))
Esempio n. 9
0
def update_materia(id_materia):
    rm = RepositorioMateria()
    rc = RepositorioCurso()
    if request.method == "GET":
        cursos = rc.get_all()
        materia = rm.get_one(int(id_materia))
        if not materia:
            return "Error: materia no encontrada. id_materia: " + str(
                id_materia)
        form = FlaskForm()
        return render_template("nueva_materia.html",
                               mensaje=None,
                               form=form,
                               materia=materia,
                               cursos=cursos)
    else:
        # Capturar los datos del request
        idm = request.form["id_materia"]
        nombre = request.form["nombre"]
        id_curso = request.form["curso"]
        docente = request.form["docente"]
        mail = request.form["mail"]
        if request.form.get("sticky"):
            sticky = True
        else:
            sticky = False
        if request.form.get("cambiar_logo"):
            logo = request.form["logo"]
        else:
            logo = None
        rc = RepositorioCurso()
        curso = rc.get_one(id_curso)
        materia = Materia(idm, nombre, curso, logo, sticky, docente, mail)

        #HACER EL UPDATE
        if materia.logo:
            resultado = rm.update(materia)
        else:
            resultado = rm.update(materia, cambiar_logo=False)
        if resultado:
            mensaje = "Datos de la materia modificados"
        else:
            mensaje = "Error al modificar los datos de la materia"
        #Redirigir a cursos:
        return redirect(url_for('materias', mensaje=mensaje))
Esempio n. 10
0
def create_materia(curso=None):
    if request.method == "GET":
        form = FlaskForm()
        rc = RepositorioCurso()
        cursos = rc.get_all()
        return render_template("nueva_materia.html",
                               form=form,
                               mensaje=None,
                               materia=None,
                               cursos=cursos,
                               curso=curso)
    else:
        # Capturar los datos del request
        nombre = request.form["nombre"]
        id_curso = request.form["curso"]
        docente = request.form["docente"]
        mail = request.form["mail"]

        if request.form.get("sticky"):
            sticky = True
        else:
            sticky = False
        logo = request.form["logo"]
        rc = RepositorioCurso()
        curso = rc.get_one(id_curso)
        materia = Materia(None, nombre, curso, logo, sticky, docente, mail)
        #GUARDAR EL NUEVO CURSO
        rm = RepositorioMateria()
        id_materia = rm.create(materia)
        if id_materia:
            mensaje = "Materia creada correctamente"
        else:
            mensaje = "Error al crear la materia"

        #Redirigir a cursos:
        flash(mensaje)
        return materias(id_curso)
Esempio n. 11
0
def create_materia_curso(id_curso):
    rc = RepositorioCurso()
    c = rc.get_one(id_curso)
    return create_materia(c)