Hidden Register Node Component when user hasn't permission

This commit is contained in:
Andrey Terentev 2024-03-26 11:07:34 +07:00
parent d9aaec7bf2
commit 8ccb1ed44d

View File

@ -13,6 +13,7 @@ import ru.dragonestia.picker.api.repository.NodeRepository;
import ru.dragonestia.picker.cp.component.NavPath; import ru.dragonestia.picker.cp.component.NavPath;
import ru.dragonestia.picker.cp.component.NodeList; import ru.dragonestia.picker.cp.component.NodeList;
import ru.dragonestia.picker.cp.component.RegisterNode; import ru.dragonestia.picker.cp.component.RegisterNode;
import ru.dragonestia.picker.cp.service.SecurityService;
@PermitAll @PermitAll
@PageTitle("Nodes") @PageTitle("Nodes")
@ -23,12 +24,16 @@ public class NodesPage extends VerticalLayout {
private final NodeRepository nodeRepository; private final NodeRepository nodeRepository;
private final NodeList nodeList; private final NodeList nodeList;
public NodesPage(@Autowired RoomPickerClient client) { @Autowired
super(); public NodesPage(RoomPickerClient client, SecurityService securityService) {
this.nodeRepository = client.getNodeRepository(); this.nodeRepository = client.getNodeRepository();
add(NavPath.rootNodes()); add(NavPath.rootNodes());
add(createRegisterNodeElement());
if (securityService.hasRole("NODE_MANAGEMENT")) {
add(createRegisterNodeElement());
}
add(new Hr()); add(new Hr());
add(nodeList = createNodeListElement()); add(nodeList = createNodeListElement());
} }