Skip to content
Snippets Groups Projects
Select Git revision
  • ffd7524c5f6f9fc099f2057e172a1f3892f5e204
  • master default protected
  • th/caddy-wip
  • th/caddy
  • th/lego
  • th/acmebot
  • pyzabbix
  • th/keycloak
8 results

protokollsystem.yml

Blame
  • Code owners
    Assign users and groups as approvers for specific file changes. Learn more.
    legacy.py 2.16 KiB
    from server import *
    
    def legacy_index():
    	# handle legacy urls...
    	if 'course' in request.args:
    		return redirect(url_for('course', handle=request.args['course']), code=302)
    	if 'view' in request.args:
    		if (request.args['view'] == 'player') and ('lectureid' in request.args):
    			courses = query('SELECT courses.handle FROM courses JOIN lectures ON courses.id = lectures.course_id WHERE lectures.id = ?', request.args['lectureid'])
    			if not courses:
    				return "Not found", 404
    			return redirect(url_for('lecture', course=courses[0]['handle'], id=request.args['lectureid']), code=302)
    		if request.args['view'] == 'faq':
    			return redirect(url_for('faq'), code=302)
    	return None
    
    @app.route('/site/')
    @app.route('/site/<string:phpfile>')
    def legacy(phpfile=None): #pylint: disable=too-many-return-statements
    	if phpfile == 'embed.php' and ('lecture' in request.args):
    		courses = query('SELECT courses.handle FROM courses JOIN lectures ON courses.id = lectures.course_id WHERE lectures.id = ?', request.args['lecture'])
    		if not courses:
    			return render_endpoint('index', 'Diese Seite existiert nicht!'), 404
    		return redirect(url_for('embed', course=courses[0]['handle'], id=request.args['lecture']), code=302)
    	if phpfile == 'embed.php' and ('vid' in request.args):
    		lectures = query('SELECT lecture_id FROM videos WHERE id = ?', request.args['vid'])
    		if not lectures:
    			return render_endpoint('index', 'Dieses Videos existiert nicht!'), 404
    		courses = query('SELECT courses.handle FROM courses JOIN lectures ON courses.id = lectures.course_id WHERE lectures.id = ?', lectures[0]['lecture_id'])
    		if not courses:
    			return render_endpoint('index', 'Diese Seite existiert nicht!'), 404
    		return redirect(url_for('embed', course=courses[0]['handle'], id=lectures[0]['lecture_id']), code=302)
    	if phpfile == 'feed.php' and ('all' in request.args):
    		return redirect(url_for('feed'), code=302)
    	if phpfile == 'feed.php' and ('newcourses' in request.args):
    		return redirect(url_for('courses_feed'), code=302)
    	if phpfile == 'feed.php':
    		return redirect(url_for('feed', handle=request.args.copy().popitem()[0]), code=302)
    	print("Unknown legacy url:", request.url)
    	return redirect(url_for('index'), code=302)