Compare commits

...

39 Commits

Author SHA1 Message Date
Maxime Thévenot a55828306a Merge branch 'develop' 2018-06-27 14:56:12 +02:00
Maxime Thévenot 2757340f8e Feat : update footer 2018-06-27 11:13:24 +02:00
Maxime Thévenot 6ef1ab86c1 Fix: bad typo in wording 2018-06-27 10:41:02 +02:00
Maxime Thévenot 76fa1bdb59 Feat : change phone number and add RB image to resources 2018-06-27 10:40:40 +02:00
Maxime Thévenot 96a9a58af6 Fix: bad typo in wording 2018-06-08 17:04:04 +02:00
Maxime Thévenot 1e199008b3 Merge branch 'master' into develop
# Conflicts:
#	volume/www/website/www/app/Resources/FOSUserBundle/views/Registration/confirmed.html.twig
2018-06-08 12:15:11 +02:00
Maxime Thévenot 7464000fea Fix : add center to a button 2018-06-08 12:07:34 +02:00
Maxime Thévenot 7ae1389c7b Fix : update redirect route 2018-06-08 12:00:40 +02:00
Maxime Thévenot 8b2e6612be Fix : add cookie to response 2018-06-08 11:47:31 +02:00
Maxime Thévenot 457d6c4e5a Fix : update link to redirect after reg 2018-06-08 11:23:05 +02:00
Maxime Thévenot 0b59a5bbaa Feat : add redirect button after register 2018-06-08 10:29:06 +02:00
Maxime Thévenot a0aebfa52c Fix : remove response send after cookie setting 2018-06-08 10:06:21 +02:00
Maxime Thévenot 38d84a0257 Fix : bad cookie setting 2018-06-08 10:04:10 +02:00
Maxime Thévenot d3d8339a6f Fix : set cookie for redirect after registration 2018-06-08 10:01:11 +02:00
Maxime Thévenot 8ef169197d Fix : redirection when creating account after spontaneous 2018-06-05 16:38:46 +02:00
Thomas MONCHICOURT 1cf0e33b07 Fix: recherceh url 2018-06-05 15:26:37 +02:00
Thomas MONCHICOURT fbfadf425f Fix : optimisation mobile css 2018-06-05 15:26:37 +02:00
Thomas MONCHICOURT 2d097a0424 Fix : style detail annonce 2018-06-05 15:26:36 +02:00
Thomas MONCHICOURT 27963ab492 Fix : du fix … 2018-06-05 15:26:36 +02:00
Maxime Thévenot c801d92143 Fix : redirection when creating account after spontaneous 2018-06-05 14:32:04 +02:00
Thomas MONCHICOURT 737af1052b Fix: recherceh url 2018-05-28 12:26:30 +02:00
Thomas MONCHICOURT 85b1e2406d Fix : optimisation mobile css 2018-05-25 16:49:33 +02:00
Thomas MONCHICOURT 5cb2f6d2cb Fix : style detail annonce 2018-05-25 15:23:12 +02:00
Thomas MONCHICOURT b070ae8e28 Fix : du fix … 2018-05-25 15:19:00 +02:00
Thomas MONCHICOURT 5b9c7e57fe Fix : check si variable existe 2018-05-25 15:15:32 +02:00
Thomas MONCHICOURT 8f8e2c3b2f Merge branch 'feat/offres_pourvues' into develop
# Conflicts:
#	volume/www/website/www/src/AppBundle/Utils/Services/AdSearcher.php
2018-05-25 15:15:05 +02:00
Thomas MONCHICOURT d0e7ee8b74 Fix : libelle 2018-05-25 15:06:40 +02:00
Thomas MONCHICOURT c0445c9ad3 Fix : orthographe 2018-05-25 15:03:44 +02:00
Thomas MONCHICOURT 65dfac1af5 Feat : mise en place de la page de detail ad et company #5964 @0h20 2018-05-25 14:50:05 +02:00
Thomas MONCHICOURT 50831adf20 Feat : Page de detail annonce #5964 @0h20 2018-05-25 12:33:12 +02:00
Thomas MONCHICOURT 6f7d329cc6 Feat : Mise en place d’un champ type privé pour ad et company #6472 @1h10 2018-05-25 11:33:39 +02:00
Thomas MONCHICOURT 5f2e5fddbf Feat: filtre offres pourvues #5964 2018-05-25 10:27:59 +02:00
Thomas MONCHICOURT e905cb063c feat : Modification de la recherche #5964 @0h20 2018-05-24 17:01:53 +02:00
Thomas MONCHICOURT 44ae8a01fb Merge branch 'master' into develop 2018-05-24 16:36:55 +02:00
Thomas MONCHICOURT 703b8891e6 Feat : Nouvelles fleches + recherche non fixe pour mobile #5966 @2h 2018-05-24 16:21:52 +02:00
Thomas MONCHICOURT 724e175a6c Feat : Ajout liens territoires dans le footer #5963 @0h10 2018-05-23 17:22:31 +02:00
Thomas MONCHICOURT e9a7da75bc Feat : remise en ligne annonce rocher 2018-05-18 12:26:34 +02:00
Thomas MONCHICOURT 5612f87999 Fix : probleme connexion user admin 2018-05-02 15:09:54 +02:00
Thomas MONCHICOURT b63983b61e Feat : modification profil talent #6313 @0h15 2018-05-02 14:19:00 +02:00
50 changed files with 652 additions and 226 deletions
+3 -1
View File
@@ -9,4 +9,6 @@ rewrite ^/plateforme$ https://www.talentstube.com/ permanent;
rewrite ^/page/les-conseils$ https://www.talentstube.com/accompagnement-entreprise permanent;
rewrite ^/page/presentation-talent$ https://www.talentstube.com/cv-video permanent;
rewrite ^/page/la-plateforme$ https://www.talentstube.com/ permanent;
rewrite ^/tarifs$ https://www.talentstube.com/accompagnement-entreprise permanent;
rewrite ^/tarifs$ https://www.talentstube.com/accompagnement-entreprise permanent;
rewrite ^/annonce/38-charge-de-projets-developpement-h-f$ https://www.talentstube.com/annonce/38-charge-de-projets-developpement-cosmetique-h-f permanent;
rewrite ^/annonce/recherche/$ https://www.talentstube.com/annonce/recherche permanent;
@@ -3,18 +3,26 @@
{% trans_default_domain 'FOSUserBundle' %}
{% block content %}
<div class="container contentWrapper">
<div class="row">
<div class="col push-s3 s6">
<h1 class="m-t-20 alttitle center-align">{{'user.register.title'|trans({},"messages") }}</h1>
<p>{{ 'registration.confirmed'|trans({'%username%': user.username}) }}</p>
{% if targetUrl %}
<p><a href="{{ targetUrl }}">{{ 'registration.back'|trans }}</a></p>
{% endif %}
<br /><br />
<div class="container contentWrapper">
<div class="row">
<div class="col push-s3 s6">
<h1 class="m-t-20 alttitle center-align">{{'user.register.title'|trans({},"messages") }}</h1>
<p>{{ 'registration.confirmed'|trans({'%username%': user.username}) }}</p>
{% if targetUrl %}
<p>
<a href="{{ targetUrl }}">{{ 'registration.back'|trans }}</a>
</p>
{% endif %}
<br/><br/>
{% if app.request.cookies.get('redirect_register')is defined %}
<div class="center">
<a href="{{ app.request.cookies.get('redirect_register') }}" class="btn btn-default">Poursuivre votre candidature</a>
</div>
{% endif %}
</div>
</div>
</div>
</div>
</div>
{% endblock %}
{% block metarobot %}
@@ -3,7 +3,8 @@
<div class="row center-align">
<div class="col s12">
<div class="owl-carousel territory-carousel">
{% for territory in territories %}
{% for territory in territories if territory.territory.isPrivate != true %}
{% set territory = territory.territory %}
<div class="item">
<h2 class="blue-text no-margin-top">
@@ -19,6 +19,7 @@
<div class="box box-primary">
<div class="box-header">
<h3 class="box-title">{{ ad.title }}</h3>
<br/><i class="fa fa-link"></i>Url : {{ path("ad_show",{'alias':ad.alias})}}<br />
</div>
<div class="box-body">
{{ form_errors(form) }}
@@ -41,7 +42,7 @@
<h3 class="box-title">Informations</h3>
</div>
<div class="box-body">
{{ form_row(form.status) }} {{ form_row(form.isPromoted) }} {{ form_row(form.isVerified) }}
{{ form_row(form.status) }} {{ form_row(form.isPromoted) }} {{ form_row(form.isVerified) }} {{ form_row(form.isPrivate) }}
</div>
</div>
</div>
@@ -22,9 +22,11 @@
<div class="box-header">
<h3 class="box-title">{{ company.brandName }}</h3>
<br><span>{{ company.mainUser.email }}</span>
<br/><i class="fa fa-link"></i>Url : {{ path("company_show",{'alias':company.alias})}}<br />
</div>
<div class="box-body">
{{ form_errors(form) }}
{{ form_row(form.isPrivate) }}
{{ form_row(form.emphasis) }}
{{ form_row(form.emphasisOrder) }}
{{ form_row(form.brandName) }}
@@ -22,9 +22,11 @@
<div class="box-header">
<h3 class="box-title">{{ territory.brandName }}</h3>
<br><span>{{ territory.mainUser.email }}</span>
<br/><i class="fa fa-link"></i>Url : {{ path("territory_show",{'alias':territory.alias})}}<br />
</div>
<div class="box-body">
{{ form_errors(form) }}
{{ form_row(form.isPrivate) }}
{{ form_row(form.emphasis) }}
{{ form_row(form.emphasisOrder) }}
{{ form_row(form.brandName) }}
@@ -90,18 +90,20 @@
<p class="chip">{{ tag }}</p>
{% endfor %}
</div>
<div class="col s12 m-t-20 ">
{% if not is_granted('ROLE_COMPANY') %}
<p class="item-detail-reply center-align">
<a href="{{ path('talent_spontaneous_application_create',{'id': company.id}) }}"
class="btn btn-default">
Candidature spontanée
</a>
</p>
{% endif %}
</div>
{% if not is_granted('ROLE_COMPANY') %}
<div class="row bg-bordered row-promoted">
<div class="col s12 center-align">
<h3>Vous souhaitez rejoindre <span class="color-blue1">{{ company.brandname }}</span> ?</h3>
<a href="{{ path('talent_spontaneous_application_create',{'id': company.getId()}) }}"
class="btn btn-default">
Candidature spontanée
</a>
</div>
</div>
{% endif %}
</div>
<div id="offers" class="row">
<div class="col s12">
<h1>Les offres demploi pour {{ company.brandname }}</h1>
@@ -1,4 +1,4 @@
{% for a in ads %}
{% for a in ads if a.isPrivate != true %}
<div class="col s12">
<div class="card z-depth-3">
<div class="card-image">
@@ -1,4 +1,4 @@
{% for a in ads %}
{% for a in ads if a.isPrivate != true %}
<div id="adRow" class="row item-list-bis z-depth-2 row-noMargin">
<div class="col s12 m4 col-noPadding ad-picture">
<a href="{{ path('ad_show',{'alias': a.alias }) }}" title="{{ a.title }}" class="item-list-media">
@@ -34,6 +34,15 @@
</div>
<div class="row m-b-0 p-b-30">
<div class="col s12 m12">
<div id="header-resultats">
{% if isPromotedAds %}
<div><span class="color-blue2">{{ ads|length }}</span> offres d'emploi pourvues</div>
<div><span><a href="{{ path('ad_search_result') }}">Voir les offres d'emploi en cours</a></span></div>
{% else %}
<div><span class="color-blue2">{{ ads|length }}</span> offres d'emploi en cours</div>
<div><span><a href="{{ path('ad_search_result', {'promoted': true }) }}">Voir les offres d'emploi pourvues</a></span></div>
{% endif %}
</div>
<div id="liste-resultats">
{% if ads|length > 0 and noResults == false %}
{% include 'default/ad_listing.html.twig' with {'ads':ads} %}
@@ -35,17 +35,17 @@
<div class="col s12 m12 l8 xl9">
{% if ad.video and ad.status != "CLOSED" %}
<div class="row m-b-0" id="adVideo">
{% if ad.id == 38 %}
{#{% if ad.id == 38 %}
<img class="responsive-img" src="{{asset('/img/GROUPE-ROCHER-TT.jpg')}}">
{% else %}
<div class="embed-responsive embed-responsive-16by9">
<div class="col s12">
<iframe src="https://player.vimeo.com/video/{{ ad.video.cdnUrl|replace({ "/videos/": ""}) }}"
width="100%" height="640" frameborder="0" webkitallowfullscreen mozallowfullscreen
allowfullscreen></iframe>
</div>
{% else %}#}
<div class="embed-responsive embed-responsive-16by9">
<div class="col s12">
<iframe src="https://player.vimeo.com/video/{{ ad.video.cdnUrl|replace({ "/videos/": ""}) }}"
width="100%" height="640" frameborder="0" webkitallowfullscreen mozallowfullscreen
allowfullscreen></iframe>
</div>
{% endif %}
</div>
{#{% endif %}#}
{% if ad.isPromoted %}
<div class="isPromoted"><img src="{{asset('/img/offre-pourvue-gauche.png')}}" alt="promoted"></div>
{% endif %}
@@ -96,16 +96,29 @@
{{ 'ad.talent.isAnswer.label'|trans }}
</div>
{% elseif not is_granted('ROLE_COMPANY') %}
<p class="item-detail-reply">
<a href="{{ path('talent_answer_create',{'id': ad.getId()}) }}"
class="btn btn-default">
Postuler
</a>
</p>
{% if not ad.isPromoted %}
<p class="item-detail-reply">
<a href="{{ path('talent_answer_create',{'id': ad.getId()}) }}"
class="btn btn-default">
Postuler
</a>
</p>
{% endif %}
{% endif %}
{% endif %}
</div>
</div>
{% if ad.isPromoted %}
<div class="row bg-bordered row-promoted">
<div class="col s12 center-align">
<h3>Vous souhaitez rejoindre <span class="color-blue1">{{ ad.company.brandname }}</span> ?</h3>
<a href="{{ path('talent_spontaneous_application_create',{'id': ad.company.getId()}) }}"
class="btn btn-default">
Candidature spontanée
</a>
</div>
</div>
{% endif %}
<div class="col s12 hide-on-large-only m-b-50">
{% include 'default/ad_sidebar.html.twig' with {'ad': ad, 'showBrand': true} %}
</div>
@@ -56,12 +56,18 @@
{{ 'ad.talent.isAnswer.label'|trans }}
</div>
{% elseif not is_granted('ROLE_COMPANY') %}
<p class="item-detail-reply">
<a href="{{ path('talent_answer_create',{'id': ad.getId()}) }}"
class="btn btn-default">
Postuler
</a>
</p>
{% if not ad.isPromoted %}
<p class="item-detail-reply">
<a href="{{ path('talent_answer_create',{'id': ad.getId()}) }}"
class="btn btn-default">
Postuler
</a>
</p>
{% else %}
<div class="item-detail-ispromoted">
Offre pourvue
</div>
{% endif %}
{% endif %}
{% endif %}
</div>
@@ -1,4 +1,4 @@
{% for company in companies %}
{% for company in companies if company.isPrivate != true %}
<div class="col s12">
<div class="card z-depth-3 card-company">
<div class="card-content card-content-company">
@@ -37,7 +37,7 @@
<div class="row m-b-0 p-b-30">
<div class="col s12 m12">
<div id="liste-resultats">
{% for c in companies %}
{% for c in companies if c.isPrivate != true %}
{% if (c.presentationVideo is not null or c.getPublishedAds|length > 0 ) %}
<div class="row item-list-bis z-depth-2 row-noMargin">
@@ -1,7 +1,7 @@
<footer class="page-footer">
<div class="container">
<div class="row footer-info">
<div class="col xl2 l2 m6 s6">
<div class="col xl2 l2 m6 s12 col-footer-logo">
<img src="{{ asset('/img/logo-mini-white.svg') }}" alt="Talents Tube 1er job board 100% vidéo">
</div>
<div class="col xl3 l3 m6 s6">
@@ -16,6 +16,9 @@
<li>
<a class="white-text" href="{{ path('company_list') }}" title="Listes entreprises">Nos entreprises</a>
</li>
<li>
<a class="white-text" href="{{ path('territory_list') }}" title="Listes des territoires">Nos territoires</a>
</li>
<li>
<a class="white-text" href="https://blog.talentstube.com/contact.html" title="Talents Tube ">Contact</a>
</li>
@@ -50,7 +53,7 @@
</p>
<h5 class="white-text">Contactez-nous !</h5>
<a class="white-text" href="mailto:&#098;&#111;&#110;&#106;&#111;&#117;&#114;&#064;&#116;&#097;&#108;&#101;&#110;&#116;&#115;&#116;&#117;&#098;&#101;&#046;&#099;&#111;&#109;">Par mail</a>
<p class="white-text" >02 97 68 14 02</p>
<p class="white-text">02 30 05 06 31</p>
<p class="footer-newsletter">
<a class="btn-large btn-round" href="#" title="Newsletter" data-token="ecea5416671e97e3abfa8195848a9140" onclick="mjOpenPopin(event, this)">
<i class="fa fa-envelope-open-o left" aria-hidden="true"></i>
@@ -61,7 +64,11 @@
</div>
<div class="row footer-more-links">
<div class="col s12 center-align">
<a class="text-center white-text" href="https://www.e-declic.com" target="_blank" title="Agence Web">&copy;&nbsp;2017 Talents Tube</a>
<p class="text-center white-text">Entreprise soutenue par</p>
<a href="https://www.bretagne.bzh/"><img src="{{ asset('img/RB_monochrome_blanc.svg')}}" alt="Region Bretagne"></a><br>
</div>
<div class="col s12 center-align m-t-30">
<a class="text-center white-text" href="https://www.e-declic.com" target="_blank" title="Agence Web">&copy;&nbsp;2018 Talents Tube</a>
</div>
</div>
</div>
@@ -68,7 +68,7 @@
<div class="row">
<div class="col s12 col-noPadding">
<div class="owl-carousel owl-carousel-home home-company-carousel">
{% if talents|length > 0 %}
{% if companies|length > 0 %}
{% include 'default/company_card.html.twig' with {'companies': companies } %}
{% endif %}
</div>
@@ -110,7 +110,7 @@
<h2 class="blue-text no-margin-top">Les territoires <span>pour vivre et travailler</span></h2>
{% if territories %}
<div class="owl-carousel owl-carousel-home territory-carousel">
{% for territory in territories if territory.presentationVideo %}
{% for territory in territories if territory.presentationVideo and territory.isPrivate != true %}
<div class="item">
<div class="embed-responsive embed-responsive-16by9">
<div class="col s12">
@@ -4,7 +4,7 @@
<div class="item">
<a href="{{ path('talent_show',{'alias': talent.alias }) }}"
title="{{ user.firstname }} {{ user.lastname }}">
{% if user.socialPicture is not null %}
{% if user.socialPicture is not null and user.photo is null %}
<img class="circle z-depth-3" src="{{ user.socialPicture }}" alt="{{ user.firstname }} {{ user.lastname }}"/>
{% elseif user.photo %}
<img class="circle z-depth-3" src="{{ user.webPath | imagine_filter('profile_square') }}" alt="{{ user.firstname }} {{ user.lastname }}"/>
@@ -14,10 +14,10 @@
<div class="profil center-align">
{% set company = user.company %}
<div class="profil-picture">
{% if user.photo %}
<img src="{{ user.webPath | imagine_filter('profile_square') }}"
alt="{{ user.firstname }} {{ user.lastname|first|upper }}"
class="circle responsive-img"/>
{% if user.socialPicture is not null and user.photo is null %}
<img class="circle responsive-img" src="{{ user.socialPicture }}" alt="{{ user.firstname }} {{ user.lastname|first|upper }}"/>
{% elseif user.photo %}
<img class="circle responsive-img" src="{{ user.webPath | imagine_filter('profile_square') }}" alt="{{ user.firstname }} {{ user.lastname }}"/>
{% else %}
<div class="circle-letters font-2">{{ user.firstname|first|upper }}{{ user.lastname|first|upper }}</div>
{% endif %}
@@ -36,7 +36,7 @@
<div class="row m-b-0 p-b-30">
<div class="col s12 m12">
<div id="liste-resultats">
{% for c in companies %}
{% for c in companies if c.isPrivate != true %}
{% if (c.presentationVideo is not null or c.getPublishedAds|length > 0 ) %}
<div class="row item-list-bis z-depth-2 row-noMargin">
@@ -1,6 +1,6 @@
<div id="liste-testimony" class="bg-white">
<div class="container">
<div class="row flexcontainer row-noMargin">
<div class="row row-noMargin">
<div class="owl-carousel owl-carousel-testimony">
<div class="item">
<div class="row">
@@ -16,6 +16,7 @@
Nous avons eu beaucoup dappréciations positives grâce à cette communication.
</p>
</div>
<div class="clear"></div>
</div>
</div>
<div class="item">
@@ -32,6 +33,7 @@
Atout supplémentaire : nos annonces en vidéo ont contribué à développer notre marque employeur !
</p>
</div>
<div class="clear"></div>
</div>
</div>
</div>
@@ -288,9 +288,9 @@ class AdController extends Controller
***********************/
/**
* @Route("/annonce/recherche/", name="ad_search_result")
* @Route("/annonce/recherche/{promoted}", defaults={"promoted"=false}, name="ad_search_result")
*/
public function adSearchResultAction(Request $request)
public function adSearchResultAction(Request $request, $promoted)
{
$session = $request->getSession();
$form = $this->createForm(AdSearchType::class);
@@ -307,7 +307,7 @@ class AdController extends Controller
$adSearcher = $this->get('app.ad_searcher');
$ads = $adSearcher->process($data);
if(empty($ads)){
$ads = $this->getPublishedAds();
$ads = $this->getPublishedAds($promoted);
$noResults = true;
} else {
$noResults = false;
@@ -324,18 +324,19 @@ class AdController extends Controller
} else {
$ads = $this->getPublishedAds();
$ads = $this->getPublishedAds($promoted);
}
return $this->render('default/ad_search_result.html.twig', [
'ads' => $ads,
'noResults' => false
'noResults' => false,
'isPromotedAds' => $promoted
]);
}
public function getPublishedAds()
public function getPublishedAds($promoted)
{
$em = $this->getDoctrine()->getManager();
$repo = $em->getRepository('AppBundle:Ad');
@@ -345,6 +346,17 @@ class AdController extends Controller
$mediaManager->getThumbnails($ad);
}
return $this->filterPromoted($ads, $promoted);
}
public function filterPromoted($result, $promoted = "false")
{
$ads = array();
foreach ($result as $ad) {
if ($ad->getIsPromoted() === (boolean)$promoted) {
$ads[] = $ad;
}
}
return $ads;
}
@@ -86,7 +86,7 @@ class UserController extends Controller
$mailer = $this->get('fos_user.mailer');
$mailer->sendConfirmationEmailMessage($user);
return $this->redirectToRoute('admin_config_user');
return $this->redirectToRoute('admin_config_users');
}
/**
@@ -8,33 +8,29 @@ use AppBundle\Entity\Company;
use AppBundle\Entity\Message;
use AppBundle\Form\AnswerType;
use AppBundle\Form\ContactTalentType;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\ParamConverter;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Security;
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Symfony\Component\HttpFoundation\Cookie;
use Symfony\Component\HttpFoundation\JsonResponse;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\Routing\Generator\UrlGeneratorInterface;
use Symfony\Component\HttpFoundation\Session\Session;
use Symfony\Component\EventDispatcher\EventDispatcher,
Symfony\Component\Security\Core\Authentication\Token\UsernamePasswordToken,
Symfony\Component\Security\Http\Event\InteractiveLoginEvent;
use Symfony\Component\Routing\Generator\UrlGeneratorInterface;
use Symfony\Component\Security\Core\Authentication\Token\UsernamePasswordToken;
class AnswerController extends Controller
{
/**
/**
* @Route("/anwser/edit/comment/{id}", name="anwser_edit_comment")
*/
public function anwserEditCommentAction(Request $request, Answer $answer)
{
if($answer) {
{
if ($answer) {
$em = $this->getDoctrine()->getManager();
$answer->setComment($request->get('comment'));
$em->persist($answer);
$em->flush();
}
}
return new JsonResponse(array('success' => "true"));
}
@@ -57,15 +53,16 @@ class AnswerController extends Controller
return $this->finishAnswerAction($request, $company, $answer);
}
public function finishAnswerAction($request, $object, $answer) {
public function finishAnswerAction($request, $object, $answer)
{
$securityContext = $this->container->get('security.authorization_checker');
if($object instanceof Ad) {
if ($object instanceof Ad) {
$route = "ad_show";
$varReqAnswer = "ad";
$contact = $object->getCreator();
$title = $answer->getAd()->getTitle();
}
if($object instanceof Company) {
if ($object instanceof Company) {
$route = "company_show";
$varReqAnswer = "company";
$contact = $object->getMainUser();
@@ -74,7 +71,7 @@ class AnswerController extends Controller
if (!$securityContext->isGranted('IS_AUTHENTICATED_FULLY')) {
return $this->redirectToRoute($route, array('alias' => $object->getAlias()));
}
if($answer) {
if ($answer) {
$em = $this->getDoctrine()->getManager();
$existAnswer = $em->getRepository('AppBundle:Answer')->findOneBy(array('user' => $this->getUser(), $varReqAnswer => $object));
if (!$this->getUser()->hasRole('ROLE_TALENT')) {
@@ -82,7 +79,7 @@ class AnswerController extends Controller
$session = new Session();
$session->getFlashBag()->add('popup_answer_not_allowed', true);
} else {
if($existAnswer && ($existAnswer->getId() !== $answer->getid())){
if ($existAnswer && ($existAnswer->getId() !== $answer->getid())) {
$em->remove($answer);
$session = new Session();
$session->getFlashBag()->add('popup_answer_already_send', true);
@@ -91,31 +88,31 @@ class AnswerController extends Controller
$session->getFlashBag()->add('popup_answer_already_send', false);
$answer->setStatus('SENDED');
$em->persist($answer);
$mediaManager = $this->get('media_manager');
$mediaManager->getThumbnails($answer);
$thumbnailsArray = $answer->getVideo()->getThumbnails();
$img = $thumbnailsArray[0]['sizes'][3]['link'];
$mailManager = $this->get('app.mail_manager');
$link = $this->generateUrl('company_answer_show', array('id' => $answer->getId()),UrlGeneratorInterface::ABSOLUTE_URL);
$link = $this->generateUrl('company_answer_show', array('id' => $answer->getId()), UrlGeneratorInterface::ABSOLUTE_URL);
$mailManager->sendMail(
'Candidature TalentsTube ',
'<div style="margin:0 auto;max-width:600px;background:#FFFFFF;"><table class="" cellpadding="0" cellspacing="0" style="width:100%;font-size:0px;background:#FFFFFF;" align="center"><tbody><tr><td style="text-align:center;vertical-align:top;font-size:0;padding:0px;"><!--[if mso]>
<table border="0" cellpadding="0" cellspacing="0"><tr><td style="width:600px;">
<![endif]--><div style="vertical-align:top;display:inline-block;font-size:13px;text-align:left;width:100%;" class="mj-column-per-100" aria-labelledby="mj-column-per-100"><table width="100%"><tbody><tr><td style="font-size:0;padding:0px;" align="center"><table cellpadding="0" cellspacing="0" style="border-collapse:collapse;border-spacing:0px;" align="center"><tbody><tr><td><img alt="" src="'.$img.'" style="border:none;display:block;outline:none;text-decoration:none;width:100%;max-width:600px;height:auto;" width="600" height="auto"></td></tr></tbody></table></td></tr></tbody></table></div><!--[if mso]>
<![endif]--><div style="vertical-align:top;display:inline-block;font-size:13px;text-align:left;width:100%;" class="mj-column-per-100" aria-labelledby="mj-column-per-100"><table width="100%"><tbody><tr><td style="font-size:0;padding:0px;" align="center"><table cellpadding="0" cellspacing="0" style="border-collapse:collapse;border-spacing:0px;" align="center"><tbody><tr><td><img alt="" src="' . $img . '" style="border:none;display:block;outline:none;text-decoration:none;width:100%;max-width:600px;height:auto;" width="600" height="auto"></td></tr></tbody></table></td></tr></tbody></table></div><!--[if mso]>
</td></tr></table>
<![endif]--></td></tr></tbody></table></div>
<div style="margin:0 auto;max-width:600px;background:#FFFFFF;"><table class="" cellpadding="0" cellspacing="0" style="width:100%;font-size:0px;background:#FFFFFF;" align="center"><tbody><tr><td style="text-align:center;vertical-align:top;font-size:0;padding:0px;"><!--[if mso]>
<table border="0" cellpadding="0" cellspacing="0"><tr><td style="width:600px;">
<![endif]--><div style="vertical-align:top;display:inline-block;font-size:13px;text-align:left;width:100%;" class="mj-column-per-100" aria-labelledby="mj-column-per-100"><table width="100%"><tbody><tr><td style="font-size:0;padding:20px 35px 20px 35px;" align="left"><div class="mj-content" style="cursor:auto;color:#534F4F;font-family:Trebuchet,Helvetica,sans-serif;font-size:14px;line-height:22px;"><p>Bonjour '.$contact->getLastname().' '.$contact->getFirstname().',</p>
<p>Le talent '.$answer->getUser()->getFirstname().' '.$answer->getUser()->getLastname().' a répondu à votre annonce '.$title.'.</p></div></td></tr></tbody></table></div><!--[if mso]>
<![endif]--><div style="vertical-align:top;display:inline-block;font-size:13px;text-align:left;width:100%;" class="mj-column-per-100" aria-labelledby="mj-column-per-100"><table width="100%"><tbody><tr><td style="font-size:0;padding:20px 35px 20px 35px;" align="left"><div class="mj-content" style="cursor:auto;color:#534F4F;font-family:Trebuchet,Helvetica,sans-serif;font-size:14px;line-height:22px;"><p>Bonjour ' . $contact->getLastname() . ' ' . $contact->getFirstname() . ',</p>
<p>Le talent ' . $answer->getUser()->getFirstname() . ' ' . $answer->getUser()->getLastname() . ' a répondu à votre annonce ' . $title . '.</p></div></td></tr></tbody></table></div><!--[if mso]>
</td></tr></table>
<![endif]--></td></tr></tbody></table></div>
<div style="margin:0 auto;max-width:600px;background:#FFFFFF;"><table class="" cellpadding="0" cellspacing="0" style="width:100%;font-size:0px;background:#FFFFFF;" align="center"><tbody><tr><td style="text-align:center;vertical-align:top;font-size:0;padding:0px 0px 40px 0px;"><!--[if mso]>
<table border="0" cellpadding="0" cellspacing="0"><tr><td style="width:600px;">
<![endif]--><div style="vertical-align:top;display:inline-block;font-size:13px;text-align:left;width:100%;" class="mj-column-per-100" aria-labelledby="mj-column-per-100"><table width="100%"><tbody><tr><td style="font-size:0;padding:15px 30px;" align="center"><table cellpadding="0" cellspacing="0" style="border:none;border-radius:30px;" align="center"><tbody><tr><td style="background:#1689FB;border-radius:30px;color:#FFFFFF;cursor:auto;" align="center" valign="middle" bgcolor="#1689FB"><a class="mj-content" href="'.$link.'" style="display:inline-block;text-decoration:none;background:#1689FB;border:1px solid #1689FB;border-radius:30px;color:#FFFFFF;font-family:Trebuchet,Helvetica,sans-serif;font-size:14px;font-weight:normal;padding:15px 30px;" target="_blank">Découvrir le talent</a></td></tr></tbody></table></td></tr></tbody></table></div><!--[if mso]>
<![endif]--><div style="vertical-align:top;display:inline-block;font-size:13px;text-align:left;width:100%;" class="mj-column-per-100" aria-labelledby="mj-column-per-100"><table width="100%"><tbody><tr><td style="font-size:0;padding:15px 30px;" align="center"><table cellpadding="0" cellspacing="0" style="border:none;border-radius:30px;" align="center"><tbody><tr><td style="background:#1689FB;border-radius:30px;color:#FFFFFF;cursor:auto;" align="center" valign="middle" bgcolor="#1689FB"><a class="mj-content" href="' . $link . '" style="display:inline-block;text-decoration:none;background:#1689FB;border:1px solid #1689FB;border-radius:30px;color:#FFFFFF;font-family:Trebuchet,Helvetica,sans-serif;font-size:14px;font-weight:normal;padding:15px 30px;" target="_blank">Découvrir le talent</a></td></tr></tbody></table></td></tr></tbody></table></div><!--[if mso]>
</td></tr></table>
<![endif]--></td></tr></tbody></table></div>',
$contact,
@@ -123,9 +120,9 @@ class AnswerController extends Controller
);
}
}
$session->getFlashBag()->add('popup_answer_send', true);
$em->flush();
$session->getFlashBag()->add('popup_answer_send', true);
$em->flush();
}
return $this->redirect($this->generateUrl($route, array('alias' => $object->getAlias())));
@@ -147,22 +144,25 @@ class AnswerController extends Controller
return $this->generateStep2($request, $company, $type);
}
public function generateStep2(Request $request, $object, $type) {
if($object instanceof Ad) {
public function generateStep2(Request $request, $object, $type)
{
if ($object instanceof Ad) {
$route = "ad_show";
$routeStep2 = 'answer_create_ad_step2';
$routeStep3 = 'answer_create_ad_step3';
$varReqAnswer = "ad";
$typeObject = "Ad";
}
if($object instanceof Company) {
if ($object instanceof Company) {
$route = "company_show";
$routeStep2 = 'answer_create_company_step2';
$routeStep3 = 'answer_create_company_step3';
$varReqAnswer = "company";
$typeObject = "Company";
}
$securityContext = $this->container->get('security.authorization_checker');
if (!$securityContext->isGranted('IS_AUTHENTICATED_FULLY')) {
return $this->redirectToRoute($route, array('alias' => $object->getAlias()));
return $this->redirectToRoute($route, array('alias' => $object->getAlias()));
}
$em = $this->getDoctrine()->getManager();
$user = $this->getUser();
@@ -182,18 +182,18 @@ class AnswerController extends Controller
}
if ($form->isSubmitted() && $form->isValid()) {
if(!$mustLogin){
return $this->redirect($this->generateUrl($routeStep3, array($varReqAnswer => $object->getId(), 'answer'=> $answer->getId())));
if (!$mustLogin) {
return $this->redirect($this->generateUrl($routeStep3, array($varReqAnswer => $object->getId(), 'answer' => $answer->getId())));
}
}
/*Definition des urls de destination pour ouath login et register*/
$destination_login = $this->generateUrl($routeStep3, array($varReqAnswer => $object->getId(), 'answer'=> $answer->getId()));
/*Definition des urls de destination pour oauth login et register*/
$destination_login = $this->generateUrl($routeStep3, array($varReqAnswer => $object->getId(), 'answer' => $answer->getId()));
$this->get('twig')->addGlobal('destination_login', $destination_login);
$session = new Session();
$session->set('registration_destination', $destination_login);
return $this->render('answer/answer_create_'.$type.'.twig', array(
$res = $this->render('answer/answer_create_' . $type . '.twig', array(
'routeObject' => $route,
'typeObject' => $typeObject,
'object' => $object,
@@ -202,23 +202,27 @@ class AnswerController extends Controller
'video' => $video,
'videos' => $videos,
$varReqAnswer => $object,
'mustLogin' => $mustLogin
'mustLogin' => $mustLogin,
));
$redirectReg = $this->generateUrl($routeStep2, array('id' => $object->getId(), 'type' => $type));
$res->headers->setCookie(new Cookie('redirect_register', $redirectReg));
return $res;
}
private function createAnonymousUser() {
private function createAnonymousUser()
{
$userManager = $this->get('fos_user.user_manager');
$user = $userManager->createUser();
$uniqId = uniqId();
$user->setUsername("anonym_".$uniqId);
$user->setUsername("anonym_" . $uniqId);
$user->setFirstname("anonym");
$user->setLastname("anonym");
$user->setEmail("anonym_".$uniqId."@talentstube.com");
$user->setEmail("anonym_" . $uniqId . "@talentstube.com");
$user->setPlainPassword($uniqId);
$user->setEnabled(false);
$user->setRoles(array('ROLE_TALENT_TMP'));
$company = new Company();
$company->setAlias("anonym_".$uniqId);
$company->setAlias("anonym_" . $uniqId);
$company->setType("TALENT_TMP");
$user->setCompany($company);
$userManager->updateUser($user);
@@ -267,7 +271,7 @@ class AnswerController extends Controller
'answer' => $answer,
'object' => $company,
'mustLogin' => $mustLogin,
'route_videotheque' => $route_videotheque
'route_videotheque' => $route_videotheque,
));
}
@@ -306,7 +310,7 @@ class AnswerController extends Controller
'answer' => $answer,
'object' => $ad,
'mustLogin' => $mustLogin,
'route_videotheque' => $route_videotheque
'route_videotheque' => $route_videotheque,
));
}
@@ -368,7 +372,7 @@ class AnswerController extends Controller
$answers = $em->getRepository('AppBundle:Answer')->getAnswerByCompany($user->getCompany()->getId());
return $this->render('company/answer_list.html.twig', [
'answers' => $answers,
'type' => 'answer'
'type' => 'answer',
]);
}
@@ -382,7 +386,7 @@ class AnswerController extends Controller
$answers = $em->getRepository('AppBundle:Answer')->findBy(array('company' => $user->getCompany()->getId(), 'status' => 'SENDED'));
return $this->render('company/answer_list.html.twig', [
'answers' => $answers,
'type' => 'spontaneous'
'type' => 'spontaneous',
]);
}
@@ -423,7 +427,7 @@ class AnswerController extends Controller
{
$message = array('success' => 200,
'filename' => null,
'originalFilename' => null
'originalFilename' => null,
);
foreach ($request->files as $uploadedFile) {
$mediaManager = $this->get('media_manager');
@@ -447,5 +451,4 @@ class AnswerController extends Controller
return new JsonResponse(array('success' => "true"));
}
}
}
@@ -97,6 +97,13 @@ class Ad
*/
private $isPromoted;
/**
* @var boolean
*
* @ORM\Column(name="is_private", type="boolean", nullable=true, options={"comment":"Annonce privé, non listée en front"})
*/
private $isPrivate;
/**
* @var boolean
*
@@ -1076,4 +1083,64 @@ class Ad
{
return $this->territories;
}
/**
* Set isPrivate.
*
* @param bool|null $isPrivate
*
* @return Ad
*/
public function setIsPrivate($isPrivate = null)
{
$this->isPrivate = $isPrivate;
return $this;
}
/**
* Get isPrivate.
*
* @return bool|null
*/
public function getIsPrivate()
{
return $this->isPrivate;
}
/**
* Add bookmarkAd.
*
* @param \AppBundle\Entity\BookmarkAd $bookmarkAd
*
* @return Ad
*/
public function addBookmarkAd(\AppBundle\Entity\BookmarkAd $bookmarkAd)
{
$this->bookmarkAds[] = $bookmarkAd;
return $this;
}
/**
* Remove bookmarkAd.
*
* @param \AppBundle\Entity\BookmarkAd $bookmarkAd
*
* @return boolean TRUE if this collection contained the specified element, FALSE otherwise.
*/
public function removeBookmarkAd(\AppBundle\Entity\BookmarkAd $bookmarkAd)
{
return $this->bookmarkAds->removeElement($bookmarkAd);
}
/**
* Get bookmarkAds.
*
* @return \Doctrine\Common\Collections\Collection
*/
public function getBookmarkAds()
{
return $this->bookmarkAds;
}
}
@@ -120,6 +120,13 @@ class Company
*/
private $searchable;
/**
* @var boolean
*
* @ORM\Column(name="is_private", type="boolean", nullable=true, options={"comment":"Company privé, non listée en front"})
*/
private $isPrivate;
/***********************
* OneToMany Array's
***********************/
@@ -803,4 +810,28 @@ class Company
{
return $this->descriptionAdmin;
}
/**
* Set isPrivate.
*
* @param bool|null $isPrivate
*
* @return Company
*/
public function setIsPrivate($isPrivate = null)
{
$this->isPrivate = $isPrivate;
return $this;
}
/**
* Get isPrivate.
*
* @return bool|null
*/
public function getIsPrivate()
{
return $this->isPrivate;
}
}
@@ -82,6 +82,10 @@ class AdType extends AbstractType
->add('isVerified', CheckboxType::class, array(
'label' => 'Vérifiée',
'required' => false
))
->add('isPrivate', CheckboxType::class, array(
'label' => 'Annonce privé ( non listée en front )',
'required' => false
));
// Emphasis
@@ -37,6 +37,10 @@ class CompanyAdminType extends AbstractType
))
->add('size', TextType::class, array(
'label' => 'profile.company.size',
))
->add('isPrivate', CheckboxType::class, array(
'label' => 'Page entreprise privé ( non listée en front )',
'required' => false
));
// Addresses fields
$builder
@@ -87,6 +87,10 @@ class TerritoryAdminType extends AbstractType
'label' => 'Ordre',
'required' => false
));
$builder->add('isPrivate', CheckboxType::class, array(
'label' => 'Page territoire privé ( non listée en front )',
'required' => false
));
}
public function configureOptions(OptionsResolver $resolver)
@@ -96,7 +96,7 @@ class AdSearcher
{
$ads = array();
foreach ($result as $ad) {
if ($ad->getStatus() == "PUBLISHED") {
if ($ad->getStatus() == "PUBLISHED" && $ad->getIsPrivate() != true && $ad->getIsPromoted() != true) {
$ads[] = $ad;
}
}
@@ -131,23 +131,26 @@ class StatsManager
}
}
}
ksort($arrayRecords['ad']);
foreach ($arrayRecords['ad'] as $recordAd) {
$count = 0;
foreach ($recordAd as $countView) {
$count = $count + $countView;
if (isset($arrayRecords['ad'])) {
ksort($arrayRecords['ad']);
foreach ($arrayRecords['ad'] as $recordAd) {
$count = 0;
foreach ($recordAd as $countView) {
$count = $count + $countView;
}
$arrDatasetsAd[] = $count;
}
$arrDatasetsAd[] = $count;
}
ksort($arrayRecords['company']);
foreach ($arrayRecords['company'] as $recordCompany) {
$count = 0;
foreach ($recordCompany as $countView) {
$count = $count + $countView;
if (isset($arrayRecords['company'])) {
ksort($arrayRecords['company']);
foreach ($arrayRecords['company'] as $recordCompany) {
$count = 0;
foreach ($recordCompany as $countView) {
$count = $count + $countView;
}
$arrDatasetsCompany[] = $count;
}
$arrDatasetsCompany[] = $count;
}
sort($lineDatesLabel, SORT_NATURAL | SORT_FLAG_CASE);
@@ -71,14 +71,14 @@ class PrestaBridgeListener implements EventSubscriberInterface
{
if (!$this->avoidMode) {
$user = $this->security->getToken()->getUser();
$prestaBridge = new PrestashopBridge($this->pathToPrestashop, $this->idShop, $this->cookieKey);
if (!$prestaBridge->userExist($user->getEmail()))
$prestaBridge->createUser($user);
$prestaBridge->login($user->getEmail());
if($user->hasRole('ROLE_TALENT') || $user->hasRole('ROLE_COMPANY') || $user->hasRole('ROLE_TERRITORY')) {
$prestaBridge = new PrestashopBridge($this->pathToPrestashop, $this->idShop, $this->cookieKey);
if (!$prestaBridge->userExist($user->getEmail()))
$prestaBridge->createUser($user);
$prestaBridge->login($user->getEmail());
}
}
}
/**
+26 -11
View File
@@ -1,3 +1,8 @@
window.onresize = resize;
var w = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth;
function resize() {
w = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth;
}
$(document).ready(function () {
//Slide sur tags
if($('.frame').length) {
@@ -50,15 +55,17 @@ $(document).ready(function () {
var $window = jQuery(window);
if($('#homeTeaser').length) {
$window.scroll(function () {
var position = $('#homeTeaser').position();
if ( $(window).scrollTop() > ((position.top + $('#homeTeaser').height()) - 125) ) {
$('.homeSearchWrapper').addClass("fix-search");
$('.row_search').removeClass("z-depth-5");
$('#liste-jobs').css('padding-top',65);
} else {
$('.homeSearchWrapper').removeClass("fix-search");
$('.row_search').addClass("z-depth-5");
$('#liste-jobs').css('padding-top',0);
if(w > 960) {
var position = $('#homeTeaser').position();
if ( $(window).scrollTop() > ((position.top + $('#homeTeaser').height()) - 125) ) {
$('.homeSearchWrapper').addClass("fix-search");
$('.row_search').removeClass("z-depth-5");
$('#liste-jobs').css('padding-top',65);
} else {
$('.homeSearchWrapper').removeClass("fix-search");
$('.row_search').addClass("z-depth-5");
$('#liste-jobs').css('padding-top',0);
}
}
});
}
@@ -170,10 +177,18 @@ $(document).ready(function () {
/*owl carousel*/
if( $(".territory-carousel").length ) {
//Carousel territoire
console.log("carousel =="+w);
if(w <= 640){
var marginValue = 20;
var paddingValue = 10;
} else {
var marginValue = 150;
var paddingValue = 100;
}
$(".territory-carousel").owlCarousel({
items:1,
margin: 150,
stagePadding: 100,
margin: marginValue,
stagePadding: paddingValue,
nav: true,
loop: true,
center:true,
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+97 -31
View File
@@ -13096,6 +13096,11 @@ a.link-white-underline {
.blocs-texte-video .btn {
margin-bottom: 15px; }
@media screen and (max-width: 420px) {
.blocs-texte-video h2 {
font-size: 20px; }
.blocs-texte-video a {
font-size: 10px; } }
/*Détail*/
.btn-logo-company {
padding: 10px;
@@ -13129,7 +13134,7 @@ a.link-white-underline {
padding-top: 10px; }
.profil-company {
padding: 0 40px; }
padding: 0 20px; }
/*************************** FLEX ****************************/
.flexcontainer {
@@ -13308,15 +13313,29 @@ a.link-white-underline {
#liste-jobs {
padding-bottom: 40px; }
@media screen and (max-width: 420px) {
#liste-jobs h2 {
font-size: 20px; } }
#liste-talents {
padding: 120px 0 40px 0; }
@media screen and (max-width: 420px) {
#liste-talents h2 {
font-size: 20px; } }
#liste-company {
padding: 120px 0 40px 0; }
@media screen and (max-width: 420px) {
#liste-company h2 {
font-size: 20px; } }
#liste-territoires {
padding: 120px 0 40px 0; }
@media screen and (max-width: 420px) {
#liste-territoires h2 {
font-size: 20px; }
#liste-territoires a {
font-size: 10px; } }
/*Blocs fixes accueil*/
#endScroll {
@@ -13622,6 +13641,13 @@ a.link-white-underline {
.blocs-texte-video .inside-m {
padding: 40px 40px 40px 80px; }
@media screen and (max-width: 420px) {
.blocs-texte-video .inside-m {
padding: 10px 10px 30px 10px; }
.row-bloc-video-2 {
display: flex;
flex-direction: column-reverse; } }
.no-margin-top {
margin-top: 0px; }
@@ -13986,6 +14012,16 @@ a.link-white-underline {
.items-list-dark .item-list p.item-list-name, .items-list-dark .item-list p.item-list-city {
border-color: #AAAAAA; }
#header-resultats {
display: flex;
flex-direction: row;
justify-items: flex-end;
justify-content: space-between;
margin-bottom: 15px;
font-size: 1rem; }
#header-resultats a {
color: #000; }
#liste-resultats .item-list-bis {
margin-bottom: 20px;
background: #FFFFFF;
@@ -14325,7 +14361,7 @@ a.link-white-underline {
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 110%;
width: 90vw;
display: block;
text-align: center;
color: #000;
@@ -14334,45 +14370,46 @@ a.link-white-underline {
.owl-carousel .owl-nav i {
font-size: 30px; }
.owl-carousel .owl-nav .owl-prev {
backgound: none;
float: left; }
.owl-carousel .owl-nav .owl-prev .left-arrow {
background: url(../img/left_light.png) no-repeat;
height: 113px;
width: 41px;
background: url(../img/arrowleft.svg) no-repeat #1E2327;
height: 48px;
width: 48px;
border-radius: 50%;
display: block;
background-position: center center; }
.owl-carousel .owl-nav .owl-prev .left-arrow:hover {
background: url(../img/left_light_rollover.png) no-repeat; }
.owl-carousel .owl-nav .owl-next {
backgound: none;
float: right; }
.owl-carousel .owl-nav .owl-next .right-arrow {
background: url(../img/right_light.png) no-repeat;
height: 113px;
width: 41px;
background: url(../img/arrowright.svg) no-repeat #1E2327;
height: 48px;
width: 48px;
border-radius: 50%;
display: block;
background-position: center center; }
.owl-carousel .owl-nav .owl-next .right-arrow:hover {
background: url(../img/right_light_rollover.png) no-repeat; }
.bg-dark2 .owl-carousel .owl-nav .owl-prev .left-arrow {
background: url(../img/left_dark.png) no-repeat;
background-position: center center; }
.bg-dark2 .owl-carousel .owl-nav .owl-prev .left-arrow:hover {
background: url(../img/left_dark_rollover.png) no-repeat; }
.bg-dark2 .owl-carousel .owl-nav .owl-next {
backgound: none;
float: right; }
.bg-dark2 .owl-carousel .owl-nav .owl-next .right-arrow {
background: url(../img/right_dark.png) no-repeat;
background-position: center center; }
.bg-dark2 .owl-carousel .owl-nav .owl-next .right-arrow:hover {
background: url(../img/right_dark_rollover.png) no-repeat; }
background-color: #32373D; }
.bg-dark2 .owl-carousel .owl-nav .owl-next .right-arrow {
background-color: #32373D; }
@media (max-width: 600px) {
.bg-dark1 .owl-carousel .owl-nav .owl-prev .left-arrow {
background-color: #292E32; }
.bg-dark1 .owl-carousel .owl-nav .owl-next .right-arrow {
background-color: #292E32; }
@media (max-width: 1024px) {
.owl-carousel .owl-nav {
display: none; } }
position: relative;
margin-top: 50px;
display: flex;
flex-direction: row;
align-items: center;
justify-content: center; }
.owl-carousel .owl-nav .owl-prev, .owl-carousel .owl-nav .owl-next {
float: none; }
.owl-carousel .owl-nav .owl-prev {
margin-right: 40px; } }
#liste-jobs .card .card-action {
height: auto; }
#liste-jobs .card .card-action a.btn-tags {
@@ -14405,7 +14442,7 @@ a.link-white-underline {
.territory-carousel h2 a:hover {
text-decoration: none; }
.territory-carousel .owl-nav {
top: 55%; }
top: 50%; }
@media (min-width: 600px) and (max-width: 700px) {
.owl-carousel .owl-item .card-content-company .col-logo {
@@ -14424,7 +14461,10 @@ a.link-white-underline {
.owl-carousel .owl-item .card-company .card-content-company .col-infos {
font-size: 14px; } }
@media (min-width: 1136px) and (max-width: 1226px) {
@media (min-width: 1136px) {
.owl-carousel .owl-nav {
width: 110%; }
.owl-carousel .owl-item .card-company .card-content-company .col-infos {
font-size: 14px; } }
#liste-testimony .item .row {
@@ -14583,6 +14623,11 @@ footer {
footer .footer-more-links {
margin-top: 80px;
font-size: 13px; }
@media screen and (max-width: 420px) {
footer .col-footer-logo {
text-align: center; }
footer.page-footer {
padding: 10px 0 20px 0; } }
/*onglets*/
.tabs {
@@ -15687,7 +15732,8 @@ table.highlight > tbody > tr:hover {
font-size: 13px; }
#ad_show .brandImage {
position: relative;
margin: 2px; }
margin: 2px;
margin-top: 15px; }
#ad_show .brandImage a {
display: block; }
#ad_show .brandImage a img {
@@ -15765,6 +15811,21 @@ table.highlight > tbody > tr:hover {
width: 101px;
height: 101px; }
.item-detail-ispromoted {
display: block;
text-align: center;
padding: 10px 20px;
color: #ff9800;
border: 1px solid #ff9800;
border-radius: 6px;
text-transform: uppercase;
font-size: 1.1rem; }
#ad_show .row-promoted {
padding-bottom: 40px; }
#ad_show .row-promoted h3 span {
text-decoration: none; }
#company_show .chip {
font-size: 14px; }
#company_show h3 {
@@ -15784,6 +15845,11 @@ table.highlight > tbody > tr:hover {
font-size: 16px;
margin: 20px 0; }
#company_show .row-promoted {
padding-bottom: 40px; }
#company_show .row-promoted h3 span {
text-decoration: none; }
#page-static {
font-size: 14px;
/***** OLD STEP *****/ }
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 27 KiB

@@ -0,0 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg width="24px" height="24px" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<!-- Generator: Sketch 48.2 (47327) - http://www.bohemiancoding.com/sketch -->
<title>icon/arrowleft</title>
<desc>Created with Sketch.</desc>
<defs></defs>
<g id="Symbols" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<g id="icon/arrowleft">
<polygon id="Shape" points="0 0 24 0 24 24 0 24"></polygon>
<path d="M15.90375,4.24975 C15.582,3.91675 15.0465,3.91675 14.7135,4.24975 C14.39175,4.5715 14.39175,5.107 14.7135,5.428 L20.74875,11.46325 L0.83325,11.46325 C0.369,11.464 0,11.833 0,12.29725 C0,12.7615 0.369,13.1425 0.83325,13.1425 L20.74875,13.1425 L14.7135,19.1665 C14.39175,19.4995 14.39175,20.03575 14.7135,20.35675 C15.0465,20.68975 15.58275,20.68975 15.90375,20.35675 L23.36775,12.89275 C23.70075,12.571 23.70075,12.0355 23.36775,11.7145 L15.90375,4.24975 Z" fill="#FFFFFF" fill-rule="nonzero" transform="translate(11.808750, 12.303250) scale(-1, 1) translate(-11.808750, -12.303250) "></path>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.2 KiB

@@ -0,0 +1 @@
<svg height="24" viewBox="0 0 24 24" width="24" xmlns="http://www.w3.org/2000/svg"><g fill="none" fill-rule="evenodd"><path d="m0 0h24v24h-24z"/><path d="m15.90375 4.24975c-.32175-.333-.85725-.333-1.19025 0-.32175.32175-.32175.85725 0 1.17825l6.03525 6.03525h-19.9155c-.46425.00075-.83325.36975-.83325.834s.369.84525.83325.84525h19.9155l-6.03525 6.024c-.32175.333-.32175.86925 0 1.19025.333.333.86925.333 1.19025 0l7.464-7.464c.333-.32175.333-.85725 0-1.17825z" fill="#fff" fill-rule="nonzero"/></g></svg>

After

Width:  |  Height:  |  Size: 505 B

+26 -11
View File
@@ -1,3 +1,8 @@
window.onresize = resize;
var w = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth;
function resize() {
w = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth;
}
$(document).ready(function () {
//Slide sur tags
if($('.frame').length) {
@@ -50,15 +55,17 @@ $(document).ready(function () {
var $window = jQuery(window);
if($('#homeTeaser').length) {
$window.scroll(function () {
var position = $('#homeTeaser').position();
if ( $(window).scrollTop() > ((position.top + $('#homeTeaser').height()) - 125) ) {
$('.homeSearchWrapper').addClass("fix-search");
$('.row_search').removeClass("z-depth-5");
$('#liste-jobs').css('padding-top',65);
} else {
$('.homeSearchWrapper').removeClass("fix-search");
$('.row_search').addClass("z-depth-5");
$('#liste-jobs').css('padding-top',0);
if(w > 960) {
var position = $('#homeTeaser').position();
if ( $(window).scrollTop() > ((position.top + $('#homeTeaser').height()) - 125) ) {
$('.homeSearchWrapper').addClass("fix-search");
$('.row_search').removeClass("z-depth-5");
$('#liste-jobs').css('padding-top',65);
} else {
$('.homeSearchWrapper').removeClass("fix-search");
$('.row_search').addClass("z-depth-5");
$('#liste-jobs').css('padding-top',0);
}
}
});
}
@@ -170,10 +177,18 @@ $(document).ready(function () {
/*owl carousel*/
if( $(".territory-carousel").length ) {
//Carousel territoire
console.log("carousel =="+w);
if(w <= 640){
var marginValue = 20;
var paddingValue = 10;
} else {
var marginValue = 150;
var paddingValue = 100;
}
$(".territory-carousel").owlCarousel({
items:1,
margin: 150,
stagePadding: 100,
margin: marginValue,
stagePadding: paddingValue,
nav: true,
loop: true,
center:true,
@@ -23,6 +23,16 @@
margin-bottom: 15px;
}
}
@media screen and (max-width: 420px){
.blocs-texte-video{
h2{
font-size: 20px;
}
a{
font-size: 10px;
}
}
}
/*Détail*/
@@ -70,7 +80,7 @@
}
.profil-company {
padding: 0 40px;
padding: 0 20px;
}
/*************************** FLEX ****************************/
@@ -192,7 +192,7 @@
top: 50%;
left: 50%;
transform: translate(-50%,-50%);
width: 110%;
width: 90vw;
display: block;
text-align: center;
color:#000;
@@ -203,31 +203,25 @@
}
.owl-prev {
backgound:none;
float: left;
.left-arrow{
background: url(../img/left_light.png) no-repeat;
height: 113px;
width: 41px;
background: url(../img/arrowleft.svg) no-repeat #1E2327;
height: 48px;
width: 48px;
border-radius: 50%;
display: block;
background-position: center center;
&:hover{
background: url(../img/left_light_rollover.png) no-repeat;
}
}
}
.owl-next {
backgound:none;
float: right;
.right-arrow{
background: url(../img/right_light.png) no-repeat;
height: 113px;
width: 41px;
background: url(../img/arrowright.svg) no-repeat #1E2327;
height: 48px;
width: 48px;
border-radius: 50%;
display: block;
background-position: center center;
&:hover{
background: url(../img/right_light_rollover.png) no-repeat;
}
}
}
}
@@ -236,29 +230,45 @@
.owl-carousel .owl-nav{
.owl-prev {
.left-arrow{
background: url(../img/left_dark.png) no-repeat;
background-position: center center;
&:hover{
background: url(../img/left_dark_rollover.png) no-repeat;
}
background-color:#32373D;
}
}
.owl-next {
backgound:none;
float: right;
.right-arrow{
background: url(../img/right_dark.png) no-repeat;
background-position: center center;
&:hover{
background: url(../img/right_dark_rollover.png) no-repeat;
}
background-color:#32373D;
}
}
}
}
@media (max-width: 600px){
.bg-dark1{
.owl-carousel .owl-nav{
display: none;
.owl-prev {
.left-arrow{
background-color:#292E32;
}
}
.owl-next {
.right-arrow{
background-color:#292E32;
}
}
}
}
@media (max-width: 1024px){
.owl-carousel .owl-nav{
position: relative;
margin-top: 50px;
display: flex;
flex-direction: row;
align-items: center;
justify-content: center;
.owl-prev,.owl-next{
float: none;
}
.owl-prev{
margin-right: 40px;
}
}
}
@@ -312,7 +322,7 @@
}
position: relative;
.owl-nav {
top: 55%;
top: 50%;
}
}
@@ -341,7 +351,10 @@
font-size: 14px;
}
}
@media (min-width: 1136px) and (max-width: 1226px){
@media (min-width: 1136px){
.owl-carousel .owl-nav{
width: 110%;
}
.owl-carousel .owl-item .card-company .card-content-company .col-infos {
font-size: 14px;
}
@@ -49,18 +49,41 @@
#liste-jobs {
padding-bottom: 40px;
@media screen and (max-width: 420px){
h2{
font-size: 20px;
}
}
}
#liste-talents {
padding: 120px 0 40px 0;
@media screen and (max-width: 420px){
h2{
font-size: 20px;
}
}
}
#liste-company {
padding: 120px 0 40px 0;
@media screen and (max-width: 420px){
h2{
font-size: 20px;
}
}
}
#liste-territoires {
padding: 120px 0 40px 0;
@media screen and (max-width: 420px){
h2{
font-size: 20px;
}
a{
font-size: 10px;
}
}
}
/*Blocs fixes accueil*/
@@ -51,4 +51,12 @@ footer{
margin-top:80px;
font-size:13px;
}
@media screen and (max-width: 420px){
.col-footer-logo{
text-align: center;
}
&.page-footer{
padding: 10px 0 20px 0;
}
}
}
@@ -20,6 +20,17 @@
padding:40px 40px 40px 80px;
}
}
@media screen and (max-width: 420px){
.blocs-texte-video{
.inside-m{
padding: 10px 10px 30px 10px;
}
}
.row-bloc-video-2{
display: flex;
flex-direction: column-reverse;
}
}
.no-margin-top{
margin-top:0px;
}
@@ -55,6 +55,17 @@
}
}
#header-resultats{
display: flex;
flex-direction: row;
justify-items: flex-end;
justify-content: space-between;
margin-bottom: 15px;
font-size: 1rem;
a{
color: #000;
}
}
#liste-resultats {
.item-list-bis {
margin-bottom: 20px;
@@ -212,4 +212,3 @@
}
}
}
@@ -28,6 +28,7 @@
.brandImage {
position: relative;
margin: 2px;
margin-top: 15px;
a {
display: block;
img {
@@ -122,3 +123,23 @@
}
}
}
.item-detail-ispromoted{
display: block;
text-align: center;
padding: 10px 20px;
color: $orange;
border: 1px solid $orange;
border-radius: 6px;
text-transform: uppercase;
font-size: 1.1rem;
}
#ad_show .row-promoted{
h3{
span{
text-decoration: none;
}
}
padding-bottom: 40px;
}
@@ -28,4 +28,13 @@
margin: 20px 0;
}
}
}
#company_show .row-promoted{
h3{
span{
text-decoration: none;
}
}
padding-bottom: 40px;
}