diff --git a/backend/go-app/main.go b/backend/go-app/main.go index a7e78fed..72bbe93b 100644 --- a/backend/go-app/main.go +++ b/backend/go-app/main.go @@ -5896,6 +5896,10 @@ func initHandlers() { r.HandleFunc("/api/v1/files/{fileId}", shuffle.HandleDeleteFile).Methods("DELETE", "OPTIONS") r.HandleFunc("/api/v1/files", shuffle.HandleGetFiles).Methods("GET", "OPTIONS") + r.HandleFunc("/api/v1/notifications", shuffle.HandleGetNotifications).Methods("GET", "OPTIONS") + r.HandleFunc("/api/v1/notifications/{notificationId}/markasread", shuffle.HandleMarkAsRead).Methods("GET", "OPTIONS") + //r.HandleFunc("/api/v1/notifications/{notificationId}/markasread", shuffle.HandleMarkAsRead).Methods("GET", "OPTIONS") + http.Handle("/", r) } diff --git a/frontend/src/App.jsx b/frontend/src/App.jsx index 488d766e..80296a32 100644 --- a/frontend/src/App.jsx +++ b/frontend/src/App.jsx @@ -108,6 +108,7 @@ const App = (message, props) => {
+
} /> } /> } /> diff --git a/frontend/src/components/Header.js b/frontend/src/components/Header.js index af9d272d..bc50ef15 100644 --- a/frontend/src/components/Header.js +++ b/frontend/src/components/Header.js @@ -5,8 +5,8 @@ import {Link} from 'react-router-dom'; import { useTheme } from '@material-ui/core/styles'; -import { Tooltip, List, Avatar, Menu, ListItem, MenuItem, Select, Button, IconButton, Grid } from '@material-ui/core'; -import { Home as HomeIcon, Polymer as PolymerIcon, Apps as AppsIcon, Description as DescriptionIcon} from '@material-ui/icons'; +import { Badge, Typography, Paper, Tooltip, List, Avatar, Menu, ListItem, MenuItem, Select, Button, IconButton, Grid } from '@material-ui/core'; +import { Notifications as NotificationsIcon, Home as HomeIcon, Polymer as PolymerIcon, Apps as AppsIcon, Description as DescriptionIcon} from '@material-ui/icons'; import { useAlert } from "react-alert"; const hoverColor = "#f85a3e" @@ -148,12 +148,60 @@ const Header = props => { setAnchorEl(null); }; + const notifications = [{ + "image": "https://dytvr9ot2sszz.cloudfront.net/whats-new-announcements/billboard_metricsdashbd_sept2021.png", + "date": "1519211809934", + "title": "some title", + "description": "This is a escription", + "dismissable": true, + "personal": false, + "org_id": "", + }] + const notificationMenu = + + { + setAnchorEl(event.currentTarget); + }}> + + + + + { + handleClose() + }} + > + {notifications.map((data, index) => { + return ( + {}}> + + + + + {new Date(data.date).toISOString()} + + + {data.title} + + + + + + ) + })} + + // Should be based on some path const avatarMenu = - - { + + { setAnchorEl(event.currentTarget); }}> @@ -163,6 +211,7 @@ const Header = props => { anchorEl={anchorEl} keepMounted open={Boolean(anchorEl)} + style={{zIndex: 10002}} onClose={() => { handleClose() }} @@ -188,8 +237,9 @@ const Header = props => { // Handle top bar or something const logoCheck = !homePage ? null : null + //
const loginTextBrowser = !isLoggedIn ? -
+
@@ -265,6 +315,7 @@ const Header = props => {
{avatarMenu} + {notificationMenu} {userdata === undefined || userdata.admin === undefined || userdata.admin === null || !userdata.admin ? null :