keycloak tests
by toubia95
HTML
<div class="col-md-5">
<table class="table table-striped table-bordered" style="margin-bottom: 0">
<thead>
<tr>
<th class="kc-table-actions" colspan="5">
<div class="form-inline">
<div>
<label class="control-label ng-binding ng-scope">Available Groups <i class="fa fa-question-circle text-muted ng-scope" tooltip="Groups a user can join. Select a group and click the join button." tooltip-placement="right" tooltip-trigger="mouseover mouseout"></i></label>
<kc-tooltip class="hidden"></kc-tooltip>
</div>
<div class="pull-left">
<div class="input-group">
<input type="text" placeholder="Search..." ng-model="searchCriteria" class="form-control search ng-pristine ng-untouched ng-valid ng-empty" onkeydown="if (event.keyCode == 13) document.getElementById('groupSearch').click()">
<div class="input-group-addon">
<i class="fa fa-search" id="groupSearch_availablegroups" ng-click="searchGroup()"></i>
</div>
</div>
</div>
<button id="viewAllGroups" class="btn btn-default ng-binding" ng-click="clearSearch()">View all groups</button>
<div class="pull-right" data-ng-show="user.access.manageGroupMembership">
<button id="joinGroup" class="btn btn-default ng-binding" ng-click="joinGroup()">Join</button>
</div>
</div>
</th>
</tr>
</thead>
<tbody>
<tr>
<td>
<div tree-id="tree" angular-treeview="true" tree-model="groupList" node-id="id" node-label="name" node-children="subGroups">
<ul class="ng-scope">
<!-- ngRepeat: node in groupList -->
<li data-ng-repeat="node in groupList" class="ng-scope"><i ng-class="getGroupClass(node)" data-ng-click="tree.selectNodeHead(node)" class="expanded"></i><span...
CSS
/*
keycloak
https://carl-topham.com/theblog/post/creating-chrome-extension-uses-jquery-manipulate-dom-page/
*/
div[tree-id="tree"] {
counter-reset: section;
}
div[tree-id="tree"] > ul > li > span::before {
counter-increment: section;
content: counter(section) " - ";
}
/*
.depot {
color: #333;
padding: 0;
text-transform: uppercase;
font-weight: bold;
border-bottom: solid 2px green;
}
*/
/*
.user {
color: #333;
padding: 0;
font-weight: bold;
border-left: solid 15px green;
padding-left: 2px;
}
*/
JavaScript
$("i.deactivate")
.closest("li[data-ng-repeat='node in groupList']")
.children("span")
.addClass("depot")
.css('color','#333')
.css('font-weight','bold')
.css('text-transform','uppercase')
.css('border-bottom','solid 2px green');
$("i.deactivate + span")
.addClass("user")
.css('color','#333')
.css('font-weight','bold')
.css('border-left','solid 15px green')
.css('padding-left','2px');
$("i.deactivate + span:contains('users')").text('PEUT ACCÉDER');
$("i + span:contains('users')").text('inaccessible');
$("i + span:contains('administrators')").closest("li").hide();