def settings_pi(): """ Display general settings """ if not utils_general.user_has_permission('view_settings'): return redirect(url_for('routes_general.home')) misc = Misc.query.first() form_settings_pi = forms_settings.SettingsPi() pi_settings = get_raspi_config_settings() pigpiod_sample_rate = 999 if os.path.exists('/etc/systemd/system/pigpiod_low.service'): pigpiod_sample_rate = 1 elif os.path.exists('/etc/systemd/system/pigpiod_high.service'): pigpiod_sample_rate = 5 elif os.path.exists('/etc/systemd/system/pigpiod.service'): pigpiod_sample_rate = 1 if request.method == 'POST': if not utils_general.user_has_permission('edit_settings'): return redirect(url_for('routes_general.home')) form_name = request.form['form-name'] if form_name == 'Pi': utils_settings.settings_pi_mod(form_settings_pi) return redirect(url_for('routes_settings.settings_pi')) return render_template('settings/pi.html', misc=misc, pi_settings=pi_settings, pigpiod_sample_rate=pigpiod_sample_rate, form_settings_pi=form_settings_pi)
def settings_pi(): """ Display general settings """ if not utils_general.user_has_permission('view_settings'): return redirect(url_for('routes_general.home')) misc = Misc.query.first() form_settings_pi = forms_settings.SettingsPi() pi_settings = get_raspi_config_settings() # Determine what state pigpiod is currently in pigpiod_sample_rate = '' if os.path.exists('/etc/systemd/system/pigpiod_uninstalled.service'): pigpiod_sample_rate = 'uninstalled' elif os.path.exists('/etc/systemd/system/pigpiod_disabled.service'): pigpiod_sample_rate = 'disabled' elif os.path.exists('/etc/systemd/system/pigpiod_low.service'): pigpiod_sample_rate = 'low' elif os.path.exists('/etc/systemd/system/pigpiod_high.service'): pigpiod_sample_rate = 'high' elif os.path.exists('/etc/systemd/system/pigpiod.service'): pigpiod_sample_rate = 'low' if request.method == 'POST': if not utils_general.user_has_permission('edit_settings'): return redirect(url_for('routes_general.home')) form_name = request.form['form-name'] if form_name == 'Pi': utils_settings.settings_pi_mod(form_settings_pi) return redirect(url_for('routes_settings.settings_pi')) return render_template('settings/pi.html', misc=misc, pi_settings=pi_settings, pigpiod_sample_rate=pigpiod_sample_rate, form_settings_pi=form_settings_pi)