Example #1
0
 def handle_request(self, eid, *args, **kwargs):
     action_text = 'Edit'
     action_url = url_for('event_edit', eid=eid)
     event = Event.query.filter_by(id=eid).first_or_404()
     if not event.league.editable_by_user(current_user):
         abort(403)
     form = EventForm(obj=event)
     if form.validate_on_submit():
         event.name = form.name.data
         db.session.commit()
         return redirect(url_for('event', eid=event.id))
     else:
         return render_template('event-edit.html', form=form, action_text=action_text, action_url=action_url,
                                **self.context)
Example #2
0
 def handle_request(self, lid, *args, **kwargs):
     action_text = 'Create'
     action_url = url_for('event_create', lid=lid)
     league = League.query.filter_by(id=lid).first_or_404()
     if not league.editable_by_user(current_user):
         abort(403)
     if request.method == 'POST':
         form = EventForm(request.form)
         if form.validate_on_submit():
             event = Event(form.name.data, league)
             db.session.add(event)
             for stage_data in form.stages.data:
                 stage = Stage(event, stage_data['start_date'], stage_data['end_date'])
                 db.session.add(stage)
             db.session.commit()
             return redirect(url_for('event', eid=event.id))
         else:
             return render_template('event-edit.html', form=form, action_text=action_text, action_url=action_url,
                                    **self.context)
     if request.method == 'GET':
         form = EventForm()
         return render_template('event-edit.html', form=form, action_text=action_text, action_url=action_url,
                                **self.context)