예제 #1
0
def list():
    """Seznam cvičení"""

    usr = getUser()

    if request.params.get("activate"):
        lec = Lecture.get(request.params.get("activate"))
        lec.activate()
        msg("Cvičení %s bylo zapnuto" % lec.name, "success")
        redirect(request.path)

    if request.params.get("deactivate"):
        lec = Lecture.get(request.params.get("deactivate"))
        lec.deactivate()
        msg("Cvičení %s bylo vypnuto" % lec.name, "success")
        redirect(request.path)

    # vložení nového cvičení
    if request.forms.get("add"):
        lec = Lecture.insert(request.forms.decode().get("add"), usr.login)
        if lec:
            msg("Cvičení %s vytvořeno" % lec.name, "success")
            redirect("/lectures/edit/%i" % lec.lecture_id)
        else:
            msg("Chyba při vytváření cvičení", "error")
            redirect(request.path)

    lectures = Lecture.getAll() if usr.inRole("master") else Lecture.getAll(
        usr.login)

    return template("lectures", {
        "lectures": lectures,
        "showLector": usr.inRole("master")
    })
예제 #2
0
def list():
    """Seznam cvičení"""
    
    usr = getUser() 
    
    
    if request.params.get("activate"):
        lec = Lecture.get( request.params.get("activate") )
        lec.activate()
        msg("Cvičení %s bylo zapnuto" % lec.name,"success")
        redirect(request.path)
        
    if request.params.get("deactivate"):
        lec = Lecture.get( request.params.get("deactivate") )
        lec.deactivate()
        msg("Cvičení %s bylo vypnuto" % lec.name,"success")
        redirect(request.path)        
    
    # vložení nového cvičení
    if request.forms.get("add"):
        lec = Lecture.insert( request.forms.decode().get("add"), usr.login )
        if lec:
            msg("Cvičení %s vytvořeno" % lec.name,"success")
            redirect("/lectures/edit/%i" % lec.lecture_id )
        else:
            msg("Chyba při vytváření cvičení","error")
            redirect(request.path)
        
    lectures = Lecture.getAll() if usr.inRole("master") else Lecture.getAll(usr.login) 
    
    return template("lectures", {"lectures" : lectures, "showLector": usr.inRole("master") } )
예제 #3
0
def edit(lecture_id):
    """Úprava specifické cvičení"""

    lecture = Lecture.get(lecture_id)
    form = LectureForm(request.forms.decode(), lecture)
    user = getUser()

    if not (user.inRole("master") or lecture.lector == user.login):
        return unauthorized()

    if request.method == 'POST' and form.validate():
        try:
            lecture.update(name=form.name.data,
                           nonterminal=form.nonterminal.data)
            msg("Cvičení aktualizováno", "success")
        except Exception as e:
            msg("Chyba při aktualizaci - %s" % e, "error")

        redirect(request.path)

    try:
        text = lecture.generate()
    except Exception as e:
        text = "Došlo k chybě : \n %s      \n %s" % (type(e).__name__, e)

    return template("lectures_edit", {
        "lecture": lecture,
        "form": form_renderer(form),
        "text": text
    })
예제 #4
0
def edit(lecture_id):
    """Úprava specifické cvičení"""
    
    lecture = Lecture.get( lecture_id )
    form = LectureForm(request.forms.decode(), lecture)
    user = getUser()

    if not ( user.inRole("master") or lecture.lector == user.login):
        return unauthorized()

    if request.method == 'POST' and form.validate():
        try:
            lecture.update( name = form.name.data, nonterminal = form.nonterminal.data )
            msg("Cvičení aktualizováno","success")
        except Exception as e:
            msg("Chyba při aktualizaci - %s" % e, "error")
        
        redirect(request.path)    
        
    try:
        text =  lecture.generate() 
    except Exception as e:
        text = "Došlo k chybě : \n %s      \n %s" % (type(e).__name__, e)        
         
    return template("lectures_edit", {"lecture" : lecture, "form": form_renderer(form), "text": text } )    
예제 #5
0
def delete(lecture_id):
    """Smaže cvičení"""

    lecture = Lecture.get( lecture_id )
    user = getUser()

    if not ( user.inRole("master") or lecture.lector == user.login):
        return unauthorized()


    answer = request.forms.get("answer") 
    if answer:
        if answer == "Ne": redirect("/lectures")
        if answer == "Ano":
            lecture.remove()
            msg("Cvičení smazáno","success")
            redirect("/lectures")
            
    return template("question", {"question":"Skutečně chcete smazat cvičení '%s'" % lecture.name } )    
예제 #6
0
def delete(lecture_id):
    """Smaže cvičení"""

    lecture = Lecture.get(lecture_id)
    user = getUser()

    if not (user.inRole("master") or lecture.lector == user.login):
        return unauthorized()

    answer = request.forms.get("answer")
    if answer:
        if answer == "Ne": redirect("/lectures")
        if answer == "Ano":
            lecture.remove()
            msg("Cvičení smazáno", "success")
            redirect("/lectures")

    return template(
        "question",
        {"question": "Skutečně chcete smazat cvičení '%s'" % lecture.name})