Add some common sense redirects

This commit is contained in:
Marshall Polaris 2022-07-07 23:53:54 -07:00
parent 3405096438
commit 68e4670589
7 changed files with 25 additions and 27 deletions

View File

@ -8,6 +8,9 @@ import { checkoutURL } from 'web/lib/service/stripe'
import { Page } from 'web/components/page'
import { useTracking } from 'web/hooks/use-tracking'
import { trackCallback } from 'web/lib/service/analytics'
import { redirectIfLoggedOut } from 'web/lib/firebase/server-auth'
export const getServerSideProps = redirectIfLoggedOut('/')
export default function AddFundsPage() {
const user = useUser()

View File

@ -9,6 +9,9 @@ import { useContracts } from 'web/hooks/use-contracts'
import { mapKeys } from 'lodash'
import { useAdmin } from 'web/hooks/use-admin'
import { contractPath } from 'web/lib/firebase/contracts'
import { redirectIfLoggedOut } from 'web/lib/firebase/server-auth'
export const getServerSideProps = redirectIfLoggedOut('/')
function avatarHtml(avatarUrl: string) {
return `<img

View File

@ -28,6 +28,9 @@ import { GroupSelector } from 'web/components/groups/group-selector'
import { User } from 'common/user'
import { TextEditor, useTextEditor } from 'web/components/editor'
import { Checkbox } from 'web/components/checkbox'
import { redirectIfLoggedOut } from 'web/lib/firebase/server-auth'
export const getServerSideProps = redirectIfLoggedOut('/')
type NewQuestionParams = {
groupId?: string
@ -55,11 +58,7 @@ export default function Create() {
}, [params.q])
const creator = useUser()
useEffect(() => {
if (creator === null) router.push('/')
}, [creator, router])
if (!router.isReady || !creator) return <div />
if (!router.isReady || creator) return <div />
return (
<Page>
@ -93,7 +92,7 @@ export default function Create() {
// Allow user to create a new contract
export function NewContract(props: {
creator: User
creator?: User | null
question: string
params?: NewQuestionParams
}) {

View File

@ -1,10 +1,9 @@
import React, { useEffect, useState } from 'react'
import Router, { useRouter } from 'next/router'
import { useRouter } from 'next/router'
import { PlusSmIcon } from '@heroicons/react/solid'
import { Page } from 'web/components/page'
import { Col } from 'web/components/layout/col'
import { useUser } from 'web/hooks/use-user'
import { getSavedSort } from 'web/hooks/use-sort-and-query-params'
import { ContractSearch } from 'web/components/contract-search'
import { Contract } from 'common/contract'
@ -12,19 +11,16 @@ import { ContractPageContent } from './[username]/[contractSlug]'
import { getContractFromSlug } from 'web/lib/firebase/contracts'
import { useTracking } from 'web/hooks/use-tracking'
import { track } from 'web/lib/service/analytics'
import { redirectIfLoggedOut } from 'web/lib/firebase/server-auth'
export const getServerSideProps = redirectIfLoggedOut('/')
const Home = () => {
const user = useUser()
const [contract, setContract] = useContractPage()
const router = useRouter()
useTracking('view home')
if (user === null) {
Router.replace('/')
return <></>
}
return (
<>
<Page suspend={!!contract}>

View File

@ -18,11 +18,14 @@ import { Avatar } from 'web/components/avatar'
import { RelativeTimestamp } from 'web/components/relative-timestamp'
import { UserLink } from 'web/components/user-page'
import { CreateLinksButton } from 'web/components/manalinks/create-links-button'
import { redirectIfLoggedOut } from 'web/lib/firebase/server-auth'
import dayjs from 'dayjs'
import customParseFormat from 'dayjs/plugin/customParseFormat'
dayjs.extend(customParseFormat)
export const getServerSideProps = redirectIfLoggedOut('/')
export function getManalinkUrl(slug: string) {
return `${location.protocol}//${location.host}/link/${slug}`
}

View File

@ -1,6 +1,5 @@
import React, { useEffect, useState } from 'react'
import { RefreshIcon } from '@heroicons/react/outline'
import Router from 'next/router'
import { AddFundsButton } from 'web/components/add-funds-button'
import { Page } from 'web/components/page'
@ -18,6 +17,9 @@ import { updateUser, updatePrivateUser } from 'web/lib/firebase/users'
import { defaultBannerUrl } from 'web/components/user-page'
import { SiteLink } from 'web/components/site-link'
import Textarea from 'react-expanding-textarea'
import { redirectIfLoggedOut } from 'web/lib/firebase/server-auth'
export const getServerSideProps = redirectIfLoggedOut('/')
function EditUserField(props: {
user: User
@ -134,8 +136,7 @@ export default function ProfilePage() {
})
}
if (user === null) {
Router.replace('/')
if (user == null) {
return <></>
}

View File

@ -1,17 +1,10 @@
import Router from 'next/router'
import { useEffect } from 'react'
import { redirectIfLoggedOut } from 'web/lib/firebase/server-auth'
import { useUser } from 'web/hooks/use-user'
export const getServerSideProps = redirectIfLoggedOut('/')
// Deprecated: redirects to /portfolio.
// Eventually, this will be removed.
export default function TradesPage() {
const user = useUser()
useEffect(() => {
if (user === null) Router.replace('/')
else Router.replace('/portfolio')
})
return <></>
Router.replace('/portfolio')
}