This commit is contained in:
Vitalii Kiiko
2024-09-27 12:51:29 +02:00
parent 478af11cb9
commit 4be858ca74
19 changed files with 580 additions and 292 deletions

View File

@@ -3,54 +3,61 @@ import { __ } from '@wordpress/i18n';
import { useNavigate } from 'react-router-dom';
// store
import { storeSet, useTrackedStore } from '../../store';
import { storeSet, useStore, useTrackedStore } from '../../store';
// components
import { Menu } from 'primereact/menu';
import { Avatar } from 'primereact/avatar';
import { intersection } from 'ramda';
const TopBarProfileMenu = ({ menuLeftRef }) => {
const navigate = useNavigate();
const userData = useTrackedStore().main.userData();
const fulleName = `${userData.firstName} ${userData.lastName}`;
const permissions = useStore().main.getPermissions();
let items = [
{
template: (item, options) => {
return (
<div className="topBar__menuProfileItem">
<Avatar image="https://primefaces.org/cdn/primereact/images/avatar/amyelsner.png" shape="circle" />
{/*<Avatar image="https://primefaces.org/cdn/primereact/images/avatar/amyelsner.png" shape="circle" />*/}
<div className="userInfo">
<span className="userName" title={fulleName}>{fulleName}</span>
<span className="userEmail" title={userData.email}>{userData.email}</span>
</div>
</div>
);
}
},
enable: true
},
{
label: __('Il mio profilo', 'gepafin'),
command: () => {
navigate('/profilo')
}
},
enable: true
},
{
label: __('Profilo aziendale', 'gepafin'),
command: () => {
navigate('/profilo-aziendale')
}
},
enable: !intersection(permissions, ['MANAGE_TENDERS']).length
},
{
separator: true
separator: true,
enable: true
},
{
label: __('Logout', 'gepafin'),
icon: 'pi pi-sign-out',
command: () => {
storeSet.main.doLogout();
}
},
enable: true
}
];
].filter(o => o.enable);
return <>
<Menu model={items} popup ref={menuLeftRef} id="topBar_profileMenu" className="topBar__menuProfile"/>