summaryrefslogtreecommitdiffstats
path: root/client/src/admin/jsx/layout/UserSwitch.jsx
diff options
context:
space:
mode:
Diffstat (limited to 'client/src/admin/jsx/layout/UserSwitch.jsx')
-rw-r--r--client/src/admin/jsx/layout/UserSwitch.jsx39
1 files changed, 39 insertions, 0 deletions
diff --git a/client/src/admin/jsx/layout/UserSwitch.jsx b/client/src/admin/jsx/layout/UserSwitch.jsx
new file mode 100644
index 0000000..403783c
--- /dev/null
+++ b/client/src/admin/jsx/layout/UserSwitch.jsx
@@ -0,0 +1,39 @@
+import React from 'react';
+import { WithHover, t } from '../../hocs';
+import { logout } from '../../api';
+
+const User = ({ user, setUser, opened, setOpened }) => {
+ const handleLogout = () => {
+ setOpened(false);
+ logout();
+ };
+ const handleChangePass = () => { setOpened(false) };
+ const handleRemoveUser = () => { setOpened(false) };
+
+ return (
+ <div className="user">
+ <WithHover message="click-to-change-user">
+ <span
+ className={`user__main-item${opened === 'user' ? ' user__main-item--active' : ''}`}
+ onClick={() => setOpened(opened !== 'user' ? 'user' : false)}
+ >
+ {user.email}
+ </span>
+ {
+ opened === 'user' && (
+ <div className="user__list" >
+ <WithHover message="click-to-logout">
+ <span className="user__item" onClick={handleLogout}>{t('logout')}</span>
+ </WithHover>
+ <WithHover message="click-to-change-user-settings">
+ <span className="user__item" onClick={handleChangePass}>{t('user-settings')}</span>
+ </WithHover>
+ </div>
+ )
+ }
+ </WithHover>
+ </div>
+ );
+};
+
+export default User;