70 lines
No EOL
2.6 KiB
HTML
70 lines
No EOL
2.6 KiB
HTML
{% extends "base.html" %}
|
|
{% from 'utils.html' import custom_render_form_row,make_tabs %}
|
|
{% from 'bootstrap/form.html' import render_form, render_field, render_form_row %}
|
|
|
|
{% set col_size = ('lg',2,6) %}
|
|
{% set col_size_seq = ('lg',10,1) %}
|
|
|
|
{% macro render_fields(fields) %}
|
|
{% for field in fields %}
|
|
{% if field is sequence %}
|
|
{{ custom_render_form_row(field|list,col_map={'transcode_edit':('lg',1),'transcode_new':('lg',1)},render_args={'form_type':'horizontal'}) }}
|
|
{% else %}
|
|
{{ custom_render_form_row([field],render_args={'form_type':'horizontal','horizontal_columns':col_size}) }}
|
|
{% endif %}
|
|
{% endfor %}
|
|
{% endmacro %}
|
|
|
|
{% set config_tabs = [] %}
|
|
{% for name, fields in [
|
|
('Jellyfin',[form.jellyfin_url,form.jellyfin_username,form.jellyfin_passwd]),
|
|
('QBittorrent',[form.qbt_url,form.qbt_username,form.qbt_passwd]),
|
|
('Sonarr',[form.sonarr_url,form.sonarr_api_key]),
|
|
('Radarr',[form.radarr_url,form.radarr_api_key]),
|
|
('Portainer',[form.portainer_url,form.portainer_username,form.portainer_passwd]),
|
|
('Jackett',[form.jackett_url,form.jackett_api_key]),
|
|
('Transcode',[form.transcode_default_profile,form.transcode_profiles]),
|
|
] %}
|
|
{% do config_tabs.append((name,render_fields(fields))) %}
|
|
{% endfor %}
|
|
|
|
{% block app_content %}
|
|
<h1>{{title}}</h1>
|
|
{% if test %}
|
|
{% if test.success %}
|
|
<div class="alert alert-success" role="danger">
|
|
<h4>Sucess</h4>
|
|
</div>
|
|
{% else %}
|
|
<div class="alert alert-danger" role="danger">
|
|
{% for module,error in test.errors.items() %}
|
|
{% if error %}
|
|
<h4>{{module}}</h4>
|
|
{% if error is mapping %}
|
|
{% for key,value in error.items() %}
|
|
<p><b>{{key}}</b>: {{value}}</p>
|
|
{% endfor %}
|
|
{% else %}
|
|
<b>{{error}}</b>
|
|
{% endif %}
|
|
{% endif %}
|
|
{% endfor %}
|
|
</div>
|
|
{% endif %}
|
|
{% endif %}
|
|
{% for field in form %}
|
|
{% for error in field.errors %}
|
|
<div class="alert alert-danger" role="danger">{{error}}</div>
|
|
{% endfor %}
|
|
{% endfor %}
|
|
<div class="row">
|
|
<div class="col">
|
|
<form method="post" class="form" enctype="multipart/form-data">
|
|
{{ form.csrf_token() }}
|
|
{{ make_tabs(config_tabs) }}
|
|
{{ custom_render_form_row([form.test, form.save],button_map={'test':'primary','save':'success'},col_map={'test':0,'primary':0},render_args={'form_type':'horizontal'})}}
|
|
</form>
|
|
{# render_form(form, form_type ="horizontal", button_map={'test':'primary','save':'success'}) #}
|
|
</div>
|
|
</div>
|
|
{% endblock %} |