diff --git a/db_schema.sql b/db_schema.sql
index e48bd14cce69d37acecd4b4f4f8af42061395f66..58cef7e751703571adcf6256fe601f9bb7aa57d0 100644
--- a/db_schema.sql
+++ b/db_schema.sql
@@ -135,6 +135,14 @@ CREATE TABLE IF NOT EXISTS `stream_stats` (
   `hls_720p` INTEGER NOT NULL DEFAULT '0',
   `hls_360p` INTEGER NOT NULL DEFAULT '0'
 );
+CREATE TABLE IF NOT EXISTS `import_campus` (
+	`id` INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
+	`course_id` INTEGER NOT NULL,
+	`last_checked` datetime NOT NULL,
+	`type` varchar(255),
+	`url` varchar(2084),
+	`changed` INTEGER NOT NULL DEFAULT '0' 
+);
 CREATE TABLE IF NOT EXISTS `users` (
 `id` INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
   `name` varchar(32) NOT NULL,
diff --git a/server.py b/server.py
index 7fa2ced0e5c7af7fd221c8408eaf845351756561..8a5f92aced2c51020baa99e66bc61304e938fd9d 100755
--- a/server.py
+++ b/server.py
@@ -33,6 +33,8 @@ if __name__ == '__main__':
 	config['SQLITE_INIT_DATA'] = True
 	config['DEBUG'] = True
 config.from_pyfile('config.py', silent=True)
+if config['DEBUG']:
+	app.jinja_env.auto_reload = True
 
 from db import query, searchquery, ldapauth, ldapget
 
@@ -322,16 +324,25 @@ def log():
 	changelog = query('SELECT *, ( "table" || "." || id_value || "." ||field) as path FROM changelog LEFT JOIN users ON (changelog.who = users.id) ORDER BY "when" DESC LIMIT 50')
 	return render_template('log.html', changelog=changelog)
 
-@app.route('/import/<source>/<id>')
-@app.route('/import/<source>/<int:numid>')
+@app.route('/import/<source>/<id>', methods=['GET', 'POST'])
+@app.route('/import/<source>/<int:numid>', methods=['GET', 'POST'])
 @handle_errors('course', 'Diese Veranstaltung existiert nicht!', 404, IndexError)
 @mod_required
 def import_from(numid=None, source=None, id=None):
 	if source != "campus":
 		return "Unknown source", 404
+
+	campus={}
+	for i in request.values:
+		group, id, field = i.split('.', 2)
+		if group == 'campus':
+			if not id in  campus:
+				campus[id] = {}
+			campus[id][field] = request.values[i]
+
 	if numid:
 		courses = query('SELECT * FROM courses WHERE id = ?', numid)[0]
 	else:
 		courses = query('SELECT * FROM courses WHERE handle = ?', id)[0]
 	lectures = query('SELECT * FROM lectures WHERE course_id = ?', courses['id'])
-	return render_template('import_campus.html', course=courses, lectures=lectures)
+	return render_template('import_campus.html', course=courses, lectures=lectures, campus=campus)
diff --git a/templates/import_campus.html b/templates/import_campus.html
index ea49c0b933c6385abc28dc583a2c4f2e5d12bb7e..b43f6820cbacf85dcd65fbf94088f367028e9bea 100644
--- a/templates/import_campus.html
+++ b/templates/import_campus.html
@@ -10,17 +10,22 @@
 			<div>
 				<p>Es folgen viele Pärchen an Campus-URL und Veranstaltungstyp Pärchen. Die Campus URL bekommt man aus dem Campus-System (<a href="https://www.campus.rwth-aachen.de/rwth/all/groups.asp">hier</a>). Der Veranstaltungstyp ist z.B. "Vorlesung" oder "Übung" oder "Praktikum".
 				</p>
-				<ul class="list-group row">
-					<li class="list-group-item form-inline">
-						<span class="input-group">
-							<input class="form-control" type="text" placeholder="url">
-						</span>
-						<span class="input-group">
-							<input class="form-control" type="test" placeholder="typ">
-						</span>
-					</li>
-				</ul>
-				<a class="btn btn-default pull-right">speichern und neu Laden</a>
+				<p>
+				{{ campus }}
+				</p>
+				<form method="post">
+					<ul class="list-group row">
+						<li class="list-group-item form-inline">
+							<span class="input-group">
+								<input class="form-control" type="text" name="campus.0.url" placeholder="url">
+							</span>
+							<span class="input-group">
+								<input class="form-control" type="test" name="campus.0.type" placeholder="type">
+							</span>
+						</li>
+					</ul>
+					<button class="btn btn-default pull-right" type="submit">speichern und neu Laden</button>
+				</form>
 			</div>
 			<div>
 				<ul class="list-group row">