1
0
Fork 0
mirror of https://github.com/YunoHost-Apps/outline_ynh.git synced 2024-09-03 19:56:12 +02:00

Merge pull request #107 from YunoHost-Apps/testing

Testing
This commit is contained in:
eric_G 2024-05-19 12:02:52 +02:00 committed by GitHub
commit 5ad15eec3c
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
12 changed files with 217 additions and 386 deletions

View file

@ -1,6 +1,8 @@
# All available README files by language # All available README files by language
- [Read the README in English](README.md) - [Read the README in English](README.md)
- [Lee el README en español](README_es.md)
- [Irakurri README euskaraz](README_eu.md)
- [Lire le README en français](README_fr.md) - [Lire le README en français](README_fr.md)
- [Le o README en galego](README_gl.md) - [Le o README en galego](README_gl.md)
- [Leggi il “README” in italiano](README_it.md) - [阅读中文(简体)的 README](README_zh_Hans.md)

View file

@ -9,7 +9,7 @@ It shall NOT be edited by hand.
[![Install Outline with YunoHost](https://install-app.yunohost.org/install-with-yunohost.svg)](https://install-app.yunohost.org/?app=outline) [![Install Outline with YunoHost](https://install-app.yunohost.org/install-with-yunohost.svg)](https://install-app.yunohost.org/?app=outline)
*[Read this README is other languages.](./ALL_README.md)* *[Read this README in other languages.](./ALL_README.md)*
> *This package allows you to install Outline quickly and simply on a YunoHost server.* > *This package allows you to install Outline quickly and simply on a YunoHost server.*
> *If you don't have YunoHost, please consult [the guide](https://yunohost.org/install) to learn how to install it.* > *If you don't have YunoHost, please consult [the guide](https://yunohost.org/install) to learn how to install it.*
@ -25,7 +25,7 @@ Outline is a wiki and knowledge base for growing teams. Beautiful, feature rich,
- Using Yunohost's built-in SMTP server for notifications - Using Yunohost's built-in SMTP server for notifications
**Shipped version:** 0.75.0~ynh1 **Shipped version:** 0.76.1~ynh1
**Demo:** <https://app.getoutline.com/create> **Demo:** <https://app.getoutline.com/create>
@ -35,7 +35,7 @@ Outline is a wiki and knowledge base for growing teams. Beautiful, feature rich,
## :red_circle: Antifeatures ## :red_circle: Antifeatures
- **Not totally free upstream**: The packaged app is under an overall free licence, but with clauses that restrict its use. - **Not totally free upstream**: The packaged app is under an overall free license, but with clauses that may restrict its use.
## Documentation and resources ## Documentation and resources

61
README_es.md Normal file
View file

@ -0,0 +1,61 @@
<!--
Este archivo README esta generado automaticamente<https://github.com/YunoHost/apps/tree/master/tools/readme_generator>
No se debe editar a mano.
-->
# Outline para Yunohost
[![Nivel de integración](https://dash.yunohost.org/integration/outline.svg)](https://dash.yunohost.org/appci/app/outline) ![Estado funcional](https://ci-apps.yunohost.org/ci/badges/outline.status.svg) ![Estado En Mantención](https://ci-apps.yunohost.org/ci/badges/outline.maintain.svg)
[![Instalar Outline con Yunhost](https://install-app.yunohost.org/install-with-yunohost.svg)](https://install-app.yunohost.org/?app=outline)
*[Leer este README en otros idiomas.](./ALL_README.md)*
> *Este paquete le permite instalarOutline rapidamente y simplement en un servidor YunoHost.*
> *Si no tiene YunoHost, visita [the guide](https://yunohost.org/install) para aprender como instalarla.*
## Descripción general
Outline is a wiki and knowledge base for growing teams. Beautiful, feature rich, and markdown compatible.
### Features
- Fully working installation of Outline wiki
- Including a Dex server to connect to YunoHost's LDAP userbase using an OIDC auth flow
- Using Yunohost's built-in SMTP server for notifications
**Versión actual:** 0.76.1~ynh1
**Demo:** <https://app.getoutline.com/create>
## Capturas
![Captura de Outline](./doc/screenshots/screenshot.png)
## :red_circle: funcionalidades no deseadas
- **Not totally free upstream**: The packaged app is under an overall free license, but with clauses that may restrict its use.
## Documentaciones y recursos
- Sitio web oficial: <https://www.getoutline.com>
- Documentación usuario oficial: <https://www.getoutline.com/about>
- Documentación administrador oficial: <https://www.getoutline.com/developers>
- Repositorio del código fuente oficial de la aplicación : <https://github.com/outline/outline>
- Catálogo YunoHost: <https://apps.yunohost.org/app/outline>
- Reportar un error: <https://github.com/YunoHost-Apps/outline_ynh/issues>
## Información para desarrolladores
Por favor enviar sus correcciones a la [`branch testing`](https://github.com/YunoHost-Apps/outline_ynh/tree/testing
Para probar la rama `testing`, sigue asÍ:
```bash
sudo yunohost app install https://github.com/YunoHost-Apps/outline_ynh/tree/testing --debug
o
sudo yunohost app upgrade outline -u https://github.com/YunoHost-Apps/outline_ynh/tree/testing --debug
```
**Mas informaciones sobre el empaquetado de aplicaciones:** <https://yunohost.org/packaging_apps>

61
README_eu.md Normal file
View file

@ -0,0 +1,61 @@
<!--
Ohart ongi: README hau automatikoki sortu da <https://github.com/YunoHost/apps/tree/master/tools/readme_generator>ri esker
EZ editatu eskuz.
-->
# Outline YunoHost-erako
[![Integrazio maila](https://dash.yunohost.org/integration/outline.svg)](https://dash.yunohost.org/appci/app/outline) ![Funtzionamendu egoera](https://ci-apps.yunohost.org/ci/badges/outline.status.svg) ![Mantentze egoera](https://ci-apps.yunohost.org/ci/badges/outline.maintain.svg)
[![Instalatu Outline YunoHost-ekin](https://install-app.yunohost.org/install-with-yunohost.svg)](https://install-app.yunohost.org/?app=outline)
*[Irakurri README hau beste hizkuntzatan.](./ALL_README.md)*
> *Pakete honek Outline YunoHost zerbitzari batean azkar eta zailtasunik gabe instalatzea ahalbidetzen dizu.*
> *YunoHost ez baduzu, kontsultatu [gida](https://yunohost.org/install) nola instalatu ikasteko.*
## Aurreikuspena
Outline is a wiki and knowledge base for growing teams. Beautiful, feature rich, and markdown compatible.
### Features
- Fully working installation of Outline wiki
- Including a Dex server to connect to YunoHost's LDAP userbase using an OIDC auth flow
- Using Yunohost's built-in SMTP server for notifications
**Paketatutako bertsioa:** 0.76.1~ynh1
**Demoa:** <https://app.getoutline.com/create>
## Pantaila-argazkiak
![Outline(r)en pantaila-argazkia](./doc/screenshots/screenshot.png)
## :red_circle: Ezaugarri zalantzagarriak
- **Jatorrizkoa ez da erabat librea**: Aplikazioak lizentzia librea du orokorrean, baina bere erabilera mugatzen duten klausulekin.
## Dokumentazioa eta baliabideak
- Aplikazioaren webgune ofiziala: <https://www.getoutline.com>
- Erabiltzaileen dokumentazio ofiziala: <https://www.getoutline.com/about>
- Administratzaileen dokumentazio ofiziala: <https://www.getoutline.com/developers>
- Jatorrizko aplikazioaren kode-gordailua: <https://github.com/outline/outline>
- YunoHost Denda: <https://apps.yunohost.org/app/outline>
- Eman errore baten berri: <https://github.com/YunoHost-Apps/outline_ynh/issues>
## Garatzaileentzako informazioa
Bidali `pull request`a [`testing` abarrera](https://github.com/YunoHost-Apps/outline_ynh/tree/testing).
`testing` abarra probatzeko, ondorengoa egin:
```bash
sudo yunohost app install https://github.com/YunoHost-Apps/outline_ynh/tree/testing --debug
edo
sudo yunohost app upgrade outline -u https://github.com/YunoHost-Apps/outline_ynh/tree/testing --debug
```
**Informazio gehiago aplikazioaren paketatzeari buruz:** <https://yunohost.org/packaging_apps>

View file

@ -24,7 +24,7 @@ Outile est un wiki et la base de connaissances les plus rapides pour les équipe
- Y compris un serveur Dex pour se connecter à la base d'utilisateurs LDAP de YunoHost à l'aide d'un flux d'authentification OIDC - Y compris un serveur Dex pour se connecter à la base d'utilisateurs LDAP de YunoHost à l'aide d'un flux d'authentification OIDC
- Utilisation du serveur SMTP intégré de Yunohost pour les notifications - Utilisation du serveur SMTP intégré de Yunohost pour les notifications
**Version incluse:** 0.75.0~ynh1 **Version incluse:** 0.76.1~ynh1
**Démo:** <https://app.getoutline.com/create> **Démo:** <https://app.getoutline.com/create>
@ -34,7 +34,7 @@ Outile est un wiki et la base de connaissances les plus rapides pour les équipe
## :red_circle: Anti-fonctionnalités ## :red_circle: Anti-fonctionnalités
- **Application sous licence libre restreinte**: L'application packagée est sous une licence globalement libre, mais avec des clauses qui pourraient restreindre son utilisation. - **Application sous licence libre restreinte **: L'application packagée est sous une licence globalement libre, mais avec des clauses qui pourraient restreindre son utilisation.
## Documentations et ressources ## Documentations et ressources

View file

@ -25,7 +25,7 @@ Outline is a wiki and knowledge base for growing teams. Beautiful, feature rich,
- Using Yunohost's built-in SMTP server for notifications - Using Yunohost's built-in SMTP server for notifications
**Versión proporcionada:** 0.75.0~ynh1 **Versión proporcionada:** 0.76.1~ynh1
**Demo:** <https://app.getoutline.com/create> **Demo:** <https://app.getoutline.com/create>
@ -33,9 +33,9 @@ Outline is a wiki and knowledge base for growing teams. Beautiful, feature rich,
![Captura de pantalla de Outline](./doc/screenshots/screenshot.png) ![Captura de pantalla de Outline](./doc/screenshots/screenshot.png)
## :red_circle: Caraterísticas cuestionables ## :red_circle: Debes considerar
- **Not totally free upstream**: The packaged app is under an overall free licence, but with clauses that restrict its use. - **Not totally free upstream**: The packaged app is under an overall free license, but with clauses that may restrict its use.
## Documentación e recursos ## Documentación e recursos

61
README_zh_Hans.md Normal file
View file

@ -0,0 +1,61 @@
<!--
注意:此 README 由 <https://github.com/YunoHost/apps/tree/master/tools/readme_generator> 自动生成
请勿手动编辑。
-->
# YunoHost 上的 Outline
[![集成程度](https://dash.yunohost.org/integration/outline.svg)](https://dash.yunohost.org/appci/app/outline) ![工作状态](https://ci-apps.yunohost.org/ci/badges/outline.status.svg) ![维护状态](https://ci-apps.yunohost.org/ci/badges/outline.maintain.svg)
[![使用 YunoHost 安装 Outline](https://install-app.yunohost.org/install-with-yunohost.svg)](https://install-app.yunohost.org/?app=outline)
*[阅读此 README 的其它语言版本。](./ALL_README.md)*
> *通过此软件包,您可以在 YunoHost 服务器上快速、简单地安装 Outline。*
> *如果您还没有 YunoHost请参阅[指南](https://yunohost.org/install)了解如何安装它。*
## 概况
Outline is a wiki and knowledge base for growing teams. Beautiful, feature rich, and markdown compatible.
### Features
- Fully working installation of Outline wiki
- Including a Dex server to connect to YunoHost's LDAP userbase using an OIDC auth flow
- Using Yunohost's built-in SMTP server for notifications
**分发版本:** 0.76.1~ynh1
**演示:** <https://app.getoutline.com/create>
## 截图
![Outline 的截图](./doc/screenshots/screenshot.png)
## :red_circle: 负面特征
- **Not totally free upstream**: The packaged app is under an overall free license, but with clauses that may restrict its use.
## 文档与资源
- 官方应用网站: <https://www.getoutline.com>
- 官方用户文档: <https://www.getoutline.com/about>
- 官方管理文档: <https://www.getoutline.com/developers>
- 上游应用代码库: <https://github.com/outline/outline>
- YunoHost 商店: <https://apps.yunohost.org/app/outline>
- 报告 bug <https://github.com/YunoHost-Apps/outline_ynh/issues>
## 开发者信息
请向 [`testing` 分支](https://github.com/YunoHost-Apps/outline_ynh/tree/testing) 发送拉取请求。
如要尝试 `testing` 分支,请这样操作:
```bash
sudo yunohost app install https://github.com/YunoHost-Apps/outline_ynh/tree/testing --debug
sudo yunohost app upgrade outline -u https://github.com/YunoHost-Apps/outline_ynh/tree/testing --debug
```
**有关应用打包的更多信息:** <https://yunohost.org/packaging_apps>

View file

@ -5,7 +5,7 @@ name = "Outline"
description.en = "Wiki and knowledge base for teams" description.en = "Wiki and knowledge base for teams"
description.fr = "Wiki et base de connaissances pour les équipes" description.fr = "Wiki et base de connaissances pour les équipes"
version = "0.75.0~ynh1" version = "0.76.1~ynh1"
maintainers = ["Raoul de Limezy"] maintainers = ["Raoul de Limezy"]
@ -55,8 +55,8 @@ ram.runtime = "50M"
[resources] [resources]
[resources.sources.main] [resources.sources.main]
url = "https://github.com/outline/outline/archive/2c9b01391fa12ebfd65dc01ec33bbb4941ef23bf.zip" url = "https://github.com/outline/outline/archive/86abd274b0865a4453bd5245392a0a042e68931b.zip"
sha256 = "1bf8ef7fdac470ed0faeefd9575ffbac1f12d623e89d9ee244b2f83788d92933" sha256 = "65cd3b1d4420cd4ae1f50345b45c89ede2d75b377576cdc6d2db48d5f24c6c4c"
[resources.system_user] [resources.system_user]
allow_email = true allow_email = true

View file

@ -29,7 +29,7 @@ if yunohost app list | grep -q "$YNH_APP_ARG_DEX_DOMAIN$YNH_APP_ARG_DEX_PATH"; t
ynh_die "The domain provided for Dex is already used by another app. Please chose another one !" ynh_die "The domain provided for Dex is already used by another app. Please chose another one !"
fi fi
yunohost app install https://github.com/YunoHost-Apps/dex_ynh --force --args "domain=$dex_domain&path=$dex_path&oidc_name=$oidc_name&oidc_secret=$oidc_secret&oidc_callback=$oidc_callback" 2>&1 | tee dexlog.txt yunohost app install https://github.com/YunoHost-Apps/dex_ynh/tree/ccc5b82dc9762b42abe82dfa0582e6e4bb6175c5 --force --args "domain=$dex_domain&path=$dex_path&oidc_name=$oidc_name&oidc_secret=$oidc_secret&oidc_callback=$oidc_callback" 2>&1 | tee dexlog.txt
dex_app=$(gawk 'match($0, /Installation of (.+) completed/, app) {print app[1]}' dexlog.txt) dex_app=$(gawk 'match($0, /Installation of (.+) completed/, app) {print app[1]}' dexlog.txt)
rm dexlog.txt rm dexlog.txt

View file

@ -21,7 +21,7 @@ if ! yunohost app list | grep -q "id: $dex_app"; then
if yunohost app list | grep -q "$dex_domain$dex_path"; then if yunohost app list | grep -q "$dex_domain$dex_path"; then
ynh_die "The domain provided for Dex is already used by another app. Please chose another one !" ynh_die "The domain provided for Dex is already used by another app. Please chose another one !"
fi fi
yunohost app install https://github.com/YunoHost-Apps/dex_ynh --force --args "domain=$dex_domain&path=$dex_path&oidc_name=$oidc_name&oidc_secret=$oidc_secret&oidc_callback=$oidc_callback" yunohost app install https://github.com/YunoHost-Apps/dex_ynh/tree/ccc5b82dc9762b42abe82dfa0582e6e4bb6175c5 --force --args "domain=$dex_domain&path=$dex_path&oidc_name=$oidc_name&oidc_secret=$oidc_secret&oidc_callback=$oidc_callback"
fi fi
#================================================= #=================================================

View file

@ -58,11 +58,28 @@ then
ynh_script_progression --message="Don't forget to remove MinIO app if you don't use it !" ynh_script_progression --message="Don't forget to remove MinIO app if you don't use it !"
db_name=$(ynh_sanitize_dbid --db_name=$app) db_name=$(ynh_sanitize_dbid --db_name=$app)
ynh_psql_execute_as_root --sql="CREATE EXTENSION IF NOT EXISTS uuid-ossp;" --database=$db_name ynh_psql_execute_as_root --sql="CREATE EXTENSION IF NOT EXISTS "uuid-ossp";" --database=$db_name
else else
ynh_script_progression --message="No migration to be done" ynh_script_progression --message="No migration to be done"
fi fi
#=======================================================
# MIGRATE DEFAULT LANGUAGE ENV PARAMETER
#=======================================================
if ynh_compare_current_package_version --comparison le --version 0.75.0~ynh1
then
ynh_script_progression --message="Migrating default language variable"
if [ "$language" == "fr" ]
then
ynh_app_setting_set --app=$app --key=language --value="fr_FR"
else
ynh_app_setting_set --app=$app --key=language --value="en_US"
fi
else
ynh_script_progression --message="No default language migration to be done"
fi
#================================================= #=================================================
# NGINX CONFIGURATION # NGINX CONFIGURATION
#================================================= #=================================================

View file

@ -1,371 +0,0 @@
diff --git a/app/components/Icons/OutlineIcon.tsx b/app/components/Icons/OutlineIcon.tsx
index bb7f29ce7..70db50bcd 100644
--- a/app/components/Icons/OutlineIcon.tsx
+++ b/app/components/Icons/OutlineIcon.tsx
@@ -22,7 +22,10 @@ export default function OutlineIcon({
viewBox={cover ? "2 2 20 20" : "0 0 24 24"}
version="1.1"
>
- <path d="M14.6667 20.2155V20.7163C14.6667 21.4253 14.0697 22 13.3333 22C13.1044 22 12.8792 21.9432 12.6797 21.8351L4.67965 17.5028C4.25982 17.2754 4 16.8478 4 16.384V7.61623C4 7.15248 4.25982 6.72478 4.67965 6.49742L12.6797 2.16508C13.3215 1.81751 14.1344 2.03666 14.4954 2.65456C14.6077 2.8467 14.6667 3.06343 14.6667 3.28388V3.78471L15.6169 3.51027C16.3222 3.30655 17.0655 3.69189 17.2771 4.37093C17.3144 4.49059 17.3333 4.61486 17.3333 4.73979V5.26091L18.5013 5.12036C19.232 5.03242 19.8984 5.53141 19.9897 6.23488C19.9966 6.2877 20 6.34088 20 6.3941V17.6061C20 18.3151 19.403 18.8898 18.6667 18.8898C18.6114 18.8898 18.5561 18.8865 18.5013 18.8799L17.3333 18.7393V19.2604C17.3333 19.9694 16.7364 20.5441 16 20.5441C15.8702 20.5441 15.7412 20.5259 15.6169 20.49L14.6667 20.2155ZM14.6667 18.8753L16 19.2604V4.73979L14.6667 5.12488V18.8753ZM17.3333 6.55456V17.4457L18.6667 17.6061V6.3941L17.3333 6.55456ZM5.33333 7.61623V16.384L13.3333 20.7163V3.28388L5.33333 7.61623ZM6.66667 8.47006L8 7.82823V16.172L6.66667 15.5302V8.47006Z" />
+ <path
+ d="m 20.289859,11.238917 c 1.1839,-0.602335 1.765465,-1.4746827 1.765465,-2.6378124 0,-0.9346579 -0.332322,-1.7031547 -0.996968,-2.2847194 -0.685416,-0.6023353 -1.557763,-0.913888 -2.617042,-0.913888 -1.350062,0 -2.388571,0.3946336 -3.136297,1.1839 -0.643876,0.6854159 -1.14236,1.495453 -1.433142,2.4508809 -0.290783,0.9761979 -0.436174,2.2639489 -0.436174,3.8424829 v 8.017288 c 0,1.495452 -0.145391,2.533961 -0.436174,3.136296 h 2.907825 c 0.270012,-0.685416 0.415404,-1.723925 0.415404,-3.136296 v -1.370832 c 0.602335,0.373863 1.24621,0.540025 1.931626,0.540025 1.246211,0 2.305489,-0.415404 3.177837,-1.246211 1.017739,-0.976198 1.516223,-2.222409 1.516223,-3.738632 0,-1.993936 -0.893118,-3.260917 -2.679353,-3.800942 z M 16.322756,9.4942219 c 0,-1.1839 0.08308,-2.035477 0.270012,-2.5339614 0.207702,-0.6231053 0.623105,-0.9138877 1.22544,-0.9138877 0.456944,0 0.810037,0.353093 1.059279,1.0592788 0.207702,0.581565 0.290783,1.2877513 0.290783,2.097788 0,0.3530929 -0.02077,0.7061859 -0.103851,1.0385084 -0.103851,0.436174 -0.228472,0.664646 -0.373863,0.664646 l -0.934658,-0.186931 c -0.664646,0 -0.996969,0.186931 -0.996969,0.560794 0,0.353093 0.270012,0.540025 0.830808,0.540025 l 0.893117,-0.186932 c 0.228472,0 0.498484,0.270013 0.768496,0.768497 0.415404,0.747726 0.623106,1.682384 0.623106,2.866284 0,1.474682 -0.103851,2.492421 -0.311553,3.094756 -0.249242,0.706186 -0.747726,1.059279 -1.474682,1.059279 -0.789267,0 -1.391602,-0.373863 -1.765465,-1.14236 z M 4.7941133,15.254891 Q 4.50597,15.041916 4.2303546,14.929164 q -0.2630873,-0.12528 -0.6389264,-0.12528 -0.400895,0 -0.9395978,0.150336 -0.5261747,0.137807 -1.3530207,0.425951 -0.087696,-0.0877 -0.1879196,-0.238032 Q 1.0231943,14.991803 0.98561039,14.82894 1.3739774,14.528269 1.8500403,14.190013 2.3386312,13.851758 2.9023899,13.500975 2.4639109,13.024912 2.1632396,12.624017 1.8625683,12.223122 1.6746488,11.884867 1.4867292,11.534084 1.3990334,11.208357 q -0.075168,-0.325728 -0.075168,-0.651455 0,-0.400895 0.1127517,-0.8268457 Q 1.561897,9.2915774 1.8124565,8.7904584 2.0755438,8.2768117 2.4764389,7.687997 2.8773339,7.0866545 3.4410926,6.3475042 3.0903094,5.9716651 2.7771101,5.658466 2.4764389,5.3452666 2.2384074,5.0571236 2.012904,4.7689802 1.8750963,4.5058928 1.7498166,4.2302774 1.7498166,3.9296061 q 0,-0.3633111 0.1628636,-0.7015663 Q 2.2008235,2.6266973 2.5140228,2.0879945 2.83975,1.5367639 3.1654772,0.9730052 3.3032849,0.9354213 3.4786765,0.9604772 q 0.1753915,0.012528 0.3131992,0.0751677 -0.012528,0.1002238 -0.012528,0.2129756 0,0.1127517 0,0.2004475 0,0.2630873 0.037584,0.5136467 0.037584,0.2380315 0.1378077,0.4885909 Q 4.054963,2.701865 4.2303546,2.9774804 4.4057462,3.2530957 4.6938895,3.578823 5.2200642,4.1425816 5.808879,4.7439241 6.4102214,5.3327389 7.0240919,5.9215533 7.6379623,6.4978401 8.2518332,7.0615985 8.8657036,7.6128292 9.4294624,8.1264762 9.8303572,7.700525 10.105973,7.3747979 q 0.288143,-0.3382551 0.463534,-0.5888148 0.18792,-0.2505593 0.263088,-0.4510069 0.08769,-0.2004472 0.08769,-0.3883668 0,-0.2881434 -0.200447,-0.5387027 Q 10.531923,5.1448193 10.068388,4.7439241 9.6925497,4.4181971 9.454518,4.1926935 9.2164867,3.96719 9.0786789,3.7917984 8.9533994,3.6038789 8.9032873,3.4535433 8.8657036,3.3032076 8.8657036,3.127816 q 0,-0.3006713 0.3633112,-0.839374 0.3758391,-0.5512306 1.2778532,-1.37807665 0.100223,-0.0250559 0.263087,0.0250559 0.162863,0.0501119 0.288143,0.11275175 -0.01253,0.1252797 -0.02506,0.2129755 0,0.087696 0,0.1628636 0,0.1378077 0.03758,0.2505594 0.03758,0.1127518 0.150336,0.2505594 0.112752,0.1252797 0.313199,0.3131993 0.200448,0.1879195 0.526175,0.4760628 0.726622,0.6514545 1.014766,1.0398216 0.288143,0.375839 0.288143,0.6890381 0,0.2380317 -0.112752,0.5888148 -0.100224,0.3507831 -0.438479,0.8769578 -0.338255,0.5136467 -0.964653,1.240269 -0.613871,0.7266222 -1.641164,1.7163319 0.538702,0.4885909 0.914541,0.8519021 0.388367,0.3507827 0.663983,0.6138707 0.275615,0.263087 0.463535,0.451007 0.200447,0.187919 0.363311,0.338255 0.488591,0.451007 0.751678,0.814318 0.263087,0.363311 0.263087,0.651454 0,0.225504 -0.100223,0.463535 -0.25056,0.576287 -0.476063,1.127517 -0.225504,0.551231 -0.463535,1.165102 -0.313199,0.02506 -0.551231,-0.03758 -0.187919,-0.501119 -0.451007,-0.92707 -0.250559,-0.425951 -0.55123,-0.80179 Q 10.744899,13.200304 10.419172,12.862049 10.093445,12.523794 9.7677178,12.198066 9.1037353,11.546612 8.3270013,10.81999 7.5627949,10.093367 6.811117,9.4043289 6.0594387,8.7152906 5.3829281,8.1139482 4.7189459,7.5126054 4.242883,7.0991825 3.6916523,7.8258048 3.5037328,8.3519795 3.3283412,8.8656262 3.3283412,9.3291611 q 0,0.3758392 0.1628636,0.7642059 0.1753916,0.388367 0.5387027,0.851902 0.3758391,0.463535 0.9646538,1.027294 0.5888144,0.563759 1.4407165,1.315437 0.025055,0.06264 0,0.125279 z"
+ id="path11"
+ style="stroke-width:0.36652" />
</svg>
);
}
diff --git a/app/editor/menus/block.tsx b/app/editor/menus/block.tsx
index 301c2610d..1e6917bd8 100644
--- a/app/editor/menus/block.tsx
+++ b/app/editor/menus/block.tsx
@@ -20,6 +20,7 @@ import {
MathIcon,
DoneIcon,
EmbedIcon,
+ BookmarkedIcon,
} from "outline-icons";
import * as React from "react";
import styled from "styled-components";
@@ -195,6 +196,13 @@ export default function blockMenuItems(dictionary: Dictionary): MenuItem[] {
keywords: "notice card suggestion",
attrs: { style: "tip" },
},
+ {
+ name: "container_notice",
+ title: dictionary.bibleNotice,
+ icon: <BookmarkedIcon />,
+ keywords: "notice card bible",
+ attrs: { style: "bible" },
+ },
{
name: "separator",
},
diff --git a/app/hooks/useDictionary.ts b/app/hooks/useDictionary.ts
index 6a73e6750..15b74aa9e 100644
--- a/app/hooks/useDictionary.ts
+++ b/app/hooks/useDictionary.ts
@@ -81,6 +81,8 @@ export default function useDictionary() {
warningNotice: t("Warning notice"),
success: t("Success"),
successNotice: t("Success notice"),
+ bible: t("Bible"),
+ bibleNotice: t("Bible quote"),
insertDate: t("Current date"),
insertTime: t("Current time"),
insertDateTime: t("Current date and time"),
diff --git a/app/scenes/Document/components/Document.tsx b/app/scenes/Document/components/Document.tsx
index a231a90ee..67684d36d 100644
--- a/app/scenes/Document/components/Document.tsx
+++ b/app/scenes/Document/components/Document.tsx
@@ -532,11 +532,6 @@ class DocumentScene extends React.Component<Props> {
</Flex>
</React.Suspense>
</MaxWidth>
- {isShare &&
- !parseDomain(window.location.origin).custom &&
- !auth.user && (
- <Branding href="//www.getoutline.com?ref=sharelink" />
- )}
</Container>
{!isShare && (
<Footer>
diff --git a/app/scenes/Login/components/AuthenticationProvider.tsx b/app/scenes/Login/components/AuthenticationProvider.tsx
index 5d564453d..9e3c5b55b 100644
--- a/app/scenes/Login/components/AuthenticationProvider.tsx
+++ b/app/scenes/Login/components/AuthenticationProvider.tsx
@@ -70,7 +70,7 @@ function AuthenticationProvider(props: Props) {
<InputLarge
type="email"
name="email"
- placeholder="me@domain.com"
+ placeholder="email@domaine.fr"
value={email}
onChange={handleChangeEmail}
disabled={isSubmitting}
@@ -79,12 +79,12 @@ function AuthenticationProvider(props: Props) {
short
/>
<ButtonLarge type="submit" disabled={isSubmitting}>
- {t("Sign In")} →
+ {t("S'identifier")} →
</ButtonLarge>
</>
) : (
<ButtonLarge type="submit" icon={<EmailIcon />} fullwidth>
- {t("Continue with Email")}
+ {t("Accès membre (email)")}
</ButtonLarge>
)}
</Form>
@@ -99,7 +99,7 @@ function AuthenticationProvider(props: Props) {
icon={<PluginIcon id={id} />}
fullwidth
>
- {t("Continue with {{ authProviderName }}", {
+ {t("Accès {{ authProviderName }}", {
authProviderName: name,
})}
</ButtonLarge>
diff --git a/app/scenes/Login/index.tsx b/app/scenes/Login/index.tsx
index 9a9650b48..5357d5cf5 100644
--- a/app/scenes/Login/index.tsx
+++ b/app/scenes/Login/index.tsx
@@ -264,7 +264,7 @@ function Login({ children }: Props) {
) : (
<>
<StyledHeading as="h2" centered>
- {t("Login to {{ authProviderName }}", {
+ {t("Bienvenue sur Anthropologie Biblique", {
authProviderName: config.name || env.APP_NAME,
})}
</StyledHeading>
@@ -282,7 +282,7 @@ function Login({ children }: Props) {
{hasMultipleProviders && (
<>
<Note>
- {t("You signed in with {{ authProviderName }} last time.", {
+ {t("Vous vous êtes authentifié avec l'accès {{ authProviderName }} la dernière fois.", {
authProviderName: defaultProvider.name,
})}
</Note>
diff --git a/app/typings/styled-components.d.ts b/app/typings/styled-components.d.ts
index be368444f..ecfcae00c 100644
--- a/app/typings/styled-components.d.ts
+++ b/app/typings/styled-components.d.ts
@@ -54,6 +54,8 @@ declare module "styled-components" {
noticeWarningText: string;
noticeSuccessBackground: string;
noticeSuccessText: string;
+ noticeBibleBackground: string;
+ noticeBibleText: string;
}
interface Colors {
diff --git a/package.json b/package.json
index e0d3f56ea..fcd1ce270 100644
--- a/package.json
+++ b/package.json
@@ -160,6 +160,7 @@
"pg-tsquery": "^8.4.1",
"pluralize": "^8.0.0",
"png-chunks-extract": "^1.0.0",
+ "passport-req": "^0.1.1",
"polished": "^4.2.2",
"prosemirror-codemark": "^0.4.2",
"prosemirror-commands": "^1.5.2",
diff --git a/plugins/req/plugin.json b/plugins/req/plugin.json
new file mode 100644
index 000000000..ae7c40333
--- /dev/null
+++ b/plugins/req/plugin.json
@@ -0,0 +1,4 @@
+{
+ "name": "visiteur",
+ "description": "Adds an req compatible authentication provider."
+}
diff --git a/plugins/req/server/auth/req.ts b/plugins/req/server/auth/req.ts
new file mode 100644
index 000000000..bc03fc6d3
--- /dev/null
+++ b/plugins/req/server/auth/req.ts
@@ -0,0 +1,70 @@
+import passport from "@outlinewiki/koa-passport";
+import type { Context } from "koa";
+import Router from "koa-router";
+import { capitalize } from "lodash";
+import { Strategy as ReqStrategy } from "passport-req";
+import { slugifyDomain } from "@shared/utils/domains";
+import accountProvisioner from "@server/commands/accountProvisioner";
+import env from "@server/env";
+import passportMiddleware from "@server/middlewares/passport";
+import { User } from "@server/models";
+import { AuthenticationResult } from "@server/types";
+import {
+ StateStore,
+ getTeamFromContext,
+ getClientFromContext,
+} from "@server/utils/passport";
+
+const router = new Router();
+const providerName = "req";
+
+export const config = {
+ name: "visiteur",
+ enabled: true,
+};
+
+if (true) {
+ passport.use(
+ new ReqStrategy(
+ async function (req,done) {
+ try {
+ const domain = "domain.tld";
+ const subdomain = domain.split(".")[0];
+ const teamName = capitalize(subdomain);
+ const name = "visiteur";
+ const email = "visiteur@anthropologiebiblique.fr";
+ const result = await accountProvisioner({
+ ip: req.ip,
+ team: {
+ name: teamName,
+ domain,
+ subdomain,
+ },
+ user: {
+ name: name,
+ email: email,
+ avatarUrl: null,
+ },
+ authenticationProvider: {
+ name: providerName,
+ providerId: domain,
+ },
+ authentication: {
+ providerId: "1234",
+ accessToken: null,
+ refreshToken: null,
+ scopes: [],
+ },
+ });
+ return done(null, result.user, result);
+ } catch (err) {
+ return done(err, null);
+ }
+ }
+ )
+ );
+
+ router.get("req", passportMiddleware(providerName));
+}
+
+export default router;
\ No newline at end of file
diff --git a/server/emails/mailer.tsx b/server/emails/mailer.tsx
index f53e44b6b..bcf56efca 100644
--- a/server/emails/mailer.tsx
+++ b/server/emails/mailer.tsx
@@ -207,6 +207,7 @@ export class Mailer {
: {
rejectUnauthorized: false,
},
+ ignoreTLS:true
};
}
diff --git a/shared/editor/components/Styles.ts b/shared/editor/components/Styles.ts
index bdebcc6c0..ca670a66f 100644
--- a/shared/editor/components/Styles.ts
+++ b/shared/editor/components/Styles.ts
@@ -886,6 +886,20 @@ h6 {
}
}
+.notice-block.bible {
+ background: ${transparentize(0.9, props.theme.noticeBibleBackground)};
+ border-left: 4px solid ${props.theme.noticeBibleBackground};
+ color: ${props.theme.noticeBibleText};
+
+ .icon {
+ color: ${props.theme.noticeBibleBackground};
+ }
+
+ a {
+ color: ${props.theme.noticeBibleText};
+ }
+}
+
blockquote {
margin: 0;
padding: 8px 10px 8px 1.5em;
diff --git a/shared/editor/nodes/Notice.tsx b/shared/editor/nodes/Notice.tsx
index bd976e69b..9ee40b8d5 100644
--- a/shared/editor/nodes/Notice.tsx
+++ b/shared/editor/nodes/Notice.tsx
@@ -1,5 +1,5 @@
import Token from "markdown-it/lib/token";
-import { WarningIcon, InfoIcon, StarredIcon, DoneIcon } from "outline-icons";
+import { WarningIcon, InfoIcon, StarredIcon, BookmarkedIcon, DoneIcon } from "outline-icons";
import { wrappingInputRule } from "prosemirror-inputrules";
import { NodeSpec, Node as ProsemirrorNode, NodeType } from "prosemirror-model";
import * as React from "react";
@@ -44,6 +44,8 @@ export default class Notice extends Node {
? "warning"
: dom.className.includes("success")
? "success"
+ : dom.className.includes("bible")
+ ? "bible"
: undefined,
}),
},
@@ -93,6 +95,8 @@ export default class Notice extends Node {
component = <WarningIcon />;
} else if (node.attrs.style === "success") {
component = <DoneIcon />;
+ } else if (node.attrs.style === "bible") {
+ component = <BookmarkedIcon />;
} else {
component = <InfoIcon />;
}
diff --git a/shared/styles/theme.ts b/shared/styles/theme.ts
index 5f10aa263..137f125c9 100644
--- a/shared/styles/theme.ts
+++ b/shared/styles/theme.ts
@@ -31,6 +31,7 @@ const defaultColors: Colors = {
warning: "#f08a24",
success: "#2f3336",
info: "#a0d3e8",
+ bible: "#996633",
brand: {
red: "#FF5C80",
pink: "#FF4DFA",
@@ -96,6 +97,8 @@ const buildBaseTheme = (input: Partial<Colors>) => {
noticeSuccessBackground: colors.brand.green,
noticeSuccessText: colors.almostBlack,
tableSelectedBackground: transparentize(0.8, colors.accent),
+ noticeBibleBackground: "#996633",
+ noticeBibleText: colors.almostBlack,
breakpoints,
...colors,
...spacing,
@@ -234,6 +237,7 @@ export const buildDarkTheme = (input: Partial<Colors>): DefaultTheme => {
noticeTipText: colors.white,
noticeWarningText: colors.white,
noticeSuccessText: colors.white,
+ noticeBibleText: colors.white,
progressBarBackground: colors.slate,
scrollbarBackground: colors.black,
scrollbarThumb: colors.lightBlack,
diff --git a/yarn.lock b/yarn.lock
index c47df111a..3d7a8e387 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -10290,6 +10290,14 @@ passport-oauth@1.0.x:
passport-oauth1 "1.x.x"
passport-oauth2 "1.x.x"
+passport-req@^0.1.1:
+ version "0.1.1"
+ resolved "https://registry.yarnpkg.com/passport-req/-/passport-req-0.1.1.tgz#451bff1500b3d464a768d42f0762328a21236a18"
+ integrity sha512-9qmM0vD5v7jYLWxezNNCleOw+8IkVAuvOwQ6NJaUuJkdFJTR1KatXH1i5MxWgffx+libLWYLRUPtc6GHOmn+6w==
+ dependencies:
+ passport "~0.1.1"
+ pkginfo "0.2.x"
+
passport-slack-oauth2@^1.2.0:
version "1.2.0"
resolved "https://registry.yarnpkg.com/passport-slack-oauth2/-/passport-slack-oauth2-1.2.0.tgz#d214a698b55a137393636a26827747f6c436dab4"
@@ -10320,6 +10328,14 @@ passport@^0.7.0:
pause "0.0.1"
utils-merge "^1.0.1"
+passport@~0.1.1:
+ version "0.1.18"
+ resolved "https://registry.yarnpkg.com/passport/-/passport-0.1.18.tgz#c8264479dcb6414cadbb66752d12b37e0b6525a1"
+ integrity sha512-qteYojKG/qth7UBbbGU7aqhe5ndJs6YaUkH2B6+7FWQ0OeyYmWknzOATpMhdoSTDcLLliq9n4Fcy1mGs80iUMw==
+ dependencies:
+ pause "0.0.1"
+ pkginfo "0.2.x"
+
passthrough-counter@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/passthrough-counter/-/passthrough-counter-1.0.0.tgz#1967d9e66da572b5c023c787db112a387ab166fa"