Exemplo n.º 1
0
def admin_files(filename):
    u = User(ADMIN)
    if u.isadminsession() and filename in PATHNAMES:
        data = open(PATHNAMES[filename],'r').read()
        return render_template('editfile.html', filename=filename, data=data)
    else:
        return redirect(url_for('site_main'))
Exemplo n.º 2
0
def site_user(name):
    u = User(name)
    if u.isadminsession() or u.authenticated():
        return render_template('user.html', title=u.longname, user=u )
    elif not u.passhash:
        return redirect(url_for('site_getnewpass', name=name))
    elif not u.authenticated():
        return redirect(url_for('site_authenticate', name=name))
    else:
        return redirect(url_for('site_users'))
Exemplo n.º 3
0
def site_userchallengedownload(username, challengename):
    u = User(username)
    if not u.authenticated() and not u.isadminsession():
        return redirect(url_for('site_authenticate', name=username))
    c = u.challenge(challengename)
    rv = app.make_response(c.testcode)
    #rv.headers.add_header('Content-Disposition: attachment', 'filename=' + u.shortname + c.testname + '.py')
    rv.headers.add('Content-Disposition','attachment', filename=u.shortname + c.testname + '.py')
    rv.mimetype = 'text/plain'
    return rv
Exemplo n.º 4
0
def admin_filessubmit(filename):
    u = User(ADMIN)
    if u.isadminsession() and filename in PATHNAMES:
        data = request.form['data']
        open(PATHNAMES[filename],'w').write(data)
    return redirect(url_for('site_main'))
Exemplo n.º 5
0
def site_userchallenge(username, challengename):
    u = User(username)
    c = u.challenge(challengename)
    if not u.authenticated() and not u.isadminsession():
        return redirect(url_for('site_authenticate', name=username))
    return render_template('userchallenge.html', title=u.longname+' - '+c.testname, user=u, challenge=c)