def new_ticket_type(copy_id): form = NewTicketTypeForm() if form.validate_on_submit(): expires = form.expires.data if form.expires.data else None token = form.discount_token.data if form.discount_token.data else None description = form.description.data if form.description.data else None tt = TicketType(form.order.data, form.admits.data, form.name.data, form.type_limit.data, expires=expires, discount_token=token, description=description, personal_limit=form.personal_limit.data, has_badge=form.has_badge.data, is_transferable=form.is_transferable.data) tt.prices = [ TicketPrice('GBP', form.price_gbp.data), TicketPrice('EUR', form.price_eur.data) ] app.logger.info('%s adding new TicketType %s', current_user.name, tt) db.session.add(tt) db.session.commit() flash('Your new ticket type has been created') return redirect(url_for('.ticket_type_details', type_id=tt.id)) if copy_id != -1: form.init_with_ticket_type(TicketType.query.get(copy_id)) return render_template('admin/new-ticket-type.html', ticket_type_id=copy_id, form=form)
def ticket_types(): if current_user.admin: form = None if request.method == 'POST': form = NewTicketTypeForm() if form.validate(): tt = TicketType(form.name.data, form.capacity.data, form.limit.data) tt.prices = [ TicketPrice('GBP', form.price_gbp), TicketPrice('EUR', form.price_eur) ] db.session.add(tt) db.session.commit() return redirect(url_for('ticket_types')) types = TicketType.query.all() if not form: form = NewTicketTypeForm(formdata=None) return render_template('admin/admin_ticket_types.html', types=types, form=form) else: return (('', 404))