diff --git a/components/Footer/LastUpdated.jsx b/components/Footer/LastUpdated.jsx index 3f3d70349..dbdde2283 100644 --- a/components/Footer/LastUpdated.jsx +++ b/components/Footer/LastUpdated.jsx @@ -4,7 +4,7 @@ import Typography from '@mui/material/Typography'; import makeStyles from '@mui/styles/makeStyles'; import DbContext from '@db/DbContext'; import ddbh from '@utils/duckDbHelpers.js'; -import { isEmpty } from '@utils'; +import { isEmpty, toNonBreakingSpaces } from '@utils'; const useStyles = makeStyles(theme => ({ lastUpdated: { @@ -39,8 +39,9 @@ function LastUpdated() { lastUpdated && (
- Data last updated  - {moment(lastUpdated).format('MM/DD/YY')} + {toNonBreakingSpaces( + `Data last updated ${moment(lastUpdated).format('MM/DD/YY')}` + )}
) diff --git a/components/Footer/index.jsx b/components/Footer/index.jsx index 1635e9605..e3d51f4ec 100644 --- a/components/Footer/index.jsx +++ b/components/Footer/index.jsx @@ -1,10 +1,12 @@ -import React from 'react'; +import React, { Fragment } from 'react'; import { connect } from 'react-redux'; import Typography from '@mui/material/Typography'; import makeStyles from '@mui/styles/makeStyles'; import { Link } from 'react-router-dom'; import LastUpdated from '@components/Footer/LastUpdated'; import SocialMediaLinks from '@components/Footer/SocialMediaLinks'; +import { toNonBreakingSpaces } from '@utils'; +import HFLALogo from '@assets/hack_for_la_logo.png'; // Footer should make use of style overrides to look the same regardless of light/dark theme. const useStyles = makeStyles(theme => ({ @@ -20,6 +22,8 @@ const useStyles = makeStyles(theme => ({ height: theme.footer.height, }, copyright: { + display: 'flex', + gap: theme.spacing(1), fontWeight: theme.typography.fontWeightMedium, lineHeight: theme.footer.height, color: theme.palette.text.dark, @@ -32,34 +36,57 @@ const useStyles = makeStyles(theme => ({ }, copyrightContainer: { display: 'flex', - flexDirection: 'row', - justifyContent: 'center', + alignItems: 'center', }, link: { color: theme.palette.text.dark, textDecoration: 'none', }, + logo: { + marginInline: theme.spacing(1), + }, })); -// TODO: check with UI/UX re placement of social media, privacy policy links function Footer() { const classes = useStyles(); const currentDate = new Date(); + const footerItems = [ + { text: `\u00a9 ${currentDate.getFullYear()} 311 Data` }, + { text: 'All Rights Reserved' }, + { text: 'Privacy Policy', href: '/privacy' }, + { text: 'Powered by volunteers from Hack for LA' }, + ]; return (