<div class="bs-sidebar col-md-3 clearfix" data-ng-include data-src="resourceUrl + '/partials/realm-menu.html'"></div>
<div id="content-area" class="col-md-9" role="main">

    <ul class="nav nav-tabs nav-tabs-pf">
        <li><a href="#/realms/{{realm.realm}}/roles">Realm Roles</a></li>
        <li><a href="#/realms/{{realm.realm}}/default-roles">Default Roles</a></li>
    </ul>
    <h2></h2>

    <div id="content">
        <h2 data-ng-hide="create"><span>{{realm.realm}}</span> {{role.name}} Realm Role</h2>
        <h2 data-ng-show="create" class="pull-left"><span>{{realm.realm}}</span> Add Realm Role</h2>
        <p class="subtitle" data-ng-show="create"><span class="required">*</span> Required fields</p>
        <form class="form-horizontal clearfix" name="realmForm" novalidate kc-read-only="!access.manageRealm">
            <fieldset>
                <legend><span class="text">Role</span></legend>
                <div class="form-group">
                    <label class="col-sm-2 control-label" for="name">Role name <span class="required" data-ng-show="create">*</span></label>

                    <div class="col-sm-4">
                        <input class="form-control" type="text" id="name" name="name" data-ng-model="role.name" autofocus
                               required data-ng-readonly="!create">
                    </div>
                </div>
                <div class="form-group">
                    <label class="col-sm-2 control-label" for="description">Description </label>

                    <div class="col-sm-4">
                        <textarea class="form-control" rows="5" cols="50" id="description" name="description" data-ng-model="role.description"></textarea>
                    </div>
                </div>
                <div class="form-group" data-ng-hide="create">
                    <label class="col-sm-2 control-label" for="compositeSwitch" class="control-label">Composite Roles</label>
                    <div class="col-sm-4">
                        <input ng-model="compositeSwitch" name="compositeSwitch" id="compositeSwitch" ng-disabled="compositeSwitchDisabled" onoffswitch />
                    </div>
                    <span tooltip-placement="right" tooltip="When this role is (un)assigned to a user any role associated with it will be (un)assigned implicitly." class="fa fa-info-circle"></span>
                </div>
            </fieldset>
            <div class="pull-right form-actions" data-ng-show="create">
                <button kc-cancel data-ng-click="cancel()" data-ng-show="changed">Cancel</button>
                <button kc-save data-ng-show="changed">Save</button>
            </div>

            <fieldset data-ng-show="!create && (compositeSwitch || role.composite)">
                <legend uncollapsed class="collapsible"><span class="text">Composite Realm Roles</span> </legend>
                <div class="form-group">
                    <div class="controls changing-selectors col-sm-10">
                        <div class="select-title">
                            <label class="control-label" for="available">Available Roles <span tooltip-placement="right" tooltip="Realm level roles associated with this composite role." class="fa fa-info-circle"></span></label>
                            <select id="available" class="form-control" multiple size="5"
                                    ng-multiple="true"
                                    ng-model="selectedRealmRoles"
                                    ng-options="r.name for r in realmRoles">
                            </select>
                        </div>
                        <div class="middle-buttons kc-vertical">
                            <button class="btn btn-default" type="submit" ng-click="addRealmRole()" tooltip="Associate role" tooltip-placement="right">
                                <span class="kc-icon-arrow-right">Move right</span>
                            </button>
                            <button class="btn btn-default" type="submit" ng-click="deleteRealmRole()" tooltip="Disassociate role" tooltip-placement="left">
                                <span class="kc-icon-arrow-left">Move left</span>
                            </button>
                        </div>
                        <div class="select-title">
                            <label class="control-label" for="assigned">Associated Roles  <span tooltip-placement="right" tooltip="Realm level roles associated with this composite role." class="fa fa-info-circle"></span></label>
                            <select id="assigned" class="form-control" multiple size=5
                                    ng-multiple="true"
                                    ng-model="selectedRealmMappings"
                                    ng-options="r.name for r in realmMappings">
                            </select>
                        </div>
                    </div>
                </div>
            </fieldset>

            <fieldset ng-show="clients.length > 0 && !create && (compositeSwitch || role.composite)">
                <legend uncollapsed class="collapsible"><span class="text">Composite Client Roles</span> </legend>
                <div class="form-group input-select">
                    <label class="col-sm-2 control-label" for="clients">Client <span tooltip-placement="right" tooltip="Select a client to view/modify roles associated with this composite." class="fa fa-info-circle"></span>
                    </label>
                    <div class="col-sm-4">
                        <div class="input-group">
                            <div class="select-kc">
                                <select id="clients" name="clients" ng-change="changeClient()" ng-model="compositeClient" ng-options="a.clientId for a in clients" ng-disabled="false">
                                    <option value="" selected> Select a Client...</option>
                                </select>
                            </div>
                        </div>
                     </div>
                </div>
                <div class="form-group" ng-show="compositeClient">
                    <div class="controls changing-selectors col-sm-10">
                        <div class="select-title">
                            <label class="control-label" for="available-client">Available Roles <span tooltip-placement="right" tooltip="Roles from this client that you can associate to this composite role." class="fa fa-info-circle"></span></label>
                            <select id="available-client" class="form-control" multiple size="5"
                                    ng-multiple="true"
                                    ng-model="selectedClientRoles"
                                    ng-options="r.name for r in clientRoles">
                            </select>
                        </div>
                        <div class="middle-buttons kc-vertical">
                            <button class="btn btn-default" type="submit" ng-click="addClientRole()" tooltip="Associate role" tooltip-placement="right">
                                <span class="kc-icon-arrow-right">Move right</span>
                            </button>
                            <button class="btn btn-default" type="submit" ng-click="deleteClientRole()" tooltip="Disassociate role" tooltip-placement="left">
                                <span class="kc-icon-arrow-left">Move left</span>
                            </button>
                        </div>
                        <div class="select-title">
                            <label class="control-label" for="assigned-client">Associated Roles <span tooltip-placement="right" tooltip="Client roles associated with this composite role." class="fa fa-info-circle"></span></label>
                            <select id="assigned-client" class="form-control" multiple size=5
                                    ng-multiple="true"
                                    ng-model="selectedClientMappings"
                                    ng-options="r.name for r in clientMappings">
                            </select>
                        </div>
                    </div>
                </div>
            </fieldset>

            <div class="pull-right  form-actions" data-ng-show="!create && access.manageRealm">
                <button kc-reset data-ng-show="changed">Clear changes</button>
                <button kc-save data-ng-show="changed">Save</button>
                <button kc-delete data-ng-click="remove()" data-ng-hide="changed">Delete</button>
            </div>

        </form>
    </div>
</div>