feat: Import portails architecture

This commit is contained in:
Simon 2024-03-08 23:39:17 +01:00
parent 9f433902c2
commit ea53e8a936
31 changed files with 1170 additions and 0 deletions

30
.drone.yml Normal file
View File

@ -0,0 +1,30 @@
---
# drone encrypt ResiLien/portails $AWS_ACCESS_KEY_ID
kind: secret
name: P4PILLON_AWS_ACCESS_KEY_ID
data: XY87aSNvLDeNNSMT1xHmVUTWXSpXJORM/P8RCRmsVWtByyefTbXX1cF0A4EuokVbOJs0DJZs
---
# drone encrypt ResiLien/portails $AWS_SECRET_ACCESS_KEY
kind: secret
name: P4PILLON_AWS_SECRET_ACCESS_KEY
data: 58Boc2Ux7MKwvh1nHh2xmY4JEje5CyX0/H/z6tM/ehLD1m4WQKblvc/+PX0DcaFqX86JPG8osLRsglkP9pyW7iH5WwuMQcXR/NzOAJioO+xgrh/14qUCYe+N5Yc=
---
kind: pipeline
type: docker
name: P4Pillon
steps:
- name: Installation des dépendances & construction du site
image: hugomods/hugo:exts-0.123.8
environment:
AWS_ACCESS_KEY_ID:
from_secret: P4PILLON_AWS_ACCESS_KEY_ID
AWS_SECRET_ACCESS_KEY:
from_secret: P4PILLON_AWS_SECRET_ACCESS_KEY
commands:
- npm install --ignore-scripts
- hugo --minify --environment apps.p4pillon.org
- hugo --minify --environment apps.p4pillon.org
- hugo deploy --environment apps.p4pillon.org

View File

@ -0,0 +1,22 @@
baseURL = "https://apps.p4pillon.org/"
title = "P4Pillon"
languageCode = "fr-FR"
defaultContentLanguage = "fr"
disableLanguages = ["de", "nl", "en"]
[Params]
url = "apps.p4pillon.org"
domain = "p4pillon.org"
poweredBy = true
[Params.doks]
[Params.doks.menu]
[Params.doks.menu.section]
collapsibleSidebar = false
[languages.fr.params]
footer = 'Mise en place et hébergé avec sobriété par <a class="text-muted" href="https://resilien.fr/">RésiLien</a>'
[deployment.targets]
name = "production"
URL = "s3://apps.p4pillon.org?endpoint=https://s3.garage.resilien.cloud&disableSSL=true&s3ForcePathStyle=true&region=garage"

View File

@ -0,0 +1,19 @@
[[main]]
name = "Guides"
url = "/docs/introduction/bienvenue/"
weight = 10
[[footer]]
name = "Mentions légales"
url = "/mentions-legales/"
weight = 10
[[footer]]
name = "Sources du site"
url = "https://git.resilien.fr/ResiLien/portails/"
weight = 20
[[footer]]
name = "Statuts des services"
url = "https://status.p4pillon.org/"
weight = 30

View File

@ -0,0 +1,104 @@
# mounts
## archetypes
[[mounts]]
source = "node_modules/@hyas/doks-core/archetypes"
target = "archetypes"
[[mounts]]
source = "archetypes"
target = "archetypes"
## assets
[[mounts]]
source = "node_modules/@hyas/core/assets"
target = "assets"
[[mounts]]
source = "node_modules/@hyas/images/assets"
target = "assets"
excludeFiles = "/scss/**.scss"
[[mounts]]
source = "node_modules/@hyas/doks-core/assets"
target = "assets"
[[mounts]]
source = "node_modules/@tabler/icons/icons"
target = "assets/svgs/tabler-icons"
[[mounts]]
source = "assets"
target = "assets"
## content
[[mounts]]
source = "portails/shared/content"
target = "content"
[[mounts]]
source = "portails/apps.p4pillon.org/content"
target = "content"
## data
[[mounts]]
source = "node_modules/@hyas/doks-core/data"
target = "data"
[[mounts]]
source = "data"
target = "data"
[[mounts]]
source = "portails/shared/data"
target = "data"
[[mounts]]
source = "portails/apps.p4pillon.org/data"
target = "data"
## i18n
[[mounts]]
source = "node_modules/@hyas/doks-core/i18n"
target = "i18n"
[[mounts]]
source = "i18n"
target = "i18n"
## layouts
[[mounts]]
source = "node_modules/@hyas/core/layouts"
target = "layouts"
[[mounts]]
source = "node_modules/@hyas/seo/layouts"
target = "layouts"
[[mounts]]
source = "node_modules/@hyas/images/layouts"
target = "layouts"
[[mounts]]
source = "node_modules/@hyas/doks-core/layouts"
target = "layouts"
[[mounts]]
source = "node_modules/@hyas/inline-svg/layouts"
target = "layouts"
[[mounts]]
source = "layouts"
target = "layouts"
[[mounts]]
source = "portails/shared/layouts"
target = "layouts"
## static
[[mounts]]
source = "node_modules/@hyas/doks-core/static"
target = "static"
[[mounts]]
source = "static"
target = "static"

27
portails/README.md Normal file
View File

