fix: check that application URL and email agent are configured for password reset/generation (#1724)

* fix: check that application URL and email agent are configured for password reset/generation

* refactor: reverse flex direction instead of conditionally changing justify
This commit is contained in:
TheCatLady
2021-06-09 23:56:33 -04:00
committed by GitHub
parent 43b2e693e7
commit 091d66a192
10 changed files with 51 additions and 32 deletions

View File

@@ -5,6 +5,7 @@ import Link from 'next/link';
import React, { useState } from 'react';
import { defineMessages, useIntl } from 'react-intl';
import * as Yup from 'yup';
import useSettings from '../../hooks/useSettings';
import Button from '../Common/Button';
import SensitiveInput from '../Common/SensitiveInput';
@@ -25,6 +26,7 @@ interface LocalLoginProps {
const LocalLogin: React.FC<LocalLoginProps> = ({ revalidate }) => {
const intl = useIntl();
const settings = useSettings();
const [loginError, setLoginError] = useState<string | null>(null);
const LoginSchema = Yup.object().shape({
@@ -36,6 +38,10 @@ const LocalLogin: React.FC<LocalLoginProps> = ({ revalidate }) => {
),
});
const passwordResetEnabled =
settings.currentSettings.applicationUrl &&
settings.currentSettings.emailEnabled;
return (
<Formik
initialValues={{
@@ -60,7 +66,7 @@ const LocalLogin: React.FC<LocalLoginProps> = ({ revalidate }) => {
return (
<>
<Form>
<div className="sm:border-t sm:border-gray-800">
<div>
<label htmlFor="email" className="text-label">
{intl.formatMessage(messages.email)}
</label>
@@ -101,17 +107,7 @@ const LocalLogin: React.FC<LocalLoginProps> = ({ revalidate }) => {
)}
</div>
<div className="pt-5 mt-8 border-t border-gray-700">
<div className="flex justify-between">
<span className="inline-flex rounded-md shadow-sm">
<Link href="/resetpassword" passHref>
<Button as="a" buttonType="ghost">
<SupportIcon />
<span>
{intl.formatMessage(messages.forgotpassword)}
</span>
</Button>
</Link>
</span>
<div className="flex flex-row-reverse justify-between">
<span className="inline-flex rounded-md shadow-sm">
<Button
buttonType="primary"
@@ -126,6 +122,18 @@ const LocalLogin: React.FC<LocalLoginProps> = ({ revalidate }) => {
</span>
</Button>
</span>
{passwordResetEnabled && (
<span className="inline-flex rounded-md shadow-sm">
<Link href="/resetpassword" passHref>
<Button as="a" buttonType="ghost">
<SupportIcon />
<span>
{intl.formatMessage(messages.forgotpassword)}
</span>
</Button>
</Link>
</span>
)}
</div>
</div>
</Form>