<div class="col-sm-9 col-md-10 col-sm-push-3 col-md-push-2">

    <kc-tabs-resource-server></kc-tabs-resource-server>

    <table class="table table-striped table-bordered">
        <thead>
            <tr>
                <th class="kc-table-actions" colspan="7">
                    <div class="form-inline">
                        {{:: 'filter' | translate}}:&nbsp;&nbsp;
                        <div class="form-group">
                            <div class="input-group">
                                <input type="text" placeholder="{{:: 'name' | translate}}" data-ng-model="query.name" class="form-control search" onkeydown="if (event.keyCode == 13) document.getElementById('resourceSearch').click()">
                                <div class="input-group-addon">
                                    <i class="fa fa-search" id="resourceSearch" type="submit" data-ng-click="firstPage()"></i>
                                </div>
                            </div>
                            <div class="input-group">
                                <input type="text" placeholder="{{:: 'type' | translate}}" data-ng-model="query.type" class="form-control search" onkeydown="if (event.keyCode == 13) document.getElementById('resourceSearch').click()">
                                <div class="input-group-addon">
                                    <i class="fa fa-search" type="submit" data-ng-click="firstPage()"></i>
                                </div>
                            </div>
                            <div class="input-group">
                                <input type="text" placeholder="{{:: 'authz-uri' | translate}}" data-ng-model="query.uri" class="form-control search" onkeydown="if (event.keyCode == 13) document.getElementById('resourceSearch').click()">
                                <div class="input-group-addon">
                                    <i class="fa fa-search" type="submit" data-ng-click="firstPage()"></i>
                                </div>
                            </div>
                            <div class="input-group">
                                <input type="text" placeholder="{{:: 'authz-owner' | translate}}" data-ng-model="query.owner" class="form-control search" onkeydown="if (event.keyCode == 13) document.getElementById('resourceSearch').click()">
                                <div class="input-group-addon">
                                    <i class="fa fa-search" type="submit" data-ng-click="firstPage()"></i>
                                </div>
                            </div>
                            <div class="input-group">
                                <input type="text" placeholder="{{:: 'authz-scope' | translate}}" data-ng-model="query.scope" class="form-control search" onkeydown="if (event.keyCode == 13) document.getElementById('resourceSearch').click()">
                                <div class="input-group-addon">
                                    <i class="fa fa-search" type="submit" data-ng-click="firstPage()"></i>
                                </div>
                            </div>
                            <div class="input-group">
                                <select class="form-control search" data-ng-model="detailsFilter" data-ng-change="searchQuery();">
                                    <option value="" selected>Hide Details</option>
                                    <option value="true">Show Details</option>
                                </select>
                            </div>
                        </div>
                        <div class="pull-right">
                            <a id="createResource" class="btn btn-default" href="#/realms/{{realm.realm}}/clients/{{client.id}}/authz/resource-server/resource/create">{{:: 'create' | translate}}</a>
                        </div>
                    </div>
                </th>
            </tr>
            <tr data-ng-hide="resources.length == 0">
                <th>{{:: 'name' | translate}}</th>
                <th>{{:: 'type' | translate}}</th>
                <th>{{:: 'authz-uri' | translate}}</th>
                <th>{{:: 'authz-owner' | translate}}</th>
                <th colspan="2">{{:: 'actions' | translate}}</th>
            </tr>
        </thead>
        <tfoot data-ng-show="resources && (resources.length >= query.max || query.first > 0)">
        <tr>
            <td colspan="7">
                <div class="table-nav">
                    <button data-ng-click="firstPage()" class="first" ng-disabled="query.first == 0">{{:: 'first-page' | translate}}</button>
                    <button data-ng-click="previousPage()" class="prev" ng-disabled="query.first == 0">{{:: 'previous-page' | translate}}</button>
                    <button data-ng-click="nextPage()" class="next" ng-disabled="resources.length < query.max">{{:: 'next-page' | translate}}</button>
                </div>
            </td>
        </tr>
        </tfoot>
        <tbody>
            <tr ng-repeat-start="resource in resources | filter:search | orderBy:'name'">
                <td><a href="#/realms/{{realm.realm}}/clients/{{client.id}}/authz/resource-server/resource/{{resource._id}}">{{resource.name}}</a></td>
                <td>
                    <span data-ng-show="resource.type">{{resource.type}}</span>
                    <span data-ng-show="!resource.type">{{:: 'authz-no-type-defined' | translate}}</span>
                </td>
                <td>
                    <span data-ng-show="resource.uri">{{resource.uri}}</span>
                    <span data-ng-show="!resource.uri">{{:: 'authz-no-uri-defined' | translate}}</span>
                </td>
                <td>{{resource.owner.name}}</td>
                <td ng-if="!resource.details.loaded" class="kc-action-cell" data-ng-click="showDetails(resource);">
                    {{:: 'authz-show-details' | translate}}
                </td>
                <td ng-if="resource.details.loaded" class="kc-action-cell" data-ng-click="showDetails(resource);">
                    {{:: 'authz-hide-details' | translate}}
                </td>
                <td class="kc-action-cell" ng-click="createPolicy(resource);">
                    {{:: 'authz-create-permission' | translate}}
                </td>
            </tr>
            <tr ng-if="resource.details && resource.details.loaded" ng-repeat-end="">
                <td colspan="6">
                    <div id="details">
                        <table class="table kc-authz-table-expanded table-striped">
                            <thead>
                                <tr>
                                    <th>Scopes</th>
                                    <th>Associated Permissions</th>
                                </tr>
                            </thead>
                            <tbody>
                                <tr>
                                    <td>
                                        <span data-ng-show="resource.scopes && !resource.scopes.length">{{:: 'authz-no-scopes-assigned' | translate}}</span>
                                        <ul ng-repeat="scope in resource.scopes" data-ng-show="resource.scopes.length > 0">
                                            <li>
                                                <a href="#/realms/{{realm.realm}}/clients/{{client.id}}/authz/resource-server/scope/{{scope.id}}">{{scope.name}}</a>
                                            </li>
                                        </ul>
                                    </td>
                                    <td>
                                        <span data-ng-show="resource.policies && !resource.policies.length">{{:: 'authz-no-permission-assigned' | translate}}</span>
                                        <ul ng-repeat="policy in resource.policies" data-ng-show="resource.policies.length > 0">
                                            <li>
                                                <a href="#/realms/{{realm.realm}}/clients/{{client.id}}/authz/resource-server/permission/{{policy.type}}/{{policy.id}}">{{policy.name}}</a>
                                            </li>
                                        </ul>
                                    </td>
                                </tr>
                            </tbody>
                        </table>
                    </div>
                </td>
            </tr>
            <tr data-ng-show="(resources | filter:search).length == 0">
                <td class="text-muted" colspan="6" data-ng-show="search.name">{{:: 'no-results' | translate}}</td>
                <td class="text-muted" colspan="6" data-ng-hide="search.name">{{:: 'authz-no-resources-available' | translate}}</td>
            </tr>
        </tbody>
    </table>
</div>

<kc-menu></kc-menu>
