From 94b4ed4a4b0b0f9e55b63eecafedfe73512ffe0f Mon Sep 17 00:00:00 2001 From: James D'Alton <jda1g15@soton.ac.uk> Date: Mon, 20 Apr 2020 11:21:24 +0100 Subject: [PATCH] moved pages out of signed in/signed out directories --- compforge/src/pages/AddPartner.js | 208 ++++++++++++++++++ compforge/src/pages/CreateForm.js | 208 ++++++++++++++++++ .../src/pages/{SignedIn => }/Dashboard.js | 17 +- compforge/src/pages/PageNotFound.js | 208 ++++++++++++++++++ compforge/src/pages/SignedIn/AddPartner.js | 0 compforge/src/pages/SignedIn/CreateForm.js | 0 compforge/src/pages/SignedIn/PageNotFound.js | 0 7 files changed, 638 insertions(+), 3 deletions(-) create mode 100644 compforge/src/pages/AddPartner.js create mode 100644 compforge/src/pages/CreateForm.js rename compforge/src/pages/{SignedIn => }/Dashboard.js (89%) create mode 100644 compforge/src/pages/PageNotFound.js delete mode 100644 compforge/src/pages/SignedIn/AddPartner.js delete mode 100644 compforge/src/pages/SignedIn/CreateForm.js delete mode 100644 compforge/src/pages/SignedIn/PageNotFound.js diff --git a/compforge/src/pages/AddPartner.js b/compforge/src/pages/AddPartner.js new file mode 100644 index 00000000..c3a38aec --- /dev/null +++ b/compforge/src/pages/AddPartner.js @@ -0,0 +1,208 @@ +import React from 'react'; +import clsx from 'clsx'; +import { makeStyles } from '@material-ui/core/styles'; +import CssBaseline from '@material-ui/core/CssBaseline'; +import Drawer from '@material-ui/core/Drawer'; +import Box from '@material-ui/core/Box'; +import AppBar from '@material-ui/core/AppBar'; +import Toolbar from '@material-ui/core/Toolbar'; +import List from '@material-ui/core/List'; +import Typography from '@material-ui/core/Typography'; +import Divider from '@material-ui/core/Divider'; +import IconButton from '@material-ui/core/IconButton'; +import Badge from '@material-ui/core/Badge'; +import Container from '@material-ui/core/Container'; +import Grid from '@material-ui/core/Grid'; +import Paper from '@material-ui/core/Paper'; +import Link from '@material-ui/core/Link'; +import MenuIcon from '@material-ui/icons/Menu'; +import ChevronLeftIcon from '@material-ui/icons/ChevronLeft'; +import NotificationsIcon from '@material-ui/icons/Notifications'; +import { mainListItems, secondaryListItems } from '../components/Other/listItems'; +import Partners from '../components/Other/Partners'; +import Forms from '../components/Other/Forms'; +import firebase from '../firebase'; + +function Copyright() { + return ( + <Typography variant="body2" color="textSecondary" align="center"> + {'Copyright © '} + <Link color="inherit" href="https://material-ui.com/"> + CompForge + </Link>{' '} + {new Date().getFullYear()} + {'.'} + </Typography> + ); +} + +const drawerWidth = 240; + +const useStyles = makeStyles((theme) => ({ + root: { + display: 'flex', + }, + toolbar: { + paddingRight: 24, // keep right padding when drawer closed + }, + toolbarIcon: { + display: 'flex', + alignItems: 'center', + justifyContent: 'flex-end', + padding: '0 8px', + ...theme.mixins.toolbar, + }, + appBar: { + zIndex: theme.zIndex.drawer + 1, + transition: theme.transitions.create(['width', 'margin'], { + easing: theme.transitions.easing.sharp, + duration: theme.transitions.duration.leavingScreen, + }), + }, + appBarShift: { + // Space for menu 'drawer' from side. Removed for now because button has gone AWOL. + // marginLeft: drawerWidth, + // width: `calc(100% - ${drawerWidth}px)`, + transition: theme.transitions.create(['width', 'margin'], { + easing: theme.transitions.easing.sharp, + duration: theme.transitions.duration.enteringScreen, + }), + }, + menuButton: { + marginRight: 36, + }, + menuButtonHidden: { + display: 'none', + }, + title: { + flexGrow: 1, + }, + drawerPaper: { + align: 'left', + position: 'relative', + whiteSpace: 'nowrap', + width: drawerWidth, + transition: theme.transitions.create('width', { + easing: theme.transitions.easing.sharp, + duration: theme.transitions.duration.enteringScreen, + }), + }, + drawerPaperClose: { + overflowX: 'hidden', + transition: theme.transitions.create('width', { + easing: theme.transitions.easing.sharp, + duration: theme.transitions.duration.leavingScreen, + }), + width: theme.spacing(7), + [theme.breakpoints.up('sm')]: { + width: theme.spacing(9), + }, + }, + appBarSpacer: theme.mixins.toolbar, + content: { + flexGrow: 1, + height: '100vh', + overflow: 'auto', + }, + container: { + paddingTop: theme.spacing(4), + paddingBottom: theme.spacing(4), + }, + paper: { + padding: theme.spacing(2), + display: 'flex', + overflow: 'auto', + flexDirection: 'column', + }, + fixedHeight: { + height: 240, + }, +})); + +export default function AddPartner() { + var user = firebase.auth().currentUser; + // var name, email, uid, emailVerified; + + if (user != null) { + // name = user.displayName; + // email = user.email; + // emailVerified = user.emailVerified; + // uid = user.uid; + } + + const classes = useStyles(); + const [open, setOpen] = React.useState(true); + const handleDrawerOpen = () => { + setOpen(true); + }; + const handleDrawerClose = () => { + setOpen(false); + }; + const fixedHeightPaper = clsx(classes.paper, classes.fixedHeight); + + return ( + <div className={classes.root}> + <CssBaseline /> + <AppBar position="absolute" className={clsx(classes.appBar, open && classes.appBarShift)}> + <Toolbar className={classes.toolbar}> + <IconButton + edge="start" + color="inherit" + aria-label="open drawer" + onClick={handleDrawerOpen} + className={clsx(classes.menuButton, open && classes.menuButtonHidden)} + > + <MenuIcon /> + </IconButton> + <Typography component="h1" variant="h6" color="inherit" noWrap className={classes.title}> + CompForge + </Typography> + <IconButton color="inherit"> + <Badge badgeContent={4} color="secondary"> + <NotificationsIcon /> + </Badge> + </IconButton> + </Toolbar> + </AppBar> + <Drawer + variant="permanent" + classes={{ + paper: clsx(classes.drawerPaper, !open && classes.drawerPaperClose), + }} + open={open} + > + <div className={classes.toolbarIcon}> + <IconButton onClick={handleDrawerClose}> + <ChevronLeftIcon /> + </IconButton> + </div> + <Divider /> + <List>{mainListItems}</List> + <Divider /> + <List>{secondaryListItems}</List> + </Drawer> + <main className={classes.content}> + <div className={classes.appBarSpacer} /> + <Container maxWidth="lg" className={classes.container}> + <Grid container spacing={3}> + {/* Forms */} + <Grid item xs={12}> + <Paper className={classes.paper}> + <Forms /> + </Paper> + </Grid> + {/* Partners */} + <Grid item xs={12} md={4} lg={6}> + <Paper className={fixedHeightPaper}> + <Partners /> + </Paper> + </Grid> + </Grid> + <Box pt={4}> + <Copyright /> + </Box> + </Container> + </main> + </div> + ); +} \ No newline at end of file diff --git a/compforge/src/pages/CreateForm.js b/compforge/src/pages/CreateForm.js new file mode 100644 index 00000000..0372efd3 --- /dev/null +++ b/compforge/src/pages/CreateForm.js @@ -0,0 +1,208 @@ +import React from 'react'; +import clsx from 'clsx'; +import { makeStyles } from '@material-ui/core/styles'; +import CssBaseline from '@material-ui/core/CssBaseline'; +import Drawer from '@material-ui/core/Drawer'; +import Box from '@material-ui/core/Box'; +import AppBar from '@material-ui/core/AppBar'; +import Toolbar from '@material-ui/core/Toolbar'; +import List from '@material-ui/core/List'; +import Typography from '@material-ui/core/Typography'; +import Divider from '@material-ui/core/Divider'; +import IconButton from '@material-ui/core/IconButton'; +import Badge from '@material-ui/core/Badge'; +import Container from '@material-ui/core/Container'; +import Grid from '@material-ui/core/Grid'; +import Paper from '@material-ui/core/Paper'; +import Link from '@material-ui/core/Link'; +import MenuIcon from '@material-ui/icons/Menu'; +import ChevronLeftIcon from '@material-ui/icons/ChevronLeft'; +import NotificationsIcon from '@material-ui/icons/Notifications'; +import { mainListItems, secondaryListItems } from '../components/Other/listItems'; +import Partners from '../components/Other/Partners'; +import Forms from '../components/Other/Forms'; +import firebase from '../firebase'; + +function Copyright() { + return ( + <Typography variant="body2" color="textSecondary" align="center"> + {'Copyright © '} + <Link color="inherit" href="https://material-ui.com/"> + CompForge + </Link>{' '} + {new Date().getFullYear()} + {'.'} + </Typography> + ); +} + +const drawerWidth = 240; + +const useStyles = makeStyles((theme) => ({ + root: { + display: 'flex', + }, + toolbar: { + paddingRight: 24, // keep right padding when drawer closed + }, + toolbarIcon: { + display: 'flex', + alignItems: 'center', + justifyContent: 'flex-end', + padding: '0 8px', + ...theme.mixins.toolbar, + }, + appBar: { + zIndex: theme.zIndex.drawer + 1, + transition: theme.transitions.create(['width', 'margin'], { + easing: theme.transitions.easing.sharp, + duration: theme.transitions.duration.leavingScreen, + }), + }, + appBarShift: { + // Space for menu 'drawer' from side. Removed for now because button has gone AWOL. + // marginLeft: drawerWidth, + // width: `calc(100% - ${drawerWidth}px)`, + transition: theme.transitions.create(['width', 'margin'], { + easing: theme.transitions.easing.sharp, + duration: theme.transitions.duration.enteringScreen, + }), + }, + menuButton: { + marginRight: 36, + }, + menuButtonHidden: { + display: 'none', + }, + title: { + flexGrow: 1, + }, + drawerPaper: { + align: 'left', + position: 'relative', + whiteSpace: 'nowrap', + width: drawerWidth, + transition: theme.transitions.create('width', { + easing: theme.transitions.easing.sharp, + duration: theme.transitions.duration.enteringScreen, + }), + }, + drawerPaperClose: { + overflowX: 'hidden', + transition: theme.transitions.create('width', { + easing: theme.transitions.easing.sharp, + duration: theme.transitions.duration.leavingScreen, + }), + width: theme.spacing(7), + [theme.breakpoints.up('sm')]: { + width: theme.spacing(9), + }, + }, + appBarSpacer: theme.mixins.toolbar, + content: { + flexGrow: 1, + height: '100vh', + overflow: 'auto', + }, + container: { + paddingTop: theme.spacing(4), + paddingBottom: theme.spacing(4), + }, + paper: { + padding: theme.spacing(2), + display: 'flex', + overflow: 'auto', + flexDirection: 'column', + }, + fixedHeight: { + height: 240, + }, +})); + +export default function CreateForm() { + var user = firebase.auth().currentUser; + // var name, email, uid, emailVerified; + + if (user != null) { + // name = user.displayName; + // email = user.email; + // emailVerified = user.emailVerified; + // uid = user.uid; + } + + const classes = useStyles(); + const [open, setOpen] = React.useState(true); + const handleDrawerOpen = () => { + setOpen(true); + }; + const handleDrawerClose = () => { + setOpen(false); + }; + const fixedHeightPaper = clsx(classes.paper, classes.fixedHeight); + + return ( + <div className={classes.root}> + <CssBaseline /> + <AppBar position="absolute" className={clsx(classes.appBar, open && classes.appBarShift)}> + <Toolbar className={classes.toolbar}> + <IconButton + edge="start" + color="inherit" + aria-label="open drawer" + onClick={handleDrawerOpen} + className={clsx(classes.menuButton, open && classes.menuButtonHidden)} + > + <MenuIcon /> + </IconButton> + <Typography component="h1" variant="h6" color="inherit" noWrap className={classes.title}> + CompForge + </Typography> + <IconButton color="inherit"> + <Badge badgeContent={4} color="secondary"> + <NotificationsIcon /> + </Badge> + </IconButton> + </Toolbar> + </AppBar> + <Drawer + variant="permanent" + classes={{ + paper: clsx(classes.drawerPaper, !open && classes.drawerPaperClose), + }} + open={open} + > + <div className={classes.toolbarIcon}> + <IconButton onClick={handleDrawerClose}> + <ChevronLeftIcon /> + </IconButton> + </div> + <Divider /> + <List>{mainListItems}</List> + <Divider /> + <List>{secondaryListItems}</List> + </Drawer> + <main className={classes.content}> + <div className={classes.appBarSpacer} /> + <Container maxWidth="lg" className={classes.container}> + <Grid container spacing={3}> + {/* Forms */} + <Grid item xs={12}> + <Paper className={classes.paper}> + <Forms /> + </Paper> + </Grid> + {/* Partners */} + <Grid item xs={12} md={4} lg={6}> + <Paper className={fixedHeightPaper}> + <Partners /> + </Paper> + </Grid> + </Grid> + <Box pt={4}> + <Copyright /> + </Box> + </Container> + </main> + </div> + ); +} \ No newline at end of file diff --git a/compforge/src/pages/SignedIn/Dashboard.js b/compforge/src/pages/Dashboard.js similarity index 89% rename from compforge/src/pages/SignedIn/Dashboard.js rename to compforge/src/pages/Dashboard.js index a33fae80..b4973b42 100644 --- a/compforge/src/pages/SignedIn/Dashboard.js +++ b/compforge/src/pages/Dashboard.js @@ -18,9 +18,10 @@ import Link from '@material-ui/core/Link'; import MenuIcon from '@material-ui/icons/Menu'; import ChevronLeftIcon from '@material-ui/icons/ChevronLeft'; import NotificationsIcon from '@material-ui/icons/Notifications'; -import { mainListItems, secondaryListItems } from '../../components/Other/listItems'; -import Partners from '../../components/Other/Partners'; -import Forms from '../../components/Other/Forms'; +import { mainListItems, secondaryListItems } from '../components/Other/listItems'; +import Partners from '../components/Other/Partners'; +import Forms from '../components/Other/Forms'; +import firebase from '../firebase'; function Copyright() { return ( @@ -119,6 +120,16 @@ const useStyles = makeStyles((theme) => ({ })); export default function Dashboard() { + var user = firebase.auth().currentUser; + // var name, email, uid, emailVerified; + + if (user != null) { + // name = user.displayName; + // email = user.email; + // emailVerified = user.emailVerified; + // uid = user.uid; + } + const classes = useStyles(); const [open, setOpen] = React.useState(true); const handleDrawerOpen = () => { diff --git a/compforge/src/pages/PageNotFound.js b/compforge/src/pages/PageNotFound.js new file mode 100644 index 00000000..ed34b34b --- /dev/null +++ b/compforge/src/pages/PageNotFound.js @@ -0,0 +1,208 @@ +import React from 'react'; +import clsx from 'clsx'; +import { makeStyles } from '@material-ui/core/styles'; +import CssBaseline from '@material-ui/core/CssBaseline'; +import Drawer from '@material-ui/core/Drawer'; +import Box from '@material-ui/core/Box'; +import AppBar from '@material-ui/core/AppBar'; +import Toolbar from '@material-ui/core/Toolbar'; +import List from '@material-ui/core/List'; +import Typography from '@material-ui/core/Typography'; +import Divider from '@material-ui/core/Divider'; +import IconButton from '@material-ui/core/IconButton'; +import Badge from '@material-ui/core/Badge'; +import Container from '@material-ui/core/Container'; +import Grid from '@material-ui/core/Grid'; +import Paper from '@material-ui/core/Paper'; +import Link from '@material-ui/core/Link'; +import MenuIcon from '@material-ui/icons/Menu'; +import ChevronLeftIcon from '@material-ui/icons/ChevronLeft'; +import NotificationsIcon from '@material-ui/icons/Notifications'; +import { mainListItems, secondaryListItems } from '../components/Other/listItems'; +import Partners from '../components/Other/Partners'; +import Forms from '../components/Other/Forms'; +import firebase from '../firebase'; + +function Copyright() { + return ( + <Typography variant="body2" color="textSecondary" align="center"> + {'Copyright © '} + <Link color="inherit" href="https://material-ui.com/"> + CompForge + </Link>{' '} + {new Date().getFullYear()} + {'.'} + </Typography> + ); +} + +const drawerWidth = 240; + +const useStyles = makeStyles((theme) => ({ + root: { + display: 'flex', + }, + toolbar: { + paddingRight: 24, // keep right padding when drawer closed + }, + toolbarIcon: { + display: 'flex', + alignItems: 'center', + justifyContent: 'flex-end', + padding: '0 8px', + ...theme.mixins.toolbar, + }, + appBar: { + zIndex: theme.zIndex.drawer + 1, + transition: theme.transitions.create(['width', 'margin'], { + easing: theme.transitions.easing.sharp, + duration: theme.transitions.duration.leavingScreen, + }), + }, + appBarShift: { + // Space for menu 'drawer' from side. Removed for now because button has gone AWOL. + // marginLeft: drawerWidth, + // width: `calc(100% - ${drawerWidth}px)`, + transition: theme.transitions.create(['width', 'margin'], { + easing: theme.transitions.easing.sharp, + duration: theme.transitions.duration.enteringScreen, + }), + }, + menuButton: { + marginRight: 36, + }, + menuButtonHidden: { + display: 'none', + }, + title: { + flexGrow: 1, + }, + drawerPaper: { + align: 'left', + position: 'relative', + whiteSpace: 'nowrap', + width: drawerWidth, + transition: theme.transitions.create('width', { + easing: theme.transitions.easing.sharp, + duration: theme.transitions.duration.enteringScreen, + }), + }, + drawerPaperClose: { + overflowX: 'hidden', + transition: theme.transitions.create('width', { + easing: theme.transitions.easing.sharp, + duration: theme.transitions.duration.leavingScreen, + }), + width: theme.spacing(7), + [theme.breakpoints.up('sm')]: { + width: theme.spacing(9), + }, + }, + appBarSpacer: theme.mixins.toolbar, + content: { + flexGrow: 1, + height: '100vh', + overflow: 'auto', + }, + container: { + paddingTop: theme.spacing(4), + paddingBottom: theme.spacing(4), + }, + paper: { + padding: theme.spacing(2), + display: 'flex', + overflow: 'auto', + flexDirection: 'column', + }, + fixedHeight: { + height: 240, + }, +})); + +export default function PageNotFound() { + var user = firebase.auth().currentUser; + // var name, email, uid, emailVerified; + + if (user != null) { + // name = user.displayName; + // email = user.email; + // emailVerified = user.emailVerified; + // uid = user.uid; + } + + const classes = useStyles(); + const [open, setOpen] = React.useState(true); + const handleDrawerOpen = () => { + setOpen(true); + }; + const handleDrawerClose = () => { + setOpen(false); + }; + const fixedHeightPaper = clsx(classes.paper, classes.fixedHeight); + + return ( + <div className={classes.root}> + <CssBaseline /> + <AppBar position="absolute" className={clsx(classes.appBar, open && classes.appBarShift)}> + <Toolbar className={classes.toolbar}> + <IconButton + edge="start" + color="inherit" + aria-label="open drawer" + onClick={handleDrawerOpen} + className={clsx(classes.menuButton, open && classes.menuButtonHidden)} + > + <MenuIcon /> + </IconButton> + <Typography component="h1" variant="h6" color="inherit" noWrap className={classes.title}> + CompForge + </Typography> + <IconButton color="inherit"> + <Badge badgeContent={4} color="secondary"> + <NotificationsIcon /> + </Badge> + </IconButton> + </Toolbar> + </AppBar> + <Drawer + variant="permanent" + classes={{ + paper: clsx(classes.drawerPaper, !open && classes.drawerPaperClose), + }} + open={open} + > + <div className={classes.toolbarIcon}> + <IconButton onClick={handleDrawerClose}> + <ChevronLeftIcon /> + </IconButton> + </div> + <Divider /> + <List>{mainListItems}</List> + <Divider /> + <List>{secondaryListItems}</List> + </Drawer> + <main className={classes.content}> + <div className={classes.appBarSpacer} /> + <Container maxWidth="lg" className={classes.container}> + <Grid container spacing={3}> + {/* Forms */} + <Grid item xs={12}> + <Paper className={classes.paper}> + <Forms /> + </Paper> + </Grid> + {/* Partners */} + <Grid item xs={12} md={4} lg={6}> + <Paper className={fixedHeightPaper}> + <Partners /> + </Paper> + </Grid> + </Grid> + <Box pt={4}> + <Copyright /> + </Box> + </Container> + </main> + </div> + ); +} \ No newline at end of file diff --git a/compforge/src/pages/SignedIn/AddPartner.js b/compforge/src/pages/SignedIn/AddPartner.js deleted file mode 100644 index e69de29b..00000000 diff --git a/compforge/src/pages/SignedIn/CreateForm.js b/compforge/src/pages/SignedIn/CreateForm.js deleted file mode 100644 index e69de29b..00000000 diff --git a/compforge/src/pages/SignedIn/PageNotFound.js b/compforge/src/pages/SignedIn/PageNotFound.js deleted file mode 100644 index e69de29b..00000000 -- GitLab