{{-- Page Offre (detail) — portage fidele de maquettes/Offre.dc.html. Donnees dynamiques (fournies par OffreEmploiController@show) : - $offre : l'offre consultee (titre, lieu, type_contrat, temps_travail, description, missions, profil, avantages) - $autresOffres : jusqu'a 4 autres offres actives ("D'autres opportunites") Les champs missions / profil / avantages sont stockes en base "une entree par ligne" (voir OffreEmploiSeeder) : ils sont ici eclates avec explode+trim puis rendus en
  • / blocs repetes, fidele au sc-for de la maquette. FAQ : questions/reponses figees, non fournies par le controleur (pas de champ FAQ sur le modele OffreEmploi) : reprises telles quelles de la maquette (identiques quelle que soit l'offre consultee, comme dans la source). Accordeon en JS vanilla leger (public/js/site.js). Modale de candidature : partagee via x-modale-candidature, avec offre-emploi-id et poste-souhaite pre-remplis depuis l'offre consultee. --}} @extends('layouts.site', ['active' => 'emplois']) @section('titre', $offre->titre.' - Biome Constructions') @section('contenu') @php $missions = collect(preg_split('/\r\n|\r|\n/', (string) $offre->missions))->map(fn ($ligne) => trim($ligne))->filter(); $profil = collect(preg_split('/\r\n|\r|\n/', (string) $offre->profil))->map(fn ($ligne) => trim($ligne))->filter(); $avantages = collect(preg_split('/\r\n|\r|\n/', (string) $offre->avantages))->map(fn ($ligne) => trim($ligne))->filter(); $metaBar = [ ['titre' => $offre->lieu, 'sous_titre' => 'Ancrage local', 'icone' => 'M12 21s7-6.2 7-11a7 7 0 1 0-14 0c0 4.8 7 11 7 11Z'], ['titre' => $offre->type_contrat, 'sous_titre' => 'Contrat à durée indéterminée', 'icone' => 'M9 12h6M9 16h6M7 3h7l5 5v11a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2Z'], ['titre' => $offre->temps_travail, 'sous_titre' => '40h/semaine', 'icone' => 'M12 8v4l3 2M12 3a9 9 0 1 0 0 18 9 9 0 0 0 0-18Z'], ['titre' => 'Permis B', 'sous_titre' => 'Indispensable', 'icone' => 'M5 11l1.5-4.5A2 2 0 0 1 8.4 5h7.2a2 2 0 0 1 1.9 1.5L19 11M5 11h14v6H5zM7.5 14h.01M16.5 14h.01'], // 'titre' est affiche ECHAPPE ({{ }}) car les titres voisins viennent de // la base (donnees saisies en admin) : on ecrit donc l'accent en clair, // et non en entite HTML, sinon elle s'affiche telle quelle. ['titre' => 'Déplacements', 'sous_titre' => 'Région Wallonne', 'icone' => 'M12 21s7-6.2 7-11a7 7 0 1 0-14 0c0 4.8 7 11 7 11Z'], ]; $pourquoi = [ ['titre' => 'Entreprise à taille humaine', 'texte' => 'Une équipe soudée où chacun compte vraiment.', 'icone' => 'M8 11a3 3 0 1 0 0-6 3 3 0 0 0 0 6ZM2.5 20a5.5 5.5 0 0 1 11 0M16 5.4a3 3 0 0 1 0 5.9M21.5 20a5.5 5.5 0 0 0-4-5.3'], ['titre' => 'Projets variés', 'texte' => 'Des chantiers résidentiels stimulants et diversifiés.', 'icone' => 'M3 11.2 12 4l9 7.2M5.4 10.2V20h13.2v-9.8'], ['titre' => 'Évolution rapide', 'texte' => "De réelles opportunités d'évolution professionnelle.", 'icone' => 'M3 17l6-6 4 4 7-8M21 7h-4M21 7v4'], ['titre' => 'Ambiance conviviale', 'texte' => "Esprit d'équipe, entraide et convivialité au quotidien.", 'icone' => 'M12 3a9 9 0 1 0 0 18 9 9 0 0 0 0-18ZM8.5 14a4 4 0 0 0 7 0M9 9.5h.01M15 9.5h.01'], ['titre' => 'Proximité & confiance', 'texte' => 'Une direction accessible et à l\'écoute.', 'icone' => 'M12 9.5c1.2-2 4.5-1.6 4.5 1 0 2-2.5 3.5-4.5 5-2-1.5-4.5-3-4.5-5 0-2.6 3.3-3 4.5-1ZM3 21l3-4h4M21 21l-3-4h-4M6 17v-2M18 17v-2'], ]; // Icones du processus : fichiers fournis par le client, servis en // statique depuis public/images/icones (meme convention que les icones // metiers de la page Partenaires). Chaque icone est facultative : tant // que le fichier n'est pas depose, le cercle blanc reste vide (pas // d'image cassee), voir le rendu de la section PROCESS plus bas. $process = [ ['n' => '1', 'titre' => 'Candidature', 'texte' => 'Envoyez-nous votre CV en quelques clics.', 'icone' => 'images/icones/icone-processus-candidature.png'], ['n' => '2', 'titre' => 'Premier contact', 'texte' => 'Nous revenons vers vous rapidement.', 'icone' => 'images/icones/icone-processus-premier-contact.png'], ['n' => '3', 'titre' => 'Rencontre', 'texte' => 'Echange et decouverte mutuelle.', 'icone' => 'images/icones/icone-processus-rencontre.png'], ['n' => '4', 'titre' => 'Bienvenue chez Biome', 'texte' => 'Onboarding et integration personnalisee.', 'icone' => 'images/icones/icone-processus-bienvenue.png'], ]; $faqs = [ ['question' => 'Quels sont les horaires de travail ?', 'reponse' => 'Nos collaborateurs travaillent 40h/semaine, du lundi au vendredi, avec une organisation flexible selon les chantiers.'], ['question' => "Est-il possible d'évoluer au sein de l'entreprise ?", 'reponse' => "Oui. Biome est en pleine croissance et favorise l'évolution interne, la formation continue et la prise de responsabilités."], ['question' => 'Comment se déroule le processus de recrutement ?', 'reponse' => 'Quatre étapes : candidature en ligne, premier contact téléphonique, rencontre avec l\'équipe, puis intégration personnalisée.'], ['question' => 'Puis-je envoyer une candidature spontanée ?', 'reponse' => 'Bien sûr. Toutes les candidatures spontanées sont étudiées avec attention via notre page Emploi.'], ]; @endphp {{-- HERO --}}
    @php $imgHero = \App\Support\MediaSite::url($contenu->contenu('hero.image')); @endphp @if ($imgHero) {{-- object-position : la bande du bandeau est large et peu haute, alors que la photo fournie est en portrait -> en "cover", une bonne part de la hauteur est rognee (d'autant plus que l'ecran est large). Centre par defaut (50%), le cadrage coupait le haut du sujet (tete/casque). On remonte la fenetre de visualisation vers le haut de l'image pour garder le visage entier sur toute la plage de largeurs d'ecran. --}} Chantier Biome @else
    Conducteur de chantier Biome
    @endif
    Accueil Emploi {{ $offre->titre }}

    Construisez votre avenir chez Biome

    {{ $offre->titre }}
    {{ $offre->lieu }} {{ $offre->type_contrat }} {{ $offre->temps_travail }} @if ($offre->nouveau) Entrée immédiate @endif

    Rejoignez une entreprise à taille humaine, dynamique et en pleine croissance, où chaque collaborateur a un réel impact.

    Voir toutes les offres
    {{-- META BAR --}}
    @foreach ($metaBar as $meta)
    {{ $meta['titre'] }}
    {!! $meta['sous_titre'] !!}
    @endforeach
    {{-- POURQUOI --}}

    Pourquoi rejoindre Biome ?

    @foreach ($pourquoi as $w)

    {!! $w['titre'] !!}

    {!! $w['texte'] !!}

    @endforeach
    {{-- MISSIONS / PROFIL --}}

    Vos missions

    @foreach ($missions as $ligne)
    {{ $ligne }}
    @endforeach
    @php $imgChantier = \App\Support\MediaSite::url($contenu->contenu('chantier.image')); @endphp @if ($imgChantier) Chantier Biome @else
    Chantier Biome
    @endif

    Votre profil

    @foreach ($profil as $ligne)
    {{ $ligne }}
    @endforeach
    @php $imgEquipe = \App\Support\MediaSite::url($contenu->contenu('equipe.image')); @endphp @if ($imgEquipe) Equipe Biome @else
    Équipe Biome
    @endif
    {{-- OFFRONS --}}

    Ce que nous vous offrons

    @foreach ($avantages as $ligne)
    {{-- Icone deduite du texte de l'avantage (voiture, GSM, remuneration, evolution...) : les avantages sont saisis librement en admin, donc l'icone est choisie par mots-cles, avec repli sur une icone generique. Voir App\Support\IconeAvantage. --}} {{-- Meme taille de texte que les listes "Vos missions" / "Votre profil" (14.5px) pour une lecture homogene. --}}

    {{ $ligne }}

    @endforeach
    {{-- PROCESS --}}

    Notre processus de recrutement

    @foreach ($process as $etape)
    @if (! empty($etape['icone']) && file_exists(public_path($etape['icone']))) @endif {{ $etape['n'] }}

    {{ $etape['titre'] }}

    {{ $etape['texte'] }}

    @endforeach
    {{-- POSTULER CTA --}}

    Intéressé(e) par ce poste ?

    Postulez en moins de 30 secondes, en 2 étapes simples.

    {{-- AUTRES OPPORTUNITES --}} @if ($autresOffres->isNotEmpty())

    D'autres opportunités chez Biome

    Voir toutes nos offres
    @endif {{-- FAQ --}}

    Questions fréquentes

    @foreach ($faqs as $i => $faq)
    @endforeach
    @php $imgConseillers = \App\Support\MediaSite::url($contenu->contenu('conseillers.image')); @endphp @if ($imgConseillers) Conseillers Biome @else
    Conseillers Biome
    @endif
    @endsection