class UserForm(Form): nickname = StringField(lazy_gettext('Nickname'), [validators.data_required(), validators.length(min=5, max=30)]) email = EmailField(lazy_gettext('Email'), [validators.data_required(), validators.length(max=120)]) delivery_mail_receive = BooleanField(lazy_gettext('Email notification of new goods arrival'), default=True) inv_lang = dict((v, k) for k, v in LANGUAGES.items()) lang = [(v, k) for k, v in inv_lang.iteritems()] language = SelectField(lazy_gettext('Preferred language'), choices=lang) products_per_page = IntegerField(lazy_gettext('Number of products displayed per page'), [validators.NumberRange(min=3)], default=PRODUCTS_PER_PAGE)
class EditUserForm(Form): nickname = StringField(lazy_gettext('User nickname'), [validators.data_required(), validators.length(max=64)]) email = EmailField(lazy_gettext('Email'), [validators.data_required(), validators.length(max=120)]) role = [(str(v), k) for k, v in iter(sorted(USER_ROLES.iteritems(), key=operator.itemgetter(1)))] role = SelectField(lazy_gettext('User role'), choices=role) customer = SelectField('Customer', coerce=int) maker = SelectField('Maker', coerce=int) inv_lang = dict((v, k) for k, v in LANGUAGES.items()) lang = [(v, k) for k, v in inv_lang.iteritems()] language = SelectField(lazy_gettext('User language'), choices=lang)
class AddUserForm(Form): nickname = StringField(lazy_gettext('User nickname'), [validators.data_required(), validators.length(max=64)]) password = PasswordField(lazy_gettext('User password'), [validators.data_required(), validators.length(min=5, max=30), validators.EqualTo('confirm', message=lazy_gettext('Passwords must match'))]) confirm = PasswordField(lazy_gettext('Password confirmation')) email = EmailField(lazy_gettext('Email'), [validators.data_required(), validators.length(max=120)]) role = [(str(v), k) for k, v in iter(sorted(USER_ROLES.iteritems(), key=operator.itemgetter(1)))] role = SelectField(lazy_gettext('User role'), choices=role) customer = SelectField('Customer', coerce=int) maker = SelectField('Maker', coerce=int) inv_lang = dict((v, k) for k, v in LANGUAGES.items()) lang = [(v, k) for k, v in inv_lang.iteritems()] language = SelectField(lazy_gettext('User language'), choices=lang)
def settings_general(): """ Display general settings """ if not logged_in(): return redirect(url_for('general_routes.home')) misc = db_retrieve_table( current_app.config['MYCODO_DB_PATH'], Misc, entry='first') form_settings_general = flaskforms.SettingsGeneral() languages_sorted = sorted(LANGUAGES.items(), key=operator.itemgetter(1)) if request.method == 'POST': form_name = request.form['form-name'] if form_name == 'General': flaskutils.settings_general_mod(form_settings_general) return redirect('/settings/general') return render_template('settings/general.html', misc=misc, languages=languages_sorted, form_settings_general=form_settings_general)