c3dae929c6
* feat: mui support & basic theming * feat: entgamers favicon * feat: public images until dynamic content can be used * feat: entgamers & gaming assets * feat: eslint extra rules * feat: mui theme modifications * feat: fontawesome, gsap, bundle analyzer * feat: common interfaces * feat: basic layout * chore: upadted dependencies * chore: updated dependencies * feat: updated link styles * feat: layout now have better interfaces * feat: basic seo component * feat: static website * feat: env variable rules in .gitignore * feat: added lint to pre-commit
229 lines
8.1 KiB
TypeScript
229 lines
8.1 KiB
TypeScript
import { Box, Button, Typography } from '@mui/material'
|
|
import { GetStaticProps, InferGetStaticPropsType } from 'next'
|
|
import NextLink from 'next/link'
|
|
import { FC } from 'react'
|
|
|
|
import ProfileCard, { ProfileCardProps } from '@components/profiles/ProfileCard'
|
|
import Contained from '@components/layouts/Contained'
|
|
import Seo from '@components/Seo'
|
|
import { EquipoPageProps } from '@interfaces'
|
|
|
|
export const getStaticProps: GetStaticProps<EquipoPageProps> = async () => {
|
|
return {
|
|
props: {
|
|
seo: {
|
|
title: 'Equipo',
|
|
description: ''
|
|
},
|
|
title: 'Equipo',
|
|
description: 'El equipo de EntGamers está formado por personas que se dedican a la administración de la comunidad, a la organización de eventos y a la creación de contenido. EntGamers siempre intenta recompensar a sus miembros más activos, por lo que si quieres formar parte de nuestro equipo, ¡no dudes en contactar con nosotros!',
|
|
administrationTitle: 'Administradores',
|
|
administrationDescription: 'Los administradores son quienes se encargan de que todo funcione como es debido en la comunidad, desde la moderación de los grupos hasta la organización de eventos.',
|
|
moderatorsTitle: 'Moderadores',
|
|
moderatorsDescription: 'Los moderadores son los encargados de mantener el orden en los grupos de la comunidad, así como de ayudar a los usuarios a resolver sus dudas.',
|
|
collaboratorsTitle: 'Colaboradores',
|
|
collaboratorsDescription: 'Los colaboradores son los encargados de crear contenido para la comunidad, como artículos, tutoriales, vídeos, etc.'
|
|
},
|
|
revalidate: 300
|
|
}
|
|
}
|
|
|
|
const Equipo: FC<InferGetStaticPropsType<typeof getStaticProps>> = (
|
|
{ administrationDescription, administrationTitle, collaboratorsDescription, collaboratorsTitle, description, moderatorsDescription, moderatorsTitle, title, seo }
|
|
) => {
|
|
const administrators: ProfileCardProps[] = [
|
|
{
|
|
avatar: '/images/team/SrJuggernaut.png',
|
|
biography: 'Soy desarrollador web y me gusta jugar videojuegos.',
|
|
userName: 'SrJuggernaut',
|
|
role: 'admin',
|
|
socialNetworks: [
|
|
{ label: 'SrJuggernaut Facebook', socialNetwork: 'facebook', url: 'https://www.facebook.com/SrJuggernaut' },
|
|
{ label: 'SrJuggernaut Twitter', socialNetwork: 'twitter', url: 'https://twitter.com/SrJuggernaut' },
|
|
{ label: 'SrJuggernaut Youtube', socialNetwork: 'youtube', url: 'https://youtube.com/juggernautplays' },
|
|
{ label: 'SrJuggernaut Twitch', socialNetwork: 'twitch', url: 'https://twitch.tv/juggernautplays' },
|
|
{ label: 'SrJuggernaut Instagram', socialNetwork: 'instagram', url: 'https://www.instagram.com/sr_juggernaut' },
|
|
{ label: 'SrJuggernaut Sitio web', socialNetwork: 'webpage', url: 'https://srjuggernaut.dev' }
|
|
]
|
|
}
|
|
]
|
|
const moderators: ProfileCardProps[] = []
|
|
const collaborators: ProfileCardProps[] = []
|
|
return (
|
|
<Contained>
|
|
<Seo {...seo} />
|
|
<Typography variant="h1" align="center" gutterBottom >
|
|
{title}
|
|
</Typography>
|
|
<Typography variant="body1">
|
|
{description}
|
|
</Typography>
|
|
<Typography variant="h2" align="center" gutterBottom >
|
|
{administrationTitle}
|
|
</Typography>
|
|
<Typography variant="body1">
|
|
{administrationDescription}
|
|
</Typography>
|
|
<Box
|
|
sx={{
|
|
display: 'grid',
|
|
gridTemplateColumns: 'repeat(auto-fit, minmax(300px, 1fr))',
|
|
gridGap: '1rem',
|
|
justifyContent: 'center',
|
|
justifyItems: 'center',
|
|
marginBlock: 2
|
|
}}
|
|
>
|
|
{administrators.length > 0
|
|
? administrators.map(({ avatar, biography, socialNetworks, userName, role }) => (
|
|
<ProfileCard
|
|
key={`profile-card-${userName}`}
|
|
avatar={avatar}
|
|
biography={biography}
|
|
socialNetworks={socialNetworks}
|
|
userName={userName}
|
|
role={role}
|
|
/>
|
|
))
|
|
|
|
: (
|
|
<>
|
|
<Typography variant="body2" color={(theme) => theme.palette.warning.main } align="center" gutterBottom >
|
|
Ups, parece que ahora mismo no hay administradores, pero en EntGamers siempre estamos buscando gente que quiera ayudar a la comunidad. si quieres ser administrador, puedes hacer click en el botón de abajo.
|
|
</Typography>
|
|
</>
|
|
)
|
|
}
|
|
</Box>
|
|
<Box
|
|
sx={{
|
|
display: 'flex',
|
|
justifyContent: 'center',
|
|
justifyItems: 'center',
|
|
marginBlock: 2
|
|
}}
|
|
>
|
|
<NextLink href="/equipo/unirse" passHref>
|
|
<Button
|
|
variant="contained"
|
|
color="primary"
|
|
component="a"
|
|
>
|
|
Quiero ser administrador
|
|
</Button>
|
|
</NextLink>
|
|
</Box>
|
|
<Typography variant="h2" align="center" gutterBottom >
|
|
{moderatorsTitle}
|
|
</Typography>
|
|
<Typography variant="body1">
|
|
{moderatorsDescription}
|
|
</Typography>
|
|
<Box
|
|
sx={{
|
|
display: 'grid',
|
|
gridTemplateColumns: 'repeat(auto-fit, minmax(300px, 1fr))',
|
|
gridGap: '1rem',
|
|
justifyContent: 'center',
|
|
justifyItems: 'center',
|
|
marginBlock: 2
|
|
}}
|
|
>
|
|
{moderators.length > 0
|
|
? moderators.map(({ avatar, biography, socialNetworks, userName, role }) => (
|
|
<ProfileCard
|
|
key={`profile-card-${userName}`}
|
|
avatar={avatar}
|
|
biography={biography}
|
|
socialNetworks={socialNetworks}
|
|
userName={userName}
|
|
role={role}
|
|
/>
|
|
))
|
|
: (
|
|
<>
|
|
<Typography variant="body2" color={(theme) => theme.palette.warning.main } align="center" gutterBottom >
|
|
Ups, parece que ahora mismo no hay moderadores, pero en EntGamers siempre estamos buscando gente que quiera ayudar a la comunidad. si quieres ser moderador, puedes hacer click en el botón de abajo.
|
|
</Typography>
|
|
</>
|
|
)
|
|
}
|
|
</Box>
|
|
<Box
|
|
sx={{
|
|
display: 'flex',
|
|
justifyContent: 'center',
|
|
justifyItems: 'center',
|
|
marginBlock: 2
|
|
}}
|
|
>
|
|
<NextLink href="/equipo/unirse" passHref>
|
|
<Button
|
|
variant="contained"
|
|
color="primary"
|
|
component="a"
|
|
>
|
|
Quiero ser moderador
|
|
</Button>
|
|
</NextLink>
|
|
</Box>
|
|
<Typography variant="h2" align="center" gutterBottom >
|
|
{collaboratorsTitle}
|
|
</Typography>
|
|
<Typography variant="body1">
|
|
{collaboratorsDescription}
|
|
</Typography>
|
|
<Box
|
|
sx={{
|
|
display: 'grid',
|
|
gridTemplateColumns: 'repeat(auto-fit, minmax(300px, 1fr))',
|
|
gridGap: '1rem',
|
|
justifyContent: 'center',
|
|
justifyItems: 'center',
|
|
marginBlock: 2
|
|
}}
|
|
>
|
|
{collaborators.length > 0
|
|
? collaborators.map(({ avatar, biography, socialNetworks, userName, role }) => (
|
|
<ProfileCard
|
|
key={`profile-card-${userName}`}
|
|
avatar={avatar}
|
|
biography={biography}
|
|
socialNetworks={socialNetworks}
|
|
userName={userName}
|
|
role={role}
|
|
/>
|
|
))
|
|
: (
|
|
<>
|
|
<Typography variant="body2" color={(theme) => theme.palette.warning.main } align="center" gutterBottom >
|
|
Ups, parece que ahora mismo no hay colaboradores, pero en EntGamers siempre estamos buscando gente que quiera ayudar a la comunidad. si quieres ser colaborador, puedes hacer click en el botón de abajo.
|
|
</Typography>
|
|
</>
|
|
)
|
|
}
|
|
</Box>
|
|
<Box
|
|
sx={{
|
|
display: 'flex',
|
|
justifyContent: 'center',
|
|
justifyItems: 'center',
|
|
marginBlock: 2
|
|
}}
|
|
>
|
|
<NextLink href="/equipo/unirse" passHref>
|
|
<Button
|
|
variant="contained"
|
|
color="primary"
|
|
component="a"
|
|
>
|
|
Quiero ser colaborador
|
|
</Button>
|
|
</NextLink>
|
|
</Box>
|
|
|
|
</Contained>
|
|
)
|
|
}
|
|
export default Equipo
|