{% extends 'admin.twig' %}

{% block content %}

<h2 piwik-enriched-headline
    help-url="http://piwik.org/docs/manage-users/">{{ 'UsersManager_ManageAccess'|translate }}</h2>
<div id="sites" class="usersManager">
    <section class="sites_selector_container">
        <p>{{ 'UsersManager_MainDescription'|translate }}</p>

        <div class="sites_selector_title">{{ 'SitesManager_Sites'|translate }}:</div>

        {% set applyAllSitesText %}
            <strong>{{ 'UsersManager_ApplyToAllWebsites'|translate }}</strong>
        {% endset %}

        <div piwik-siteselector
             class="sites_autocomplete"
             siteid="{{ idSiteSelected }}"
             sitename="{{ defaultReportSiteName }}"
             all-sites-text="{{ applyAllSitesText|raw }}"
             all-sites-location="top"
             id="usersManagerSiteSelect"
             switch-site-on-select="false"></div>
    </section>
</div>

{% import 'ajaxMacros.twig' as ajax %}
{{ ajax.errorDiv }}
{{ ajax.loadingDiv }}

<div class="entityContainer" style="width:600px;">
    {% if anonymousHasViewAccess %}
        <div style="display:inline-block;margin-top:10px;" id="usersManagerAnonymousUserHasViewAccess">
            {{ ['UsersManager_AnonymousUserHasViewAccess'|translate("'anonymous'","'view'"), 'UsersManager_AnonymousUserHasViewAccess2'|translate]|join(' ')|notification({'placeAt': '#usersManagerAnonymousUserHasViewAccess', 'noclear': true}) }}
        </div>
    {% endif %}
    <table class="entityTable dataTable" id="access" style="display:inline-table;width:500px;">
        <thead>
        <tr>
            <th class='first'>{{ 'UsersManager_User'|translate }}</th>
            <th>{{ 'UsersManager_Alias'|translate }}</th>
            <th>{{ 'UsersManager_PrivNone'|translate }}</th>
            <th>{{ 'UsersManager_PrivView'|translate }}</th>
            <th>{{ 'UsersManager_PrivAdmin'|translate }}</th>
        </tr>
        </thead>

        <tbody>
        {% set accesValid %}<img src='plugins/UsersManager/images/ok.png' class='accessGranted' />{% endset %}
        {% set accesInvalid %}<img src='plugins/UsersManager/images/no-access.png' class='updateAccess' />{% endset %}
        {% set superUserAccess %}<span title="{{ 'UsersManager_ExceptionSuperUserAccess'|translate }}">N/A</span>{% endset %}
        {% for login,access in usersAccessByWebsite %}
            <tr>
                <td id='login'>{{ login }}</td>
                <td>{{ usersAliasByLogin[login]|raw }}</td>
                <td id='noaccess'>
                    {% if login in superUserLogins %}
                        {{ superUserAccess }}
                    {% elseif access=='noaccess' and idSiteSelected != 'all' %}
                        {{ accesValid }}
                    {% else %}
                        {{ accesInvalid }}
                    {% endif %}&nbsp;</td>
                <td id='view'>
                    {% if login in superUserLogins %}
                        {{ superUserAccess }}
                    {% elseif access == 'view' and idSiteSelected != 'all' %}
                        {{ accesValid }}
                    {% else %}
                        {{ accesInvalid }}
                    {% endif %}&nbsp;</td>
                <td id='admin'>
                    {% if login in superUserLogins %}
                        {{ superUserAccess }}
                    {% elseif login == 'anonymous' %}
                        N/A
                    {% else %}
                        {% if access == 'admin' and idSiteSelected != 'all' %}{{ accesValid }}{% else %}{{ accesInvalid }}{% endif %}&nbsp;
                    {% endif %}
                </td>
            </tr>
        {% endfor %}
        </tbody>
    </table>
    <div id="accessUpdated" style="vertical-align:top;"></div>
</div>

<div class="ui-confirm" id="confirm">
    <h2>{{ 'UsersManager_ChangeAllConfirm'|translate("<span id='login'></span>")|raw }}</h2>
    <input role="yes" type="button" value="{{ 'General_Yes'|translate }}"/>
    <input role="no" type="button" value="{{ 'General_No'|translate }}"/>
</div>

