Compare commits
2 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| c73b08c1aa | |||
| b6e4347abb |
@@ -6,6 +6,7 @@ import AssignmentIcon from '@material-ui/icons/Assignment';
|
||||
import RoomIcon from '@material-ui/icons/Room';
|
||||
import LocationOnIcon from '@material-ui/icons/LocationOn';
|
||||
import BusinessCenterIcon from '@material-ui/icons/BusinessCenter';
|
||||
import Business from '@material-ui/icons/Business';
|
||||
import Typography from '@material-ui/core/Typography';
|
||||
|
||||
const variantIcon = {
|
||||
@@ -13,6 +14,7 @@ const variantIcon = {
|
||||
room: RoomIcon,
|
||||
location_on: LocationOnIcon,
|
||||
business_center: BusinessCenterIcon,
|
||||
business: Business,
|
||||
};
|
||||
|
||||
const styles = theme => ({
|
||||
|
||||
@@ -6,12 +6,14 @@ import RoomIcon from '@material-ui/icons/Room';
|
||||
import LocationOnIcon from '@material-ui/icons/LocationOn';
|
||||
import BusinessCenterIcon from '@material-ui/icons/BusinessCenter';
|
||||
import Typography from '@material-ui/core/Typography';
|
||||
import Business from '@material-ui/icons/Business';
|
||||
|
||||
const variantIcon = {
|
||||
assignment: AssignmentIcon,
|
||||
room: RoomIcon,
|
||||
location_on: LocationOnIcon,
|
||||
business_center: BusinessCenterIcon,
|
||||
business: Business,
|
||||
};
|
||||
|
||||
const styles = theme => ({
|
||||
|
||||
@@ -149,7 +149,7 @@ class Etape3 extends React.Component {
|
||||
</CardActions>
|
||||
<CardContent>
|
||||
<Typography>
|
||||
<a href={publicRuntimeConfig.frontServerUrl + publicRuntimeConfig.postedContentCv + this.state.cvLink} target="_blank">Lien vers le cv téléchargé</a><br />
|
||||
<a href={publicRuntimeConfig.symphonyUrl + publicRuntimeConfig.postedContentCv + this.state.cvLink} target="_blank">Lien vers le cv téléchargé</a><br />
|
||||
{/* <a href="https://www.permatheque.fr/PDF/mansobufukuoka-larevolutiondunseulbrindepaille.pdf" target="_blank">lien</a> */}
|
||||
</Typography>
|
||||
</CardContent>
|
||||
|
||||
@@ -157,7 +157,7 @@ const styles = theme => ({
|
||||
objectFit: 'contain',
|
||||
},
|
||||
title: {
|
||||
fontSize: '1em',
|
||||
fontSize: '1.3em',
|
||||
fontWeight: '500',
|
||||
[theme.breakpoints.up('md')]: {
|
||||
paddingTop: theme.spacing(2),
|
||||
@@ -165,7 +165,7 @@ const styles = theme => ({
|
||||
},
|
||||
offreTitle: {
|
||||
[theme.breakpoints.up('md')]: {
|
||||
fontSize: '1.2em',
|
||||
fontSize: '1.3em',
|
||||
fontWeight: '600',
|
||||
},
|
||||
},
|
||||
@@ -192,7 +192,7 @@ const styles = theme => ({
|
||||
textAlign: 'center',
|
||||
},
|
||||
companyName: {
|
||||
fontSize: '0.9em',
|
||||
fontSize: '1.3em',
|
||||
fontWeight: '300',
|
||||
[theme.breakpoints.up('md')]: {
|
||||
fontSize: '1em',
|
||||
@@ -211,18 +211,18 @@ const styles = theme => ({
|
||||
},
|
||||
iconTextIcon: {
|
||||
color: theme.palette.offerlistitem.icon,
|
||||
fontSize: '1em',
|
||||
fontSize: '1.3em',
|
||||
},
|
||||
iconTextText: {
|
||||
fontWeight: 'lighter',
|
||||
color: theme.palette.offerlistitem.text,
|
||||
fontSize: '0.7em',
|
||||
fontSize: '1em',
|
||||
paddingLeft: theme.spacing(1),
|
||||
},
|
||||
iconTextTextDesktop: {
|
||||
fontWeight: 'lighter',
|
||||
color: theme.palette.offerlistitem.text,
|
||||
fontSize: '0.7em',
|
||||
fontSize: '1em',
|
||||
paddingLeft: theme.spacing(1),
|
||||
width: '100%',
|
||||
},
|
||||
@@ -340,7 +340,7 @@ function OffreDetail(props) {
|
||||
</Typography>
|
||||
<a href={entrepriseLink} >
|
||||
<Typography gutterBottom variant="subtitle1" className={classes.companyName}>
|
||||
{offre.beneficiaire ? offre.beneficiaire : offre.company.brand_name ? offre.company.brand_name : ""}
|
||||
{offre.company.brand_name ? offre.company.brand_name : ""}
|
||||
</Typography>
|
||||
</a>
|
||||
{offre.is_promoted && (
|
||||
@@ -401,6 +401,7 @@ function OffreDetail(props) {
|
||||
<section className={classes.IconTextContainerDesktop}>
|
||||
<IconTextInline classes={{ icon: classes.iconTextIcon, text: classes.iconTextText }} variant="assignment" text={offre.extra.contract_type} />
|
||||
<IconTextInline classes={{ icon: classes.iconTextIcon, text: classes.iconTextText }} variant="location_on" text={offre.location.gmap_address.formatted_address} />
|
||||
{offre.beneficiaire && (<IconTextInline classes={{ icon: classes.iconTextIcon, text: classes.iconTextText }} variant="business" text={offre.beneficiaire} /> )}
|
||||
</section>
|
||||
</Hidden>
|
||||
<SimpleCollapse>
|
||||
@@ -448,7 +449,7 @@ function OffreDetail(props) {
|
||||
|
||||
<a href={entrepriseLink}>
|
||||
<div className={classes.discoverContainerImage}>
|
||||
<img src={isWidthUp('sm', props.width) ? imgUrlDesktop : imgUrl} alt="company" />
|
||||
<img src={isWidthUp('sm', props.width) ? imgUrlDesktop : imgUrl} alt={offre.company.brand_name && offre.company.brand_name} />
|
||||
<KeyboardArrowleftIcon className={classes.iconPlay} />
|
||||
</div>
|
||||
</a>
|
||||
|
||||
@@ -53,12 +53,12 @@ const styles = theme => ({
|
||||
width: '75%',
|
||||
},
|
||||
jobTitle: {
|
||||
fontSize: '1em',
|
||||
fontSize: '1.2em',
|
||||
fontWeight: 'bold',
|
||||
color: theme.palette.offerlistitem.title,
|
||||
},
|
||||
companyTitle: {
|
||||
fontSize: '0.8em',
|
||||
fontSize: '1.2em',
|
||||
fontWeight: '300',
|
||||
color: theme.palette.offerlistitem.title,
|
||||
},
|
||||
@@ -96,11 +96,11 @@ const styles = theme => ({
|
||||
},
|
||||
iconTextIcon: {
|
||||
color: theme.palette.offerlistitem.icon,
|
||||
fontSize: '0.8em',
|
||||
fontSize: '1.2em',
|
||||
},
|
||||
iconTextText: {
|
||||
color: theme.palette.offerlistitem.text,
|
||||
fontSize: '0.6em',
|
||||
fontSize: '1em',
|
||||
paddingLeft: theme.spacing(1),
|
||||
},
|
||||
chip: {
|
||||
@@ -149,9 +149,9 @@ class OffreRowComponent extends React.Component {
|
||||
<Typography
|
||||
variant="headline"
|
||||
variant="h6"
|
||||
component="h4"
|
||||
component="h3"
|
||||
className={classes.companyTitle}>
|
||||
{rowData.beneficiaire ? "Pour le compte de "+rowData.beneficiaire : companyR.brand_name ? companyR.brand_name : "Non renseigné"}
|
||||
{companyR.brand_name ? companyR.brand_name : "Non renseigné"}
|
||||
</Typography>
|
||||
<div>
|
||||
{rowData.is_promoted && (
|
||||
@@ -160,8 +160,10 @@ class OffreRowComponent extends React.Component {
|
||||
|
||||
{!rowData.is_promoted && (
|
||||
<Fragment>
|
||||
<IconText classes={{ root: classes.iconText, icon: classes.iconTextIcon, text: classes.iconTextText }} variant="location_on" text={rowData.extra.contract_type} />
|
||||
<IconText classes={{ root: classes.iconText, icon: classes.iconTextIcon, text: classes.iconTextText }} variant="business_center" text={rowData.location.gmap_address.formatted_address} />
|
||||
<IconText classes={{ root: classes.iconText, icon: classes.iconTextIcon, text: classes.iconTextText }} variant="business_center" text={rowData.extra.contract_type} />
|
||||
<IconText classes={{ root: classes.iconText, icon: classes.iconTextIcon, text: classes.iconTextText }} variant="location_on" text={rowData.location.gmap_address.formatted_address} />
|
||||
{rowData.beneficiaire ? <IconText classes={{ root: classes.iconText, icon: classes.iconTextIcon, text: classes.iconTextText }} variant="business" text={rowData.beneficiaire} /> : ""}
|
||||
|
||||
</Fragment>
|
||||
)}
|
||||
|
||||
|
||||
@@ -113,7 +113,7 @@ class Tile extends React.Component {
|
||||
/>
|
||||
<KeyboardArrowleftIcon className={classes.iconPlay} />
|
||||
<div className={classes.logoContainer}>
|
||||
<Avatar className={classes.logo} src={logoUrl} alt="company"/>
|
||||
<Avatar className={classes.logo} src={logoUrl} alt={rowData.title}/>
|
||||
</div>
|
||||
{ children }
|
||||
</CardContent>
|
||||
|
||||
@@ -10,11 +10,11 @@ const styles = theme => ({
|
||||
flexDirection: 'column',
|
||||
justifyContent: 'space-between',
|
||||
position: 'absolute',
|
||||
top: '51%',
|
||||
top: '44%',
|
||||
width: '100%',
|
||||
},
|
||||
companyTitle: {
|
||||
fontSize: '0.8em',
|
||||
fontSize: '1em',
|
||||
fontWeight: '100',
|
||||
padding: theme.spacing(0, 2),
|
||||
marginTop: '4vh',
|
||||
@@ -24,7 +24,7 @@ const styles = theme => ({
|
||||
},
|
||||
},
|
||||
jobTitle: {
|
||||
fontSize: '1em',
|
||||
fontSize: '1.2em',
|
||||
padding: theme.spacing(0, 2),
|
||||
minHeight: '8vh',
|
||||
[theme.breakpoints.up('lg')]: {
|
||||
@@ -59,7 +59,7 @@ class TileOffre extends React.Component {
|
||||
component="h4"
|
||||
align="center"
|
||||
className={classes.companyTitle}>
|
||||
{tile.company.brand_name && tile.company.brand_name} {tile.beneficiaire && " / "+tile.beneficiaire }
|
||||
{tile.company.brand_name && tile.company.brand_name}
|
||||
</Typography>
|
||||
<Typography
|
||||
gutterBottom
|
||||
@@ -82,6 +82,10 @@ class TileOffre extends React.Component {
|
||||
{tile.extra && tile.extra.contract_type &&
|
||||
<IconText classes={{ root: classes.rootIconText }} variant="assignment" text={tile.extra.contract_type} />
|
||||
}
|
||||
|
||||
{tile.beneficiaire &&
|
||||
<IconText classes={{ root: classes.rootIconText }} variant="business" text={tile.beneficiaire} />
|
||||
}
|
||||
</section>
|
||||
</Fragment>
|
||||
);
|
||||
|
||||
@@ -40,9 +40,9 @@ module.exports = withPlugins(
|
||||
}],
|
||||
[{
|
||||
publicRuntimeConfig: {
|
||||
symphonyUrl: 'https://www.talentstube.com',
|
||||
symphonyUrl: 'https://recruteur.talentstube.com',
|
||||
blogUrl: 'https://blog.talentstube.com',
|
||||
frontServerUrl: 'https://app.talentstube.com',
|
||||
frontServerUrl: 'https://www.talentstube.com',
|
||||
adListDefaultUrl: '/statique/images/default/default_picture_company.svg',
|
||||
cachedMediaUrl: '/media/cache/profile_thumb/uploads/img/',
|
||||
postedContentUrl: '/uploads/img/',
|
||||
@@ -50,7 +50,7 @@ module.exports = withPlugins(
|
||||
ReCAPTCHA: {
|
||||
"siteKey": "6LdyqLwUAAAAADKI5uC7d5W9VqVgzd8VEmMU2Yi-"
|
||||
},
|
||||
applicationServerPublicKey: 'BC9XGBLNGm0RWczR4IjEPWQ9_P1BmlvT-oaVgr_GJTI2OZtT85olmi3xzQhgZF4-Bi0rPafpa8vqt5pudQ4Na6w'
|
||||
applicationServerPublicKey: 'BNFyiyPiLH97Dgc0m1vXluUNaCN6y3Hkgd4YcqS2lVkP8my3tq2D5gM5g7cY6R4VxC7GljSzkLRu+k+oO+2TtjU='
|
||||
}
|
||||
}]
|
||||
],
|
||||
|
||||
@@ -147,6 +147,7 @@ class Candidature extends React.Component {
|
||||
<LayoutCandidature>
|
||||
<Head>
|
||||
<title key="title">Candidature</title>
|
||||
<meta name="robots" content="noindex, nofollow"></meta>
|
||||
</Head>
|
||||
<Fragment>
|
||||
<div className={classes.container}>
|
||||
|
||||
@@ -45,6 +45,7 @@ class Candidatures extends React.Component {
|
||||
<LayoutGrid backLink="/">
|
||||
<Head>
|
||||
<title key="title">Candidatures</title>
|
||||
<meta name="robots" content="noindex, nofollow"></meta>
|
||||
</Head>
|
||||
|
||||
{/* TODO */}
|
||||
|
||||
@@ -31,7 +31,7 @@ class Conseils extends React.Component {
|
||||
<title>Quelques conseils !</title>
|
||||
<meta name="description" content="Quelques conseils !" />
|
||||
<meta key="robots" name="robots" content="noindex, nofollow"></meta>
|
||||
<link rel="canonical" href="https://app.talentstube.com" />
|
||||
|
||||
</Head>
|
||||
<section className={classes.container}>
|
||||
<VideoVimeo videoId='356411947' autoplay='1' />
|
||||
|
||||
@@ -102,6 +102,7 @@ function Help(props) {
|
||||
<Layout>
|
||||
<Head>
|
||||
<title key="title">Recrutement vidéo : fonctionnement – Talents Tube</title>
|
||||
<meta key="robots" name="robots" content="noindex, nofollow"></meta>
|
||||
</Head>
|
||||
<section className={classes.root}>
|
||||
<Typography gutterBottom component="h1"
|
||||
|
||||
+14
-7
@@ -13,6 +13,8 @@ import { fetchAdsRequest, togglePromotedFilterRequest} from '../actions/ads'
|
||||
import { AdsSelector } from '../reducers/ads'
|
||||
import { TextField } from '@material-ui/core';
|
||||
import Head from 'next/head'
|
||||
import OgHead from '../components/atoms/OgHead';
|
||||
import getConfig from 'next/config'
|
||||
|
||||
|
||||
const styles = theme => ({
|
||||
@@ -84,15 +86,20 @@ class Offres extends React.Component {
|
||||
const { classes } = this.props;
|
||||
const countColor = this.props.promotedFilter ? classes.provided : classes.primary;
|
||||
const btnClass = this.props.promotedFilter ? classes.buttonDefault : classes.buttonProvided;
|
||||
|
||||
const { publicRuntimeConfig } = getConfig();
|
||||
const socialShareUrl = typeof window !== 'undefined' ? window.location
|
||||
: publicRuntimeConfig.frontServerUrl + `/Offres`;
|
||||
const DefaultUrl = publicRuntimeConfig.symphonyUrl + "/img/default_picture_svg"
|
||||
const imgUrl = DefaultUrl ;
|
||||
return (
|
||||
<LayoutGrid backLink="/">
|
||||
<Head>
|
||||
<title key="title">Offres d’emploi en vidéo – Talents Tube</title>
|
||||
<meta name="description" content="Les offres d'emploi en vidéo." />
|
||||
<meta key="robots" name="robots" content="noindex, nofollow"></meta>
|
||||
|
||||
</Head>
|
||||
<OgHead seo_title="Offres d’emploi en vidéo – Talents Tube"
|
||||
seo_description="Les offres d'emploi en vidéo."
|
||||
seo_url={socialShareUrl}
|
||||
image={imgUrl}
|
||||
seo_key="Recrutement, video"
|
||||
|
||||
></OgHead>
|
||||
|
||||
<Typography gutterBottom component="h1"
|
||||
className={classes.title}>
|
||||
|
||||
@@ -282,7 +282,7 @@ class Reponse extends React.Component {
|
||||
<title>Candidature vidéo</title>
|
||||
<meta name="description" content="Talent's tube, postulez en video." />
|
||||
<meta key="robots" name="robots" content="noindex, nofollow"></meta>
|
||||
<link rel="canonical" href="https://app.talentstube.com" />
|
||||
|
||||
</Head>
|
||||
{/* https://codesandbox.io/s/ii0us */}
|
||||
{ loading ?
|
||||
|
||||
@@ -107,6 +107,7 @@ class ResetPassword extends Component {
|
||||
<Layout>
|
||||
<Head>
|
||||
<title key="title">Reset password</title>
|
||||
<meta key="robots" name="robots" content="noindex, nofollow"></meta>
|
||||
</Head>
|
||||
<div className={classes.container}>
|
||||
<Typography
|
||||
|
||||
@@ -1,357 +0,0 @@
|
||||
/* eslint-disable jsx-a11y/anchor-is-valid
|
||||
|
||||
*/
|
||||
|
||||
/* eslint-disable jsx-a11y/anchor-is-valid */
|
||||
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import Button from '@material-ui/core/Button';
|
||||
import Typography from '@material-ui/core/Typography';
|
||||
import { withStyles } from '@material-ui/core/styles';
|
||||
import Layout from "../components/templates/Layout"
|
||||
import Footer from '../components/organisms/Footer';
|
||||
import Head from 'next/head'
|
||||
import VideoVimeo from './../components/atoms/VideoVimeo'
|
||||
import Card from '@material-ui/core/Card';
|
||||
import CardActionArea from '@material-ui/core/CardActionArea';
|
||||
import CardActions from '@material-ui/core/CardActions';
|
||||
import CardContent from '@material-ui/core/CardContent';
|
||||
import CardMedia from '@material-ui/core/CardMedia';
|
||||
import Grid from '@material-ui/core/Grid';
|
||||
|
||||
import { makeStyles } from '@material-ui/core/styles';
|
||||
|
||||
|
||||
const styles = theme => ({
|
||||
root: {
|
||||
display: 'flex',
|
||||
flexDirection: 'column',
|
||||
alignItems: 'center',
|
||||
justifyContent: 'center',
|
||||
padding: theme.spacing(2),
|
||||
[theme.breakpoints.up('sm')]: {
|
||||
margin: 'auto',
|
||||
padding: '0 20vw',
|
||||
paddingBottom: theme.spacing(5),
|
||||
},
|
||||
},
|
||||
title: {
|
||||
fontFamily: 'Dosis',
|
||||
fontSize: '1.5em',
|
||||
fontWeight: '600',
|
||||
padding: theme.spacing(3, 0),
|
||||
[theme.breakpoints.up('sm')]: {
|
||||
paddingTop: theme.spacing(6),
|
||||
},
|
||||
},
|
||||
subTitle: {
|
||||
fontSize: '1.1em',
|
||||
fontWeight: '500',
|
||||
padding: theme.spacing(2, 0),
|
||||
},
|
||||
text: {
|
||||
fontSize: '0.9em',
|
||||
fontWeight: '300',
|
||||
},
|
||||
teamworkingImg: {
|
||||
padding: theme.spacing(2, 0),
|
||||
width: '100%',
|
||||
[theme.breakpoints.up('sm')]: {
|
||||
width: 'inherit',
|
||||
},
|
||||
},
|
||||
captureImg: {
|
||||
padding: theme.spacing(2),
|
||||
width: '100%',
|
||||
objectFit: 'contain',
|
||||
},
|
||||
button: {
|
||||
textTransform: 'inherit',
|
||||
margin: theme.spacing(4,8),
|
||||
padding: theme.spacing(1.2, 2),
|
||||
borderRadius: '3px',
|
||||
},
|
||||
primary: {
|
||||
color: theme.palette.primary.main,
|
||||
},
|
||||
bold: {
|
||||
fontWeight: '500',
|
||||
},
|
||||
video: {
|
||||
display: 'flex',
|
||||
flexDirection: 'column',
|
||||
position: 'relative',
|
||||
paddingBottom: '55%', /* 16:9 58%*/
|
||||
'& iframe': {
|
||||
position: 'absolute',
|
||||
top: 0,
|
||||
left: 'calc(50% - 50vw)',
|
||||
width: '100vw',
|
||||
height: '100%',
|
||||
},
|
||||
[theme.breakpoints.up('md')]: {
|
||||
display: 'flex',
|
||||
flexDirection: 'column',
|
||||
position: 'relative',
|
||||
paddingBottom: '55%', /* 16:9 */
|
||||
'& iframe': {
|
||||
position: 'absolute',
|
||||
top: 0,
|
||||
left: 'calc(50% - 27vw)',
|
||||
width: '54vw',
|
||||
height: '100%',
|
||||
},
|
||||
},
|
||||
},
|
||||
containerReactApp: {
|
||||
width:'100%',
|
||||
display: 'flex',
|
||||
flexDirection: 'column',
|
||||
alignItems: 'center',
|
||||
justifyContent: 'space-between',
|
||||
height: '10vh',
|
||||
paddingTop: theme.spacing(4),
|
||||
backgroundColor: theme.palette.primary.main,
|
||||
[theme.breakpoints.down('xs')]: {
|
||||
height: '4vh',
|
||||
},
|
||||
[theme.breakpoints.up('md')]: {
|
||||
flexDirection: 'row',
|
||||
alignItems: 'center',
|
||||
justifyContent: 'space-around',
|
||||
height: '4vh',
|
||||
padding: theme.spacing(6, 1),
|
||||
position: 'relative',
|
||||
},
|
||||
},
|
||||
titleReactApp: {
|
||||
fontFamily: 'Dosis',
|
||||
fontSize: '1.5em',
|
||||
fontWeight: '600',
|
||||
paddingTop: theme.spacing(4),
|
||||
paddingLeft: theme.spacing(4),
|
||||
paddingRight: theme.spacing(4),
|
||||
[theme.breakpoints.up('md')]: {
|
||||
order: 1,
|
||||
width: '20%',
|
||||
textAlign: 'left',
|
||||
},
|
||||
},
|
||||
buttonReactApp: {
|
||||
textTransform: 'inherit',
|
||||
margin: theme.spacing(0, 8),
|
||||
padding: theme.spacing(1.2, 2),
|
||||
[theme.breakpoints.up('md')]: {
|
||||
order: 3,
|
||||
margin: 'inherit',
|
||||
marginRight: '5vw',
|
||||
},
|
||||
},
|
||||
paper: {
|
||||
padding: '6px 16px',
|
||||
},
|
||||
secondaryTail: {
|
||||
backgroundColor: theme.palette.secondary.main,
|
||||
},
|
||||
|
||||
media: {
|
||||
width:350,
|
||||
height: 140,
|
||||
},
|
||||
|
||||
});
|
||||
|
||||
function Help(props) {
|
||||
const { classes } = props;
|
||||
|
||||
return (
|
||||
<Layout>
|
||||
<Head>
|
||||
<title key="title">Recrutement vidéo : fonctionnement – Talents Tube</title>
|
||||
</Head>
|
||||
<section className={classes.root}>
|
||||
<Typography gutterBottom component="h1"
|
||||
className={classes.title}>
|
||||
Comment réussir votre CV vidéo <span className={classes.primary}>?</span>
|
||||
</Typography>
|
||||
|
||||
<Typography
|
||||
className={classes.text}
|
||||
gutterBottom>
|
||||
Le CV vidéo est <span className={classes.bold}>le meilleur moyen de mettre en image et d’illustrer votre expérience</span>, vos compétences et votre personnalité. S'il est de plus en plus prisé chez les recruteurs et les candidats, certains codes sont tout de même à respecter. Afin de réussir votre CV vidéo et mettre toutes les chances de votre côté, suivez les conseils de Talents Tube !
|
||||
</Typography>
|
||||
{/* <Typography gutterBottom component="h2"
|
||||
className={classes.subTitle}>
|
||||
Comment postuler à une offre d’emploi en vidéo
|
||||
</Typography> */}
|
||||
<VideoVimeo classesOverride={classes.videoVimeo} videoId="286344340" autoplay='0' />
|
||||
<Typography
|
||||
className={classes.text}
|
||||
gutterBottom>
|
||||
|
||||
</Typography>
|
||||
<div className={classes.containerReactApp}>
|
||||
|
||||
<Typography
|
||||
gutterBottom
|
||||
color="secondary"
|
||||
align="center"
|
||||
component="h3"
|
||||
className={classes.titleReactApp}
|
||||
>
|
||||
Écrivez un scénario
|
||||
</Typography>
|
||||
|
||||
|
||||
</div>
|
||||
<Grid container spacing={3}>
|
||||
<Card className={classes.root}>
|
||||
<CardActionArea>
|
||||
<CardMedia
|
||||
className={classes.media}
|
||||
image=""
|
||||
title="Contemplative Reptile"
|
||||
/>
|
||||
<CardContent>
|
||||
<Typography gutterBottom variant="h5" component="h2">
|
||||
Écrivez un scénario
|
||||
</Typography>
|
||||
<Typography variant="body2" color="textSecondary" component="p">
|
||||
Le scénario est le premier élément indispensable. Hiérarchisez toutes les informations que vous souhaitez aborder :
|
||||
<ul>
|
||||
<li> Présentation</li>
|
||||
<li>Formations </li>
|
||||
<li>Expériences </li>
|
||||
<li>Compétences </li>
|
||||
<li>Personnalité </li>
|
||||
<li>Loisirs / Passions </li>
|
||||
</ul>
|
||||
</Typography>
|
||||
</CardContent>
|
||||
</CardActionArea>
|
||||
<CardActions>
|
||||
<Button size="small" color="primary">
|
||||
Share
|
||||
</Button>
|
||||
<Button size="small" color="primary">
|
||||
Learn More
|
||||
</Button>
|
||||
</CardActions>
|
||||
</Card>
|
||||
</Grid>
|
||||
<Grid container spacing={3}>
|
||||
<Card className={classes.root}>
|
||||
<CardActionArea>
|
||||
<CardMedia
|
||||
className={classes.media}
|
||||
image=""
|
||||
title="Contemplative Reptile"
|
||||
/>
|
||||
<CardContent>
|
||||
<Typography gutterBottom variant="h5" component="h2">
|
||||
Passez à la réalisation
|
||||
</Typography>
|
||||
<Typography variant="body2" color="textSecondary" component="p">
|
||||
Le scénario est le premier élément indispensable. Hiérarchisez toutes les informations que vous souhaitez aborder :
|
||||
<ul>
|
||||
<li> Présentation</li>
|
||||
<li>Formations </li>
|
||||
<li>Expériences </li>
|
||||
<li>Compétences </li>
|
||||
<li>Personnalité </li>
|
||||
<li>Loisirs / Passions </li>
|
||||
</ul>
|
||||
</Typography>
|
||||
</CardContent>
|
||||
</CardActionArea>
|
||||
<CardActions>
|
||||
<Button size="small" color="primary">
|
||||
Share
|
||||
</Button>
|
||||
<Button size="small" color="primary">
|
||||
Learn More
|
||||
</Button>
|
||||
</CardActions>
|
||||
</Card>
|
||||
|
||||
<Card className={classes.root}>
|
||||
<CardActionArea>
|
||||
<CardMedia
|
||||
className={classes.media}
|
||||
image=""
|
||||
title="Contemplative Reptile"
|
||||
/>
|
||||
<CardContent>
|
||||
<Typography gutterBottom variant="h5" component="h2">
|
||||
Passez à la réalisation
|
||||
</Typography>
|
||||
<Typography variant="body2" color="textSecondary" component="p">
|
||||
Le scénario est le premier élément indispensable. Hiérarchisez toutes les informations que vous souhaitez aborder :
|
||||
<ul>
|
||||
<li> Présentation</li>
|
||||
<li>Formations </li>
|
||||
<li>Expériences </li>
|
||||
<li>Compétences </li>
|
||||
<li>Personnalité </li>
|
||||
<li>Loisirs / Passions </li>
|
||||
</ul>
|
||||
</Typography>
|
||||
</CardContent>
|
||||
</CardActionArea>
|
||||
<CardActions>
|
||||
<Button size="small" color="primary">
|
||||
Share
|
||||
</Button>
|
||||
<Button size="small" color="primary">
|
||||
Learn More
|
||||
</Button>
|
||||
</CardActions>
|
||||
</Card>
|
||||
|
||||
<Card className={classes.root}>
|
||||
<CardActionArea>
|
||||
<CardMedia
|
||||
className={classes.media}
|
||||
image=""
|
||||
title="Contemplative Reptile"
|
||||
/>
|
||||
<CardContent>
|
||||
<Typography gutterBottom variant="h5" component="h2">
|
||||
Passez à la réalisation
|
||||
</Typography>
|
||||
<Typography variant="body2" color="textSecondary" component="p">
|
||||
Le scénario est le premier élément indispensable. Hiérarchisez toutes les informations que vous souhaitez aborder :
|
||||
<ul>
|
||||
<li> Présentation</li>
|
||||
<li>Formations </li>
|
||||
<li>Expériences </li>
|
||||
<li>Compétences </li>
|
||||
<li>Personnalité </li>
|
||||
<li>Loisirs / Passions </li>
|
||||
</ul>
|
||||
</Typography>
|
||||
</CardContent>
|
||||
</CardActionArea>
|
||||
<CardActions>
|
||||
<Button size="small" color="primary">
|
||||
Share
|
||||
</Button>
|
||||
<Button size="small" color="primary">
|
||||
Learn More
|
||||
</Button>
|
||||
</CardActions>
|
||||
</Card>
|
||||
</Grid>
|
||||
|
||||
</section>
|
||||
<Footer />
|
||||
</Layout>
|
||||
);
|
||||
}
|
||||
|
||||
Help.propTypes = {
|
||||
classes: PropTypes.object.isRequired,
|
||||
};
|
||||
|
||||
export default withStyles(styles)(Help);
|
||||
@@ -30,6 +30,7 @@ export default function HorizontalNonLinearStepper() {
|
||||
<Layout>
|
||||
<Head>
|
||||
<title key="title">Profile – Talents Tube</title>
|
||||
<meta key="robots" name="robots" content="noindex, nofollow"></meta>
|
||||
</Head>
|
||||
<div >
|
||||
<AccountProfile />
|
||||
|
||||
@@ -16,7 +16,7 @@ exports.sendConfirmationEmail = function (nom, prenom, tokenUrl, mail) {
|
||||
const tranport = setup();
|
||||
const email = {
|
||||
from: process.env.EMAIL_FROM,
|
||||
to: process.env.NODE_ENV === 'production'? mail : 'thomas.berrod@e-declic.com',
|
||||
to: process.env.NODE_ENV === 'production'? mail : 'l.laniau@talentstube.com',
|
||||
subject: `Bienvenue ${mail} 🔑`,
|
||||
text: `
|
||||
Bonjour ${prenom} ${nom},
|
||||
|
||||
@@ -4,14 +4,14 @@ const formatDate = require("./formatDate");
|
||||
|
||||
// ROBOTS.txt
|
||||
// const robotsTxt = `User-agent: *
|
||||
// Sitemap: https://app.talentstube.com/sitemap_local.xml
|
||||
// Sitemap: https://www.talentstube.com/sitemap_local.xml
|
||||
// Disallow:`;
|
||||
|
||||
const robotsTxt = `# crawl setup
|
||||
User-agent: *
|
||||
Disallow: /Login*
|
||||
# Sitemap
|
||||
Sitemap: https://app.talentstube.com/sitemap_local.xml`
|
||||
Sitemap: https://www.talentstube.com/sitemap_local.xml`
|
||||
|
||||
fs.writeFileSync("out/robots.txt", robotsTxt);
|
||||
console.log("robots.txt saved!");
|
||||
@@ -23,7 +23,7 @@ const sitemapXml = `<?xml version="1.0" encoding="UTF-8"?>
|
||||
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
|
||||
${Object.keys(pathsObj).map(
|
||||
path => `<url>
|
||||
<loc>https://app.talentstube.com${path}</loc>
|
||||
<loc>https://www.talentstube.com${path}</loc>
|
||||
<lastmod>${
|
||||
pathsObj[path].lastModified
|
||||
? formatDate(new Date(pathsObj[path].lastModified))
|
||||
|
||||
Reference in New Issue
Block a user