def page_timer(): """ Display Timer settings """ if not logged_in(): return redirect(url_for('general_routes.home')) timer = db_retrieve_table( current_app.config['MYCODO_DB_PATH'], Timer, entry='all') relay = db_retrieve_table( current_app.config['MYCODO_DB_PATH'], Relay, entry='all') relay_choices = flaskutils.choices_id_name(relay) display_order_unsplit = db_retrieve_table( current_app.config['MYCODO_DB_PATH'], DisplayOrder, entry='first').timer if display_order_unsplit: display_order = display_order_unsplit.split(",") else: display_order = [] form_timer = flaskforms.Timer() if request.method == 'POST': form_name = request.form['form-name'] if form_name == 'addTimer': flaskutils.timer_add(form_timer, request.form['timer_type'], display_order) elif form_name == 'modTimer': if form_timer.timerDel.data: flaskutils.timer_del(form_timer, display_order) elif (form_timer.orderTimerUp.data or form_timer.orderTimerDown.data): flaskutils.timer_reorder(form_timer, display_order) elif form_timer.activate.data: flaskutils.timer_activate(form_timer) elif form_timer.deactivate.data: flaskutils.timer_deactivate(form_timer) elif form_timer.timerMod.data: flaskutils.timer_mod(form_timer) return redirect('/timer') return render_template('pages/timer.html', timer=timer, displayOrder=display_order, relay_choices=relay_choices, form_timer=form_timer)
def page_timer(): """ Display Timer settings """ timer = Timer.query.all() relay = Relay.query.all() relay_choices = flaskutils.choices_id_name(relay) display_order = csv_to_list_of_int(DisplayOrder.query.first().timer) form_timer = flaskforms.Timer() if request.method == 'POST': if not flaskutils.user_has_permission('edit_controllers'): return redirect(url_for('general_routes.home')) form_name = request.form['form-name'] if form_name == 'addTimer': flaskutils.timer_add(form_timer, request.form['timer_type'], display_order) elif form_name == 'modTimer': if form_timer.timerDel.data: flaskutils.timer_del(form_timer) elif form_timer.orderTimerUp.data: flaskutils.timer_reorder(form_timer.timer_id.data, display_order, 'up') elif form_timer.orderTimerDown.data: flaskutils.timer_reorder(form_timer.timer_id.data, display_order, 'down') elif form_timer.activate.data: flaskutils.timer_activate(form_timer) elif form_timer.deactivate.data: flaskutils.timer_deactivate(form_timer) elif form_timer.timerMod.data: flaskutils.timer_mod(form_timer) return redirect('/timer') return render_template('pages/timer.html', timer=timer, displayOrder=display_order, relay_choices=relay_choices, form_timer=form_timer)