class EditContentForm(BaseContentForm): slug = fields.StringField('Slug') lang = fields.SmartSelect2Field( 'Language', choices=lambda: [(lng, lng) for lng in current_app.config.get( 'BABEL_LANGUAGES', ['en'])]) translations = fields.HiddenField('Translations') status = fields.HiddenField('status') content = fields.TextAreaField('Content')
class BaseContentForm(Form): """Base form for all contents""" title = fields.StringField('Title', [validators.required()]) summary = fields.TextAreaField('Summary') category = fields.Select2TagsField('Category', save_as_list=False) tags = fields.Select2TagsField('Tags', save_as_list=True) authors = fields.Select2TagsField('Authors', save_as_list=True) date = fields.DateTimeField('Date') modified = fields.HiddenField('Modified')
class BaseForm(Form): title = fields.StringField( 'Title', [validators.required()], description='TIP: `My Title` turns to`my-title.html` url') summary = fields.TextAreaField('Summary') category = fields.Select2TagsField( 'Category', [validators.CallableValidator(validate_category)], save_as_list=False, render_kw=get_category_kw, default=get_default_category, description=('TIP: Leave blank and url will be `/my-title.html`<br>' '`foo` url will be `/foo/my-title.html` <br>' '`foo/bar` url will be `/foo/bar/my-title.html` <br>')) authors = fields.Select2TagsField('Authors', [validators.required()], save_as_list=True, render_kw=get_authors_kw, default=get_default_author)
class BaseForm(Form): title = fields.StringField(_('Title'), [validators.required()]) # todo: validade existing category/title summary = fields.TextAreaField(_('Summary')) category = fields.Select2TagsField( _('Category'), [validators.CallableValidator(validate_category)], save_as_list=False, render_kw={'data-tags': '["hello", "world"]'}, # todo: ^ settings.default_categories + db_query default='general' # todo: default should come from settings ) authors = fields.Select2TagsField( _('Authors'), [validators.required()], save_as_list=True, render_kw={'data-tags': '["Bruno Rocha", "Karla Magueta"]'}, # todo: settings.default_authors + current + db_query default=['Bruno Rocha'] # todo: default should be current user if auth else O.S user else ? )
class MarkdownEditForm(BaseEditForm): content = fields.TextAreaField('Markdown Content')
class HTMLEditForm(BaseEditForm): content = fields.TextAreaField('HTML Content')
class PlainEditForm(BaseEditForm): content = fields.TextAreaField('Plain Content')