bientot pret

This commit is contained in:
GZod01 2024-05-12 11:20:23 +02:00
parent b71cbb37ef
commit d860e3d987
45 changed files with 1987 additions and 249 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.2 MiB

BIN
assets/cover/cover.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 81 KiB

View file

@ -21,8 +21,10 @@
transform: scale(1.2);
}
//.content-container {
//}
.page-container.not-complete {
.content-container.not-complete {
position: relative;
top: 97px;
padding-bottom: 97px;
@ -121,6 +123,18 @@
margin-bottom: 0.5em;
}
}
figure {
img {
margin-bottom: 0;
padding-bottom: 0.5rem !important;
}
figcaption {
text-align: center;
font-size: 0.9em;
}
margin-bottom: 2rem;
}
}
.index-icon-title {

View file

@ -3,13 +3,12 @@ $responsive-medium: 1050px;
$responsive-interlarge: 1400px;
$responsive-large: 1500px;
@import url("https://cdnjs.cloudflare.com/ajax/libs/tailwindcss/2.2.8/tailwind.min.css");
@import "tailwind.min";
@import url('https://fonts.googleapis.com/css?family=Audiowide|Roboto+Slab');
@import url('https://use.fontawesome.com/releases/v5.3.1/css/all.css');
@import "variables";
@import "helpers/container";
@import "helpers/link";
@import "helpers/card";

1
assets/scss/tailwind.min.css vendored Normal file

File diff suppressed because one or more lines are too long

View file

@ -35,6 +35,23 @@ donate = "Donate"
loading = "Loading..."
more = "See more..."
page-not-supported = "We are sorry this page is not supported in your language yet."
[languages.en.params.landing]
title = "Build, test,learn, deploy"
[languages.en.params.landing.edito]
title = "Edito"
content = "The 2022-2023 season has once again been a great success for the Saturday morning digital workshop. Six teenagers have been very dedicated, and we have shared wonderful moments. The intervention at the Jardins de bas neighborhood house unfolded in a mixed manner due to numerous interruptions. In fact, it has been suspended this year, and we are waiting for the stabilization of its opening and planning to modify the intervention format. We prepared for the Junior Robotics French Cup, but the regional competition was canceled at the last minute, so we couldn't compete against others. <p> For this 2023-2024 school year, we are resuming with more or less the same ingredients: <ul><li>The Saturday digital workshop</li><li>Robotics competitions: <li>The <a href='https://first.global/fgc/'>FIRST Global Challenge</a> in Singapore in early October 2023</li><li>The <a href='https://robotiquefirstfrance.org/le-defi-robotique-2024/'>FIRST Tech Challenge</a> in Lyon in early April 2024</li></li><li>Continuing free membership for high school students interested in communication</li></ul> Furthermore, starting December 2, 2023, we are changing locations and you can find us <a href='https://www.openstreetmap.org/node/7510411804'>on Avenue du Printemps de Prague</a> in Gaillon.</p><p>You can contact us via <a href='https://werobot.fr/contact-us'>our form</a> and to join, you can do it directly <a href='https://www.helloasso.com/associations/we-robot/adhesions/we-robot-2023-24'>online here</a>.</p>"
[languages.en.params.landing.mission]
title = "Our goal"
content = "Our main purpose is the playful education of teenagers in the fields of STEAM.<br>We have teams of motivated students participate in national and internation robotic competitions.<br>At the same time, we propose an initiation into robotics for children from 8 to 12 years old."
action = "See more..."
[languages.en.params.landing.support]
title = "Support us"
content = "Robotics is an expensive activity. It requires a lot of hardware (engines, sensors, mechanical elements, electronic boards, tools, nuts and bolts, computer ...).<br>Moreover, travel, especially internationally, is not within everyone's reach.<br>That's why we are always looking for partners and financial support."
action = "Donate"
[languages.en.params.blog]
title = "Blog"
@ -110,7 +127,7 @@ description= "This page doesn't exist"
changefreq = 'weekly'
[params]
mainSections= "posts"
mainSections= "blog"
error404message = "Page non trouvée"
dateFmt = "02.01.2006 15:04"
slogan = "La Robotique, ensemble"
@ -158,7 +175,7 @@ title = "Construire, tester,apprendre, déployer"
[params.defaultImage]
local = true
src = "cover/cover.jpg"
src = "cover/cover.png"

198
content/about.en.md Normal file
View file

@ -0,0 +1,198 @@
---
title: "About"
---
## Our history
Our non-profit was founded in May 2017. Its first goal was our participation in the [First Global Challenge 2017](https://first.global/archive/fgc-2017/) in Washington D.C.
### First contest
After three months spent building, training and communicating, we finally met the 156 attending countries. Unfortunately, bad alliances and poor robot efficiency led us to a disappointing ranking. Nevertheless, our well documented blog made us come back with the silver medal of the Sofia Kovalevskaya award.
### 2017-2018 season
<div class="d-flex justify-center">
<img alt="Our old logo" data-src="https://s.werobot.fr/old_logo.png" title="Our old logo" width="100" />
</div>
We participated in two competitions :
- The [trophées de robotique](http://tropheesderobotique.fr)
- First the regional contest. We ranked second and thus were qualified for the national level.
- Then the national contest, during two days in Saint-Quentin. We ended 20th out of 62 teams.
- The 18th World Adolescent Robot Contest in the FGC category.
This contest took place in Guyiang, China. Thirty teams were attending : 15 chinese teams and 15 international ones.
We won two awards:
- The international unity award for the help we provided to other teams and our involvement in communication.
- The winning alliance award because we won this championship.
### 2018-2019 season
Our non-profit evolves. We have new team members to participate in contest and, moreover, we begin an education component by animating a weekly robotic worshop for children in the [social center Condorcet](https://www.espacecondorcet.org/).
This season, we plan to participate in the [trophées de robotique](http://tropheesderobotique.fr) once again and [Astro-Pi](https://www.astro-pi.org).
### 2019-2020 season
Of course a very disturbed season. Our weekly robotic worshop for children in the [social center Condorcet](https://www.espacecondorcet.org/) went on until lockdown. We also manage to run two [micro-bits](https://archive.microbit.org/) workshops in the library. About the robotics contest, after being involved in the [trophées](http://tropheesderobotique.fr) then in the [coupe de France](https://www.coupederobotique.fr/) they were both cancelled/re-scheduled.
### Season 2020-2021
Just before the second lockdown, we were able to participate for the first time in the [French Robotics Cup](https://www.coupederobotique.fr/). The experience alongside Matthieu and Mohamed was extremely interesting. Otherwise, the season unfolded with mixed results: another year without a physical competition, but we participated in an online competition organized by [Student Robotics](https://studentrobotics.org/) during which we won the "Rookie Award" (award for the best beginner team). The Saturday workshop was maintained remotely. The youngsters connected to a [jitsi](https://jitsi.org/) chat room, and we managed to conduct some programming activities.
### Season 2021-2022
The workshops at the community center and in our Douaires premises were very dynamic, but we were unable to participate in competitions due to a lack of participants!
### Season 2022-2023
This year, the workshop at the community center only occurred sporadically as it was regularly closed due to a lack of supervising staff. Our participation in the Robotics Trophies (now called the Junior French Robotics Cup) was canceled by the Normandy organization at the last minute. The digital workshop, however, remained as active as usual.
<div id="members"></div>
## Our team
<div class="team-mosaic">
<div class="team-item">
<div class="team-item-image">
<img data-src="https://static.werobot.fr/profiles/franck.jpg" alt="avatar">
</div>
<p class="team-item-title">Franck</p>
<p class="team-item-description">President, Coach</p>
</div>
<div class="team-item">
<div class="team-item-image">
<img data-src="https://static.werobot.fr/profiles/francois.jpg" alt="avatar">
</div>
<p class="team-item-title">François</p>
<p class="team-item-description">Treasurer, Coach</p>
</div>
<div class="team-item">
<div class="team-item-image">
<img data-src="https://static.werobot.fr/profiles/katia.jpg" alt="avatar">
</div>
<p class="team-item-title">Katia</p>
<p class="team-item-description">Secretary</p>
</div>
<div class="team-item">
<div class="team-item-image">
<img data-src="https://static.werobot.fr/profiles/matthieu.jpg" alt="avatar">
</div>
<p class="team-item-title">Matthieu</p>
<p class="team-item-description">Alumni, Coach</p>
</div>
<div class="team-item">
<div class="team-item-image">
<img data-src="https://static.werobot.fr/profiles/mohamed.jpg" alt="avatar">
</div>
<p class="team-item-title">Mohamed</p>
<p class="team-item-description">Alumni, Coach</p>
</div>
<div id="partners"></div>
## They support us
<div class="partners">
<div class="partner flex flex-wrap">
<div class="w-full md:w-1/3 partner-image">
<img data-src="https://s.werobot.fr/logoGIGAreduit.png">
</div>
<div class="w-full md:w-2/3">
Since October 2017, the GIGA supports us. We presented them our organization in their general assembly and have had a great financial support from them for our travels ans purchase of equipment.
</div>
</div>
<!-- <div class="partner flex flex-wrap">
</div>
<div class="partner flex flex-wrap">
<a class="w-full md:w-1/3 partner-image" href="https://uimm.lafabriquedelavenir.fr/">
<img data-src="https://s.werobot.fr/UIMMfabriqueMetiers.jpg">
</a>
<div class="w-full md:w-2/3">
<div>
Since december 2018, the <a href="https://uimm.lafabriquedelavenir.fr/">UIMM</a> of the state of the Eure help us to buy hardware and support us in our communication process
</div>
</div>
</div> -->
<div class="partner flex flex-wrap">
<a class="w-full md:w-1/3 partner-image" href="https://www.papavoine-menuiserie.com/">
<img data-src="https://s.werobot.fr/papavoine.jpg">
</a>
<div class="w-full md:w-2/3">
<div>
During the 2018-2019 season , la <a href="https://www.papavoine-menuiserie.com/">Papavoine carpentry</a> helped us build most of the game elements for our table.
</div>
</div>
</div>
<div class="partner flex flex-wrap">
<a class="w-full md:w-1/3 partner-image" href="https://www.girv.com/">
<img data-src="https://s.werobot.fr/girv.png">
</a>
<div class="w-full md:w-2/3">
<div>
Since november 2018, the <a href="https://www.girv.com/">Groupement Interprofessionnel de la Région de Vernon</a> trusts us and allowed us to meet new partners. We were able to present our non-profit during both their trade show and their general assembly in december. They also helped to buy us a 3D printer in february 2019.
</div>
</div>
</div>
<div class="partner flex flex-wrap">
<a class="w-full md:w-1/3 partner-image" href="https://www.ariane.group">
<img data-src="https://s.werobot.fr/arianegroup_lg.png">
</a>
<div class="w-full md:w-2/3">
Ariane Group Vernon helped to buy us a 3D printer in february 2019.
</div>
</div>
<!-- <div class="partner flex flex-wrap">
<a class="w-full md:w-1/3 partner-image" href="https://marianneurope.fr/">
<img data-src="https://s.werobot.fr/marianneEurope.png">
</a>
<div class="w-full md:w-2/3">
<div>
Depuis novembre 2018, l'<a href="https://marianneurope.fr/">agence de conseil Marianne Europe</a> nous a inscrit à ses deux newsletters professionnelles afin que nous puissions nous tenir informer des initiatives et des innovations locales et nous mettre en relation avec les entreprises innovantes de notre secteur.
</div>
</div>
</div> -->
<div class="partner flex flex-wrap">
<a class="w-full md:w-1/3 partner-image" href="http://www.ville-gaillon.fr/">
<img data-src="https://s.werobot.fr/logoVilleGaillon.jpg">
</a>
<div class="w-full md:w-2/3">
At the beginning of the 2017-2018 season, the city hall of Gaillon granted us a small subsidy.
Since april 2019, it lends us a wide venue to host our activities.
</div>
</div>
<div class="partner flex flex-wrap">
<a class="w-full md:w-1/3 partner-image" href="https://www.skf.com/fr">
<img data-src="https://s.werobot.fr/skf.png">
</a>
<div class="w-full md:w-2/3">
SKF Vernon helped to buy us a 3D printer in february 2019.
</div>
</div>
<div class="partner flex flex-wrap">
<a class="w-full md:w-1/3 partner-image" href="https://www.atiscomputer.com">
<img data-src="https://s.werobot.fr/atisComputer.jpg">
</a>
<div class="w-full md:w-2/3">
Helps us since april 2019. They already gave us 2 <a href="https://www.raspberrypi.org/">Raspberry Pi</a> 3B+ and some computers.
</div>
</div>
</div>
<div id="place-anchor" style="position: relative; opacity: 0; top: -550px;"></div>
<div class="pt-3"></div>
## Our workshop
We have premises offered by the city of Gaillon to host our activities. There are located near the street "Rue de Printemps de Prague".
<div class="about-place-container mt-5 d-flex justify-center">
<div
id="place-map"
class="about-place-map">
</div>
</div>

4
content/contact.en.md Normal file
View file

@ -0,0 +1,4 @@
---
title: "Contact Us"
---
{{<contact ctxt=. >}}

View file

@ -1,4 +1,4 @@
---
title: Informations de contact
title: "Nous contacter"
---
{{<contact ctxt=. >}}

18
data/partners.yaml Normal file
View file

@ -0,0 +1,18 @@
partners:
- name: "Ville de Gaillon"
img: "logoVilleGaillon.jpg"
- name: "Groupement Interprofessionnel de la Région de Vernon"
img: "girv.png"
- name: "Menuiserie Papavoine"
img: "papavoine.jpg"
- name: "Groupement Interprofessionnel De Gaillon - Les Andelys"
img: "logoGIGAreduit.png"
- name: "Atis computer"
class: "w-1/2 md:w-1/3"
img: "atisComputer.jpg"
- name: "SKF"
class: "w-full md:w-1/3"
img: "skf.png"
- name: "Ariane Group"
class: "w-full md:w-1/3 md:pt-4"
img: "arianegroup.png"

98
en.json
View file

@ -1,98 +0,0 @@
{
"landing": {
"title": "Build, test,learn, deploy",
"edito": {
"title": "Edito",
"content": "The 2022-2023 season has once again been a great success for the Saturday morning digital workshop. Six teenagers have been very dedicated, and we have shared wonderful moments. The intervention at the Jardins de bas neighborhood house unfolded in a mixed manner due to numerous interruptions. In fact, it has been suspended this year, and we are waiting for the stabilization of its opening and planning to modify the intervention format. We prepared for the Junior Robotics French Cup, but the regional competition was canceled at the last minute, so we couldn't compete against others. <p> For this 2023-2024 school year, we are resuming with more or less the same ingredients: <ul><li>The Saturday digital workshop</li><li>Robotics competitions: <li>The <a href='https://first.global/fgc/'>FIRST Global Challenge</a> in Singapore in early October 2023</li><li>The <a href='https://robotiquefirstfrance.org/le-defi-robotique-2024/'>FIRST Tech Challenge</a> in Lyon in early April 2024</li></li><li>Continuing free membership for high school students interested in communication</li></ul> Furthermore, starting December 2, 2023, we are changing locations and you can find us <a href='https://www.openstreetmap.org/node/7510411804'>on Avenue du Printemps de Prague</a> in Gaillon.</p><p>You can contact us via <a href='https://werobot.fr/contact-us'>our form</a> and to join, you can do it directly <a href='https://www.helloasso.com/associations/we-robot/adhesions/we-robot-2023-24'>online here</a>.</p>"
},
"mission": {
"title": "Our goal",
"content": "Our main purpose is the playful education of teenagers in the fields of STEAM.<br>We have teams of motivated students participate in national and internation robotic competitions.<br>At the same time, we propose an initiation into robotics for children from 8 to 12 years old.",
"action": "See more..."
},
"support": {
"title": "Support us",
"content": "Robotics is an expensive activity. It requires a lot of hardware (engines, sensors, mechanical elements, electronic boards, tools, nuts and bolts, computer ...).<br>Moreover, travel, especially internationally, is not within everyone's reach.<br>That's why we are always looking for partners and financial support.",
"action": "Donate"
}
},
"home": "Home",
"blog": {
"title": "Blog",
"description": "The Blog is THE place to find all the news and story from the team."
},
"previous": "Previous",
"next": "Next",
"about": "About",
"place": "Where you can find us",
"legals": {
"title": "Legals term",
"description": "See here the legals term of the website werobot.fr"
},
"donate": "Donate",
"articles": {
"title": "Articles",
"all": "All articles",
"last": "Our last articles",
"empty": "No articles",
"sort-by-dates": {
"title": "Sort by dates",
"posts": "post(s)",
"close": "Close"
},
"sort-by-years": {
"title": "Sort by years",
"posts": "articles(s)",
"close": "Close"
}
},
"photos": {
"title": "Photos",
"description": "Last pictures from the instragram account of the We Robot team.",
"all": "All photos",
"last": "Our last photos",
"empty": "No photos"
},
"loading": "Loading...",
"more": "See more...",
"contact-us": {
"title": "Contact us",
"description": "There are many way to contact the We Robot team, one of which is to use the form provided on this page.",
"president": {
"title": "By contacting the president"
},
"form": {
"title": "By using the form",
"description": "If you have any questions or proposal, please contact us through the form below.",
"field_required": "This field is required",
"recaptcha_required": "The recaptcha is required",
"invalid_email": "This email is invalid",
"not-enough-length": "You must be more precise...",
"submit": "Submit",
"loading": "Loading...",
"success": "Your message has been sent!",
"name": "Your name",
"name_placeholder": "John Doe",
"email": "Your email",
"email_placeholder": "john.doe@example.com",
"subject": "Subject",
"subject_placeholder": "Ubi est magnum nixus?",
"content": "Your message",
"content_placeholder": "Mineralis de fortis abaculus, imperium glos est fidelis gemna, cesaris."
}
},
"error": {
"unknown": {
"title": "This is a error",
"description": "Very sorry for that"
},
"not-found": {
"title": "Are you lost ?",
"description": "This page doesn't exist"
}
},
"page-not-supported": "We are sorry this page is not supported in your language yet.",
"partners": {
"support-us":"They support us"
}
}

104
fr.json
View file

@ -1,104 +0,0 @@
{
"_id": "fr",
"locale": "fr",
"title": "We Robot",
"description": "Créée en 2017, association locale de robotique pour les jeunes, basée à Gaillon en France. Nous participons à des concours nationaux ou internationaux, gagnant d'un prix au First Global Contest à Washington DC en 2017 et du World Adolescent Robotic Contest à Guyiang, Chine en 2018.",
"keywords": ["Gaillon", "Robotique", "We Robot", "France", "Association", "Locale"],
"slogan": "La robotique, ensemble",
"landing": {
"title": "Construire, tester,apprendre, déployer",
"edito": {
"title": "Edito",
"content":"<p>Une fois n'est pas coutume l'édito se met à jour en avril. Il y a une raison à cela : We Robot est de nouveau sélectionné pour représenter la France au <a href='https://first.global/fgc/'>FIRST Global Challenge 2024</a> qui se tiendra à Athènes du 26 au 29 septembre 2024. C'est une fois de plus une occasion extraordinaire pour nos jeunes et nous espérons trouver le soutien financier nécessaire pour y participer.</p><p> L'adhésion gratuite pour les lycéen.nes qui seraient intéressé.es par la communication reste gratuite et nous avons bon espoir de former une équipe de communication de choc</p><p> Vous pouvez désormais nous trouver <a href='https://www.openstreetmap.org/node/7510411804'>avenue du Printemps de Prague</a> à Gaillon dans la résidence autonomie</p><p>Vous pouvez nous contacter par l'intermédiaire de <a href='https://werobot.fr/contact-us'>notre formulaire</a> et pour adhérer, cela se fait directement <a href='https://www.helloasso.com/associations/we-robot/adhesions/we-robot-2023-24'>en ligne ici</a>.</p>"
},
"mission": {
"title": "Notre objectif",
"content": "Notre but principal est l'éducation ludique des jeunes dans le domaines des sciences et techniques.<br> Nous faisons participer, à des concours nationaux et internationaux de robotique, une équipe de jeunes motivés et passionnés.<br> Parallèlement, nous proposons une initiation à la robotique pour les enfants de 8 à 12 ans.",
"action": "Voir plus..."
},
"support": {
"title": "Soutenez nous",
"content": "La robotique est une activité onéreuse. Elle nécessite beaucoup de matériel (moteurs, capteurs, structures mécaniques, cartes électroniques, instruments de mesure, outils, visserie, ordinateur ...).<br>De plus les déplacements, particulièrement à l'international, ne sont pas à la portée de tous. <br> C'est pourquoi nous sommes toujours à la recherche de partenaires et de soutien financier.",
"action": "Donner"
}
},
"home": "Accueil",
"blog": {
"title": "Blog",
"description": "Le Blog de We Robot, c'est comme la vie, il y a des haut et des bas."
},
"previous": "Précédent",
"next": "Suivant",
"about": "A propos",
"place": "Où nous trouver",
"legals": {
"title": "Mentions légales",
"description": "Retrouvez ici les mentions légales du site werobot.fr"
},
"donate": "Donner",
"articles": {
"title": "Articles",
"all": "Tout les articles",
"last": "Nos derniers articles",
"empty": "Aucun articles disponibles",
"sort-by-dates": {
"title": "Trier par dates",
"posts": "articles(s)",
"close": "Fermer"
},
"sort-by-years": {
"title": "Trier par années",
"posts": "articles(s)",
"close": "Fermer"
}
},
"photos": {
"title": "Photos",
"description": "Vous trouverez ici les dernières photos instagram de l'équipe.",
"all": "Toutes les photos",
"last": "Nos dernières photos",
"empty": "Pas de photos disponibles"
},
"more": "Voir plus...",
"loading": "Chargement...",
"contact-us": {
"title": "Contactez nous",
"description": "Il y a plusieurs façon de contacter l'équipe We Robot, l'une consiste à utiliser le formulaire founis sur cette page.",
"president": {
"title": "En contactant le président"
},
"form": {
"title": "En utilisant le formulaire",
"description": "Pour toute question ou proposition, n'hésitez-pas à nous contacter à l'aide du formulaire ci-dessous.",
"field_required": "Ce champs est requis",
"recaptcha_required": "Veuillez cocher le recaptcha",
"invalid_email": "Cet email est invalide",
"not-enough-length": "Vous devez être un peu plus précis...",
"submit": "Valider",
"loading": "Traitement de votre message...",
"success": "Votre message a bien été envoyé !",
"name": "Votre nom",
"name_placeholder": "Jean Dupont",
"email": "Votre email",
"email_placeholder": "jean.dupont@exemple.fr",
"subject": "Sujet",
"subject_placeholder": "Ubi est magnum nixus?",
"content": "Votre message",
"content_placeholder": "Mineralis de fortis abaculus, imperium glos est fidelis gemna, cesaris."
}
},
"error": {
"unknown": {
"title": "Erreur inconnue",
"description": "C'est dommage, on ne saura jamais la cause de l'erreur..."
},
"not-found": {
"title": "Vous vous êtes perdu ?",
"description": "Cette page n'existe pas ou plus."
}
},
"page-not-supported": "Cette page n'est pas disponible dans votre langue actuellement.",
"partners": {
"support-us": "Ils nous soutiennent"
}
}

View file

@ -12,7 +12,7 @@
{{ range .Paginator.Pages }}
<li class="news-item">
<a href="{{ .RelPermalink }}" class="news-item__image">
{{ $featuredImage := (resources.Get (printf "%s" ("cover/cover.jpg" | safeURL))) }}
{{ $featuredImage := (resources.Get (printf "%s" ("cover/cover.png" | safeURL))) }}
{{ if .Params.featured_image }}
{{ $featuredImage = .Resources.GetMatch (.Params.featured_image.src | safeURL) }}

View file

@ -1,16 +0,0 @@
{{ define "main" }}
<main class="page-container">
<h1>Informations de contact</h2>
<div class="columns-two">
<div>
{{ partial "contact-card" }}
</div>
<div>
<!-- https://www.openstreetmap.org/node/9526690022 -->
<!-- 49,1755136, 1,3343608 -->
{{ partial "slippy-map" (dict "lat" 49.175513 "lng" 1.33436 "zoom" 15) }}
</div>
</div>
</main>
{{ end }}

View file

@ -103,6 +103,11 @@
{{ index .Site.Params.partners "support-us" | safeHTML }}
</h3>
</div>
{{ range .Site.Data.partners.partners }}
<a href="{{ relLangURL "/about#partners" }}" title="{{ .Name }}" class="partner-item link {{ if .class }}{{ .class}}{{ else }}w-1/2 md:w-1/5{{ end }}">
<img src="https://s.werobot.fr/{{ .img }}"/>
</a>
{{ end }}
</div>
</div>

View file

@ -0,0 +1,11 @@
<div>
<div v-if="$isServer === true">
<slot/>
</div>
<div
v-tooltip.top="value"
v-else
@click="$router.push(to)">
<slot/>
</div>
</div>

View file

@ -2,9 +2,9 @@
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.30.1/moment-with-locales.min.js" integrity="sha512-4F1cxYdMiAW98oomSLaygEwmCnIP38pb4Kx70yQYqRwLVCs3DbRumfBq82T08g/4LJ/smbFGFpmeFlQgoDccgg==" crossorigin="anonymous" referrerpolicy="no-referrer"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.30.1/locale/{{ .Lang }}.min.js" integrity="sha512-RAt2+PIRwJiyjWpzvvhKAG2LEdPpQhTgWfbEkFDCo8wC4rFYh5GQzJBVIFDswwaEDEYX16GEE/4fpeDNr7OIZw==" crossorigin="anonymous" referrerpolicy="no-referrer"></script>
<div class="articles-list transition-parent">
{{ $allposts := (where site.RegularPages "Section" "=" site.Params.mainSections)}}
{{ $allposts := (where site.RegularPages "Section" "=" "blog")}}
{{ $allposts = $allposts.ByDate }}
{{ $context := (page.GetPage "/posts")}}
{{ $context := (page.GetPage "/blog")}}
{{ if (eq (len $allposts) 0) }}
<div
class="section-error-container transition-child"

View file

@ -0,0 +1,120 @@
<div>
<div class="content text">
<div class="container mx-auto">
<h2>{{ (index site.Params "contact-us").president.title }}</h2>
<div class="pt-1 d-flex justify-center">
<contact-card
:phone="['KzMzNjE2', 'NjE3OTQ1']"
avatarUrl="https://s.werobot.fr/profiles/franck.jpg"
name="Franck GITON"
email="werobot.fr@gmail.com"
/>
</div>
<h2>{{ (index site.Params "contact-us").form.title }}</h2>
<p class="mb-3">{{ (index site.Params "contact-us").form.description }}</p>
<transition name="main-transition">
<div v-if="success">
<div
role="alert"
class="w-100 bg-teal-lightest border-t-4 border-teal rounded-b text-teal-darkest px-4 py-3 shadow-md mb-4">
<div class="flex justify-between">
<div class="flex">
<div class="px-5">
<i class="fa fas fa-check-circle"></i>
</div>
<div>
<p class="font-bold">
{{ (index site.Params "contact-us").form.success }}
</p>
</div>
</div>
<div
style="cursor:pointer"
@click="success=false">
<i class="fa fas fa-times-circle"></i>
</div>
</div>
</div>
</div>
</transition>
<form
class="w-full">
<div class="flex flex-wrap -mx-3">
<div class="w-full md:w-1/2 px-3">
<label
class="block uppercase tracking-wide text-grey-darker text-xs font-bold mb-1"
for="name">
{{ (index site.Params "contact-us").form.name }}
</label>
<input
id="name"
v-model="name"
placeholder="{{ (index site.Params "contact-us").form.name_placeholder }}"
class="appearance-none block w-full bg-grey-lighter text-grey-darker border rounded py-3 px-4 mb-3 leading-tight focus:outline-none focus:bg-white"
type="text">
</div>
<div class="w-full md:w-1/2 px-3">
<label
class="block uppercase tracking-wide text-grey-darker text-xs font-bold mb-1"
for="email">
{{ (index site.Params "contact-us").form.email }}
</label>
<input
id="email"
v-model="email"
placeholder="{{ (index site.Params "contact-us").form.email_placeholder }}"
class="appearance-none block w-full bg-grey-lighter text-grey-darker border rounded py-3 px-4 mb-3 leading-tight focus:outline-none focus:bg-white focus:border-grey"
type="text">
</div>
</div>
<div class="flex flex-wrap -mx-3">
<div class="w-full px-3">
<label
class="block uppercase tracking-wide text-grey-darker text-xs font-bold mb-1"
for="subject">
{{ (index site.Params "contact-us").form.subject }}
</label>
<input
id="subject"
v-model="subject"
placeholder="{{ (index site.Params "contact-us").form.subject_placeholder }}"
class="appearance-none block w-full bg-grey-lighter text-grey-darker border rounded py-3 px-4 mb-3 leading-tight focus:outline-none focus:bg-white focus:border-grey"
type="text">
</div>
</div>
<div class="flex flex-wrap -mx-3 mb-4">
<div class="w-full px-3">
<label
class="block uppercase tracking-wide text-grey-darker text-xs font-bold mb-1"
for="content">
{{ (index site.Params "contact-us").form.content }}
</label>
<textarea
id="content"
v-model="content"
placeholder="{{ (index site.Params "contact-us").form.content_placeholder }}"
class="appearance-none block w-full bg-grey-lighter text-grey-darker border rounded py-3 px-4 mb-2 leading-tight focus:outline-none focus:bg-white focus:border-grey"
style="height: 12em">
</textarea>
</div>
</div>
<div class="flex flex-wrap justify-end">
<div class="button button-primary">
<div class="button-icon">
<i
v-if="loading"
class="fa fas fa-sync fa-spin"></i>
<i
v-else
class="fa fas fa-check-circle"></i>
</div>
<div
class="button-text"
@click="submit">
{{ (index site.Params "contact-us").form.submit }}
</div>
</div>
</div>
</form>
</div>
</div>

View file

@ -60,19 +60,24 @@
<div
id="h"
class="footer-locale">
{{ $nextlangcode := .Language.Params.nextlang }}
{{ $nextlang := . }}
{{ range .Translations }}
{{ if (eq .Lang $nextlangcode) }}
{{ $nextlang = . }}
{{ end }}
{{ end }}
<a
class="button button-primary"
href="{{ $nextlang.Permalink }}"
>
<div class="button-icon">
<i class="fa fas fa-flag"></i>
</div>
<div
class="link button-text">
<!-- <span> -->
<!-- English -->
<!-- </span> -->
<span>
Français
{{ $nextlang.Language.LanguageName }}
</span>
</div>
</a>

View file

@ -0,0 +1 @@
{{ partial "contact.html" }}

View file

@ -0,0 +1,45 @@
.button {
line-height: 1.15 !important;
display: flex;
box-shadow: inset 0 0 10px rgba(0, 0, 0, 0.2);
color: white;
.button-text {
padding: 10px;
border-radius: 2px;
}
.button-icon {
box-shadow: inset 0 0 10px rgba(0, 0, 0, 0.2);
padding: 10px;
border-radius: 2px;
}
transition: opacity 0.2s;
text-decoration: none;
border-radius: 2px;
}
.button-primary {
background-color: #3498db;
.button-icon {
background-color: #2980b9;
}
}
.button:hover {
opacity: 0.8;
cursor: pointer;
transition: opacity 0.2s;
}
.button.disabled {
opacity: 0.5;
filter: grayscale(100);
transform: none !important;
}
@media (max-width: $responsive-small) {
.button.mobile-icon {
.button-text {
display: none;
}
}
}

88
oldscss/helpers/card.scss Normal file
View file

@ -0,0 +1,88 @@
$card-border-radius: 5px;
.card {
margin-bottom: 1em;
.card-title {
border-top-left-radius: $card-border-radius;
border-top-right-radius: $card-border-radius;
padding: 10px 10px 10px 15px;
font-weight: bold;
font-size: 1.2em;
.fa {
margin-right: 0.2em;
}
}
.card-text {
box-shadow: inset 0 0 10px rgba(0, 0, 0, 0.2);
padding: 10px 15px 20px 15px;
}
.card-actions {
border-bottom-left-radius: $card-border-radius;
border-bottom-right-radius: $card-border-radius;
display: flex;
justify-content: flex-end;
padding: 10px 15px 10px 15px;
font-weight: bold;
.card-action {
opacity: 0.8;
text-decoration: none;
color: inherit;
}
.card-action:hover {
cursor: pointer;
opacity: 1;
}
}
}
.card.no-actions {
.card-text {
border-bottom-left-radius: $card-border-radius;
border-bottom-right-radius: $card-border-radius;
}
}
.card.card-green {
color: #2f3640;
.card-title {
background-color: #27ae60;
}
.card-text {
background-color: #2ecc71;
}
.card-actions {
background-color: #27ae60;
}
}
.card.card-purple {
color: #f5f6fa;
a {
color: #f5f6fa;
}
.card-title {
background-color: #8e44ad;
}
.card-text {
background-color: #9b59b6;
}
.card-actions {
background-color: #8e44ad;
}
}
.card.card-blue {
color: #f5f6fa;
a {
color: #f5f6fa;
}
.card-title {
background-color: #2980b9;
}
.card-text {
background-color: #3498db;
}
.card-actions {
background-color: #2980b9;
}
}

View file

@ -0,0 +1,11 @@
@media (max-width: $responsive-medium) {
.container {
width: 94% !important;
}
}
@media (max-width: $responsive-interlarge) {
.container {
width: 90% !important;
}
}

View file

@ -0,0 +1,6 @@
.divider {
//margin-top: 3vh;
border-bottom: 1px solid #a4b0be;
border-radius: 1px;
//margin-bottom: 5vh;
}

24
oldscss/helpers/link.scss Normal file
View file

@ -0,0 +1,24 @@
a:focus, a:active {
outline:0 !important;
}
.link {
color: inherit;
transition: opacity 0.2s;
text-decoration: none;
}
.link:hover {
text-decoration: none;
opacity: 0.8;
transition: opacity 0.2s;
cursor: pointer;
}
.link.link-primary {
color: $primary-color;
}
.link.no-opacity:hover {
opacity: 1 !important;
}

View file

@ -0,0 +1,192 @@
.articles {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-column-gap: 1.3em;
grid-row-gap: 1.3em;
article {
height: 100%;
}
.article {
position: relative;
overflow: hidden;
background-color: #fff;
box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.3);
transition: box-shadow 0.3s;
border-radius: 5px;
width: 100%;
height: 25em;
}
a {
color: inherit;
text-decoration: none;
opacity: initial;
}
a:hover {
opacity: initial;
}
.article:hover {
box-shadow: 0px 0px 50px rgba(0, 0, 0, 0.3);
}
.article-status {
position: absolute;
top: 20px;
right: 20px;
width: 55px;
height: 55px;
padding-top: 10px;
color: #fff;
line-height: 2.3;
font-size: 15px;
font-weight: bold;
text-align: center;
background-color: $primary-color;
border-radius: 50%;
text-transform: uppercase;
display: block;
}
.article-status-day {
display: block;
font-size: 14px;
}
.article-status-month {
display: block;
font-size: 14px;
text-transform: uppercase;
}
.article-thumb {
height: 15em;
overflow: hidden;
background-color: white;
background-size: cover;
background-position: center;
transition: height 0.3s;
}
.article-thumb img {
display: block;
opacity: 1;
transition: opacity 0.3s, transform 0.3s;
transform: scale(1);
}
.article-body {
position: absolute;
bottom: 0;
background: white;
width: 100%;
display: flex;
flex-direction: column;
padding: 1em;
height: 12em;
transition: height 0.3s;
}
.article:hover .article-body {
height: 18em;
}
.article-title {
margin: 0;
padding: 0 0 10px 0;
font-size: 22px;
color: #000;
font-weight: bold;
transition: all 0.3s;
}
.article-subtitle {
margin: 0;
padding: 0 0 10px 0;
font-size: 19px;
color: $primary-color;
}
.article-description {
margin: 0;
padding: 0;
color: #666C74;
font-size: 14px;
line-height: 27px;
opacity: 0;
transition: opacity 0.2s, transform 0.2s;
transition-delay: 0s;
transform: translateY(25px);
height: 100%;
// text-overflow: ellipsis;
// white-space: nowrap;
// overflow: hidden;
}
.article:hover .article-description {
opacity: 1;
transition-delay: 0.1s;
transform: translateY(0);
}
// @keyframes titleBlur {
// 0% {
// opacity: 0.6;
// text-shadow: 0px 5px 5px rgba(0, 0, 0, 0.6);
// }
// 100% {
// opacity: 1;
// text-shadow: 0px 5px 5px transparent;
// }
// }
// @keyframes subtitleBlur {
// 0% {
// opacity: 0.6;
// text-shadow: 0px 5px 5px rgba(239, 90, 49, 0.6);
// }
// 100% {
// opacity: 1;
// text-shadow: 0px 5px 5px rgba(239, 90, 49, 0);
// }
// }
}
@media (max-width: $responsive-medium) {
.articles {
display: flex;
justify-content: center;
flex-wrap: wrap;
.article {
max-width: 22em;
}
}
}
@media (max-width: $responsive-small) {
.blog-title-container {
padding: 0;
.blog-title {
display: none;
}
.sort {
margin-top: 0 !important;
padding-top: 1em;
padding-bottom: 1em;
}
}
.articles {
align-items: center;
flex-direction: column;
.article {
width: 100%;
}
}
}

346
oldscss/layouts/body.scss Normal file
View file

@ -0,0 +1,346 @@
.d-flex {
display: flex;
}
.blog-title-container {
display: flex;
justify-content: space-between;
}
.blog-pagination {
display: flex;
justify-content: space-between;
width: 100%;
}
.icon {
content: none;
}
.logo {
transform: scale(1.2);
}
.page-container.not-complete {
position: relative;
top: 97px;
padding-bottom: 97px;
}
.content {
margin-top: 1em;
line-height: 2.2em;
font-size: 16px;
&.negative-top-margin {
margin-top: -1.2em;
}
.blog-article {
img.sm-img {
width: 25vh !important;
}
img.md-img {
width: 40vh !important;
}
img {
display: flex;
padding-top: 1.5em;
padding-bottom: 1.5em;
width: 60vh;
margin: 0 auto;
}
iframe {
padding-top: 1.5em;
padding-bottom: 1.5em;
max-width: 100%;
margin: 0 auto;
display: flex;
}
}
.page-details {
display: flex;
width: 100%;
//border-bottom: 2px solid rgba(127, 130, 139, 0.8);
border-radius: 1px;
justify-content: flex-end;
//padding-bottom: 0.5em;
margin-bottom: .5em;
.page-details-item {
i {
margin-right: 10px;
}
margin-right: 1em;
opacity: 0.7;
display: flex;
align-items: center;
}
}
.content-side {
padding-left: 20px;
border: 1px solid #47494e;
padding-bottom: 2em;
margin-left: 2em;
}
.content-title {
color: #2c3e50;
}
&.text {
a {
color: $primary-color;
transition: opacity 0.2s;
text-decoration: none;
}
a:hover {
text-decoration: none;
opacity: 0.8;
transition: opacity 0.2s;
cursor: pointer;
}
ul {
margin-top: 0.5em;
margin-bottom: 0.5em;
}
h1 {
text-decoration: underline;
margin-top: 1em;
margin-bottom: 1em;
}
h2 {
margin-top: 1em;
margin-bottom: 0.5em;
}
h3 {
margin-top: .75em;
margin-bottom: 0.5em;
}
}
}
.index-icon-title {
padding-left: 1em;
.fa {
margin-right: 10px;
}
}
.index-more-section {
float: right;
}
.clear-fix {
clear: both;
height: 1px;
overflow: hidden;
margin-bottom: -1px;
line-height: 1%;
font-size: 0px;
}
.section-error-container {
display: flex;
justify-content: center;
align-items: center;
height: 12vh;
width: 100%;
background-color: #ecf0f1;
border-radius: 10px;
.section-error-content {
font-size: 1.2em;
opacity: 0.8;
.fa {
margin-right: 0.5em;
}
}
}
.loading-container {
display: flex;
justify-content: center;
align-items: center;
height: 12vh;
width: 100%;
background-color: #ecf0f1;
border-radius: 10px;
.loading-content {
font-size: 1.2em;
opacity: 0.8;
.fa {
margin-right: 0.5em;
}
}
}
.mosaic, .image-mosaic {
padding-top: 1.2em;
padding-bottom: 1.2em;
margin: 0 auto;
justify-content: center;
align-items: center;
display: grid;
grid-template-columns: repeat(auto-fill, 30%);
justify-self: center;
grid-row-gap: 1em;
grid-column-gap: 1em;
img, .mosaic-item {
display: block !important;
padding: 0 !important;
width: 100% !important;
}
}
.mosaic.two-columns {
grid-template-columns: repeat(auto-fill, 48%);
}
.mosaic.three-columns {
grid-template-columns: repeat(auto-fill, 30%);
}
.mosaic.four-columns {
grid-template-columns: repeat(auto-fill, 22%);
}
.flex-mosaic {
display: flex;
justify-content: center;
}
.flex-mosaic-item {
margin-right: 1em;
}
.flex-mosaic .flex-mosaic-item:first-of-type {
margin-left: 0;
}
.flex-mosaic .flex-mosaic-item:last-of-type {
margin-right: 0;
}
.full-iframe-container {
display: flex;
flex-direction: column;
min-height: 100vh;
width: 100%;
iframe {
border: none;
flex-grow: 1;
width: 100%;
}
}
.multistage-mosaic {
margin: 0 auto;
width: 75%;
display: grid;
grid-template-columns: 1.8fr 1fr;
grid-template-rows: 1fr 1fr;
gap: 0px 0px;
.multistage-item {
// display: flex;
// justify-content: center;
// align-items: center;
img {
margin: 0;
width: 49vh !important;
}
}
.multistage-top-left {
grid-column: 1 / 2;
grid-row: 1 / 2;
}
.multistage-right {
grid-column: 2 / 3;
grid-row: 1 / 3;
img {
width: 35vh !important;
}
}
.multistage-bottom-left {
grid-column: 1 / 2;
grid-row: 2 / 3;
}
}
@media (max-width: $responsive-medium) {
.mosaic, .image-mosaic {
display: flex;
justify-content: space-around;
flex-wrap: wrap;
img, .mosaic-item {
margin-bottom: 1em !important;
display: block !important;
padding: 0 !important;
}
img:last-of-type, .mosaic-item:last-of-type {
margin-bottom: 0 !important;
}
}
.flex-mosaic {
display: block;
}
.multistage-mosaic {
margin: 0;
width: 100%;
}
}
@media (max-width: $responsive-small) {
.sort-by-dates-container {
margin-bottom: .5em;
}
.blog-title-container {
display: flex;
flex-direction: column;
justify-content: start;
.sort {
margin-top: 1em;
margin-left: 2em;
margin-right: 2em;
}
}
.blog-pagination {
padding-left: 1em;
padding-right: 1em;
}
.multistage-mosaic {
grid-template-columns: auto;
grid-template-rows: auto;
.multistage-item {
display: flex;
justify-content: center;
}
.multistage-top-left {
grid-column: auto;
grid-row: auto;
}
.multistage-right {
grid-column: auto;
grid-row: auto;
img {
padding: 0;
margin: 0 auto;
width: 28vh !important;
}
}
.multistage-bottom-left {
grid-column: auto;
grid-row: auto;
}
}
}

View file

@ -0,0 +1,43 @@
.contact-card {
display: flex;
padding: 1em;
border: 1px solid gray;
border-radius: 10px;
.contact-card-left {
width: 5em;
background-size: contain;
background-repeat: no-repeat;
background-position: center;
}
.contact-card-right {
margin-left: 1.5em;
}
.contact-card-title {
font-size: 1.3em;
}
.contact-methods {
padding: 0;
list-style-type: none;
.contact-method {
display: flex;
.contact-method-icon {
opacity: 0.8;
margin-right: 1em;
}
}
}
}
@media (max-width: $responsive-small) {
.contact-card {
padding: .5em;
.contact-card-right {
margin-left: .75em !important;
}
.contact-method-icon {
margin-right: .5em !important;
}
}
}

120
oldscss/layouts/cover.scss Normal file
View file

@ -0,0 +1,120 @@
$cover-height: 15em;
.cover {
position: relative;
.cover-back {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background-image: url('https://s.werobot.fr/headerCover.jpeg');
background-size: cover;
background-position: center;
z-index: -1;
}
.cover-container {
width: 100%;
box-shadow: inset 0 0 10px rgba(0, 0, 0, 0.5);
min-height: $cover-height;
background-color: rgba(41, 128, 185, 0.8);
display: flex;
align-items: center;
color: white;
padding: 5em 0;
}
.cover-title {
line-height: 3em;
font-size: 1.5em;
padding-left: 1.5em;
}
&.large-cover {
.cover-container {
padding: 6em 0;
}
}
&.cover-mode-small .cover-container {
padding: 6em 0;
}
&.cover-mode-medium .cover-container {
height: 40vh;
}
&.cover-mode-large .cover-container {
height: 50vh;
}
&.cover-mode-full .cover-container {
height: 77vh;
}
.cover-date {
padding-top: 2em;
padding-bottom: 1em;
font-size: 1.2em;
opacity: 0.7;
display: flex;
align-items: center;
.cover-date-icon{
margin-right: 1em;
}
}
}
@media (max-width: $responsive-small) {
.cover {
&.cover-mode-medium .cover-container {
height: 49vh !important;
}
}
}
@media (max-width: $responsive-interlarge) {
.cover {
&.cover-mode-large .cover-container {
height: 40vh !important;
}
&.cover-mode-full .cover-container {
height: 65vh;
}
}
}
@media (max-width: $responsive-medium) {
.cover {
.cover-back {
background-position: center !important;
}
.cover-title {
font-size: 1.3em;
padding-left: 0;
}
&.cover-mode-medium .cover-container {
height: 45vh;
}
&.large-cover .cover-container { padding: 5em 0; }
&.cover-mdoe-small .cover-container { padding: 5em 0; }
//&.cover-mode-large .cover-container {
//padding: 11em 0 !important;
//}
}
}
@media (min-width: $responsive-large) {
.cover {
&.large-cover .cover-container { padding: 8em 0; }
//&.cover-mode-large .cover-container {
//padding: 21em 0 !important;
//}
}
}

View file

@ -0,0 +1,82 @@
body {
overflow-x: hidden !important;
}
.drawer {
.bm-menu {
background-color: #2c3e50 !important;
}
.cross-style {
right: -4px !important;
top: 13px !important;
}
}
.drawer-body-scrolling-disabled {
overflow: hidden;
}
.main-page-wrap {
transition: transform 0.5s ease 0s;
}
.disabled {
transform: translate3d(-300px, 0px, 0px) !important;
}
.drawer {
background-color: #2c3e50;
position: fixed;
width: 0;
transition: width 0.5s ease;
z-index: 999;
right: 0;
top: 0;
height: 100%;
padding-top: 1em;
padding-bottom: 1em;
white-space: nowrap;
overflow: hidden;
.drawer-content {
width: 300px;
padding-left: 1em;
transition: opacity 0.5s ease;
opacity: 1;
}
.drawer-links {
flex-direction: column;
display: flex;
}
.drawer-link {
display: flex;
justify-content: center;
align-items: center;
padding-bottom: 1em;
padding-top: 1em;
color: white;
transition: opacity 0.2s;
&:hover {
opacity: 0.8;
transition: opacity 0.2s;
}
}
&.drawer-enabled {
width: 300px;
.drawer-links {
opacity: 1;
}
}
.drawer-close-container {
display: flex;
justify-content: flex-end;
align-items: center;
color: white;
padding-right: 1em;
font-size: 1.3em;
}
}

View file

@ -0,0 +1,22 @@
.error-container {
height: 20vh;
display: flex;
justify-content: center;
align-items: center;
margin-top: 5em;
.error {
color: #2f3640;
display: flex;
align-items: center;
.error-icon {
margin-right: 2.2em;
margin-left: 1.3em;
i {
font-size: 1.5em;
}
}
.error-title {
margin-bottom: 0.3em;
}
}
}

View file

@ -0,0 +1,3 @@
body {
font-family: 'Roboto Slab', serif;
}

132
oldscss/layouts/footer.scss Normal file
View file

@ -0,0 +1,132 @@
$social-icon-height: 2em;
$footer-cover-height: 10em;
.footer {
margin-top: 5em;
.footer-cover-back {
height: $footer-cover-height;
background-image: url("https://s.werobot.fr/footerCover.jpeg");
background-size: cover;
background-position-x: center;
background-position-y: top;
}
.footer-cover {
margin-top: -$footer-cover-height;
height: $footer-cover-height;
background-color: rgba(41, 128, 185, .8);
box-shadow: inset 0 0 10px rgba(0, 0, 0, .5);
}
.footer-border {
display: flex;
.footer-border-item {
display: block;
content: "";
border-bottom: 1px solid black;
}
.footer-border-item:nth-child(1) {
border-color: #bdc3c7;
width: 100%;
}
}
.footer-container {
height: 20em;
padding-top: 3em;
padding-bottom: 3em;
.footer-title-container {
display: flex;
align-items: center;
justify-content: space-between;
margin-bottom: 2em;
.footer-title {
font-size: 1.8em;
opacity: 0.9;
margin-bottom: 0.5em;
}
.footer-description {
opacity: 0.9;
line-height: 1.5em;
}
.footer-logo {
margin-right: 2.5em;
img {
width: 38em;
}
}
}
.footer-footer {
margin-top: 3em;
padding-bottom: 2em;
}
.footer-socials {
margin-left: 1em;
display: flex;
justify-content: flex-start;
.footer-socials-item {
margin-right: 1em;
display: flex;
justify-content: center;
align-items: center;
opacity: 0.8 !important;
img, svg {
width: $social-icon-height;
height: $social-icon-height;
}
&:hover {
opacity: 1 !important;
}
}
}
.footer-links {
text-align: right;
display: flex;
flex-direction: column;
a {
margin-bottom: 10px;
font-size: 1em;
color: #2980b9;
}
}
}
}
@media (max-width: $responsive-medium) {
.footer {
.footer-container {
padding-top: 1em;
.footer-title-container {
flex-direction: column;
text-align: center;
.footer-logo {
margin-right: 0;
margin-bottom: 1em;
img {
display: flex;
margin: 0 auto;
width: 8em;
}
}
}
.footer-links {
text-align: center;
margin-top: 1em;
margin-bottom: 1em;
}
.footer-footer {
margin-top: 2em;
padding-bottom: 2em;
}
.footer-socials {
margin-left: 0;
.footer-socials-item img {
width: 2.4em;
height: 2.4em;
}
}
}
}
}

142
oldscss/layouts/header.scss Normal file
View file

@ -0,0 +1,142 @@
$logo-height: 6em;
$logo-responsive-height: 4em;
.header-border {
border-top: 1px solid #7f828b;
}
.header {
.header-container {
position: relative;
padding-top: 2em;
padding-bottom: 2em;
display: flex;
justify-content: space-between;
align-content: center;
align-items: center;
.header-nav-responsive-button-container {
display: none;
}
.header-title-container {
display: flex;
justify-content: center;
align-content: center;
align-items: center;
.header-title {
margin-left: 0.5em;
.header-title-title {
//font-family: 'Audiowide', serif;
font-size: 2.2em;
opacity: 0.9;
margin-bottom: 10px;
}
.header-sub-title {
margin-left: 1px;
}
}
.header-logo {
width: $logo-height;
height: $logo-height;
margin-right: 2em;
}
}
.header-nav {
display: flex;
justify-content: space-between;
.header-nav-item {
margin-left: 3em;
}
.header-nav-item .link.active {
border-bottom: 2px dotted #7f828b;
padding-bottom: 2px;
//border-style: dashed;
}
}
}
}
.header.not-complete {
//box-shadow: inset -8px -24px 66px -11px rgba(0,0,0,0.75);
position: fixed;
width: 100%;
background-color: white;
z-index: 1500;
transition:0.4s top cubic-bezier(.3,.73,.3,.74);
border-bottom: 2px solid #a4b0be;
.header-container {
padding-top: 0;
padding-bottom: 0;
}
.header-locale-container {
display: none;
}
.header-sub-title {
display: none;
}
}
@media (max-width: $responsive-medium) {
.header {
display: flex;
justify-content: center;
align-items: center;
.header-container {
justify-content: space-between;
padding-left: 1em;
padding-right: 1.5em;
.header-title-container {
width: 100%;
justify-content: space-between;
.header-title {
font-size: 1em;
margin: 0;
.header-title-title {
font-size: 1.5em;
margin: 0;
}
.header-sub-title {
display: none;
}
}
.header-logo {
width: $logo-responsive-height;
height: $logo-responsive-height;
margin-right: 1em;
}
}
.header-nav {
display: none;
}
.header-nav-responsive-button-container {
display: block;
.header-nav-responsive-button {
color: #2c3e50;
font-size: 1.8em;
opacity: 0.8;
transition: opacity 0.2s;
&:hover {
opacity: 1;
transition: opacity 0.2s;
cursor: pointer;
}
}
}
}
}
}
.header-locale-container {
display: flex;
justify-content: flex-end;
position: absolute;
right: 0;
bottom: 0;
height: 0;
z-index: 888;
}

19
oldscss/layouts/map.scss Normal file
View file

@ -0,0 +1,19 @@
.ol-attribution {
ul {
margin: 0 !important;
padding: .5em !important;
line-height: normal;
font-size: small;
}
}
.about-place-map {
width: 50em;
height: 30em;
}
@media (max-width: $responsive-small) {
.about-place-map {
width: 100%;
}
}

View file

@ -0,0 +1,132 @@
.partners {
margin-top: 2em;
.partner {
//GiGa
&:first-child img {
width: 60%;
}
//uimm
/*&:nth-child(2) img {
width: 50%;
}*/
//papavoine
&:nth-child(2) img {
width: 40%;
margin-bottom: 1em;
}
//Girv
&:nth-child(3) img {
width: 60%;
}
// arianegroup
&:nth-child(4) img {
width: 65%;
}
// gaillon
&:nth-child(5) img {
width: 40%;
}
// skf
&:nth-child(6) {
margin-top: 2.2em;
img {
width: 55%;
}
}
// AtisComputer
&:nth-child(7) {
margin-top: 2.2em;
img {
width: 75%;
}
}
margin-top: 1.2em;
.partner-image {
display: flex;
justify-content: center;
align-items: center;
text-align: center;
}
}
}
.partners-quick {
margin-top: 1.5em;
margin-bottom: -2em;
justify-content: space-around;
.partner-quick-title {
margin-bottom: .5em;
}
.partner-item {
display: flex;
justify-content: center;
align-items: center;
img {
width: auto;
height: 7em;
}
&:nth-of-type(4) {
img {
height: 5em;
}
}
&:nth-of-type(5) {
img {
height: 6em;
}
}
&:nth-of-type(6) {
//margin-top: 2.5em;
img {
height: 4em;
}
}
&:nth-of-type(7) {
img {
padding: 1em;
}
}
}
}
@media (max-width: $responsive-medium) {
.partners-quick .partner-item {
img {
padding: 10px;
}
}
.partners {
margin-top: 2em;
.partner {
//Girv
&:nth-child(3) img {
margin-top: .5em;
margin-bottom: 1em;
}
// arianegroup
&:nth-child(4) img {
margin-top: .5em;
margin-bottom: 1em;
}
// gaillon
&:nth-child(5) img {
margin-top: 1em;
margin-bottom: .5em;
}
//skf
&:nth-child(6) {
margin-top: 2em;
img {
margin-bottom: 1em;
}
}
&:nth-child(7) {
margin-top: 2em;
img {
margin-bottom: 1em;
}
}
}
}
}

View file

@ -0,0 +1,52 @@
.photos-list {
.photos-list-title {
margin-bottom: 1em;
.fa {
margin-right: 10px;
}
}
.photos-list-photos {
display: grid;
grid-template-columns: repeat(4, 1fr);
grid-column-gap: 1.2em;
grid-row-gap: 1.2em;
justify-content: center;
}
.photos-list-item {
border-radius: 5px;
height: 17.5em;
min-width: 14em;
background-size: cover;
background-position: center;
opacity: 1;
display: block;
transition: opacity 0.2s;
}
.photos-list-item:hover {
opacity: 0.8;
cursor: pointer;
transition: opacity 0.2s;
}
.photos-more {
float: right;
}
}
@media (max-width: $responsive-medium) {
.photos-list {
.photos-list-photos {
display: flex;
justify-content: center;
flex-wrap: wrap;
}
.photos-list-item {
min-width: 17.5em;
}
}
}

43
oldscss/layouts/team.scss Normal file
View file

@ -0,0 +1,43 @@
.team-mosaic {
margin-top: 2.5em;
display: grid;
grid-template-columns: 30% 30% 30%;
grid-column-gap: 28px;
grid-row-gap: 2em;
.team-item {
text-align: center;
.team-item-title {
margin-top: 0.3em;
margin-bottom: 0.2em;
font-size: 1.4em;
font-weight: 300;
}
.team-item-image {
margin: 0 auto;
display: flex;
justify-content: center;
align-items: center;
width: 10em;
height: 10em;
overflow: hidden;
img {
width: auto;
height: 10em;
}
}
.team-item-description {
font-size: 0.9em;
}
}
.team-item:last-of-type{
margin-right: 0;
}
}
@media (max-width: $responsive-medium) {
.team-mosaic {
grid-template-columns: 50% 50%;
grid-column-gap: 0;
}
}

View file

@ -0,0 +1,29 @@
.page-enter-active,
.page-leave-active {
transition: all 0.15s ease-out;
}
.page-enter,
.page-leave-active {
opacity: 0.15;
transform: translateZ(0);
backface-visibility: hidden;
}
.main-transition-enter-active, .main-transition-leave-active {
transition: opacity .5s
}
.main-transition-enter, .main-transition-leave-active, .main-transition-leave-to {
opacity: 0
}
.transition-parent {
min-height: 10em;
position: relative;
}
.transition-child {
position: absolute;
top: 0;
left: 0;
}

31
oldscss/main.scss Normal file
View file

@ -0,0 +1,31 @@
$responsive-small: 475px;
$responsive-medium: 1050px;
$responsive-interlarge: 1400px;
$responsive-large: 1500px;
@import url("https://cdnjs.cloudflare.com/ajax/libs/tailwindcss/2.2.8/tailwind.min.css");
@import url('https://fonts.googleapis.com/css?family=Audiowide|Roboto+Slab');
@import url('https://use.fontawesome.com/releases/v5.3.1/css/all.css');
@import "variables";
@import "helpers/container";
@import "helpers/link";
@import "helpers/card";
@import "helpers/divider";
@import "helpers/button";
@import "layouts/fonts";
@import "layouts/header";
@import "layouts/articles";
@import "layouts/body";
@import "layouts/partner";
@import "layouts/team";
@import "layouts/cover";
@import "layouts/footer";
@import "layouts/photos";
@import "layouts/error";
@import "layouts/drawer";
@import "layouts/transitions";
@import "layouts/contact-card";
@import "layouts/map";

1
oldscss/variables.scss Normal file
View file

@ -0,0 +1 @@
$primary-color: #2980b9;