42 lines
1.9 KiB
HTML
42 lines
1.9 KiB
HTML
|
<div class="col-sm-9 col-md-10 col-sm-push-3 col-md-push-2">
|
||
|
<ol class="breadcrumb">
|
||
|
<li><a href="#/realms/{{realm.realm}}/roles">{{:: 'roles' | translate}}</a></li>
|
||
|
<li>{{role.name}}</li>
|
||
|
</ol>
|
||
|
|
||
|
<kc-tabs-role></kc-tabs-role>
|
||
|
|
||
|
<form class="form-horizontal" name="realmForm" novalidate kc-read-only="!access.manageRealm">
|
||
|
<table class="table table-striped table-bordered">
|
||
|
<thead>
|
||
|
<tr>
|
||
|
<th>{{:: 'key' | translate}}</th>
|
||
|
<th>{{:: 'value' | translate}}</th>
|
||
|
<th>{{:: 'actions' | translate}}</th>
|
||
|
</tr>
|
||
|
</thead>
|
||
|
<tbody>
|
||
|
<tr ng-repeat="(key, value) in role.attributes | toOrderedMapSortedByKey">
|
||
|
<td>{{key}}</td>
|
||
|
<td><input ng-model="role.attributes[key]" class="form-control" type="text" name="{{key}}" id="attribute-{{key}}" /></td>
|
||
|
<td class="kc-action-cell" data-ng-click="removeAttribute(key)">{{:: 'delete' | translate}}</td>
|
||
|
</tr>
|
||
|
<tr>
|
||
|
<td><input ng-model="newAttribute.key" class="form-control" type="text" id="newAttributeKey" /></td>
|
||
|
<td><input ng-model="newAttribute.value" class="form-control" type="text" id="newAttributeValue" /></td>
|
||
|
<td class="kc-action-cell" data-ng-click="addAttribute()" data-ng-disabled="!newAttribute.key.length || !newAttribute.value.length">{{:: 'add' | translate}}</td>
|
||
|
</tr>
|
||
|
</tbody>
|
||
|
</table>
|
||
|
|
||
|
<div class="form-group" data-ng-show="access.manageRealm">
|
||
|
<div class="col-md-12">
|
||
|
<button kc-save data-ng-disabled="!changed">{{:: 'save' | translate}}</button>
|
||
|
<button kc-reset data-ng-disabled="!changed">{{:: 'cancel' | translate}}</button>
|
||
|
</div>
|
||
|
</div>
|
||
|
</form>
|
||
|
</div>
|
||
|
|
||
|
<kc-menu></kc-menu>
|