@ -0,0 +1,27 @@
# Les portails de services de RésiLien
Ce projet permet de créer des portails de services, une page avec des liens vers les services que RésiLien met à disposition accompagnée d'une documentation mutualisée entre les différents portails.
## Explication technique
Dans Hugo, il est possible de créer des environnements spécifiques en général on l'utilise pour différencier des environnements de test, pord ou local. Nous l'utiliserons ici pour mettre en place un portail par environnement.
Lorsque l'on spécifie `export HUGO_ENVIRONEMENT=apps.p4pillon.org` et qu'on lance `npm run dev` qui n'est rien d'autre que la commande `hugo serve` avec des paramètres en plus alors il charge le dossier `config/apps.p4pillon.org`.
Dans ce dossier, on retrouve des fichiers de configuration dont le fichier `module.toml` qui permet de dire à Hugo quels dossiers sont pris en compte, ce qui nous permet d'avoir une configuration partagée dans le dossier `portails/shared` mais aussi de pouvoir surcharger facilement pour un besoin spécifique dans le dossier `portails/apps.p4pillon.org` par exemple.
Dans le dossier `portails/shared` nous allons avoir l'ensemble des templates (`layout`) que l'on surcharge de Doks, un catalogue de services dans le fichier `data/portails.yml` et l'ensemble de la documentation pour l'utilisation d'un service lui permettant de comprendre à l'utiliser.
Dans le dossier `portails/apps.p4pillon.org` nous aurons le dossier `content` permettant d'avoir du contenu spécifique mais aussi le fichier `data/services.yml` permettant de paramétrer les services.
## Déploiement
Un déploiement automatique a été mis en place `.drone.yml` pour que Drone déploie automatiquement l'ensemble des sites sur notre cluster S3.
## Mise à jour
Nous pouvons mettre à jour notre documentation générale ou les services proposés en ajoutant ou modifiant le contenu dans `portails/shared/` un dossier qui n'est pas référencé dans Doks ce qui simplifira les montés de version.
Pour mettre à jour Doks, il suffit d'ajouter le dépôt Git du projet original `git remote add doks git@github.com:gethyas/doks.git`, de rappatrier les nouveaux changements `git pull doks --rebase` et ainsi ne pas avoir de conflit. Seul le fichier `hugo_stats.json` qui récolte toutes les propriétés CSS du framework Tailwindcss utilisé dans les templates. C'est pourquoi un des premiers commit est la mise dans `.gitignore`.
Lors de la mise à jour de Doks, il faut vérifier s'il faut mettre à jour la version de Hugo dans `.drone.yml`. Je n'ai pas réussi à ce que l'image utilise le Drone importé par _npm_.

View File

@ -0,0 +1,17 @@
---
title : "Outils numériques libres de <a href='https://p4pillon.org'>P4Pillon</a>"
description: ""
lead: "Ce site web met à disposition de multiples services utiles pour collaborer, partager et avoir une vie numérique plus <a href='/docs/introduction/vie-numérique/'>« saine »</a> pour <a href='https://p4pillon.org'>P4Pillon</a>."
date: 2023-09-07T16:33:54+02:00
lastmod: 2023-09-07T16:33:54+02:00
draft: false
seo:
title: "Outils numériques libres de P4Pillon" # custom title (optional)
description: "Ce site web met à disposition de multiples services utiles pour collaborer, partager et avoir une vie numérique plus « saine » pour P4Pillon." # custom description (recommended)
canonical: "" # custom canonical URL (optional)
noindex: false # false (default) or true
---
L'association [RésiLien](https://resilien.fr) met à disposition des outils informatiques.
Ses outils sont disponibles pour les acteurs travaillant sur le projet P4Pillon. Pour la création d'un compte vous pouvez faire la demande sur [compte@p4pillon.org](mailto:compte@p4pillon.org).

View File

@ -0,0 +1,11 @@
- name: nextcloud
- name: outline
- name: element
link: https://matrix.to/#/#p4pillon-sante:converser.eu
- name: vikunja
- name: vaultwarden
- name: directus
subdomain: formulaire
- name: gitea
- name: listmonk
- name: metabase

View File

@ -0,0 +1,19 @@
---
title: "Centre de documentation"
description: ""
summary: ""
date: 2023-09-07T16:12:03+02:00
lastmod: 2023-09-07T16:12:03+02:00
draft: false
menu:
docs:
parent: ""
identifier: "docs-9602b15bad02600f3883f55e2ade6b81"
weight: 19
toc: true
seo:
title: "" # custom title (optional)
description: "" # custom description (recommended)
canonical: "" # custom canonical URL (optional)
noindex: false # false (default) or true
---

View File

@ -0,0 +1,20 @@
---
title: "Discussion entre équipes"
description: "Guides lead a user through a specific task they want to accomplish, often with a sequence of steps."
summary: ""
date: 2023-09-07T16:04:48+02:00
lastmod: 2023-09-07T16:04:48+02:00
draft: false
menu:
docs:
parent: ""
identifier: "example-6azbe4373e933280d78ea5e6158"
weight: 600
toc: true
icon: messages
seo:
title: "" # custom title (optional)
description: "" # custom description (recommended)
canonical: "" # custom canonical URL (optional)
noindex: false # false (default) or true
---

View File

