{% extends "WallabagCoreBundle::layout.html.twig" %}

{% block title %}{{ 'config.page_title'|trans }}{% endblock %}

{% block content %}
    <h2>{{ 'config.tab_menu.settings'|trans }}</h2>

    {{ form_start(form.config) }}
        {{ form_errors(form.config) }}

        <fieldset class="w500p inline">
            <div class="row">
                {{ form_label(form.config.theme) }}
                {{ form_errors(form.config.theme) }}
                {{ form_widget(form.config.theme) }}
            </div>
            <a href="#" title="{{ 'config.form_settings.help_theme'|trans }}">
                <i class="material-icons">live_help</i>
            </a>
        </fieldset>

        <fieldset class="w500p inline">
            <div class="row">
                {{ form_label(form.config.items_per_page) }}
                {{ form_errors(form.config.items_per_page) }}
                {{ form_widget(form.config.items_per_page) }}
            </div>
            <a href="#" title="{{ 'config.form_settings.help_items_per_page'|trans }}">
                <i class="material-icons">live_help</i>
            </a>
        </fieldset>

        <fieldset class="w500p inline">
            <div class="row">
                {{ form_label(form.config.reading_speed) }}
                {{ form_errors(form.config.reading_speed) }}
                {{ form_widget(form.config.reading_speed) }}
                <p>
                    {{ 'config.form_settings.reading_speed.help_message'|trans }}
                    <a href="http://www.myreadspeed.com/calculate/">myreadspeed</a>
                </p>
            </div>
            <a href="#" title="{{ 'config.form_settings.help_reading_speed'|trans }}">
                <i class="material-icons">live_help</i>
            </a>
        </fieldset>

        <fieldset class="w500p inline">
            <div class="row">
                {{ form_label(form.config.action_mark_as_read) }}
                {{ form_errors(form.config.action_mark_as_read) }}
                {{ form_widget(form.config.action_mark_as_read) }}
            </div>
        </fieldset>

        <fieldset class="w500p inline">
            <div class="row">
                {{ form_label(form.config.language) }}
                {{ form_errors(form.config.language) }}
                {{ form_widget(form.config.language) }}
            </div>
            <a href="#" title="{{ 'config.form_settings.help_language'|trans }}">
                <i class="material-icons">live_help</i>
            </a>
        </fieldset>

        <fieldset class="w500p inline">
            <div class="row">
                {{ form_label(form.config.pocket_consumer_key) }}
                {{ form_errors(form.config.pocket_consumer_key) }}
                {{ form_widget(form.config.pocket_consumer_key) }}
                <p>
                    &raquo;
                    <a href="https://getpocket.com/developer/docs/authentication">https://getpocket.com/developer/docs/authentication</a>
                </p>
            </div>
            <a href="#" title="{{ 'config.form_settings.help_pocket_consumer_key'|trans }}">
                <i class="material-icons">live_help</i>
            </a>
        </fieldset>

        <fieldset class="w500p inline">
            <div class="row">
                <h3>{{ 'config.form_settings.android_configuration'|trans }}</h3>
                <a href="wallabag://{{ app.user.username }}@{{ wallabag_url }}">{{ 'config.form_settings.android_instruction' | trans }}</a>
                <br/>
                <img id="androidQrcode" />
                <script>
                    const imgBase64 = jrQrcode.getQrBase64('wallabag://{{ app.user.username }}@{{ wallabag_url }}');
                    document.getElementById('androidQrcode').src = imgBase64;
                </script>
            </div>
        </fieldset>

        {{ form_rest(form.config) }}
    </form>

    <h2>{{ 'config.tab_menu.rss'|trans }}</h2>

        {{ form_start(form.rss) }}
        {{ form_errors(form.rss) }}

        <div class="row">
            {{ 'config.form_rss.description'|trans }}
        </div>

        <fieldset class="w500p inline">
            <div class="row">
                <label>{{ 'config.form_rss.token_label'|trans }}</label>
                {% if rss.token %}
                    {{ rss.token }}
                {% else %}
                    <em>{{ 'config.form_rss.no_token'|trans }}</em>
                {% endif %}
                –
                <a href="{{ path('generate_token') }}">
                    {% if rss.token %}
                        {{ 'config.form_rss.token_reset'|trans }}
                    {% else %}
                        {{ 'config.form_rss.token_create'|trans }}
                    {% endif %}
                </a>
            </div>
        </fieldset>

        {% if rss.token %}
        <fieldset class="w500p inline">
            <div class="row">
                <label>{{ 'config.form_rss.rss_links'|trans }}</label>
                <ul>
                    <li><a href="{{ path('unread_rss', {'username': rss.username, 'token': rss.token}) }}">{{ 'config.form_rss.rss_link.unread'|trans }}</a></li>
                    <li><a href="{{ path('starred_rss', {'username': rss.username, 'token': rss.token}) }}">{{ 'config.form_rss.rss_link.starred'|trans }}</a></li>
                    <li><a href="{{ path('archive_rss', {'username': rss.username, 'token': rss.token}) }}">{{ 'config.form_rss.rss_link.archive'|trans }}</a></li>
                    <li><a href="{{ path('all_rss', {'username': rss.username, 'token': rss.token}) }}">{{ 'config.form_rss.rss_link.all'|trans }}</a></li>
                </ul>
            </div>
        </fieldset>
        {% endif %}

        <fieldset class="w500p inline">
            <div class="row">
                {{ form_label(form.rss.rss_limit) }}
                {{ form_errors(form.rss.rss_limit) }}
                {{ form_widget(form.rss.rss_limit) }}
            </div>
        </fieldset>

        {{ form_rest(form.rss) }}
    </form>

    <h2>{{ 'config.tab_menu.user_info'|trans }}</h2>

    {{ form_start(form.user) }}
        {{ form_errors(form.user) }}

        <fieldset class="w500p inline">
            <div class="row">
                {{ form_label(form.user.name) }}
                {{ form_errors(form.user.name) }}
                {{ form_widget(form.user.name) }}
            </div>
        </fieldset>

        <fieldset class="w500p inline">
            <div class="row">
                {{ form_label(form.user.email) }}
                {{ form_errors(form.user.email) }}
                {{ form_widget(form.user.email) }}
            </div>
        </fieldset>

        {% if twofactor_auth %}
        <div class="row">
            {{ 'config.form_user.two_factor_description'|trans }}
        </div>

        <fieldset class="w500p inline">
            <div class="row">
                {{ form_label(form.user.twoFactorAuthentication) }}
                {{ form_errors(form.user.twoFactorAuthentication) }}
                {{ form_widget(form.user.twoFactorAuthentication) }}
            </div>
            <a href="#" title="{{ 'config.form_user.help_twoFactorAuthentication'|trans }}">
                <i class="material-icons">live_help</i>
            </a>
        </fieldset>
        {% endif %}

        <h2>{{ 'config.reset.title'|trans }}</h2>
        <fieldset class="w500p inline">
            <p>{{ 'config.reset.description'|trans }}</p>
            <ul>
                <li>
                    <a href="{{ path('config_reset', { type: 'annotations'}) }}" onclick="return confirm('{{ 'config.reset.confirm'|trans|escape('js') }}')" class="waves-effect waves-light btn red">
                        {{ 'config.reset.annotations'|trans }}
                    </a>
                </li>
                <li>
                    <a href="{{ path('config_reset', { type: 'tags'}) }}" onclick="return confirm('{{ 'config.reset.confirm'|trans|escape('js') }}')" class="waves-effect waves-light btn red">
                        {{ 'config.reset.tags'|trans }}
                    </a>
                </li>
                <li>
                    <a href="{{ path('config_reset', { type: 'archived'}) }}" onclick="return confirm('{{ 'config.reset.confirm'|trans|escape('js') }}')" class="waves-effect waves-light btn red">
                        {{ 'config.reset.archived'|trans }}
                    </a>
                </li>
                <li>
                    <a href="{{ path('config_reset', { type: 'entries'}) }}" onclick="return confirm('{{ 'config.reset.confirm'|trans|escape('js') }}')" class="waves-effect waves-light btn red">
                        {{ 'config.reset.entries'|trans }}
                    </a>
                </li>
            </ul>
        </fieldset>

        {{ form_widget(form.user._token) }}
        {{ form_widget(form.user.save) }}
    </form>

    {% if enabled_users > 1 %}
        <h2>{{ 'config.form_user.delete.title'|trans }}</h2>

        <p>{{ 'config.form_user.delete.description'|trans }}</p>
        <a href="{{ path('delete_account') }}" onclick="return confirm('{{ 'config.form_user.delete.confirm'|trans|escape('js') }}')" class="waves-effect waves-light btn red delete-account">
            {{ 'config.form_user.delete.button'|trans }}
        </a>
    {% endif %}

    <h2>{{ 'config.tab_menu.password'|trans }}</h2>

    {{ form_start(form.pwd) }}
        {{ form_errors(form.pwd) }}

        <div class="row">
            {{ 'config.form_password.description'|trans }}
        </div>

        <fieldset class="w500p inline">
            <div class="row">
                {{ form_label(form.pwd.old_password) }}
                {{ form_errors(form.pwd.old_password) }}
                {{ form_widget(form.pwd.old_password) }}
            </div>
        </fieldset>

        <fieldset class="w500p inline">
            <div class="row">
                {{ form_label(form.pwd.new_password.first) }}
                {{ form_errors(form.pwd.new_password.first) }}
                {{ form_widget(form.pwd.new_password.first) }}
            </div>
        </fieldset>

        <fieldset class="w500p inline">
            <div class="row">
                {{ form_label(form.pwd.new_password.second) }}
                {{ form_errors(form.pwd.new_password.second) }}
                {{ form_widget(form.pwd.new_password.second) }}
            </div>
        </fieldset>

        {{ form_rest(form.pwd) }}
    </form>

    <h2>{{ 'config.tab_menu.rules'|trans }}</h2>

    <ul>
        {% for tagging_rule in app.user.config.taggingRules %}
        <li>
            {{ 'config.form_rules.if_label'|trans }}
            « {{ tagging_rule.rule }} »
            {{ 'config.form_rules.then_tag_as_label'|trans }}
            « {{ tagging_rule.tags|join(', ') }} »
            <a href="{{ path('edit_tagging_rule', {id: tagging_rule.id}) }}" title="{{ 'config.form_rules.edit_rule_label'|trans }}" class="tool mode_edit">✎</a>
            <a href="{{ path('delete_tagging_rule', {id: tagging_rule.id}) }}" title="{{ 'config.form_rules.delete_rule_label'|trans }}" class="tool delete icon-trash icon"></a>
        </li>
        {% endfor %}
    </ul>

        {{ form_start(form.new_tagging_rule) }}
        {{ form_errors(form.new_tagging_rule) }}

        <fieldset class="w500p inline">
            <div class="row">
                {{ form_label(form.new_tagging_rule.rule) }}
                {{ form_errors(form.new_tagging_rule.rule) }}
                {{ form_widget(form.new_tagging_rule.rule) }}
            </div>
        </fieldset>

        <fieldset class="w500p inline">
            <div class="row">
                {{ form_label(form.new_tagging_rule.tags) }}
                {{ form_errors(form.new_tagging_rule.tags) }}
                {{ form_widget(form.new_tagging_rule.tags) }}
            </div>
        </fieldset>

        {{ form_rest(form.new_tagging_rule) }}
    </form>
    <div class="row">
        <div class="input-field col s12">
            <h3>{{ 'config.form_rules.faq.title'|trans }}</h3>

            <h4>{{ 'config.form_rules.faq.tagging_rules_definition_title'|trans }}</h4>
            <p class="help">{{ 'config.form_rules.faq.tagging_rules_definition_description'|trans|raw }}</p>

            <h4>{{ 'config.form_rules.faq.how_to_use_them_title'|trans }}</h4>
            <p class="help">{{ 'config.form_rules.faq.how_to_use_them_description'|trans|raw }}</p>

            <h4>{{ 'config.form_rules.faq.variables_available_title'|trans }}</h4>
            <p class="help">
                {{ 'config.form_rules.faq.variables_available_description'|trans }}
            </p>

            <table class="bordered">
                <thead>
                <tr>
                    <th>{{ 'config.form_rules.faq.variable_description.label'|trans }}</th>
                    <th>{{ 'config.form_rules.faq.meaning'|trans }}</th>
                    <th>{{ 'config.form_rules.faq.operator_description.label'|trans }}</th>
                    <th>{{ 'config.form_rules.faq.meaning'|trans }}</th>
                </tr>
                </thead>

                <tbody>
                <tr>
                    <td>title</td>
                    <td>{{ 'config.form_rules.faq.variable_description.title'|trans }}</td>
                    <td>&lt;=</td>
                    <td>{{ 'config.form_rules.faq.operator_description.less_than'|trans }}</td>
                </tr>
                <tr>
                    <td>url</td>
                    <td>{{ 'config.form_rules.faq.variable_description.url'|trans }}</td>
                    <td>&lt;</td>
                    <td>{{ 'config.form_rules.faq.operator_description.strictly_less_than'|trans }}</td>
                </tr>
                <tr>
                    <td>isArchived</td>
                    <td>{{ 'config.form_rules.faq.variable_description.isArchived'|trans }}</td>
                    <td>&gt;=</td>
                    <td>{{ 'config.form_rules.faq.operator_description.greater_than'|trans }}</td>
                </tr>
                <tr>
                    <td>isStarred</td>
                    <td>{{ 'config.form_rules.faq.variable_description.isStarred'|trans }}</td>
                    <td>&gt;</td>
                    <td>{{ 'config.form_rules.faq.operator_description.strictly_greater_than'|trans }}</td>
                </tr>
                <tr>
                    <td>content</td>
                    <td>{{ 'config.form_rules.faq.variable_description.content'|trans }}</td>
                    <td>=</td>
                    <td>{{ 'config.form_rules.faq.operator_description.equal_to'|trans }}</td>
                </tr>
                <tr>
                    <td>language</td>
                    <td>{{ 'config.form_rules.faq.variable_description.language'|trans }}</td>
                    <td>!=</td>
                    <td>{{ 'config.form_rules.faq.operator_description.not_equal_to'|trans }}</td>
                </tr>
                <tr>
                    <td>mimetype</td>
                    <td>{{ 'config.form_rules.faq.variable_description.mimetype'|trans }}</td>
                    <td>OR</td>
                    <td>{{ 'config.form_rules.faq.operator_description.or'|trans }}</td>
                </tr>
                <tr>
                    <td>readingTime</td>
                    <td>{{ 'config.form_rules.faq.variable_description.readingTime'|trans }}</td>
                    <td>AND</td>
                    <td>{{ 'config.form_rules.faq.operator_description.and'|trans }}</td>
                </tr>
                <tr>
                    <td>domainName</td>
                    <td>{{ 'config.form_rules.faq.variable_description.domainName'|trans }}</td>
                    <td>matches</td>
                    <td>{{ 'config.form_rules.faq.operator_description.matches'|trans|raw }}</td>
                </tr>
                </tbody>
            </table>
        </div>
    </div>
{% endblock %}
