76 lines
4.6 KiB
HTML
76 lines
4.6 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}}/clients">{{:: 'clients' | translate}}</a></li>
|
|
<li>{{client.clientId}}</li>
|
|
</ol>
|
|
|
|
<kc-tabs-client></kc-tabs-client>
|
|
|
|
<form class="form-horizontal" name="clusteringForm" novalidate kc-read-only="!client.access.configure">
|
|
<legend><span class="text">{{:: 'basic-configuration' | translate}}</span></legend>
|
|
<fieldset >
|
|
<div class="form-group clearfix">
|
|
<label class="col-md-2 control-label" for="nodeReRegistrationTimeout">{{:: 'node-reregistration-timeout' | translate}}</label>
|
|
<div class="col-sm-5">
|
|
<div class="row">
|
|
<div class="col-md-6 form-inline">
|
|
<input class="form-control" type="number" required
|
|
max="31536000" data-ng-model="client.nodeReRegistrationTimeout"
|
|
id="nodeReRegistrationTimeout" name="nodeReRegistrationTimeout"/>
|
|
<select class="form-control" name="nodeReRegistrationTimeoutUnit" data-ng-model="client.nodeReRegistrationTimeoutUnit" >
|
|
<option data-ng-selected="!client.nodeReRegistrationTimeoutUnit" value="Seconds">{{:: 'seconds' | translate}}</option>
|
|
<option value="Minutes">{{:: 'minutes' | translate}}</option>
|
|
<option value="Hours">{{:: 'hours' | translate}}</option>
|
|
<option value="Days">{{:: 'days' | translate}}</option>
|
|
</select>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<kc-tooltip>{{:: 'node-reregistration-timeout.tooltip' | translate}}</kc-tooltip>
|
|
</div>
|
|
|
|
<div class="form-group">
|
|
<div class="col-md-10 col-md-offset-2" data-ng-show="client.access.configure">
|
|
<button data-kc-save data-ng-disabled="!changed">{{:: 'save' | translate}}</button>
|
|
<button data-kc-reset data-ng-disabled="!changed">{{:: 'cancel' | translate}}</button>
|
|
</div>
|
|
</div>
|
|
</fieldset>
|
|
|
|
<fieldset>
|
|
<legend><span class="text">{{:: 'registered-cluster-nodes' | translate}}</span></legend>
|
|
<table class="table table-striped table-bordered">
|
|
<thead>
|
|
<tr>
|
|
<th class="kc-table-actions" colspan="5" data-ng-show="client.access.configure">
|
|
<div class="pull-right">
|
|
<a class="btn btn-default" tooltip="Manually register cluster node. This is usually not needed as cluster node should be registered automatically by adapter"
|
|
tooltip-trigger="mouseover mouseout" tooltip-placement="bottom" href="#/register-node/realms/{{realm.realm}}/clients/{{client.id}}/clustering">{{:: 'register-node-manually' | translate}}</a>
|
|
<a class="btn btn-default" data-ng-click="testNodesAvailable()" data-ng-show="nodeRegistrations && nodeRegistrations.length > 0">{{:: 'test-cluster-availability' | translate}}</a>
|
|
</div>
|
|
</th>
|
|
</tr>
|
|
<tr data-ng-hide="!nodeRegistrations || nodeRegistrations.length == 0">
|
|
<th>{{:: 'node-host' | translate}}</th>
|
|
<th>{{:: 'last-registration' | translate}}</th>
|
|
<th colspan="2">{{:: 'actions' | translate}}</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr ng-repeat="node in nodeRegistrations">
|
|
<td><a href="#/realms/{{realm.realm}}/clients/{{client.id}}/clustering/{{node.host}}">{{node.host}}</a></td>
|
|
<td>{{node.lastRegistration}}</td>
|
|
<td class="kc-action-cell" kc-open="/realms/{{realm.realm}}/clients/{{client.id}}/clustering/{{node.host}}">{{:: 'edit' | translate}}</td>
|
|
<td class="kc-action-cell" data-ng-click="removeNode(node)">{{:: 'delete' | translate}}</td>
|
|
</tr>
|
|
<tr data-ng-show="!nodeRegistrations || nodeRegistrations.length == 0">
|
|
<td class="text-muted">{{:: 'no-registered-cluster-nodes' | translate}}</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</fieldset>
|
|
</form>
|
|
</div>
|
|
|
|
<kc-menu></kc-menu> |