% import 'static.html' as admin_static with context [# ---------------------- Pager -------------------------- #] % macro pager(page, num_pages, generator) % endmacro % macro simple_pager(page, have_next, generator) % endmacro [# ---------------------- Modal Window ------------------- #] % macro add_modal_window(modal_window_id='fa_modal_window', modal_label_id='fa_modal_label') ## % endmacro % macro add_modal_button(url='', title='', content='', modal_window_id='fa_modal_window', btn_class='') [[ content|safe ]] % if 'Create' in content % endif % endmacro [# ---------------------- Fields -------------------------- #] [# % macro field_extra(field) #] [# % if field.description #] [#

[[ field.description|safe ]]

#] [# % endif #] [# % if direct_error #] [# #] [# % endif #] [# % endmacro #] % macro image_field(field, is_required)
[# id="[[ field.name ]]-field"> #]
% if is_required [[ field(required='', **kwargs)|safe ]] % else [[ field(**kwargs)|safe ]] % endif [# [[ field_extra(field) ]] #]
% endmacro % macro media_field(field, is_required, form)
[#
#]
[#
#] % if field.name in ['video', 'audio', 'image', 'picture', 'photo']
% else
% set _dummy = kwargs.setdefault('class', 'input')
% endif % if is_required [[ field(required='', **kwargs)|safe ]] % else [[ field(**kwargs)|safe ]] % endif [# [[ field_extra(field) ]] #] % if field.name in ['video', 'audio', 'image', 'photo', 'picture']
% endif
% for f in fields [% if f in ['start', 'end'] and field.name in ['video', 'audio', 'youtube_id', 'spotify_id', 'archive_id', 'soundcloud_id', 'bandcamp_id'] %] [[ media_option_field(form[f], False) ]] % elif f in ['anchor'] and field.name in ['image', 'photo', 'picture'] [[ media_option_field(form[f], False) ]] [# % elif field.name in ['image', 'photo', 'picture']
#] % endif % endfor
% endmacro % macro media_option_field(field, is_required) % if field.name in ['start', 'anchor']
% endif
% if field.type == 'Select2Field'
% set _dummy = kwargs.setdefault('class', 'input select') % else
% set _dummy = kwargs.setdefault('class', 'input') % endif % if is_required [[ field(required='', **kwargs)|safe ]] % else [[ field(**kwargs)|safe ]] % endif [# [[ field_extra(field) ]] #]
% if field.name in ['end', 'anchor']
% endif % endmacro % macro null_field() % endmacro % macro toggle_field(field, is_required)
[[ field(type="checkbox", id=field.id, class_="is-checkradio is-success is-rtl is-marginless") ]] [# [[ field_extra(field) ]] #]
% endmacro % macro datetime_field(field, is_required)
% set _dummy = kwargs.setdefault('class', 'input') % if is_required [[ field(required='', **kwargs)|safe ]] % else [[ field(**kwargs)|safe ]] % endif [# [[ field_extra(field) ]] #]
% endmacro % macro select_field(field, is_required)
% if field.type == 'QuerySelectField' % set _dummy = kwargs.setdefault('class', 'input select') % else % set _dummy = kwargs.setdefault('class', 'input') % endif [# % if is_required#] [# [[ field(required='', **kwargs)|safe ]]#] [# % else#] [[ field(**kwargs)|safe ]] [# % endif#] [# [[ field_extra(field) ]] #]
% endmacro % macro # icon_field(field) % endmacro [# ---------------------- Forms -------------------------- #] % macro render_field(form, field, kwargs={}, model_name=None, caller=None) % set direct_error = h.is_field_error(field.errors) % if ac.debug.form [[ field.type ]] % endif % set is_required=False % if field.name in required_fields|default([]) % set is_required=True % endif ## % if field.name in ['image', 'photo', 'picture', 'video', 'audio', 'youtube_id', 'spotify_id', 'soundcloud_id', 'archive_id', 'bandcamp_id'] % if field.name in ['image', 'photo', 'picture', 'video', 'audio', 'youtube_id'] [[ media_field(field, is_required, form) ]] [# % elif field.name in ['start', 'end', 'anchor'] #] [# [[ media_option_field(field, is_required) ]] #] % elif field.name == 'fit_image' [[ null_field() ]] % elif field.type == 'BooleanField' [[ toggle_field(field, is_required) ]] % elif field.type == 'DateTimeField' [[ datetime_field(field, is_required) ]] % elif field.type == 'QuerySelectMultipleField' or field.type == 'QuerySelectField' [[ select_field(field, is_required) ]] [# % elif field.name == 'icon' #] [# [[ # icon_field(field) ]] #] % elif field.name not in ['start', 'end', 'anchor']
% set _dummy = kwargs.setdefault('class', 'input') % if is_required [[ field(required='', **kwargs)|safe ]] % else [[ field(**kwargs)|safe ]] % endif [# [[ field_extra(field) ]] #]
% endif % if caller [[ caller(form, field, direct_error, kwargs) ]] % endif % endmacro % macro render_header(form, text)

[[ text ]]

% endmacro % macro render_form_fields(form, form_opts=None, model_name=None) % if form.hidden_tag is defined [[ form.hidden_tag() ]] % else % if csrf_token % endif % for f in form if f.widget.input_type == 'hidden' [[ f ]] % endfor % endif % if form_opts and form_opts.form_rules % for r in form_opts.form_rules [[ r(form, form_opts=form_opts) ]] % endfor % else % for f in form if f.widget.input_type != 'hidden' [# % if f.name in ['anchor', 'start', 'end'] % continue #] % if f.name.endswith('_id') and f.name not in ['youtube_id', 'spotify_id', 'archive_id', 'soundcloud_id', 'bandcamp_id'] % continue % endif % if form_opts % set kwargs = form_opts.widget_args.get(f.short_name, {}) % else % set kwargs = {} % endif [[ render_field(form, f, kwargs, model_name=model_name) ]] % endfor % endif % endmacro % macro form_tag(form=None, action=None)
[[ caller() ]]
% endmacro % macro render_form_buttons(cancel_url, extra=None, is_modal=False)
% if cancel_url % endif % if extra
% endif
[# % if extra #] [# [[ extra ]] #] [# % endif #] % endmacro % macro render_form(form, cancel_url, extra=None, form_opts=None, action=None, is_modal=False, model_name=None) % call form_tag(action=action) [[ render_form_fields(form, form_opts=form_opts, model_name=model_name) ]] [[ render_form_buttons(cancel_url, extra, is_modal) ]] % endcall % endmacro % macro form_css() [# % if editable_columns % endif #] % endmacro % macro form_js() [# % if editable_columns % endif #] % endmacro [# % macro extra() % if admin_view.can_create % endif % if admin_view.can_edit % endif % endmacro 3}