Compare commits
2 Commits
9ecaf0211f
...
c3dcccb479
Author | SHA1 | Date | |
---|---|---|---|
c3dcccb479 | |||
5ec5ba488d |
@ -96,34 +96,46 @@ def devices():
|
|||||||
|
|
||||||
|
|
||||||
@app.route("/calendar", methods=['GET', 'POST', 'DELETE'])
|
@app.route("/calendar", methods=['GET', 'POST', 'DELETE'])
|
||||||
@login_required
|
|
||||||
def calendar():
|
def calendar():
|
||||||
|
if not current_user.is_authenticated:
|
||||||
|
return flask.render_template('login.html')
|
||||||
|
|
||||||
calendars = backend.calendarsFromDb(current_user)
|
calendars = backend.calendarsFromDb(current_user)
|
||||||
|
|
||||||
form = CalendarForm()
|
form = CalendarForm()
|
||||||
if request.method == 'POST':
|
if request.method == 'POST':
|
||||||
|
|
||||||
if form.validate_on_submit():
|
if request.form.get("submit") == "Remove":
|
||||||
# try to add the submitted ical as a calendar
|
calendar = db.session.query(Calendar).filter(Calendar.calendar_id==request.form.get("calendar")).first()
|
||||||
print(form.iCalURL.data, flush=True)
|
db.session.delete(calendar)
|
||||||
|
db.session.commit()
|
||||||
|
return flask.redirect(url_for('calendar'))
|
||||||
|
|
||||||
|
elif form.validate_on_submit():
|
||||||
ical.icalToCalendarDb(form.iCalURL.data, form.calName.data, current_user)
|
ical.icalToCalendarDb(form.iCalURL.data, form.calName.data, current_user)
|
||||||
|
return flask.redirect(url_for('calendar'))
|
||||||
|
|
||||||
|
|
||||||
# otherwise it is a javascript POST
|
# otherwise it is a javascript POST
|
||||||
else:
|
else:
|
||||||
|
try:
|
||||||
calId = request.json.get('calendar_id')
|
calId = request.json.get('calendar_id')
|
||||||
color = request.json.get('color', None)
|
color = request.json.get('color', None)
|
||||||
toggle = request.json.get('toggle', None)
|
toggle = request.json.get('toggle', None)
|
||||||
|
except:
|
||||||
|
return flask.render_template('calendar.html', calendars=calendars, form=form)
|
||||||
|
|
||||||
if color != None:
|
if color != None:
|
||||||
current_user.updateCalendar(calId, color=color)
|
current_user.updateCalendar(calId, color=color)
|
||||||
if toggle != None:
|
if toggle != None:
|
||||||
current_user.updateCalendar(calId, toggle=toggle)
|
current_user.updateCalendar(calId, toggle=toggle)
|
||||||
# toggle specific calendar of user
|
# toggle specific calendar of user
|
||||||
|
try:
|
||||||
calId = request.json.get('calendar_id')
|
calId = request.json.get('calendar_id')
|
||||||
color = request.json.get('color', None)
|
color = request.json.get('color', None)
|
||||||
toggle = request.json.get('toggle', None)
|
toggle = request.json.get('toggle', None)
|
||||||
|
except:
|
||||||
|
return flask.render_template('calendar.html', calendars=calendars, form=form)
|
||||||
|
|
||||||
if color != None:
|
if color != None:
|
||||||
current_user.updateCalendar(calId, color=color)
|
current_user.updateCalendar(calId, color=color)
|
||||||
@ -131,14 +143,6 @@ def calendar():
|
|||||||
current_user.updateCalendar(calId, toggle=toggle)
|
current_user.updateCalendar(calId, toggle=toggle)
|
||||||
# toggle specific calendar of user
|
# toggle specific calendar of user
|
||||||
|
|
||||||
return 'OK'
|
|
||||||
|
|
||||||
elif request.method == 'DELETE':
|
|
||||||
# do nothing
|
|
||||||
return 'NONE'
|
|
||||||
else:
|
|
||||||
# POST Error 405
|
|
||||||
print("405")
|
|
||||||
|
|
||||||
return flask.render_template('calendar.html', calendars=calendars, form=form)
|
return flask.render_template('calendar.html', calendars=calendars, form=form)
|
||||||
|
|
||||||
|
@ -9,6 +9,13 @@
|
|||||||
|
|
||||||
{% for item in calendars %}
|
{% for item in calendars %}
|
||||||
<div class="container">
|
<div class="container">
|
||||||
|
<!--action button-->
|
||||||
|
<div style="width: 4rem; margin: 1rem;">
|
||||||
|
<form action="" method="post">
|
||||||
|
<input type="hidden" name="calendar" value={{ item.calendarId }}>
|
||||||
|
<input type="submit" name="submit" value="Remove">
|
||||||
|
</form>
|
||||||
|
</div>
|
||||||
<!--Name-->
|
<!--Name-->
|
||||||
<div style="width: 15rem; margin: 1rem;">{{ item.name }}</div>
|
<div style="width: 15rem; margin: 1rem;">{{ item.name }}</div>
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user