{% if userIsSuperUser %}
    <div class="ui-confirm" id="confirmUserRemove">
        <h2></h2>
        <input role="yes" type="button" value="{{ 'General_Yes'|translate }}"/>
        <input role="no" type="button" value="{{ 'General_No'|translate }}"/>
    </div>
    <div class="ui-confirm" id="confirmPasswordChange">
        <h2>{{ 'UsersManager_ChangePasswordConfirm'|translate }}</h2>
        <input role="yes" type="button" value="{{ 'General_Yes'|translate }}"/>
        <input role="no" type="button" value="{{ 'General_No'|translate }}"/>
    </div>
    <br/>
    <h2>{{ 'UsersManager_UsersManagement'|translate }}</h2>
    <p>{{ 'UsersManager_UsersManagementMainDescription'|translate }}
        {{ 'UsersManager_ThereAreCurrentlyNRegisteredUsers'|translate("<b>"~usersCount~"</b>")|raw }}</p>
    {% import 'ajaxMacros.twig' as ajax %}
    {{ ajax.errorDiv('ajaxErrorUsersManagement') }}
    {{ ajax.loadingDiv('ajaxLoadingUsersManagement') }}
    <div class="user entityContainer" style="margin-bottom:50px;">
        <table class="entityTable dataTable" id="users">
            <thead>
            <tr>
                <th>{{ 'General_Username'|translate }}</th>
                <th>{{ 'General_Password'|translate }}</th>
                <th>{{ 'UsersManager_Email'|translate }}</th>
                <th>{{ 'UsersManager_Alias'|translate }}</th>
                <th>token_auth</th>
                {% if showLastSeen is defined and showLastSeen %}
                <th>{{ 'UsersManager_LastSeen'|translate }}</th>
                {% endif %}
                <th>{{ 'General_Edit'|translate }}</th>
                <th>{{ 'General_Delete'|translate }}</th>
            </tr>
            </thead>

            <tbody>
            {% for i,user in users %}
                {% if user.login != 'anonymous' %}
                    <tr class="editable" id="row{{ i }}">
                        <td id="userLogin" class="editable">{{ user.login }}</td>
                        <td id="password" class="editable">-</td>
                        <td id="email" class="editable">{{ user.email }}</td>
                        <td id="alias" class="editable">{{ user.alias|raw }}</td>
                        <td id="token_auth" class="token_auth" data-token="{{ user.token_auth }}">{{ user.token_auth|slice(0, 8) }}…</td>
                        {% if user.last_seen is defined %}
                        <td id="last_seen">{% if user.last_seen is empty %}-{% else %}{{ 'General_TimeAgo'|translate(user.last_seen)|raw }}{% endif %}</td>
                        {% endif %}
                        <td>
                            <span class="edituser link_but" id="row{{ i }}">
                                <img title="{{ 'General_Edit'|translate }}" src='plugins/Morpheus/images/ico_edit.png'/>
                                <span>{{ 'General_Edit'|translate }}</span>
                            </span>
                        </td>
                        <td>
                            <span class="deleteuser link_but" id="row{{ i }}">
                                <img title="{{ 'General_Delete'|translate }}" src='plugins/Morpheus/images/ico_delete.png'/>
                                <span>{{ 'General_Delete'|translate }}</span>
                            </span>
                        </td>
                    </tr>
                {% endif %}
            {% endfor %}
            </tbody>
        </table>
        <div class="addrow"><img src='plugins/Morpheus/images/add.png'/> {{ 'UsersManager_AddUser'|translate }}</div>
    </div>

    <h2 id="super_user_access">{{ 'UsersManager_SuperUserAccessManagement'|translate }}</h2>
    <p>{{ 'UsersManager_SuperUserAccessManagementMainDescription'|translate }} <br/>
    {{ 'UsersManager_SuperUserAccessManagementGrantMore'|translate }}</p>

    {{ ajax.errorDiv('ajaxErrorSuperUsersManagement') }}
    {{ ajax.loadingDiv('ajaxLoadingSuperUsersManagement') }}

    <table class="entityTable dataTable" id="superUserAccess" style="display:inline-table;width:400px;">
        <thead>
        <tr>
            <th class='first'>{{ 'UsersManager_User'|translate }}</th>
            <th>{{ 'UsersManager_Alias'|translate }}</th>
            <th>{{ 'Installation_SuperUser'|translate }}</th>
        </tr>
        </thead>

        <tbody>
        {% if users|length > 1 %}
            {% for login,alias in usersAliasByLogin if login != 'anonymous' %}
                <tr>
                    <td id='login'>{{ login }}</td>
                    <td>{{ alias|raw }}</td>
                    <td id='superuser' data-login="{{ login|e('html_attr') }}">
                        <img src='plugins/UsersManager/images/ok.png' class='accessGranted' data-hasaccess="1" {% if not (login in superUserLogins) %}style="display:none"{% endif %} />
                        <img src='plugins/UsersManager/images/no-access.png' class='updateAccess' data-hasaccess="0" {% if login in superUserLogins %}style="display:none"{% endif %} />
                        &nbsp;
                    </td>
                </tr>
            {% endfor %}
        {% else %}
            <tr>
                <td colspan="3">
                    {{ 'UsersManager_NoUsersExist'|translate }}
                </td>
            </tr>
        {% endif %}
        </tbody>
    </table>

    <div id="superUserAccessUpdated" style="vertical-align:top;"></div>

    <div class="ui-confirm" id="superUserAccessConfirm">
        <h2> </h2>
        <input role="yes" type="button" value="{{ 'General_Yes'|translate }}"/>
        <input role="no" type="button" value="{{ 'General_No'|translate }}"/>
    </div>

{% endif %}
{% endblock %}
