def create(): form = MonitorForm(request.form) if request.method == 'POST' and form.validate(): new_monitor = Monitor(state='INACTIVE') form.populate_obj(new_monitor) db.session.add(new_monitor) db.session.commit() update_monitor_scheduler(new_monitor) return redirect(url_for('monitor_detail', monitor_id=new_monitor.id)) return render_template('monitor_edit.html', form=form, sources=app.sources, create=True)
def monitor_edit(monitor_id): monitor = Monitor.query.get_or_404(monitor_id) form = MonitorForm(request.form, monitor) if form.validate_on_submit(): form.populate_obj(monitor) db.session.add(monitor) db.session.commit() if not monitor.active: monitor.record_run('INACTIVE', 'Monitor edited', None) update_monitor_scheduler(monitor) return redirect(url_for('monitor_detail', monitor_id=monitor.id)) return render_template('monitor_edit.html', form=form, sources=app.sources, monitor=monitor, create=False)