forked from gergely/calendar-social
Use the event UUID as the event identifier in URLs
This commit is contained in:
parent
c7457f6ed1
commit
89605538c2
@ -20,9 +20,10 @@
|
||||
from datetime import datetime
|
||||
import os
|
||||
|
||||
from flask import Flask, current_app, redirect, render_template, request, url_for
|
||||
from flask import Flask, abort, current_app, redirect, render_template, request, url_for
|
||||
from flask_babelex import Babel, get_locale as babel_get_locale
|
||||
from flask_security import SQLAlchemyUserDatastore, current_user, login_required
|
||||
from sqlalchemy.orm.exc import NoResultFound, MultipleResultsFound
|
||||
|
||||
|
||||
def get_locale():
|
||||
@ -234,14 +235,19 @@ class CalendarSocialApp(Flask):
|
||||
return render_template('user-settings.html', form=form)
|
||||
|
||||
@staticmethod
|
||||
@route('/event/<int:event_id>')
|
||||
def event_details(event_id):
|
||||
@route('/event/<string:event_uuid>')
|
||||
def event_details(event_uuid):
|
||||
"""View to display event details
|
||||
"""
|
||||
|
||||
from .models import Event
|
||||
|
||||
event = Event.query.get_or_404(event_id)
|
||||
try:
|
||||
event = Event.query.filter(Event.event_uuid == event_uuid).one()
|
||||
except NoResultFound:
|
||||
abort(404)
|
||||
except MultipleResultsFound:
|
||||
abort(500)
|
||||
|
||||
return render_template('event-details.html', event=event)
|
||||
|
||||
@ -251,9 +257,6 @@ class CalendarSocialApp(Flask):
|
||||
"""View to display profile details
|
||||
"""
|
||||
|
||||
from flask import abort
|
||||
from sqlalchemy.orm.exc import NoResultFound, MultipleResultsFound
|
||||
|
||||
from .models import Profile, User
|
||||
|
||||
profile = current_user.profile
|
||||
|
@ -121,7 +121,7 @@
|
||||
<td class="{% if day.month != calendar.timestamp.month %} other-month{% endif %}{% if day.date() == now.date() %} today{% endif %}">
|
||||
<span class="day-num">{{ day.day }}</span>
|
||||
{% for event in calendar.day_events(day, user=current_user) %}
|
||||
<a href="{{ url_for('event_details', event_id=event.id) }}" class="event">
|
||||
<a href="{{ url_for('event_details', event_uuid=event.event_uuid) }}" class="event">
|
||||
{{ event.start_time_for_user(current_user).strftime('%H:%M') }}–{{ event.end_time_for_user(current_user).strftime('%H:%M') }}
|
||||
{{ event.title }}
|
||||
</a>
|
||||
|
Loading…
Reference in New Issue
Block a user