Compare commits

...

2 Commits

Author SHA1 Message Date
llaniau 8e896114bf changement de version dans next config 2020-12-15 09:09:23 +01:00
llaniau f757997392 Retour recette Audrey Corentin 2020-12-14 18:17:42 +01:00
14 changed files with 122 additions and 43 deletions
+6 -1
View File
@@ -114,6 +114,11 @@ const styles = theme => ({
margin:'15px 0px 25px 0px',
textTransform: 'inherit',
},
popup: {
fontFamily: '"Roboto", "Helvetica", "Arial", "sans-serif"',
fontWeight: '400',
color: '#8E9092'
},
player:{
width:"100px"
}
@@ -395,7 +400,7 @@ class Answer extends Component {
</Button>
<Dialog open={this.state.open} onEnter={console.log("Hey.")}>
<DialogTitle> Souhaitez-vous remplacer votre vidéo de réponse ?</DialogTitle>
<DialogContent> Cette vidéo sera définitivement supprimée. Vous pourrez importer ou réaliser une nouvelle video de réponse. </DialogContent>
<DialogContent className={classes.popup}> Cette vidéo sera définitivement supprimée. Vous pourrez importer ou réaliser une nouvelle video de réponse. </DialogContent>
<DialogActions>
<Button onClick={this.closeDialog.bind(this)} autoFocus>
+1 -1
View File
@@ -581,7 +581,7 @@ class Header extends React.Component {
<div>
{!!!this.props.loading && !!!this.props.fetched &&
<Fragment>
<Link href="Inscription" >
<Link href="/Inscription" >
<a className={classes.desktopMenuItem}>
<ListItem classes={{ root: classes.rootListItemDesktop }}>
<Button
+48 -19
View File
@@ -28,7 +28,7 @@ import ArrowForward from '@material-ui/icons/ArrowForward';
import List from '@material-ui/core/List';
import ListItem from '@material-ui/core/ListItem';
import { ListItemText } from '@material-ui/core';
import Loader from '../templates/loader'
import Loader from './../templates/loader'
import { connect } from 'react-redux'
import { fetchCurrentUserRequest } from "../../actions/user";
import { requestLogout } from "../../actions/auth";
@@ -36,7 +36,7 @@ import Button from '@material-ui/core/Button';
import withWidth, { isWidthUp } from '@material-ui/core/withWidth'
import Typography from '@material-ui/core/Typography';
import { withRouter } from "next/router";
import ActiveLink from "../atoms/Activelink";
import ActiveLink from "./../atoms/Activelink";
import axios from 'axios';
import setAuthorizationHeader from "../../data/setAuthorizationHeader";
import getConfig from 'next/config'
@@ -296,13 +296,10 @@ const styles = theme => ({
paddingRight: 0,
},
},
loadingBar:{
top:'100px'
}
});
let urlEnv;
class HeaderOffre extends React.Component {
class Header extends React.Component {
state = {
top: false,
left: false,
@@ -346,7 +343,7 @@ class HeaderOffre extends React.Component {
return (
<div className={classes.root}>
<Drawer anchor="right" open={this.state.right} onClose={this.toggleDrawer('right', false)}>
<div
@@ -355,12 +352,50 @@ class HeaderOffre extends React.Component {
onClick={this.toggleDrawer('right', false)}
onKeyDown={this.toggleDrawer('right', false)}
>{!!this.props.loading &&
(<LoadingBar className={classes.loadingBar}/>
(<Loader />
)}
{!!!this.props.loading && !!!this.props.fetched
&&
<div className={classes.fullList + ' ' + classes.darkFullList}>
<List>
<Link href="/" >
<a className={classes.darkMenuItem + ' cypFrontPage'}><ListItem classes={{ root: classes.rootListItemIcon }}>
<img alt="talents-tube" src='/statique/images/logos/TalentsTube_logo-blanc.svg' className={classes.menuLogo} />
</ListItem></a>
</Link>
<Divider light={true} />
<div className={classes.linkGroup}>
<Link href="/Login" >
<a className={classes.lightMenuItem + ' cypConnexion'}><ListItem classes={{ root: classes.rootListItemIcon }} >
<PersonIcon className={classes.icon} />
<ListItemText classes={{ primary: classes.ListItemText }} primary='Connexion'>
</ListItemText>
</ListItem></a>
</Link>
{/* TODO */}
<Link href="/Inscription" >
<a className={classes.lightMenuItem + ' cypRegister'}><ListItem classes={{ primary: classes.ListItemText }} classes={{ root: classes.rootListItem }}>
<PersonAddIcon className={classes.icon} />
<ListItemText primary='Inscription'>
</ListItemText>
</ListItem></a>
</Link>
</div>
<Divider light={true} />
<div className={classes.linkGroup}>
<a href={publicRuntimeConfig.symphonyUrl + "/"} className={classes.lightMenuItem}><ListItem classes={{ primary: classes.ListItemText }} classes={{ root: classes.rootListItemIcon }}>
<WorkOutlineIcon className={classes.icon} />
<ListItemText primary='Connexion recruteurs'>
</ListItemText>
</ListItem>
</a>
</div>
</List>
</div>}
{!!!this.props.loading && !!this.props.fetched &&
<Fragment>
@@ -436,13 +471,7 @@ class HeaderOffre extends React.Component {
color="inherit" aria-label="Open drawer">
<MenuIcon />
</IconButton> */}
{/* <ButtonBase name='back'
focusRipple
className={classes.back}
focusVisibleClassName={classes.focusVisible}
onClick={() => Router.back()}>
<ArrowLeft color="primary" classes={{ root: classes.icon }}></ArrowLeft>
</ButtonBase> */}
<List className={classes.desktopMenuList}>
<div>
<ActiveLink activeClassName={classes.active} href="/Offres" >
@@ -464,7 +493,7 @@ class HeaderOffre extends React.Component {
</a>
</ActiveLink>
<a className={classes.desktopMenuItem} href="https://blog.talentstube.com/" target="_blank">
<a className={classes.desktopMenuItem} target="_blank" href="https://blog.talentstube.com/">
<ListItemText primary='Blog'>
</ListItemText>
</a>
@@ -538,7 +567,7 @@ class HeaderOffre extends React.Component {
focusRipple
className={classes.back}
focusVisibleClassName={classes.focusVisible}
onClick={() => Router.back()}>
onClick={() => Router.push("/Offres")}>
<ArrowLeft color="primary" classes={{ root: classes.icon }}></ArrowLeft>
</ButtonBase>
<div className={classes.grow} />
@@ -572,4 +601,4 @@ function mapStateToProps(state) {
loading: !!state.user.loading
};
}
export default (connect(mapStateToProps, { fetchCurrentUserRequest, requestLogout })(withStyles(styles)(withWidth()(HeaderOffre))));
export default (connect(mapStateToProps, { fetchCurrentUserRequest, requestLogout })(withStyles(styles)(withWidth()(Header))));
+5 -6
View File
@@ -426,13 +426,12 @@ const styles = theme => ({
pourvu: {
padding: '9.6px 16px',
textTransform: 'inherit',
margin: '35px 0',
textAlign : 'center'
textAlign : 'center',
},
pourvuButton:{
textTransform: 'inherit',
},
videoOffre: {
[theme.breakpoints.up('md')]: {
@@ -987,7 +986,7 @@ function OffreDetail(props) {
{offre.is_promoted && (
<section className={classes.pourvu}>
<Button variant="contained" disabled className={classes.pourvuButton}>
Pourvue
Offre pourvue
</Button>
</section>
// <Chip label="Pourvue" className={classes.chip} />
@@ -1042,7 +1041,7 @@ function OffreDetail(props) {
</div>
</section>
<section className={classes.IconTextContainerMobile}>
{offre.is_promoted && (<Chip label="Pourvue" className={classes.chip} />)}
{offre.is_promoted && (<Chip label="Offre pourvue" className={classes.chip} />)}
{offre.extra && (<IconText classes={{ root: classes.iconText, icon: classes.iconTextIcon, text: classes.iconTextText }} variant="assignment" text={offre.extra.contract_type+dureeContrat} />)}
{tempsTypeFr && (<IconText classes={{ root: classes.iconText, icon: classes.iconTextIcon, text: classes.iconTextText }} variant="watch_later" text={tempsTypeFr+nombreHeure} />)}
{offre.location && offre.location.gmap_address && (<IconText classes={{ root: classes.iconText, icon: classes.iconTextIcon, text: classes.iconTextText }} variant="location_on" text={offre.location.gmap_address.formatted_address} />)}
+1 -1
View File
@@ -156,7 +156,7 @@ class OffreRowComponent extends React.Component {
</Typography>
<div>
{rowData.is_promoted && (
<Chip label="Pourvue" className={classes.chip} />
<Chip label="Offre pourvue" className={classes.chip} />
)}
{!rowData.is_promoted && (
+1 -1
View File
@@ -42,7 +42,7 @@ const videoJsOptions = {
PictureInPictureToggle:false,
PlayToggle:false
},
poster: '/statique/images/webrtc/module-video-talents-tube.jpg',
poster: '/statique/images/webrtc/module-video-talents-tube.svg',
plugins: {
/*
// wavesurfer section is only needed when recording audio-only
+5 -3
View File
@@ -71,6 +71,7 @@ const styles = theme => ({
padding: theme.spacing(1.2, 2),
color: theme.palette.secondary.main,
backgroundColor: theme.palette.primary.important,
textDecoration:'none',
},
voirOffre: {
textTransform: 'inherit',
@@ -122,13 +123,14 @@ function LayoutCompany(props) {
>Voir les offres</Button>
</Link>
<Button
<a
href={`/Reponse?companyId=${companyId}`}
variant="contained"
className={classes.button}
classes={{ root: classes.rootButton }}
onClick={() => Router.push(`/Reponse?companyId=${companyId}`)}
// onClick={() => Router.push(`/Reponse?companyId=${companyId}`)}
>
Candidature spontanée</Button>
Candidature spontanée</a>
</div>
</Hidden>
+3 -2
View File
@@ -78,7 +78,8 @@ const styles = theme => ({
},
pourvuButton:{
padding :'10px'
padding :'10px',
textTransform: 'inherit',
},
})
@@ -137,7 +138,7 @@ function LayoutOffre(props) {
<Button variant="contained" disabled className={classes.pourvuButton}>
Pourvue
Offre pourvue
</Button>
{/* <div className={classes.grow} />
</div> */}
+1 -1
View File
@@ -55,7 +55,7 @@ module.exports = withPlugins(
blogUrl: 'https://blog.talentstube.com',
frontServerUrl: 'https://pp.app.talentstube.com/',
cvThequeUrl: 'https://recruteur.talentstube.com',
version : 'V2.3.4',
version : 'V2.3.5',
adListDefaultUrl: '/statique/images/default/default_picture_company.svg',
cachedMediaUrl: '/media/cache/profile_thumb/uploads/img/',
postedContentUrl: '/uploads/img/',
+2 -2
View File
@@ -127,8 +127,8 @@ function mapStateToProps(state, ownProps) {
}
ConfirmAccount.getInitialProps = function (context) {
const { token, email, url } = context.query
localStorage.setItem('loginRedirect', url)
const { token, email } = context.query
//localStorage.setItem('loginRedirect', url)
context.store.dispatch(requestConfirmationAccountRequest({ 'confirmationToken': token, 'email': email }))
return email;
}
+5
View File
@@ -341,6 +341,9 @@ const styles = theme => ({
borderBottomLeftRadius: '5px',
borderBottomRightRadius: '5px',
},
lien:{
textDecoration:'none'
},
});
const CustomTableBody = ({ rowIds, Row, style, className }) => (
@@ -441,11 +444,13 @@ class Entreprise extends React.Component {
>Voir les offres</Button>
</Link>
<a href={`/Reponse?companyId=${company.id}`} className={classes.lien}>
<Button
variant="contained"
className={classes.button}
onClick={() => Router.push(`/Reponse?companyId=${company.id}`)}
>Candidature spontanée</Button>
</a>
</div>
</section>
</Hidden>
+2 -2
View File
@@ -32,9 +32,9 @@ class MyDocument extends Document {
{/* PWA primary color */}
<meta name="theme-color" content={theme.palette.primary.main} />
<link href="https://fonts.googleapis.com/css?family=Dosis:600|Roboto:100,300,400,500,700,900&display=swap" rel="stylesheet">
<link href="https://fonts.googleapis.com/css?family=Dosis:600|Roboto:200,300,400,500,700,900&display=swap" rel="stylesheet">
</link>
<script src="https://maps.googleapis.com/maps/api/js?key=AIzaSyDYV8IJGtIoWLfXJQQvIuDQ88n2aEuRgpg&libraries=places"></script>
{/* <script src="https://maps.googleapis.com/maps/api/js?key=AIzaSyDYV8IJGtIoWLfXJQQvIuDQ88n2aEuRgpg&libraries=places"></script> */}
<script type="text/javascript" src="/static/js/pwaInstaller.js" ></script>
{/* Global Site Tag (gtag.js) - Google Analytics */}
{/* <script
@@ -0,0 +1,39 @@
<svg id="web-rtc-active" xmlns="http://www.w3.org/2000/svg" width="550" height="310" viewBox="0 0 550 310">
<g id="web-rtc-record">
<rect id="captures__2020-12-08_à_14.00.50" data-name="captures_ 2020-12-08 à 14.00.50" width="550" height="310" fill="#4b4f52"/>
<g id="Groupe_8235" data-name="Groupe 8235" transform="translate(-121 -1)">
<g id="Groupe_8239" data-name="Groupe 8239" transform="translate(-226 7)">
<g id="Groupe_8236" data-name="Groupe 8236" transform="translate(-20 20)">
<circle id="Ellipse_146" data-name="Ellipse 146" cx="14" cy="14" r="14" transform="translate(407 48)" fill="#25d89a"/>
<text id="_1" data-name="1" transform="translate(421 67)" fill="#fff" font-size="15" font-family="Roboto-Bold, Roboto" font-weight="700"><tspan x="-4.303" y="0">1</tspan></text>
</g>
<text id="Autoriser_la_caméra_et_le_micro" data-name="Autoriser la caméra et le micro" transform="translate(427 88)" fill="#fff" font-size="14" font-family="Roboto-Bold, Roboto" font-weight="700"><tspan x="0" y="0">Autoriser la caméra et le micro</tspan></text>
<text id="Choisir_votre_meilleure_prise" data-name="Choisir votre meilleure prise" transform="translate(427 204)" fill="#fff" font-size="14" font-family="Roboto-Bold, Roboto" font-weight="700"><tspan x="0" y="0">Choisir votre meilleure prise</tspan></text>
<text id="Démarrer_l_enregistrement" data-name="Démarrer lenregistrement" transform="translate(427 146)" fill="#fff" font-size="14" font-family="Roboto-Bold, Roboto" font-weight="700"><tspan x="0" y="0">Démarrer lenregistrement</tspan></text>
<g id="Groupe_8237" data-name="Groupe 8237" transform="translate(-20 78)">
<circle id="Ellipse_146-2" data-name="Ellipse 146" cx="14" cy="14" r="14" transform="translate(407 48)" fill="#25d89a"/>
<text id="_2" data-name="2" transform="translate(421 67)" fill="#fff" font-size="15" font-family="Roboto-Bold, Roboto" font-weight="700"><tspan x="-4.303" y="0">2</tspan></text>
</g>
<g id="Groupe_8238" data-name="Groupe 8238" transform="translate(-20 136)">
<circle id="Ellipse_146-3" data-name="Ellipse 146" cx="14" cy="14" r="14" transform="translate(407 48)" fill="#25d89a"/>
<text id="_3" data-name="3" transform="translate(421 67)" fill="#fff" font-size="15" font-family="Roboto-Bold, Roboto" font-weight="700"><tspan x="-4.303" y="0">3</tspan></text>
</g>
</g>
<g id="Groupe_8240" data-name="Groupe 8240" transform="translate(-36)">
<rect id="Rectangle_442" data-name="Rectangle 442" width="187" height="187" rx="9" transform="translate(480 53)" fill="none" stroke="#fff" stroke-linecap="round" stroke-linejoin="round" stroke-width="3" stroke-dasharray="9" opacity="0.593"/>
<circle id="Ellipse_145" data-name="Ellipse 145" cx="7" cy="7" r="7" transform="translate(642 65)" fill="#fd6161"/>
<g id="_001-woman" data-name="001-woman" transform="translate(449.002 56.984)">
<path id="Tracé_448" data-name="Tracé 448" d="M175.073,136.325v12.8a2.607,2.607,0,0,1-2.608,2.608H77.285a2.607,2.607,0,0,1-2.608-2.608v-12.8a24.317,24.317,0,0,1,14.264-22.143c-3.433-2.731,1.856-10.366-1.95-18.264-5.3-10.984-3.064-14.173,3.69-24.316,3.67-5.509,3.137-13.027,3.137-19.644l6.381-7.925c0-18-2.164-27.367,15.839-27.367L134.023,17.9c18,0,21.388-.527,21.388,17.476,0,14.957-.157,17.695,1.646,23.643,2.544,8.41-4.236,15.545-1.646,24.1,4.072,13.454,4.5,10.7-6.6,19.537l11.994,11.525A24.317,24.317,0,0,1,175.073,136.325Z" transform="translate(-0.049 16.831)" fill="#ffdfba"/>
<path id="Tracé_449" data-name="Tracé 449" d="M178.4,363.976v12.8a2.608,2.608,0,0,1-2.608,2.608H80.609A2.608,2.608,0,0,1,78,376.773v-12.8a24.308,24.308,0,0,1,24.307-24.307,13.489,13.489,0,0,0,5.6-1.209l.081.176,18.613,14.41a2.608,2.608,0,0,0,3.193,0l18.613-14.41.081-.176a13.489,13.489,0,0,0,5.6,1.209A24.308,24.308,0,0,1,178.4,363.976Z" transform="translate(-3.373 -210.82)" fill="#44a0fb"/>
<path id="Tracé_450" data-name="Tracé 450" d="M195.073,122.56a2.609,2.609,0,0,1,2.468,2.6v15.609a32.27,32.27,0,1,1-64.54,0V125.39a2.6,2.6,0,0,1,2.831-2.6,67.467,67.467,0,0,0,43.98-11.245A2.6,2.6,0,0,1,183.773,113C185.382,118.932,189.77,122.258,195.073,122.56Z" transform="translate(-40.445 -57.57)" fill="#ffebd2"/>
<path id="Tracé_451" data-name="Tracé 451" d="M163.653,111.4l-2.888,2.3a24.246,24.246,0,0,0-10.043-2.164,13.485,13.485,0,0,1-13.5-13.475V95.833l-.049-.121A32.274,32.274,0,0,0,157.1,65.887V50.278a2.609,2.609,0,0,0-2.468-2.6c-5.27-.3-9.681-3.59-11.3-9.558a2.6,2.6,0,0,0-3.961-1.455,67.47,67.47,0,0,1-43.98,11.245,2.6,2.6,0,0,0-2.831,2.6V65.887a32.274,32.274,0,0,0,19.933,29.825l-.049.121v2.226a13.485,13.485,0,0,1-13.5,13.475A24.246,24.246,0,0,0,88.9,113.7l-2.888-2.3a34.486,34.486,0,0,1-7.223-46.088A33.526,33.526,0,0,0,84.412,46.72V32.6A32.6,32.6,0,0,1,117.008,0h15.646a32.6,32.6,0,0,1,32.6,32.6V46.72a33.545,33.545,0,0,0,5.626,18.593A34.486,34.486,0,0,1,163.653,111.4Z" transform="translate(-0.005 17.315)" fill="#42434d"/>
<path id="Tracé_452" data-name="Tracé 452" d="M218.381,299.1a32.358,32.358,0,0,1-25.51,0,20.2,20.2,0,0,0,.368-5.352l.049-.121a32.336,32.336,0,0,0,24.675,0l.049.121A20.194,20.194,0,0,0,218.381,299.1Z" transform="translate(-80.8 -180.603)" fill="#ffd6a6"/>
<path id="Tracé_453" data-name="Tracé 453" d="M147.376,3.508a3.4,3.4,0,0,1-1.834,6.418q-1.537-.146-3.113-.147H126.784a32.6,32.6,0,0,0-32.6,32.6v3.966c0,2.342-1.63,2.266-1.63,4.163,0,17.218.07,16.128-.183,16.871-2.557,7.523-5.628,8.611-8.119,16.843A34.457,34.457,0,0,0,82.968,97.8a3.4,3.4,0,0,1-6.545,1.6,34.472,34.472,0,0,1,2.36-34.086A33.526,33.526,0,0,0,84.409,46.72V32.6A32.6,32.6,0,0,1,117,0h15.646a32.458,32.458,0,0,1,14.726,3.508Z" transform="translate(-0.002 17.315)" fill="#4d4e59"/>
<path id="Tracé_454" data-name="Tracé 454" d="M159.085,186.545c4.87,3.26,1.158,10.8-4.371,8.859A32.065,32.065,0,0,1,133,164.927V149.545a2.605,2.605,0,0,1,2.833-2.6c1.249.113,2.621.2,4.1.248a4.968,4.968,0,0,1,4.8,4.974v7.543a32.156,32.156,0,0,0,14.349,26.833Z" transform="translate(-40.445 -81.725)" fill="#fff3e4"/>
<path id="Tracé_455" data-name="Tracé 455" d="M113.365,342.8a2.074,2.074,0,0,1-1.227,3.716A24.3,24.3,0,0,0,87.78,370.821v8.56H80.609A2.608,2.608,0,0,1,78,376.773v-12.8a24.308,24.308,0,0,1,24.307-24.307,13.489,13.489,0,0,0,5.6-1.209l.081.176Z" transform="translate(-3.373 -210.82)" fill="#8ac4fd"/>
<path id="Tracé_456" data-name="Tracé 456" d="M275.835,342.8a2.074,2.074,0,0,0,1.227,3.716,24.3,24.3,0,0,1,24.359,24.307v8.56h7.171a2.608,2.608,0,0,0,2.608-2.608v-12.8a24.308,24.308,0,0,0-24.307-24.307,13.49,13.49,0,0,1-5.6-1.209l-.081.176Z" transform="translate(-136.176 -210.82)" fill="#1689fb"/>
</g>
</g>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 6.7 KiB

+3 -4
View File
@@ -206,12 +206,11 @@ app.prepare()
const email = req.body.email
const nom = req.body.lastname
const prenom = req.body.firstname
console.log("prenom "+prenom)
const url = req.body.adId
console.log("Envoi d'email "+url)
//const url = req.body.adId
//console.log("Envoi d'email "+url)
//TODO Ajouter le contexte de l'annonce
//Envoyer URL
const tokenUrl = `${process.env.FRONT_SERVER}/ConfirmAccount/${token}/${email}/${url}`
const tokenUrl = `${process.env.FRONT_SERVER}/ConfirmAccount/${token}/${email}`
console.log("tokenUrl "+tokenUrl)
mailer.sendConfirmationEmail(nom, prenom, tokenUrl, email);