@ -0,0 +1,33 @@
---
title: "Discussion entre équipes"
description: "Bienvenue dans Nextcloud : Un espace sécurisé pour toutes vos données."
summary: ""
date: 2023-09-07T16:04:48+02:00
lastmod: 2023-09-07T16:04:48+02:00
draft: false
# menu:
# docs:
# parent: ""
# identifier: "example-zbe4373e933280d78ea5e6158"
weight: 610
toc: true
seo:
title: "" # custom title (optional)
description: "" # custom description (recommended)
canonical: "" # custom canonical URL (optional)
noindex: false # false (default) or true
---
{{< callout context="tip" title="Information" icon="info-circle" >}}
- Lien du service : [https://matrix.to/#/#p4pillon-sante:converser.eu/](https://matrix.to/#/#p4pillon-sante:converser.eu/)
{{< /callout >}}
## Créer un compte
- Il faut se créer un compte depuis [cette adresse](https://element.interhop.org/#/register).
## Projet EIMIS
> Faciliter et sécuriser les communications des professionnels de santé
>
> [Lien](https://beta.gouv.fr/startups/eimis.html)

View File

@ -0,0 +1,19 @@
---
title: "Introduction"
description: "Guides lead a user through a specific task they want to accomplish, often with a sequence of steps."
summary: ""
date: 2023-09-07T16:04:48+02:00
lastmod: 2023-09-07T16:04:48+02:00
draft: false
menu:
docs:
parent: ""
identifier: "example-6a1a6be4373e933280d78"
weight: 100
toc: true
seo:
title: "" # custom title (optional)
description: "" # custom description (recommended)
canonical: "" # custom canonical URL (optional)
noindex: false # false (default) or true
---

View File

@ -0,0 +1,29 @@
---
title: "👋 Bienvenue !"
description: "Bienvenue dans Nextcloud : Un espace sécurisé pour toutes vos données."
summary: ""
date: 2023-09-07T16:04:48+02:00
lastmod: 2023-09-07T16:04:48+02:00
draft: false
menu:
docs:
parent: ""
identifier: "example-6a1a6be437933280d78"
weight: 110
toc: true
seo:
title: "" # custom title (optional)
description: "" # custom description (recommended)
canonical: "" # custom canonical URL (optional)
noindex: false # false (default) or true
---
Vous découvrez la suite collaborative de {{< title >}} ? Pas de panique ☺️
## Où suis-je ?
Vous voici actuellement dans le centre de documentation de la suite collaborative proposée et hébergée par [RésiLien](https://resilien.fr). Vous y retrouverez la documentation des différents outils proposés.
Nous utilisons le « concept » de la Gare Centrale dont voici les ressources pour vous permettre de bien comprendre son fonctionnement :
- [article de blog](https://lesecolohumanistes.fr/gare-centrale/)
- [vidéo](https://tube.koweb.fr/w/6Wry1kQKEnnABiHz11ezY1)

View File

@ -0,0 +1,36 @@
---
title: "☝️ Demander de l'aide"
slug: "demander-de-laide"
description: "Bienvenue dans Nextcloud : Un espace sécurisé pour toutes vos données."
summary: ""
date: 2023-09-07T16:04:48+02:00
lastmod: 2023-09-07T16:04:48+02:00
draft: false
menu:
docs:
parent: ""
identifier: "example-6a6be437933280d78"
weight: 120
toc: true
seo:
title: "" # custom title (optional)
description: "" # custom description (recommended)
canonical: "" # custom canonical URL (optional)
noindex: false # false (default) or true
---
Dans le cas où ce centre de documentation ne suffirait pas
Vous ne trouvez pas ce que vous cherchez ? Voici les moyens à disposition pour demander de laide.
## Le canal #LaMelio sur Matrix
Un espace de discussion dédié à lentraide entre collègues est à votre disposition dans la messagerie instantanée Matrix.
À retrouver [ici](https://matrix.to/#/#LaMelio-Entraide:matrix.interhop.org) !
Que vous soyez de celles et ceux qui ont des questions ou plutôt de celles et ceux qui maitrisent loutil, cest lendroit parfait pour vous retrouver et échanger vos connaissances.
## Support
Vous pouvez nous contacter par email en écrivant à [support@{{< domain >}}](mailt:support@{{< domain >}}).

View File

@ -0,0 +1,39 @@
---
title: "⚡ Vie numérique"
description: "Guides lead a user through a specific task they want to accomplish, often with a sequence of steps."
summary: ""
date: 2023-09-07T16:04:48+02:00
lastmod: 2023-09-07T16:04:48+02:00
draft: false
menu:
docs:
parent: ""
identifier: ""
weight: 130
toc: true
seo:
title: "" # custom title (optional)
description: "" # custom description (recommended)
canonical: "" # custom canonical URL (optional)
noindex: false # false (default) or true
---
Le numérique est partout, mais nous prenons peu de recul sur cet outil. Rappelons qu'il doit nous faciliter notre collaboration et ainsi permettre d'être plus efficace dans notre travail.
Vu les révolution sans précédente que nous vivons (extinction massive, changement climatique...), il faut le rappeler que l'informatique reste un outil non soutenable sur du long terme. Si vous voulez plus d'information, lisez ou écoutez l'épisode « [Incompatibilités des transitions numérique et écologique](https://techologie.net/episodes/86-transitions-numerique-et-ecologique-incompatibles/) » de [Techologie](https://techologie.net/).
## Hébergement
[RésiLien](https://resilien.fr) est un hébergeur de logiciel numérique libre, nous faisons partie du Collectif des Hébergeurs Alternatifs appelé [CHATONS](https://chatons.org) 🐈 propulsé par l'association [Framasoft](https://framasoft.org).
> Accompagner les organisations qui ont une conscience sociétale vers la réappropriation de leurs outils numériques.
Nous proposons des outils Open Source permettant de se libérer des GAFAMs. Ils sont hébergés directement en France sur des micro-serveurs à faible impact énergétique.
Nous devons reprendre le contrôle de nos logiciels mais aussi de nos données, c'est tout l'enjeu de cette plateforme !
## Sauvegarde
Tous les outils sont sauvegardés automatiquement toutes les nuits. Ses sauvegardes sont chiffrées et envoyées sur plusieurs serveurs.
Mais vous êtes les garants de vos données et nous vous conseillons d'avoir une procédure régulière de sauvegarde sur un disque dur.

View File

@ -0,0 +1,20 @@
---
title: "Prise de notes"
description: "Guides lead a user through a specific task they want to accomplish, often with a sequence of steps."
summary: ""
date: 2023-09-07T16:04:48+02:00
lastmod: 2023-09-07T16:04:48+02:00
draft: false
menu:
docs:
parent: ""
identifier: "example-6azbe4373e933280d78ea53de6158"
weight: 500
toc: true
icon: pencil
seo:
title: "" # custom title (optional)
description: "" # custom description (recommended)
canonical: "" # custom canonical URL (optional)
noindex: false # false (default) or true
---

View File

@ -0,0 +1,24 @@
---
title: "Prise de notes"
description: "Bienvenue dans Nextcloud : Un espace sécurisé pour toutes vos données."
summary: ""
date: 2023-09-07T16:04:48+02:00
lastmod: 2023-09-07T16:04:48+02:00
draft: false
menu:
docs:
parent: ""
identifier: "example-6a1a6373e933280d78ea5"
weight: 510
toc: true
seo:
title: "" # custom title (optional)
description: "" # custom description (recommended)
canonical: "" # custom canonical URL (optional)
noindex: false # false (default) or true
---
{{< callout context="tip" title="Information" icon="info-circle" >}}
- Lien du service : [https://notes.{{< domain >}}](https://notes.{{< domain >}})
- Statut du service : <img src="https://statuts.resilien.fr/api/badge/76/status?style=flat-square" />
{{< /callout >}}

View File

@ -0,0 +1,20 @@
---
title: "Gérer vos données"
description: "Guides lead a user through a specific task they want to accomplish, often with a sequence of steps."
summary: ""
date: 2023-09-07T16:04:48+02:00
lastmod: 2023-09-07T16:04:48+02:00
draft: false
menu:
docs:
parent: ""
identifier: "example-6a1a6be4373e933280d78ea53de"
weight: 300
toc: true
icon: files
seo:
title: "Gérer vos données" # custom title (optional)
description: "" # custom description (recommended)
canonical: "" # custom canonical URL (optional)
noindex: false # false (default) or true
---

View File

@ -0,0 +1,36 @@
---
title: "Gérer vos données"
description: "Bienvenue dans Nextcloud : Un espace sécurisé pour toutes vos données."
summary: ""
date: 2023-09-07T16:04:48+02:00
lastmod: 2023-09-07T16:04:48+02:00
draft: false
menu:
docs:
parent: ""
identifier: "example-6a1a6be4373e933280d78ea5"
weight: 310
toc: true
seo:
title: "" # custom title (optional)
description: "" # custom description (recommended)
canonical: "" # custom canonical URL (optional)
noindex: false # false (default) or true
---
{{< callout context="tip" title="Information" icon="info-circle" >}}
- Lien du service : [https://nuage.{{< domain >}}](https://nuage.{{< domain >}})
- Statut du service : <img src="https://statuts.resilien.fr/api/badge/75/status?style=flat-square" />
{{< /callout >}}
Vous êtes sur la documentation de l'outil permettant de gérer des fichiers, contacts et agendas et de collaborer avec une suite office en ligne.
Les outils utilisés sont :
- Nextcloud pour la gestion des fichiers, contacts et agendas
- Onlyoffice qui est intégré directement dans Nextcloud et permettant d'éditer à plusieurs des documents (traitement de texte, tableurs...)
## Nextcloud
Nextcloud est un logiciel open source de partage et de synchronisation de fichier dont le spectre dutilisation va du particulier exploitant un serveur Nextcloud à la maison à la grande entreprise ou lhébergeur qui a souscrit au support via Nexcloud Entreprise Subscription. Nextcloud propose un système de synchronisation et de partage de fichiers sûr, sécurisé et efficace, que vous pouvez gérer sur vos propres serveurs.
Vous pouvez partager un ou plusieurs fichiers sur votre ordinateur et les synchroniser avec votre serveur Nextcloud. Pour cela, il suffit de déposer les fichiers dans vos répertoires locaux partagés et ils sont immédiatement synchronisés avec le serveur et les autres périphériques via le client de synchronisation de bureau, lapplication Android ou lapplication iOS. Pour en apprendre plus à propos du client de synchronisation de bureau, veuillez vous référez à :

View File

@ -0,0 +1,20 @@
---
title: "Mots de passe"
description: "Guides lead a user through a specific task they want to accomplish, often with a sequence of steps."
summary: ""
date: 2023-09-07T16:04:48+02:00
lastmod: 2023-09-07T16:04:48+02:00
draft: false
menu:
docs:
parent: ""
identifier: "example-6a1a6be4373e933280d78ea53d"
weight: 900
toc: true
icon: shield-lock
seo:
title: "" # custom title (optional)
description: "" # custom description (recommended)
canonical: "" # custom canonical URL (optional)
noindex: false # false (default) or true
---

View File

@ -0,0 +1,24 @@
---
title: "Gestionnaire de mots de passe"
description: "Bienvenue dans Nextcloud : Un espace sécurisé pour toutes vos données."
summary: ""
date: 2023-09-07T16:04:48+02:00
lastmod: 2023-09-07T16:04:48+02:00
draft: false
menu:
docs:
parent: ""
identifier: "example-6a1a4373e933280d78ea5"
weight: 910
toc: true
seo:
title: "" # custom title (optional)
description: "" # custom description (recommended)
canonical: "" # custom canonical URL (optional)
noindex: false # false (default) or true
---
{{< callout context="tip" title="Information" icon="info-circle" >}}
- Lien du service : [https://pass.{{< domain >}}](https://pass.{{< domain >}})
- Statut du service : <img src="https://statuts.resilien.fr/api/badge/78/status?style=flat-square" />
{{< /callout >}}

View File

@ -0,0 +1,20 @@
---
title: "Gestion de PDF"
description: "Guides lead a user through a specific task they want to accomplish, often with a sequence of steps."
summary: ""
date: 2023-09-07T16:04:48+02:00
lastmod: 2023-09-07T16:04:48+02:00
draft: false
menu:
docs:
parent: ""
identifier: "example-6a1a6be4373e933280d78ea53de615"
weight: 700
toc: true
icon: file-type-pdf
seo:
title: "" # custom title (optional)
description: "" # custom description (recommended)
canonical: "" # custom canonical URL (optional)
noindex: false # false (default) or true
---

View File

@ -0,0 +1,24 @@
---
title: "Gestion de PDF"
description: "Bienvenue dans Nextcloud : Un espace sécurisé pour toutes vos données."
summary: ""
date: 2023-09-07T16:04:48+02:00
lastmod: 2023-09-07T16:04:48+02:00
draft: false
menu:
docs:
parent: ""
identifier: "example-6a1a6be4373e9332ea5"
weight: 710
toc: true
seo:
title: "" # custom title (optional)
description: "" # custom description (recommended)
canonical: "" # custom canonical URL (optional)
noindex: false # false (default) or true
---
{{< callout context="tip" title="Information" icon="info-circle" >}}
- Lien du service : [https://pdf.{{< domain >}}](https://pdf.{{< domain >}})
- Statut du service : <img src="https://statuts.resilien.fr/api/badge/81/status?style=flat-square" />
{{< /callout >}}

View File

@ -0,0 +1,20 @@
---
title: "Gestion de projets"
description: "Guides lead a user through a specific task they want to accomplish, often with a sequence of steps."
summary: ""
date: 2023-09-07T16:04:48+02:00
lastmod: 2023-09-07T16:04:48+02:00
draft: false
menu:
docs:
parent: ""
identifier: "example-6a1a6be4373e933280d78ea53de615"
weight: 700
toc: true
icon: list-details
seo:
title: "" # custom title (optional)
description: "" # custom description (recommended)
canonical: "" # custom canonical URL (optional)
noindex: false # false (default) or true
---

View File

@ -0,0 +1,24 @@
---
title: "Gestion de projets"
description: "Bienvenue dans Nextcloud : Un espace sécurisé pour toutes vos données."
summary: ""
date: 2023-09-07T16:04:48+02:00
lastmod: 2023-09-07T16:04:48+02:00
draft: false
menu:
docs:
parent: ""
identifier: "example-6a1a6be4373e9332ea5"
weight: 710
toc: true
seo:
title: "" # custom title (optional)
description: "" # custom description (recommended)
canonical: "" # custom canonical URL (optional)
noindex: false # false (default) or true
---
{{< callout context="tip" title="Information" icon="info-circle" >}}
- Lien du service : [https://projets.{{< domain >}}](https://projets.{{< domain >}})
- Statut du service : <img src="https://statuts.resilien.fr/api/badge/77/status?style=flat-square" />
{{< /callout >}}

View File

@ -0,0 +1,44 @@
---
title: "Mentions légales"
description: ""
summary: ""
date: 2023-09-07T17:19:07+02:00
lastmod: 2023-09-07T17:19:07+02:00
draft: false
type: "legal"
seo:
title: "" # custom title (optional)
description: "" # custom description (recommended)
canonical: "" # custom canonical URL (optional)
noindex: false # false (default) or true
---
## Éditeur
Le site web [https://apps.p4pillon.org](https://apps.p4pillon.org) est édité par l'association [RésiLien](https://resilien.fr).
> SIRET : XXXXXXXXXXXXXX
> Adresse : 315 impasse de la Meliora 42260 Crémeaux
## Directeur de publication
Simon Constans
## Hébergement
Le site web [https://apps.p4pillon.org](https://apps.p4pillon.org) est hébergé avec sobriété par l'association [RésiLien](https://resilien.fr).
> SIRET: XXXXXXXXXXXXXX
> Adresse : 315 impasse de la Meliora 42260 Crémeaux
## Développement et Maintenance
Le site web [https://apps.p4pillon.org](https://apps.p4pillon.org) a été réalisé de façon éco-responsable par [RésiLien](https://resilien.fr).
## Liens hypertextes
Les liens hypertextes mis en œuvre en direction dautres sites WEB ne sauraient engager la responsabilité de Jarnat, car nous nexerçons aucun contrôle sur le contenu des sites auxquels ces liens renvoient.
## Cookie
Ce site ninstalle aucun cookie, cest pourquoi il ny a aucun bandeau spécifique. Nous respectons la vie privée de nos visiteurs.

View File

@ -0,0 +1,91 @@
services:
directus:
tool:
name: Directus
link: https://directus.io/
title: Gestion de contenu
icon: route-2
description: Directus est un logiciel de gestion de contenu qui permet de stocker et d'accéder au contenu via une API.
subdomain: admin
doc: /docs/nuage/gérer-vos-données/
element:
tool:
name: Element
link: https://element.io/
title: Discussion entre équipes
icon: messages
description: Échanger ensemble avec une messagerie instantanée sécurisée et décentralisée sur différents sujets.
subdomain: chat
doc: /docs/chat/discussion-entre-%C3%A9quipes/
gitea:
tool:
name: Gitea
link: https://about.gitea.com/
title: Forge logicielle
icon: brand-git
description: Gitea est une forge logicielle libre pour l'hébergement de développement logiciel et la gestion du code source
subdomain: forge
doc: /docs/nuage/gérer-vos-données/
listmonk:
tool:
name: listmonk
link: https://listmonk.app/
title: Infolettre
icon: mail-fast
description: Gestionnaire de listes de diffusion et d'infolettre avec envoie possible par mail ou SMS.
subdomain: infolettre
doc: /docs/nuage/gérer-vos-données/
metabase:
tool:
name: Metabase
link: https://www.metabase.com/
title: Analyse de données
icon: chart-dots-2
description: Solution d'informatique décisionnelle, mise en place de graphique de ses données pour piloter son activité.
subdomain: tableaudebord
doc: /docs/nuage/gérer-vos-données/
nextcloud:
tool:
name: Nextcloud
link: https://nextcloud.com/
title: Gérer vos données
icon: files
description: Gérer en collaboration vos fichiers, contacts et agendas pour permettre une bonne organisation.
subdomain: nuage
doc: /docs/nuage/gérer-vos-données/
outline:
tool:
name: Outline
link: https://www.getoutline.com/
title: Prise de notes
icon: pencil
description: Collaborer sur une documentation en ligne pour mettre en lumière les connaissances de votre équipe.
subdomain: docs
doc: /docs/notes/prise-de-notes/
signaturepdf:
tool:
name: PDF Signature
link: https://github.com/24eme/signaturepdf/
title: Gestion de PDF
icon: file-type-pdf
description: Signer, parapher, modifier, réorganiser, compresser vos fichiers PDF directement en ligne.
subdomain: pdf
doc: /docs/pdf/gestion-de-pdf/
vaultwarden:
tool:
name: Vaultwarden
link: https://github.com/dani-garcia/vaultwarden/
title: Mots de passe
icon: shield-lock
description: Facilitez-vous la gestion et le partage de vos mots de passe, vous avez besoin d'en retenir qu'un !
subdomain: pass
doc: /docs/pass/gestionnaire-de-mots-de-passe/
vikunja:
tool:
name: Vikunja
link: https://vikunja.io/
title: Gestion de projets
icon: list-details
description: Organiser vous autour de listes de tâches et rendre visible l'avancement de vos projets avec votre équipe.
subdomain: projets
doc: /docs/nuage/gérer-vos-données/

View File

@ -0,0 +1,73 @@
{{ define "main" }}
<section class="section container-fluid mt-n3 pb-3">
<div class="row justify-content-center">
<div class="col-lg-12 text-center">
<h1>{{ .Title | safeHTML }}</h1>
</div>
<div class="col-lg-9 col-xl-8 text-center">
<p class="lead">{{ .Params.lead | safeHTML }}</p>
{{/* <a class="btn btn-primary btn-cta rounded-pill btn-lg my-3" href="/docs/{{ if site.Params.doks.docsVersioning }}{{ site.Params.doks.docsVersion }}/{{ end }}guides/example-guide/" role="button">{{ i18n "get_started" }}</a> */}}
{{/* {{ .Content }} */}}
</div>
</div>
</section>
{{ end }}
{{ define "sidebar-prefooter" }}
{{ if site.Params.doks.backgroundDots -}}
<div class="d-flex justify-content-start">
<div class="bg-dots"></div>
</div>
{{ end -}}
<section class="section section-md section-features">
<div class="container">
<div class="row justify-content-center text-center">
{{ range $service := index site.Data.services }}
{{ $defaultValues := index site.Data.portails.services $service.name }}
<div class="col-lg-5">
<h2 class="h4">
{{- $icon := $service.icon | default $defaultValues.icon -}}
{{- partial "inline-svg" $icon -}}&nbsp;
{{- $service.title | default $defaultValues.title -}}
</h2>
<p>{{ $service.description | default $defaultValues.description }}</p>
<div class="btn-group" role="group" aria-label="Basic outlined example">
<a href="{{ $service.doc | default $defaultValues.doc }}" class="btn btn-outline-primary">Guide</a>
{{ if $service.subdomain }}
<a href="https://{{ print $service.subdomain "." site.Params.domain }}/" class="btn btn-primary">Accéder au service</a>
{{ else if $service.link }}
<a href="{{ $service.link }}/" class="btn btn-primary">Accéder au service</a>
{{ else }}
<a href="https://{{ print $defaultValues.subdomain "." site.Params.domain }}/" class="btn btn-primary">Accéder au service</a>
{{ end }}
</div>
{{ if site.Params.poweredBy }}
<p class="text-muted"><small>Propulsé par <a href="{{ $defaultValues.tool.link }}">{{ $defaultValues.tool.name }}</a></small></p>
{{ end }}
</div>
{{ end }}
</div>
</div>
</section>
<hr>
<section class="section container-fluid mt-n3 pb-3">
<div class="row justify-content-center">
<div class="col-lg-9 col-xl-8 text-center">
{{ .Content }}
</div>
</div>
</section>
{{ end }}
{{ define "sidebar-footer" }}
{{ if site.Params.doks.sectionFooter -}}
<section class="section section-md container-fluid bg-light">
<div class="row justify-content-center text-center">
<div class="col-lg-7">
<h2 class="mt-2">Start building with Doks today</h2>
<a class="btn btn-primary rounded-pill px-4 my-2" href="/docs/{{ if site.Params.doks.docsVersioning }}{{ site.Params.doks.docsVersion }}/{{ end }}prologue/introduction/" role="button">{{ i18n "get-started" }}</a>
</div>
</div>
</section>
{{ end -}}
{{ end }}

View File

@ -0,0 +1,19 @@
<hr class="mt-1 mb-1"/>
<ul id="socialMenu" class="nav mx-auto flex-row order-lg-4">
{{ range $service := site.Data.services }}
{{ $defaultValues := index site.Data.portails.services $service.name }}
{{ $icon := $service.icon | default $defaultValues.icon }}
<li class="nav-item">
<a class="nav-link social-link" title="{{ $service.title | default $defaultValues.title }}" href="{{- if $service.subdomain -}}
{{- print "https://" $service.subdomain "." site.Params.domain -}}
{{- else if $service.link -}}
{{- $service.link -}}
{{- else -}}
{{- print "https://" $defaultValues.subdomain "." site.Params.domain -}}
{{- end -}}">
{{- partial "inline-svg" $icon }}&nbsp;
<small class="ms-2 visually-hidden">{{ $service.title | default $defaultValues.title }}</small>
</a>
</li>
{{ end -}}
</ul>

View File

@ -0,0 +1,284 @@
{{/*
Ce fichier provient de https://github.com/gethyas/doks-core/blob/main/layouts/partials/header/header.html
pour ajouter nos services automatiquements au niveau du menu en haut à droite depuis notre configuration
dans le dossier data.
Une PR est en cours pour n'avoir que le template `header-menu-social.html` à garder et ainsi supprimer
ce fichier https://github.com/gethyas/doks-core/pull/96
*/}}
{{ if site.Params.doks.alert -}}
{{ partial "header/alert.html" . }}
{{ end -}}
{{ if site.Params.doks.navbarSticky -}}
<div class="sticky-top">
{{ end -}}
{{ if site.Params.doks.headerBar -}}
<div class="header-bar"></div>
{{ end -}}
<header class="navbar navbar-expand-lg">
{{ with site.Params.doks.containerBreakpoint -}}
<div class="container-{{ . }}">
{{ else -}}
<div class="container">
{{ end -}}
<!-- Site title -->
<a class="navbar-brand me-auto me-lg-3" href="{{ relLangURL "" }}">{{ .Site.Title }}</a>
<!-- FlexSearch mobile -->
{{ partial "main/showFlexSearch" . }}
{{ $showFlexSearch := .Scratch.Get "showFlexSearch" -}}
{{ if $showFlexSearch -}}
<button type="button" id="searchToggleMobile" class="btn btn-link nav-link mx-2 d-lg-none" aria-label="Search website">
<svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-search" width="24" height="24" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round">
<path stroke="none" d="M0 0h24v24H0z" fill="none"></path>
<circle cx="10" cy="10" r="7"></circle>
<line x1="21" y1="21" x2="15" y2="15"></line>
</svg>
</button>
{{ end -}}
<!-- Section navigation -->
{{ if (in site.Params.doks.sectionNav .Section) -}}
<button class="btn btn-link d-lg-none" type="button" data-bs-toggle="offcanvas" data-bs-target="#offcanvasNavSection" aria-controls="offcanvasNavSection" aria-label="Open section navigation menu">
<svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-dots-vertical" width="24" height="24" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round">
<path stroke="none" d="M0 0h24v24H0z" fill="none"></path>
<path d="M12 12m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0"></path>
<path d="M12 19m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0"></path>
<path d="M12 5m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0"></path>
</svg>
</button>
<div class="offcanvas offcanvas-start d-lg-none" tabindex="-1" id="offcanvasNavSection" aria-labelledby="offcanvasNavSectionLabel">
{{ if site.Params.doks.headerBar -}}
<div class="header-bar"></div>
{{ end -}}
<div class="offcanvas-header">
<h5 class="offcanvas-title" id="offcanvasNavSectionLabel">{{ .Section | humanize }}</h5>
<button type="button" class="btn btn-link nav-link p-0" data-bs-dismiss="offcanvas" aria-label="Close">
<svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-x" width="24" height="24" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round">
<path stroke="none" d="M0 0h24v24H0z" fill="none"></path>
<path d="M18 6l-12 12"></path>
<path d="M6 6l12 12"></path>
</svg>
</button>
</div>
<div class="offcanvas-body">
<aside class="doks-sidebar mt-n3">
<nav id="doks-docs-nav" aria-label="Tertiary navigation">
{{ partial "sidebar/docs-menu.html" . }}
</nav>
</aside>
</div>
</div>
{{ end -}}
<!-- Main navigation button -->
<button class="btn btn-link nav-link mx-2 order-3 d-lg-none" type="button" data-bs-toggle="offcanvas" data-bs-target="#offcanvasNavMain" aria-controls="offcanvasNavMain" aria-label="Open main navigation menu">
<svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-menu" width="24" height="24" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round">
<path stroke="none" d="M0 0h24v24H0z" fill="none"></path>
<line x1="4" y1="8" x2="20" y2="8"></line>
<line x1="4" y1="16" x2="20" y2="16"></line>
</svg>
</button>
<!-- Main navigation -->
<div class="offcanvas offcanvas-end h-auto" tabindex="-1" id="offcanvasNavMain" aria-labelledby="offcanvasNavMainLabel">
{{ if site.Params.doks.headerBar -}}
<div class="header-bar d-lg-none"></div>
{{ end -}}
<div class="offcanvas-header">
<h5 class="offcanvas-title" id="offcanvasNavMainLabel">{{ site.Title }}</h5>
<button type="button" class="btn btn-link nav-link p-0" data-bs-dismiss="offcanvas" aria-label="Close">
<svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-x" width="24" height="24" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round">
<path stroke="none" d="M0 0h24v24H0z" fill="none"></path>
<path d="M18 6l-12 12"></path>
<path d="M6 6l12 12"></path>
</svg>
</button>
</div>
<!--
<div class="offcanvas-header">
<h5 class="offcanvas-title fw-bold" id="offcanvasNavMainLabel">{{ .Site.Params.Title }}</h5>
<button class="btn btn-link nav-link ms-auto" type="button" data-bs-dismiss="offcanvas" aria-label="Close menu">
<svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-x" width="24" height="24" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round">
<path stroke="none" d="M0 0h24v24H0z" fill="none"></path>
<path d="M18 6l-12 12"></path>
<path d="M6 6l12 12"></path>
</svg>
</button>
</div>
-->
<div class="offcanvas-body d-flex flex-column flex-lg-row justify-content-between">
<ul class="navbar-nav flex-grow-1">
{{- $current := . -}}
{{- $section := $current.Section -}}
{{ range .Site.Menus.main -}}
{{- $active := or ($current.IsMenuCurrent "main" .) ($current.HasMenuCurrent "main" .) -}}
{{- $active = or $active (eq .Name $current.Title) -}}
{{- $active = or $active (and (eq .Name ($section | humanize)) (eq $current.Section $section)) -}}
{{- $active = or $active (and (eq .Name "Blog") (eq $current.Section "blog" "authors")) -}}
{{ if .HasChildren -}}
<li class="nav-item dropdown">
<a class="nav-link dropdown-toggle" href="#" role="button" data-bs-toggle="dropdown" aria-expanded="false">
{{ .Name -}}
<svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-chevron-down" width="24" height="24" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round">
<path stroke="none" d="M0 0h24v24H0z" fill="none"></path>
<path d="M6 9l6 6l6 -6"></path>
</svg>
</a>
<ul class="dropdown-menu shadow rounded border-0">
{{ range .Children -}}
{{- $active = eq .Name $current.Title -}}
<li><a class="dropdown-item{{ if $active }} active{{ end }}" href="{{ .URL | absURL }}"{{ if $active }} aria-current="true"{{ end }}>{{ .Name }}</a></li>
{{ end -}}
</ul>
</li>
{{ else -}}
<li class="nav-item">
<a class="nav-link{{ if $active }} active{{ end }}" href="{{ .URL | absURL }}"{{ if $active }} aria-current="true"{{ end }}>{{ .Name }}</a>
</li>
{{ end -}}
{{ end -}}
</ul>
<!-- FlexSearch desktop -->
{{ partial "main/showFlexSearch" . }}
{{ $showFlexSearch := .Scratch.Get "showFlexSearch" -}}
{{ if $showFlexSearch -}}
<button type="button" id="searchToggleDesktop" class="btn btn-link nav-link p-2 d-none d-lg-block" aria-label="Search website">
<svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-search" width="24" height="24" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round">
<path stroke="none" d="M0 0h24v24H0z" fill="none"></path>
<circle cx="10" cy="10" r="7"></circle>
<line x1="21" y1="21" x2="15" y2="15"></line>
</svg>
</button>
{{ end -}}
<!-- Language dropdown -->
{{ if eq site.Params.doks.multilingualMode true -}}
<div class="dropdown mt-1 order-lg-2">
<button class="btn btn-dropdown dropdown-toggle" id="doks-languages" data-bs-toggle="dropdown" aria-expanded="false" data-bs-display="static">
<span class="dropdown-caret">
<svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-language" width="24" height="24" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round">
<path stroke="none" d="M0 0h24v24H0z" fill="none"></path>
<path d="M4 5h7"></path>
<path d="M9 3v2c0 4.418 -2.239 8 -5 8"></path>
<path d="M5 9c0 2.144 2.952 3.908 6.7 4"></path>
<path d="M12 20l4 -9l4 9"></path>
<path d="M19.1 18h-6.2"></path>
</svg>
<span id="doks-language-current">{{ .Site.Language.LanguageName }}</span>
<svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-chevron-down" width="24" height="24" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round">
<path stroke="none" d="M0 0h24v24H0z" fill="none"></path>
<path d="M6 9l6 6l6 -6"></path>
</svg>
</span>
</button>
<ul class="dropdown-menu dropdown-menu-lg-end me-lg-2 shadow rounded border-0" aria-labelledby="doks-languages">
<li><span class="dropdown-item current" aria-current="true">{{ .Site.Language.LanguageName }}</span></li>
<li><hr class="dropdown-divider"></li>
{{ if site.Params.doks.showMissingLanguages -}}
{{ $translatedLangs := slice -}}
{{ range .Translations -}}
{{ $translatedLangs = $translatedLangs | append .Lang }}
{{- end }}
{{ range site.Languages -}}
{{ if and (ne $.Lang .Lang) (not (in $.Params.skipTranslations .Lang)) -}}
{{ $isTranslated := in $translatedLangs .Lang -}}
<li><a class="dropdown-item {{ if not $isTranslated }}untranslated{{ end }}" rel="alternate" href="{{ if $isTranslated }}{{ (index (where $.Translations "Lang" .Lang) 0).RelPermalink }}{{ else }}{{ .Lang | relURL }}{{ end }}" hreflang="{{ .Lang }}" lang="{{ .Lang }}">{{ .LanguageName }}</a></li>
{{- end }}
{{- end }}
{{ else -}}
{{ range .Translations -}}
<li><a class="dropdown-item" rel="alternate" href="{{ .RelPermalink }}" hreflang="{{ .Lang }}" lang="{{ .Lang }}">{{ .Language.LanguageName }}</a></li>
{{- end }}
{{- end }}
<!--
<li><hr class="dropdown-divider"></li>
<li><a class="dropdown-item" href="/docs/contributing/how-to-contribute/">Help Translate</a></li>
-->
</ul>
</div>
{{ end -}}
<!-- Versioning dropdown -->
{{ if eq site.Params.doks.docsVersioning true -}}
<div class="dropdown mt-1 order-lg-3">
<button class="btn btn-dropdown dropdown-toggle" id="doks-versions" data-bs-toggle="dropdown" aria-expanded="false" data-bs-display="static" aria-label="Toggle version menu">
<span class="d-none">Doks</span> v{{ site.Params.doks.docsVersion }}
<span class="dropdown-caret">
<svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-chevron-down" width="24" height="24" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round">
<path stroke="none" d="M0 0h24v24H0z" fill="none"></path>
<path d="M6 9l6 6l6 -6"></path>
</svg>
</span>
</button>
<ul class="dropdown-menu dropdown-menu-lg-end me-lg-2 shadow rounded border-0" aria-labelledby="doks-versions">
<li><a class="dropdown-item current" aria-current="true" href="/docs/{{ site.Params.doks.docsVersion }}/prologue/introduction/">Latest ({{ site.Params.doks.docsVersion }}.x)</a></li>
<li><hr class="dropdown-divider"></li>
<li><a class="dropdown-item" href="/docs/0.2/prologue/introduction/">v0.2.x</a></li>
<li><a class="dropdown-item" href="/docs/0.1/prologue/introduction/">v0.1.x</a></li>
<li><hr class="dropdown-divider"></li>
<li><a class="dropdown-item" href="/docs/versions/">All versions</a></li>
</ul>
</div>
{{ end -}}
<!-- Color mode toggler -->
{{ if and (eq site.Params.doks.colorMode "auto") site.Params.doks.colorModeToggler -}}
<button id="buttonColorMode" class="btn btn-link mx-auto nav-link p-0 ms-lg-2 me-lg-1" type="button" aria-label="Toggle theme">
<svg data-bs-theme-value="dark" xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-moon" width="24" height="24" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round">
<path stroke="none" d="M0 0h24v24H0z" fill="none"></path>
<path d="M12 3c.132 0 .263 0 .393 0a7.5 7.5 0 0 0 7.92 12.446a9 9 0 1 1 -8.313 -12.454z"></path>
</svg>
<svg data-bs-theme-value="light" xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-sun" width="24" height="24" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round">
<path stroke="none" d="M0 0h24v24H0z" fill="none"></path>
<path d="M12 12m-4 0a4 4 0 1 0 8 0a4 4 0 1 0 -8 0m-5 0h1m8 -9v1m8 8h1m-9 8v1m-6.4 -15.4l.7 .7m12.1 -.7l-.7 .7m0 11.4l.7 .7m-12.1 -.7l-.7 .7"></path>
</svg>
</button>
{{ end -}}
<!-- Social menu -->
{{ if .Site.Menus.social -}}
<ul id="socialMenu" class="nav mx-auto flex-row order-lg-4">
{{ range .Site.Menus.social -}}
<li class="nav-item">
<a class="nav-link social-link" href="{{ .URL | relURL }}">{{ .Pre | safeHTML }}<small class="ms-2 visually-hidden">{{ .Name | safeHTML }}</small></a>
</li>
{{ end -}}
</ul>
{{ end -}}
{{ partial "header/header-menu-social.html" . }}
<!-- Navbar button mobile -->
{{ if site.Params.doks.navBarButton -}}
<a class="btn btn-primary rounded-pill mt-2 btn-block d-lg-none" href="{{ site.Params.doks.navBarButtonUrl | absURL }}" role="button">{{ site.Params.doks.navBarButtonText }}</a>
{{ end -}}
</div>
</div>
<!-- Navbar button desktop -->
{{ if site.Params.doks.navBarButton -}}
<a class="btn btn-primary rounded-pill ms-3 me-2 px-4 order-lg-3 d-none d-lg-block" href="{{ site.Params.doks.navBarButtonUrl | absURL }}" role="button">{{ site.Params.doks.navBarButtonText }}</a>
{{ end -}}
</div>
</header>
{{ if site.Params.doks.navbarSticky -}}
</div>
{{ end -}}
<!-- Search modal -->
{{ if site.Params.doks.flexSearch -}}
{{ partial "header/search-modal" . }}
{{ end -}}

View File

@ -0,0 +1 @@
{{ site.Params.domain }}

View File

@ -0,0 +1 @@
{{ site.Title }}