diff --git a/client/src/assets/fonts/Montserrat-Regular.otf b/client/src/assets/fonts/Montserrat-Regular.otf
new file mode 100644
index 00000000..c1d1ee37
Binary files /dev/null and b/client/src/assets/fonts/Montserrat-Regular.otf differ
diff --git a/client/src/components/App/App.css b/client/src/components/App/App.css
index cde6c891..b39a85fb 100644
--- a/client/src/components/App/App.css
+++ b/client/src/components/App/App.css
@@ -498,3 +498,9 @@ a.btn.disabled, fieldset:disabled a.btn {
.text-center {
text-align: center !important;
}
+
+@font-face {
+ font-family: 'Montserrat';
+ src: local('Montserrat'),
+ url('../../assets/fonts/Montserrat-Regular.otf') format('truetype');
+}
\ No newline at end of file
diff --git a/client/src/components/Auth/AuthButton.js b/client/src/components/Auth/AuthButton.js
index b6e415b4..e09d6a6b 100644
--- a/client/src/components/Auth/AuthButton.js
+++ b/client/src/components/Auth/AuthButton.js
@@ -2,6 +2,9 @@
import React from 'react';
import { useAuth0 } from '@auth0/auth0-react';
import useAuthUtils from '@/components/Auth/useAuthUtils';
+import { GreenButton } from '@/components/Section/Section';
+import { MenuItem } from '@mui/material';
+import { LoginOutlined, LogoutOutlined } from '@mui/icons-material';
export const AuthButton = () => {
const { isAuthenticated, logout } = useAuth0();
@@ -18,12 +21,57 @@ export const AuthButton = () => {
};
return (
-
+
+ );
+};
+
+export const ProfileAuthButton = (props) => {
+ const LoginIcon = (props) => (
+
+ );
+
+ const LogoutIcon = (props) => (
+
+ );
+ const { isAuthenticated, logout } = useAuth0();
+ const { loginToCurrentPage } = useAuthUtils();
+
+ const handleClick = () => {
+ if (isAuthenticated) {
+ // Only logging out to the root seems to be allowed, so if the user is on a subpage like
+ // /contact, they'll be sent back to /.
+ logout({ returnTo: location.origin });
+ } else {
+ loginToCurrentPage();
+ }
+ };
+
+ return (
+
);
};
diff --git a/client/src/components/Auth/index.js b/client/src/components/Auth/index.js
index bcef3062..a1723733 100644
--- a/client/src/components/Auth/index.js
+++ b/client/src/components/Auth/index.js
@@ -1,5 +1,5 @@
export { Loading } from './Loading';
-export { AuthButton } from './AuthButton';
+export { AuthButton, ProfileAuthButton } from './AuthButton';
export { RedirectWithHash } from './RedirectWithHash';
export { RequireAuth } from './RequireAuth';
export { Auth0ProviderWithRedirect } from './Auth0ProviderWithRedirect';
diff --git a/client/src/components/Header/Header.js b/client/src/components/Header/Header.js
index 13cc03ca..82c24324 100644
--- a/client/src/components/Header/Header.js
+++ b/client/src/components/Header/Header.js
@@ -1,92 +1,64 @@
import React from 'react';
import { Link } from 'react-router-dom';
-import { Menu, MenuItem } from '@mui/material';
+import { TreeLogo } from '@/components/Icons';
+import HeaderLogo from '@/assets/images/logos/header-logo.svg';
import { useAuth0 } from '@auth0/auth0-react';
import { AuthButton } from '@/components/Auth';
-import HeaderLogo from '@/assets/images/logos/header-logo.svg';
+import Menu from './Menu';
+
import './Header.scss';
const Header = () => {
- const [anchorEl, setAnchorEl] = React.useState(null);
-
- const handleClick = (event) => {
- setAnchorEl(event.currentTarget);
- };
-
- const handleClose = () => {
- setAnchorEl(null);
- };
const { isAuthenticated } = useAuth0();
return (
-
-
-
-
-
-
-
-
-
+
+
+
SIL OPEN FONT LICENSE Version 1.1
+
+
+
Preamble
+ The goals of the Open Font License (OFL) are to stimulate worldwide
+ development of collaborative font projects, to support the font
+ creation efforts of academic and linguistic communities, and to
+ provide a free and open framework in which fonts may be shared and
+ improved in partnership with others. The OFL allows the licensed fonts
+ to be used, studied, modified and redistributed freely as long as they
+ are not sold by themselves. The fonts, including any derivative works,
+ can be bundled, embedded, redistributed and/or sold with any software
+ provided that any reserved names are not used by derivative works. The
+ fonts and derivatives, however, cannot be released under any other
+ type of license. The requirement for fonts to remain under this
+ license does not apply to any document created using the fonts or
+ their derivatives.
+
+
+
Definitions
+ "Font Software" refers to the set of files released by the Copyright
+ Holder(s) under this license and clearly marked as such. This may
+ include source files, build scripts and documentation. "Reserved Font
+ Name" refers to any names specified as such after the copyright
+ statement(s). "Original Version" refers to the collection of Font
+ Software components as distributed by the Copyright Holder(s).
+ "Modified Version" refers to any derivative made by adding to,
+ deleting, or substituting -- in part or in whole -- any of the
+ components of the Original Version, by changing formats or by porting
+ the Font Software to a new environment. "Author" refers to any
+ designer, engineer, programmer, technical writer or other person who
+ contributed to the Font Software.
+
+
+
Permissions & Conditions
+ Permission is hereby granted, free of charge, to any person obtaining
+ a copy of the Font Software, to use, study, copy, merge, embed,
+ modify, redistribute, and sell modified and unmodified copies of the
+ Font Software, subject to the following conditions: 1) Neither the
+ Font Software nor any of its individual components, in Original or
+ Modified Versions, may be sold by itself. 2) Original or Modified
+ Versions of the Font Software may be bundled, redistributed and/or
+ sold with any software, provided that each copy contains the above
+ copyright notice and this license. These can be included either as
+ stand-alone text files, human-readable headers or in the appropriate
+ machine-readable metadata fields within text or binary files as long
+ as those fields can be easily viewed by the user. 3) No Modified
+ Version of the Font Software may use the Reserved Font Name(s) unless
+ explicit written permission is granted by the corresponding Copyright
+ Holder. This restriction only applies to the primary font name as
+ presented to the users. 4) The name(s) of the Copyright Holder(s) or
+ the Author(s) of the Font Software shall not be used to promote,
+ endorse or advertise any Modified Version, except to acknowledge the
+ contribution(s) of the Copyright Holder(s) and the Author(s) or with
+ their explicit written permission. 5) The Font Software, modified or
+ unmodified, in part or in whole, must be distributed entirely under
+ this license, and must not be distributed under any other license. The
+ requirement for fonts to remain under this license does not apply to
+ any document created using the Font Software.
+
+
+
Disclaimers
+ THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
+ OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE
+ COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+ INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL
+ DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM
+ OTHER DEALINGS IN THE FONT SOFTWARE.
+
+
+ This license becomes null and void if any of the above conditions are
+ not met.
+