icon disabling

main
alex 2023-06-21 22:21:12 +02:00
parent 4da538b838
commit 5512c53bf7
3 changed files with 44 additions and 22 deletions

View File

@ -8,7 +8,7 @@ import {
SnippetsOutlined, SnippetsOutlined,
UsergroupAddOutlined, UsergroupAddOutlined,
} from "@ant-design/icons"; } from "@ant-design/icons";
import { Badge, Divider, Menu } from "antd"; import { Badge, Divider, Menu, Space } from "antd";
import Sider from "antd/es/layout/Sider"; import Sider from "antd/es/layout/Sider";
import { useContext, useEffect, useState } from "react"; import { useContext, useEffect, useState } from "react";
import { useLocation, useNavigate } from "react-router-dom"; import { useLocation, useNavigate } from "react-router-dom";
@ -28,10 +28,8 @@ export default function SideMenu({ userSession, setUserSession }) {
const navigate = useNavigate(); const navigate = useNavigate();
function getCurrentUsedScannerName() { function getCurrentUsedScannerName() {
const userId = getUserId();
const scannerName = webSocketContext.Scanners.find( const scannerName = webSocketContext.Scanners.find(
(scanner) => scanner.UsedByUserId === userId (scanner) => scanner.UsedByUserId === getUserId()
)?.Name; )?.Name;
return scannerName === undefined ? "No scanner selected" : scannerName; return scannerName === undefined ? "No scanner selected" : scannerName;
@ -138,7 +136,7 @@ export default function SideMenu({ userSession, setUserSession }) {
key: "/users", key: "/users",
}, },
{ {
label: " " + webSocketContext.User.Username, label: ` ${webSocketContext.User.Username}`,
icon: ( icon: (
<MyAvatar <MyAvatar
allUsers={webSocketContext.AllUsers} allUsers={webSocketContext.AllUsers}

View File

@ -347,6 +347,11 @@ function Role({ treeData, role, webSocketContext, notificationApi }) {
); );
}; };
const getMaxRoleSortingOrder = () => {
return webSocketContext.AllRoles[webSocketContext.AllRoles.length - 1]
.SortingOrder;
};
return ( return (
<Collapse <Collapse
collapsible={editMode ? "icon" : "header"} collapsible={editMode ? "icon" : "header"}
@ -356,7 +361,14 @@ function Role({ treeData, role, webSocketContext, notificationApi }) {
key: "2", key: "2",
extra: editMode ? ( extra: editMode ? (
<Space key="spaceedit" style={{ paddingLeft: 10 }} size="small"> <Space key="spaceedit" style={{ paddingLeft: 10 }} size="small">
{!role.Master && getUsersInRole().length === 0 && ( {role.Master || getUsersInRole().length > 0 ? (
<DeleteOutlined
style={{
color: "rgba(0, 0, 0, 0.25)",
cursor: "not-allowed",
}}
/>
) : (
<Popconfirm <Popconfirm
title="Delete role" title="Delete role"
description="Are you sure to delete this role?" description="Are you sure to delete this role?"
@ -368,12 +380,32 @@ function Role({ treeData, role, webSocketContext, notificationApi }) {
</Tooltip> </Tooltip>
</Popconfirm> </Popconfirm>
)} )}
<Tooltip title="Move role up">
<ArrowUpOutlined onClick={() => onMoveUpClick()} /> {role.SortingOrder === 0 ? (
</Tooltip> <ArrowUpOutlined
<Tooltip title="Move role down"> style={{
<ArrowDownOutlined onClick={() => onMoveDownClick()} /> color: "rgba(0, 0, 0, 0.25)",
</Tooltip> cursor: "not-allowed",
}}
/>
) : (
<Tooltip title="Move role up">
<ArrowUpOutlined onClick={() => onMoveUpClick()} />
</Tooltip>
)}
{role.SortingOrder === getMaxRoleSortingOrder() ? (
<ArrowDownOutlined
style={{
color: "rgba(0, 0, 0, 0.25)",
cursor: "not-allowed",
}}
/>
) : (
<Tooltip title="Move role down">
<ArrowDownOutlined onClick={() => onMoveDownClick()} />
</Tooltip>
)}
<Tooltip title="Save"> <Tooltip title="Save">
<SaveOutlined onClick={() => onSaveClick()} /> <SaveOutlined onClick={() => onSaveClick()} />
</Tooltip> </Tooltip>

View File

@ -565,16 +565,10 @@ export function WebSocketProvider({
(item) => item.RoleId === body.RoleId (item) => item.RoleId === body.RoleId
); );
console.log("roleIndex", roleIndex);
if (body.Changes.AddedPermissions !== undefined) { if (body.Changes.AddedPermissions !== undefined) {
console.log("updating role", newArr[roleIndex].Permissions);
if (newArr[roleIndex].Permissions === null) { if (newArr[roleIndex].Permissions === null) {
console.log("here null");
newArr[roleIndex].Permissions = body.Changes.AddedPermissions; newArr[roleIndex].Permissions = body.Changes.AddedPermissions;
} else { } else {
console.warn("here2");
newArr[roleIndex].Permissions = newArr[ newArr[roleIndex].Permissions = newArr[
roleIndex roleIndex
].Permissions.concat(body.Changes.AddedPermissions); ].Permissions.concat(body.Changes.AddedPermissions);
@ -590,8 +584,6 @@ export function WebSocketProvider({
); );
} }
console.log("after edit", newArr[roleIndex].Permissions);
return newArr; return newArr;
}); });
} }
@ -687,7 +679,7 @@ export function WebSocketProvider({
ws.current.onclose = (event) => { ws.current.onclose = (event) => {
setIsReady(false); setIsReady(false);
setConnectionBadgeStatus("error"); setConnectionBadgeStatus("error");
console.log("closed", event); console.warn("closed", event);
// custom code defined by the backend server // custom code defined by the backend server
if (event.code === 4001 || event.code === 4002) { if (event.code === 4001 || event.code === 4002) {
@ -700,7 +692,7 @@ export function WebSocketProvider({
if (event.reason.code === 1005) return; if (event.reason.code === 1005) return;
console.log("reconnecting..."); console.warn("reconnecting...");
setTimeout(() => connect(), 1000); setTimeout(() => connect(), 1000);
}; };