chore: new Crowdin updates

+ update rector config for crowdin compatibility
This commit is contained in:
Yassine Doghri 2022-04-15 12:16:12 +00:00
parent 204fe208ff
commit 01640fa161
31 changed files with 282 additions and 265 deletions

View File

@ -10,7 +10,7 @@ declare(strict_types=1);
return [
'title' => "Evezhiadenn {actorDisplayName} evit {episodeTitle}",
'back_to_comments' => "Distreiñ d'an evezhiadennoù",
'back_to_comments' => 'Distreiñ d\'an evezhiadennoù',
'form' => [
'episode_message_placeholder' => 'Skrivañ un evezhiadenn…',
'reply_to_placeholder' => 'Respont da @{actorUsername}',

View File

@ -15,15 +15,15 @@ return [
'optional' => 'Diret',
'close' => 'Serriñ',
'home' => 'Degemer',
'explicit' => "Endalc'had evit an oadourien",
'explicit' => 'Endalc\'had evit an oadourien',
'powered_by' => 'Lusket gant {castopod}',
'go_back' => 'Mont war-gil',
'play_episode_button' => [
'play' => 'Lenn',
'playing' => 'O lenn',
],
'read_more' => "Lenn muioc'h",
'read_less' => "Lenn nebeutoc'h",
'see_more' => "Gwelout muioc'h",
'see_less' => "Gwelout nebeutoc'h",
'read_more' => 'Lenn muioc\'h',
'read_less' => 'Lenn nebeutoc\'h',
'see_more' => 'Gwelout muioc\'h',
'see_less' => 'Gwelout nebeutoc\'h',
];

View File

@ -38,5 +38,5 @@ return [
other {# evezhiadenn}
}',
'all_podcast_episodes' => 'Holl rannoù ar podkast',
'back_to_podcast' => "Mont d'ar podkast en-dro",
'back_to_podcast' => 'Mont d\'ar podkast en-dro',
];

View File

@ -10,28 +10,28 @@ declare(strict_types=1);
return [
'your_handle' => 'Ho tornell (ho lesanv)',
'your_handle_hint' => "Skrivit an @anv@domani a fell deoc'h ober gantañ.",
'your_handle_hint' => 'Skrivit an @anv@domani a fell deoc\'h ober gantañ.',
'follow' => [
'label' => 'Heuliañ',
'title' => 'Heuliañ {actorDisplayName}',
'subtitle' => "Emaoc'h o vont da heuliañ:",
'accountNotFound' => "N'eo ket bet kavet ar gont-se.",
'remoteFollowNotAllowed' => "N'eo ket aotreet heuliañ a-bell gant servijer ar gont-se war a seblant…",
'submit' => "Kenderc'hel gant an heuliañ",
'subtitle' => 'Emaoc\'h o vont da heuliañ:',
'accountNotFound' => 'N\'eo ket bet kavet ar gont-se.',
'remoteFollowNotAllowed' => 'N\'eo ket aotreet heuliañ a-bell gant servijer ar gont-se war a seblant…',
'submit' => 'Kenderc\'hel gant an heuliañ',
],
'favourite' => [
'title' => "Ouzhpennañ kemennadenn {actorDisplayName} d'ho re garetañ",
'subtitle' => "Emaoc'h o vont da ouzhpennañ d'ho re garetañ:",
'submit' => "Kenderc'hel gant an ouzhpennañ d'ho re garetañ",
'subtitle' => 'Emaoc\'h o vont da ouzhpennañ d\'ho re garetañ:',
'submit' => 'Kenderc\'hel gant an ouzhpennañ d\'ho re garetañ',
],
'reblog' => [
'title' => "Rannañ kemennadenn {actorDisplayName}",
'subtitle' => "Emaoc'h o vont da rannañ:",
'submit' => "Kenderc'hel gant ar rannañ",
'subtitle' => 'Emaoc\'h o vont da rannañ:',
'submit' => 'Kenderc\'hel gant ar rannañ',
],
'reply' => [
'title' => "Respont da gemennadenn {actorDisplayName}",
'subtitle' => "Emaoc'h o vont da respont da:",
'submit' => "Kenderc'hel gant ar respont",
'subtitle' => 'Emaoc\'h o vont da respont da:',
'submit' => 'Kenderc\'hel gant ar respont',
],
];

View File

@ -16,5 +16,5 @@ return [
'created_desc' => 'Ar re nevez da gentañ',
'created_asc' => 'A re goshañ da gentañ',
],
'no_podcast' => "N'eo bet kavet podkast ebet",
'no_podcast' => 'N\'eo bet kavet podkast ebet',
];

View File

@ -9,9 +9,9 @@ declare(strict_types=1);
*/
return [
'back_to_home' => "Distreiñ d'ar bennbajennad",
'back_to_home' => 'Distreiñ d\'ar bennbajennad',
'map' => [
'title' => 'Kartenn',
'description' => "Dizoloit rannoù eus podkastoù war {siteName} lakaet war ur gartenn! Beajit warni ha selaouit ar rannoù a zo diwar-benn al lec'hioù-se.",
'description' => 'Dizoloit rannoù eus podkastoù war {siteName} lakaet war ur gartenn! Beajit warni ha selaouit ar rannoù a zo diwar-benn al lec\'hioù-se.',
],
];

View File

@ -14,9 +14,9 @@ return [
'list_of_episodes_year' => 'Rannoù {year} ({episodeCount})',
'list_of_episodes_season' =>
'Rannoù koulzad {seasonNumber} ({episodeCount})',
'no_episode' => "N'eo bet kavet rann ebet!",
'no_episode' => 'N\'eo bet kavet rann ebet!',
'follow' => 'Heuliañ',
'followTitle' => "Heuliañ {actorDisplayName} war ar c'hevrebed!",
'followTitle' => 'Heuliañ {actorDisplayName} war ar c\'hevrebed!',
'followers' => '{numberOfFollowers, plural,
0 {heulier·ez ebet}
one {<span class="font-semibold">#</span> heulier·ez}
@ -114,7 +114,7 @@ return [
'first_published_at' => 'Embannet eo bet ar rann gentañ d\'an/d\'ar<span class="font-semibold">{0, date, medium}</span>',
],
'sponsor' => 'Harpit',
'funding_links' => "Liammoù evit arc'hantaouiñ {podcastTitle}",
'funding_links' => 'Liammoù evit arc\'hantaouiñ {podcastTitle}',
'find_on' => 'Kavit {podcastTitle} war',
'listen_on' => 'Selaouit war',
'persons' => '{personsCount, plural,

View File

@ -10,7 +10,7 @@ declare(strict_types=1);
return [
'title' => "{actorDisplayName}'s Beitrag",
'back_to_actor_posts' => "Zurück zu {actor}'s Beiträge",
'back_to_actor_posts' => 'Zurück zu {actor}\'s Beiträge',
'actor_shared' => '{actor} teilte',
'reply_to' => 'Antorten auf @{actorUsername}',
'form' => [

View File

@ -17,7 +17,7 @@ return [
'submit' => 'Envoyer!',
'submit_reply' => 'Répondre',
],
'likes' => "{numberOfLikes} j'aime",
'likes' => '{numberOfLikes} j\'aime',
'replies' => '{numberOfReplies, plural,
one {# réponse}
other {# réponses}

View File

@ -46,8 +46,7 @@ improvements ⚡.
- 👉 Make sure you run the scripts on your phpmyadmin panel or using command
line to update the database along with the package files!
- cf.
[I haven't updated my instance in a long time… What should I do?](#i-havent-updated-my-instance-in-a-long-time-what-should-i-do)
- I haven't updated my instance in a long time… What should I do?
5. If you are using redis, clear your cache.
6. ✨ Enjoy your fresh instance, you're all done!
@ -62,7 +61,7 @@ corner.
Alternatively, you can find the version in the `app > Config > Constants.php`
file.
### I haven't updated my instance in a long time… What should I do?
### [I haven't updated my instance in a long time… What should I do?](#i-havent-updated-my-instance-in-a-long-time-what-should-i-do)
No problem! Just get the latest release as described above. Only, when going
through the release instructions (4), perform them sequentially, from the oldest

View File

@ -46,8 +46,7 @@ improvements ⚡.
- 👉 Make sure you run the scripts on your phpmyadmin panel or using command
line to update the database along with the package files!
- cf.
[I haven't updated my instance in a long time… What should I do?](#i-havent-updated-my-instance-in-a-long-time-what-should-i-do)
- I haven't updated my instance in a long time… What should I do?
5. If you are using redis, clear your cache.
6. ✨ Enjoy your fresh instance, you're all done!
@ -62,7 +61,7 @@ corner.
Alternatively, you can find the version in the `app > Config > Constants.php`
file.
### I haven't updated my instance in a long time… What should I do?
### [I haven't updated my instance in a long time… What should I do?](#i-havent-updated-my-instance-in-a-long-time-what-should-i-do)
No problem! Just get the latest release as described above. Only, when going
through the release instructions (4), perform them sequentially, from the oldest

View File

@ -46,8 +46,7 @@ improvements ⚡.
- 👉 Make sure you run the scripts on your phpmyadmin panel or using command
line to update the database along with the package files!
- cf.
[I haven't updated my instance in a long time… What should I do?](#i-havent-updated-my-instance-in-a-long-time-what-should-i-do)
- I haven't updated my instance in a long time… What should I do?
5. If you are using redis, clear your cache.
6. ✨ Enjoy your fresh instance, you're all done!
@ -62,11 +61,11 @@ corner.
Alternatively, you can find the version in the `app > Config > Constants.php`
file.
### I haven't updated my instance in a long time… What should I do?
### [I haven't updated my instance in a long time… What should I do?](#i-havent-updated-my-instance-in-a-long-time-what-should-i-do)
No problem! Just get the latest release as described above. Only, when going
through the release instructions (4), perform them sequentially, from the oldest
to the newest.
No problem! No problem! Just get the latest release as described above. Only,
when going through the release instructions (4), perform them sequentially, from
the oldest to the newest.
> You may want to backup your instance depending on how long you haven't updated
> Castopod.

View File

@ -20,19 +20,19 @@ serveurs web compatibles avec PHP-MySQL.
La version 8.0 ou supérieure de PHP est requise, avec les extensions suivantes
installées :
- [intl](https://php.net/manual/en/intl.requirements.php)
- [libcurl](https://php.net/manual/en/curl.requirements.php)
- [mbstring](https://php.net/manual/en/mbstring.installation.php)
- [intl](https://www.php.net/manual/fr/intl.requirements.php)
- [libcurl](https://www.php.net/manual/fr/curl.requirements.php)
- [mbstring](https://www.php.net/manual/fr/mbstring.installation.php)
- [gd](https://www.php.net/manual/en/image.installation.php) avec **JPEG**,
**PNG** et bibliothèques **WEBP**.
- [exif](https://www.php.net/manual/en/exif.installation.php)
- [exif](https://www.php.net/manual/fr/exif.installation.php)
De plus, assurez-vous que les extensions suivantes sont activées dans votre PHP
:
- json (activé par défaut - ne le désactivez pas)
- xml (activé par défaut - ne pas le désactiver)
- [mysqlnd](https://php.net/manual/en/mysqlnd.install.php)
- [mysqlnd](https://www.php.net/manual/fr/mysqlnd.install.php)
### Base de données compatible MySQL
@ -110,60 +110,61 @@ installées :
* * * * * /path/to/php /path/to/castopod/public/index.php scheduled-video-clips
```
> These tasks run **every minute**. You may set the frequency depending on
> your needs: every 5, 10 minutes or more.
> Ces tâches s'exécutent **toutes les minutes**. Vous pouvez régler la
> fréquence en fonction de vos besoins : toutes les 5, 10 minutes ou plus.
### (recommended) Install Wizard
### (Méthode recommandée) Assistant d'installation
1. Run the Castopod install script by going to the install wizard page
(`https://your_domain_name.com/cp-install`) in your favorite web browser.
2. Follow the instructions on your screen.
3. Start podcasting!
1. Exécutez le script d'installation de Castopod en vous rendant sur la page
d'assistant d'installation (`https://votre_domain_name.com/cp-install`) dans
votre navigateur Web favori.
2. Suivez les instructions affichée.
3. Commencer à baladodiffuser!
::: info Note
::: info Nota Bene
The install script writes a `.env` file in the package root. If you cannot go
through the install wizard, you can
[create and update the `.env` file manually](#alternative-manual-configuration).
Le script install crée un fichier `.env` à la racine du paquet. Si vous ne
pouvez pas passer par l'assistant d'installation, vous pouvez
[créer et mettre à jour le fichier `.env` manuellement](#alternative-manual-configuration).
:::
## Community packages
## Paquets fournis par la communauté
If you don't want to bother with installing Castopod manually, you may use one
of the packages created and maintained by the open-source community.
Si vous ne voulez pas vous soucier d'installer Castopod manuellement, vous
pouvez utiliser un des paquets créés et maintenus par la communauté open-source.
### Install with YunoHost
### Installer avec YunoHost
[YunoHost](https://yunohost.org/) is a distribution based on Debian GNU/Linux
made up of free and open-source software packages. It manages the hardships of
self-hosting for you.
[YunoHost](https://yunohost.org/) est une distribution basée sur Debian
GNU/Linux composée de paquets logiciels libres et open-source. Il simplifie
l'auto-hébergement pour vous.
<div class="flex flex-wrap items-center gap-4">
<a href="https://install-app.yunohost.org/?app=castopod" target="_blank" rel="noopener noreferrer">
<img src="https://install-app.yunohost.org/install-with-yunohost.svg" alt="Install Castopod with YunoHost" class="align-middle" />
<img src="https://install-app.yunohost.org/install-with-yunohost.svg" alt="Installer avec YunoHost" class="align-middle" />
</a>
<a href="https://github.com/YunoHost-Apps/castopod_ynh" target="_blank" rel="noopener noreferrer" class="inline-flex items-center px-4 py-[.3rem] mx-auto font-semibold text-center text-black rounded-md gap-x-1 border-2 border-solid border-[#333] hover:no-underline hover:bg-gray-100"><svg
xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="1em" height="1em"
class="text-xl"><path fill="none" d="M0 0h24v24H0z"/><path d="M12 2A10 10 0 0 0 2 12a10 10 0 0 0 6.84 9.49c.5.09.69-.21.69-.48l-.02-1.86c-2.51.46-3.16-.61-3.36-1.18-.11-.28-.6-1.17-1.02-1.4-.35-.2-.85-.66-.02-.67.79-.01 1.35.72 1.54 1.02.9 1.52 2.34 1.1 2.91.83a2.1 2.1 0 0 1 .64-1.34c-2.22-.25-4.55-1.11-4.55-4.94A3.9 3.9 0 0 1 6.68 8.8a3.6 3.6 0 0 1 .1-2.65s.83-.27 2.75 1.02a9.28 9.28 0 0 1 2.5-.34c.85 0 1.7.12 2.5.34 1.9-1.3 2.75-1.02 2.75-1.02.54 1.37.2 2.4.1 2.65.63.7 1.02 1.58 1.02 2.68 0 3.84-2.34 4.7-4.56 4.94.36.31.67.91.67 1.85l-.01 2.75c0 .26.19.58.69.48A10.02 10.02 0 0 0 22 12 10 10 0 0 0 12 2z"/></svg>Github
Repo</a>
class="text-xl"><path fill="none" d="M0 0h24v24H0z"/><path d="M12 2A10 10 0 0 0 2 12a10 10 0 0 0 6.84 9.49c.5.09.69-.21.69-.48l-.02-1.86c-2.51.46-3.16-.61-3.36-1.18-.11-.28-.6-1.17-1.02-1.4-.35-.2-.85-.66-.02-.67.79-.01 1.35.72 1.54 1.02.9 1.52 2.34 1.1 2.91.83a2.1 2.1 0 0 1 .64-1.34c-2.22-.25-4.55-1.11-4.55-4.94A3.9 3.9 0 0 1 6.68 8.8a3.6 3.6 0 0 1 .1-2.65s.83-.27 2.75 1.02a9.28 9.28 0 0 1 2.5-.34c.85 0 1.7.12 2.5.34 1.9-1.3 2.75-1.02 2.75-1.02.54 1.37.2 2.4.1 2.65.63.7 1.02 1.58 1.02 2.68 0 3.84-2.34 4.7-4.56 4.94.36.31.67.91.67 1.85l-.01 2.75c0 .26.19.58.69.48A10.02 10.02 0 0 0 22 12 10 10 0 0 0 12 2z"/></svg>Dépôt
Github</a>
</div>
### Install with Docker
### Installer avec Docker
If you wish to use Docker to install Castopod, it is possible thanks to
[Romain de Laage](https://mamot.fr/@rdelaage)!
Si vous souhaitez utiliser Docker pour installer Castopod, c'est possible grâce
à [Romain de Laage](https://mamot.fr/@rdelaage)!
<a href="https://gitlab.utc.fr/picasoft/projets/services/castopod" target="_blank" rel="noopener noreferrer" class="inline-flex items-center px-4 py-2 mx-auto font-semibold text-center text-white rounded-md shadow gap-x-1 bg-[#1282d7] hover:no-underline hover:bg-[#0f6eb5]">Install
with
<a href="https://gitlab.utc.fr/picasoft/projets/services/castopod" target="_blank" rel="noopener noreferrer" class="inline-flex items-center px-4 py-2 mx-auto font-semibold text-center text-white rounded-md shadow gap-x-1 bg-[#1282d7] hover:no-underline hover:bg-[#0f6eb5]">Installer
avec
Docker<svg viewBox="0 0 24 24" width="1em" height="1em" class="text-xl text-pine-200"><path fill="currentColor" d="m16.172 11-5.364-5.364 1.414-1.414L20 12l-7.778 7.778-1.414-1.414L16.172 13H4v-2z"></path></svg></a>
::: info Note
::: info Nota Bene
Given high demand for docker, we plan on maintaining an official Castopod Docker
image directly into the Castopod repository.
Étant donné la forte demande de Docker, nous prévoyons de maintenir une image
officielle de Castopod Docker directement dans le dépôt Castopod.
:::

View File

@ -1,23 +1,25 @@
---
title: Security
title: Sécurité
---
# Security concerns
# Questions de sécurité
Castopod is built on top of [CodeIgniter4](https://codeigniter.com/), a PHP
framework that encourages
[good security practices](https://codeigniter.com/user_guide/concepts/security.html).
Castopod est développé sur [CodeIgniter4](https://codeigniter.com/), un
framework PHP qui encourage
[de bonnes pratiques de sécurité](https://codeigniter.com/user_guide/concepts/security.html).
To maximize your instance's safety and prevent any malicious attack, we
recommend you update all your Castopod files permissions after installation or
updates (to avoid any prior permission error):
Pour garantir au mieux la sécurité de votre instance et éviter les attaques
malveillantes, nous vous recommandons de mettre à jour les permissions des
fichiers de Castopod après l'installation et chaque mise à jour (et éviter toute
erreur de droit d'accès aux fichiers) :
- `writable/` folder must be **readable** and **writable**.
- `public/media/` folder must be **readable** and **writable**.
- any other file must be set to **readonly**.
- Le dossier `writable/` doit être accessible en **lecture** et en **écriture**.
- Le dossier `public/media/` doit être accessible en **lecture** et en
**écriture**.
- tout autre fichier doit être accessible en **lecture seule**.
For instance, if you are using Apache or NGINX with Ubuntu you may do the
following:
Par exemple, si vous utilisez Apache ou NGINX avec Ubuntu, vous pouvez exécuter
les commandes suivantes:
```bash
sudo chown -R root:root /path/to/castopod

View File

@ -1,54 +1,58 @@
---
title: Update
title: Mise à jour
sidebarDepth: 3
---
# How to update Castopod?
# Comment installer Castopod?
After installing Castopod, you may want to update your instance to the latest
version in order to enjoy the latest features ✨, bug fixes 🐛 and performance
improvements ⚡.
Après avoir installé Castopod, vous pouvez mettre à jour votre instance vers la
dernière version afin de profiter des dernières fonctionnalités ✨, des
corrections de bugs 🐛 et des améliorations de performance ⚡.
## Automatic update instructions
## Instructions de mise à jour automatique
> Coming soon... 👀
> Prochainement... 👀
## Manual update instructions
## Instructions de mise à jour manuelle
1. Go to the
[releases page](https://code.castopod.org/adaures/castopod/-/releases) and
see if your instance is up to date with the latest Castopod version
1. Allez sur la
[page de notes de versions](https://code.castopod.org/adaures/castopod/-/releases)
et vérifiez si votre instance est à jour avec la dernière version de
Castopod.
- cf.
[Where can I find my Castopod version?](#where-can-i-find-my-castopod-version)
2. Download the latest release package named `Castopod Package`, you may choose
between the `zip` or `tar.gz` archives
2. Téléchargez la dernière version du paquet nommé `Castopod Package`. Vous
pouvez choisir entre les archives au format `zip` ou `tar.gz`.
- ⚠️ Make sure you download the Castopod Package and **NOT** the Source Code
- ⚠️ Assurez-vous de bien télécharger le paquet Castopod `Castopod Package`
et **PAS** le code source.
3. On your server:
3. Sur votre serveur:
- Remove all files except `.env` and `public/media`
- Copy the new files from the downloaded package into your server
- Supprimer tous les fichiers sauf `.env` et `public/media`
- Copiez les nouveaux fichiers du package téléchargé sur votre serveur.
::: info Note
::: info Nota Bene
You may need to reset files permissions as during the install process.
Check [Security Concerns](./security.md).
Vous devrez peut-être re-définir les autorisations de fichiers comme
effectué durant le processus d'installation. Vérifiez les
[questions de sécurité](./security.md).
:::
4. Releases may come with additional update instructions (see
[releases page](https://code.castopod.org/adaures/castopod/-/releases)). They
are usually database migration scripts in `.sql` format to update your
database schema.
4. Les versions peuvent être accompagnées d'instructions de mise à jour
supplémentaires (cf. la
[page des notes de versions](https://code.castopod.org/adaures/castopod/-/releases)).
Il s'agit généralement de scripts de migration de base de données au format
`.sql` qui mettent à jour le schéma de votre base de données.
- 👉 Assurez-vous d'exécuter les scripts sur votre interface phpmyadmin ou
utilisez la ligne de commande pour mettre à jour la base de données avec
les fichiers du paquet!
- cf.
[Je n'ai pas mis à jour mon instance depuis longtemps… Que devrais-je faire ?](#i-havent-updated-my-instance-in-a-long-time-what-should-i-do)
- Je n'ai pas mis à jour mon instance depuis longtemps… Que devrais-je faire
?
5. Si vous utilisez redis, effacez votre cache.
6. ✨ Votre nouvelle instance est prête !
@ -63,7 +67,7 @@ bas à gauche.
Vous pouvez également trouver la version dans le fichier
`app > Config > Constants.php`.
### Je n'ai pas mis à jour mon instance depuis longtemps… Que devrais-je faire ?
### [Je n'ai pas mis à jour mon instance depuis longtemps… Que devrais-je faire ?](#i-havent-updated-my-instance-in-a-long-time-what-should-i-do)
Aucun souci ! Il suffit d'obtenir la dernière version comme décrit ci-dessus.
Lorsque vous exécutez les instructions de mise à jour (4), lancez-les
@ -81,9 +85,8 @@ la `v1.0.0-beta.1`:
1. Téléchargez la dernière version, écrasez vos fichiers tout en conservant
`.env` et `public/media`.
2. Go through each release update instructions sequentially (from oldest to
newest) starting with `v1.0.0-alpha.43`, `v1.0.0-alpha.44`,
`v1.0.0-alpha.45`, …, `v1.0.0-beta.1`.
2. Effectuez les instructions de mise à jour l'une après l'autre (de la plus
ancienne à la plus récente).
3. ✨ Votre nouvelle instance est prête !

View File

@ -13,15 +13,15 @@ Castopod est facile à installer et a été conçu avec
[CodeIgniter4](https://codeigniter.com/), un framework PHP puissant de très
petite taille.
::: info Status
::: info Statut
Castopod is currently in **beta** but already quite stable and used by
podcasters around&nbsp;the&nbsp;world!
Castopod est actuellement en **version beta** mais est déjà suffisamment stable
et est utilisé par des podcasters autour partout dans le monde&nbsp;!
:::
<div class="flex items-center">
<a href="/getting-started/install" class="inline-flex items-center px-4 py-2 mx-auto font-semibold text-center text-white rounded-full shadow gap-x-1 bg-pine-500 hover:no-underline hover:bg-pine-600">Installation<svg viewBox="0 0 24 24" width="1em" height="1em" class="text-xl text-pine-200"><path fill="currentColor" d="m16.172 11-5.364-5.364 1.414-1.414L20 12l-7.778 7.778-1.414-1.414L16.172 13H4v-2z"></path></svg></a>
<a href="/fr/getting-started/install" class="inline-flex items-center px-4 py-2 mx-auto font-semibold text-center text-white rounded-full shadow gap-x-1 bg-pine-500 hover:no-underline hover:bg-pine-600">Installer<svg viewBox="0 0 24 24" width="1em" height="1em" class="text-xl text-pine-200"><path fill="currentColor" d="m16.172 11-5.364-5.364 1.414-1.414L20 12l-7.778 7.778-1.414-1.414L16.172 13H4v-2z"></path></svg></a>
</div>
## Fonctionnalités
@ -63,157 +63,169 @@ podcasters around&nbsp;the&nbsp;world!
- 🌎 &nbsp;support i18n: traduit en Anglais, Français, Polonais, Allemand &
Brésilien… et bientôt d'autres à venir!
## Motivation
## Pourquoi Castopod?
The podcasting ecosystem is decentralized by nature: you can create your podcast
as an RSS file, publish it on the web and have it shared everywhere online.
L'écosystème du podcast est décentralisé par nature: vous pouvez créer votre
podcast grâce au fichier RSS, le publier sur Internet et le rendre disponible
partout dans le monde.
It is in fact one of the only media to have stayed this way for a long time.
C'est en fait l'un des seuls médias à être encore décentralisé aujourd'hui.
As usages are evolving, more and more people are getting into podcasts: whether
it is creators finding new ways to share their ideas, or listeners in the search
for better content.
À mesure que les usages évoluent, de plus en plus de gens se retrouvent autour
du podcast : qu'il s'agisse de créateurs qui y trouvent de nouvelles façons de
partager leurs idées ou d'auditeurs à la recherche de contenus de qualité.
With podcasting becoming more widely used, some companies are trying to shift it
towards a more controlled and centralized medium.
Avec l'avènement du podcast, certaines entreprises se dirigent vers un medium
plus centralisé et plus contrôlé.
Castopod was created in an effort to provide an open and sustainable alternative
to hosting your podcasts, promoting decentralization to ensure that podcasters
creativity can express itself.
Castopod a été créé dans le but de fournir une alternative ouverte et durable
pour l'hébergement de vos podcasts, de promouvoir la décentralisation et ainsi
de s'assurer que la créativité des podcasteurs puisse rester libre.
This project is pushed by the open-source community, and specifically by the
[Fediverse](https://fediverse.party/en/fediverse/) and
[Podcasting 2.0](https://podcastindex.org/) movements.
Ce projet s'appuie sur la communauté open-source, plus spécifiquement sur le
[Fédiverse](https://fediverse.party/en/fediverse/) et sur
[Podcasting 2.0](https://podcastindex.org/).
## Comparison with other solutions
## Comparaison avec d'autres solutions
We believe that a solution is not necessarily right for everyone, it highly
depends on your needs. So, here are comparisons with other tools to help you to
gauge whether Castopod is the right fit for&nbsp;you.
Nous pensons qu'une solution n'est pas adaptée à tous, tout dépend vos besoins.
Voici donc un comparatif avec d'autres outils qui vous aidera à juger si
Castopod est fait pour vous.
### Castopod vs Wordpress
Castopod is often referred to as "the Wordpress for podcasts" because of the
similarities between the two. In some ways this is true. And actually, Castopod
was greatly inspired by the Wordpress ecosystem, seeing the ease of adoption
from the community and the number of websites running&nbsp;it.
Castopod est souvent appelé "Wordpress pour les podcasts" en raison des points
communs entre les deux. D'une certaine manière, c'est vrai. Castopod a
d'ailleurs été inspiré par l'écosystème de Wordpress, en raison de la facilité
grâce à laquelle sa communauté l'a adopté et du nombre de sites Web qui
l'utilisent.
Just like Wordpress, Castopod is free & open source, built using PHP with a
MySQL database and is packaged in a way that you can easily install on most web
servers.
Tout comme Wordpress, Castopod est gratuit & open source, utilise PHP et une
base de données MySQL et est fourni en paquet facilement installable sur la
plupart des serveurs web.
Wordpress is a great way to create your website and extend it with plugins to
get what you want. It is a full fledged CMS that helps you get any type of
website online.
Wordpress est un excellent outil pour créer votre site web et de l'étendre avec
des plugins pour faire ce que vous souhaitez. C'est un CMS à part entière qui
vous permet de mettre en line tout type de site web.
On the other hand, Castopod is meant to address the podcasters needs
specifically, focusing on podcasting, and nothing else. You don't need any
plugin to get you started on your podcasting&nbsp;journey.
Castopod quant à lui est destiné à répondre aux besoins spécifiques des
podcasteurs, en se concentrant sur les podcasts et rien d'autre. Vous n'avez
besoin d'installer aucun plugin pour démarrer votre aventure baladodiffusée.
This allows optimizing the processes specific to podcasting: ranging from the
creation of your podcasts and the publication of new episodes all the way to
broadcasting, marketing and analytics.
Cela permet d'optimiser tout ce qui est spécifique aux podcasts: de la création
de vos podcasts et la publication de nouveaux épisodes jusqu'à la diffusion, le
marketing et la mesure d'audience.
Finally, depending on your needs, Wordpress and Castopod can even live side by
side as they share the same requirements!
Enfin, en fonction de vos besoins, Wordpress et Castopod peuvent même cohabiter
car ils partagent les mêmes pré-requis techniques!
### Castopod vs Funkwhale
Funkwhale is a self-hosted, modern free and open-source music server. Just as
Castopod, Funkwhale is on the fediverse, a decentralized social network allowing
interoperability between the two.
Funkwhale est un serveur autohébergé, moderne, libre et open-source, dédié à la
musique. Tout comme Castopod, Funkwhale est sur le Fédivers, un réseau social
décentralisé, ce qui offre une interopérabilité entre eux.
Funkwhale was initially built around music. And later on, as the project
evolved, the ability to host podcasts was introduced.
Funkwhale a été initialement conçu pour la musique. Et plus tard, à mesure que
le projet a évolué, la capacité d'héberger des podcasts a été introduite.
Unlike Funkwhale, Castopod has been designed and built around podcasting
exclusively. This allows easier implementation for features related to the
podcasting ecosystem, such as the podcasting 2.0 features (transcripts,
chapters, locations, persons, …).
Contrairement à Funkwhale, Castopod a été pensé et conçu exclusivement pour les
podcasts. Cela permet une implémentation plus naturelle des fonctionnalités
propres à l'écosystème du podcast, comme celles de Podcasting 2.0
(transcriptions, chapitres, géo-localisation, intervenants …).
So, you should probably use Funkwhale if you want to host your music, and use
Castopod if you want to host your podcasts.
Vous devriez ainsi probablement utiliser Funkwhale si vous souhaitez héberger
votre musique et vous tourner vers Castopod si vous souhaitez héberger des
podcasts.
### Castopod vs other podcast hosts
### Castopod vs Autres hébergeurs de podcasts
There are many solutions for you to host your podcasts, some of which are really
great and [a lot of them](https://podcastindex.org/apps) are jumping into the
Podcasting 2.0 wagon just like Castopod!
Il existe de nombreuses solutions pour héberger vos podcasts, dont certaines
excellentes et [de nombreuses](https://podcastindex.org/apps) ont rejoint
Castopod dans le train «Podcasting 2.0 » !
Each of these solutions differ from one another, you may compare with the
[list of features](#features).
Chacune de ces solutions a ses particularités, vous pouvez comparer grâce à la
[liste des fonctionnalités](#features).
That being said, there are two main differences with other podcasting solutions:
Cela étant, on notera deux différences principales avec les autres solutions:
- Castopod can be self-hosted and is the only solution that allows you to keep
full control over what you produce. Also, as it is open-source, you can even
customize it as you wish.
- Castopod peut être auto-hébergé et est la seule solution qui vous permet de
garder le contrôle total sur ce que vous produisez. D'autre part, comme il est
open-source, vous avez le pouvoir de le modifier comme vous le souhaitez.
- Castopod is the only solution that currently integrates both a decentralized
social network with ActivityPub as well as many of the podcasting 2.0
features, hoping to bridge the gap between the two.
- Castopod est la seule solution qui intègre aujourd'hui à la fois un réseau
social décentralisé avec ActivityPub et des fonctionnalités de «Podcasting
2.0 », réduisant ainsi l'écart entre les deux.
## Contribuer
Vous appréciez Castopod et aimeriez donner un coup de main? Jetez un œil à la
documentation suivante pour démarrer.
### Code of conduct
### Code de conduite
Castopod has adopted a Code of Conduct that we expect project participants to
adhere to. Please read the
[CODE_OF_CONDUCT manual](https://code.castopod.org/adaures/castopod/-/blob/beta/CODE_OF_CONDUCT.md)
so that you can understand what actions will and will not be&nbsp;tolerated.
Castopod a mis en place un Code de Conduite destiné aux personnes souhaitant
participer au projet. Veuillez lire le manuel
[CODE_OF_CONDUCT](https://code.castopod.org/adaures/castopod/-/blob/beta/CODE_OF_CONDUCT.md)
afin de connaitre quelles actions seront et ne seront pas tolérées.
### Contributing guide
### Guide de contribution
Read our [contributing guide](./contributing/guidelines.md) to learn about our
development process, how to propose bugfixes and improvements, and how to build
and test your changes to Castopod.
Lisez notre [guide de contribution](./contributing/guidelines.md) pour en savoir
plus sur notre processus de développement et comprendre comment proposer des
corrections de bogues et des améliorations, et comment compiler et tester vos
modifications sur Castopod.
## Contact
You may reach us for help or ask any question you have on:
Vous pouvez nous joindre pour obtenir de l'aide ou poser toute question que vous
avez sur:
- [Discord](https://castopod.org/discord) (for direct interaction with
developers and the community)
- [Issue tracker](https://code.castopod.org/adaures/castopod/-/issues) (for
feature requests & bug reports)
- [Discord](https://castopod.org/discord) (pour dialoguer en temps réel avec les
développeurs et la communauté)
- [Suivi de problèmes](https://code.castopod.org/adaures/castopod/-/issues)
(pour toute demande de nouvelle fonctionnalité ou rapport de bug)
Alternatively, you can follow us on social media platforms to get news about
Castopod:
En outre, vous pouvez nous suivre sur les plateformes de réseaux sociaux pour
obtenir des informations sur Castopod:
- [podlibre.social](https://podlibre.social/@Castopod) (Mastodon instance)
- [podlibre.social](https://podlibre.social/@Castopod) (Instance Mastodon)
- [Twitter](https://twitter.com/castopod)
- [LinkedIn](https://linkedin.com/company/castopod)
- [Facebook](https://www.facebook.com/castopod)
## Sponsors
## Soutenez-nous
The ongoing development of Castopod is made possible with the support of its
backers. If you'd like to help, please consider
[sponsoring Castopod's development](https://opencollective.com/castopod/contribute).
Le développement de Castopod est rendu possible grâce au soutien de ses
parrains. Si vous souhaitez aider, n'hésitez pas à
[parrainer le développement de Castopod](https://opencollective.com/castopod/contribute).
<div class="flex flex-wrap gap-x-16 gap-y-8">
<a href="https://adaures.com/" target="_blank" rel="noopener noreferrer"><img src="/images/sponsors/adaures.svg" alt="Ad Aures Logo" class="h-16" /></a>
<a href="https://nlnet.nl/project/Castopod/" target="_blank" rel="noopener noreferrer"><img src="/images/sponsors/nlnet.svg" alt="NLnet Logo" class="h-16" /></a>
<a href="https://adaures.com/" target="_blank" rel="noopener noreferrer"><img src="/images/sponsors/adaures.svg" alt="Logo d'Ad Aures" class="h-16" /></a>
<a href="https://nlnet.nl/project/Castopod/" target="_blank" rel="noopener noreferrer"><img src="/images/sponsors/nlnet.svg" alt="Logo de NLnet" class="h-16" /></a>
</div>
## License
## Licence
[GNU Affero General Public License v3.0](https://choosealicense.com/licenses/agpl-3.0/)
[Licence publique générale GNU Affero v3](https://choosealicense.com/licenses/agpl-3.0/)
Copyright © 2020-present, [Ad Aures](https://adaures.com/).
https://img.shields.io/gitlab/v/release/2?color=brightgreen&gitlab_url=https%3A%2F%2Fcode.castopod.org%2F&include_prereleases&label=release
https://img.shields.io/github/license/ad-aures/castopod?color=blue
https://img.shields.io/badge/contributions-welcome-brightgreen.svg
https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg
https://img.shields.io/github/stars/ad-aures/castopod?style=social
[release]: https://code.castopod.org/adaures/castopod/-/releases
[release-badge]:
https://img.shields.io/gitlab/v/release/2?color=brightgreen&gitlab_url=https%3A%2F%2Fcode.castopod.org%2F&include_prereleases&label=release
[license]: https://code.castopod.org/adaures/castopod/-/blob/beta/LICENSE.md
[license-badge]:
https://img.shields.io/github/license/ad-aures/castopod?color=blue
[contributions]: https://code.castopod.org/adaures/castopod/-/issues
[contributions-badge]:
https://img.shields.io/badge/contributions-welcome-brightgreen.svg
[semantic-release]: https://github.com/semantic-release/semantic-release
[semantic-release-badge]:
https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg
[discord]: https://castopod.org/discord
[discord-badge]: https://img.shields.io/badge/chat-on%20discord-7389D8
[stars]: https://github.com/ad-aures/castopod/stargazers
[stars-badge]:
https://img.shields.io/github/stars/ad-aures/castopod?style=social
[crowdin]: https://translate.castopod.org/project/castopod
[crowdin-badge]: https://badges.crowdin.net/castopod/localized.svg

View File

@ -46,8 +46,7 @@ improvements ⚡.
- 👉 Make sure you run the scripts on your phpmyadmin panel or using command
line to update the database along with the package files!
- cf.
[I haven't updated my instance in a long time… What should I do?](#i-havent-updated-my-instance-in-a-long-time-what-should-i-do)
- I haven't updated my instance in a long time… What should I do?
5. If you are using redis, clear your cache.
6. ✨ Enjoy your fresh instance, you're all done!
@ -62,7 +61,7 @@ corner.
Alternatively, you can find the version in the `app > Config > Constants.php`
file.
### I haven't updated my instance in a long time… What should I do?
### [I haven't updated my instance in a long time… What should I do?](#i-havent-updated-my-instance-in-a-long-time-what-should-i-do)
No problem! Just get the latest release as described above. Only, when going
through the release instructions (4), perform them sequentially, from the oldest

View File

@ -46,8 +46,7 @@ improvements ⚡.
- 👉 Make sure you run the scripts on your phpmyadmin panel or using command
line to update the database along with the package files!
- cf.
[I haven't updated my instance in a long time… What should I do?](#i-havent-updated-my-instance-in-a-long-time-what-should-i-do)
- I haven't updated my instance in a long time… What should I do?
5. If you are using redis, clear your cache.
6. ✨ Enjoy your fresh instance, you're all done!
@ -62,7 +61,7 @@ corner.
Alternatively, you can find the version in the `app > Config > Constants.php`
file.
### I haven't updated my instance in a long time… What should I do?
### [I haven't updated my instance in a long time… What should I do?](#i-havent-updated-my-instance-in-a-long-time-what-should-i-do)
No problem! Just get the latest release as described above. Only, when going
through the release instructions (4), perform them sequentially, from the oldest

View File

@ -46,8 +46,7 @@ improvements ⚡.
- 👉 Make sure you run the scripts on your phpmyadmin panel or using command
line to update the database along with the package files!
- cf.
[I haven't updated my instance in a long time… What should I do?](#i-havent-updated-my-instance-in-a-long-time-what-should-i-do)
- I haven't updated my instance in a long time… What should I do?
5. If you are using redis, clear your cache.
6. ✨ Enjoy your fresh instance, you're all done!
@ -62,7 +61,7 @@ corner.
Alternatively, you can find the version in the `app > Config > Constants.php`
file.
### I haven't updated my instance in a long time… What should I do?
### [I haven't updated my instance in a long time… What should I do?](#i-havent-updated-my-instance-in-a-long-time-what-should-i-do)
No problem! Just get the latest release as described above. Only, when going
through the release instructions (4), perform them sequentially, from the oldest

View File

@ -29,14 +29,14 @@ return [
'fediverse' => 'kevrebed',
'block-lists' => 'roll ar re stanket',
'users' => 'implijerien·ezed',
'my-account' => "ma c'hont",
'my-account' => 'ma c\'hont',
'change-password' => 'kemmañ ar ger-tremen',
'import' => 'enporzhiañ ul lanv',
'platforms' => 'savennoù',
'social' => 'rouedadoù sokial',
'funding' => "arc'hantaouiñ",
'funding' => 'arc\'hantaouiñ',
'analytics' => 'muzulioù heklev',
'locations' => "lec'hioù",
'locations' => 'lec\'hioù',
'webpages' => 'pajennoù web',
'unique-listeners' => 'selaouerien·ezed unel',
'players' => 'lennerioù',

View File

@ -34,5 +34,5 @@ return [
'monthly_listening_time' => 'Sammad miziek ar badelezh selaou',
'by_weekday' => 'Dre zeiz ar sizhun (e-pad an 60 devezh diwezhañ)',
'by_hour' => 'Dre eur an devezh (e-pad an 60 devezh diwezhañ)',
'podcast_by_bandwidth' => "Lec'hed bann implijet bemdez (e MB)",
'podcast_by_bandwidth' => 'Lec\'hed bann implijet bemdez (e MB)',
];

View File

@ -13,14 +13,14 @@ return [
'no' => 'Ket',
'cancel' => 'Nullañ',
'optional' => 'Diret',
'more' => "Muioc'h",
'more' => 'Muioc\'h',
'no_data' => 'Roadenn ebet kavet!',
'close' => 'Serriñ',
'edit' => 'Kemmañ',
'copy' => 'Eilañ',
'copied' => 'Eilet!',
'home' => 'Degemer',
'explicit' => "Endalc'had evit an oadourien",
'explicit' => 'Endalc\'had evit an oadourien',
'powered_by' => 'Lusket gant {castopod}',
'actions' => 'Obererezhioù',
'pageInfo' => 'Pajenn {currentPage} diwar {pageCount}',
@ -34,9 +34,9 @@ return [
'multiSelect' => [
'selectText' => 'Pouezañ da ziuzañ',
'loadingText' => 'O kargañ…',
'noResultsText' => "Disoc'h ebet kavet",
'noChoicesText' => "N'eus dibab ebet da ziuzañ",
'maxItemText' => "N'haller ket ouzhpennañ elfennoù all",
'noResultsText' => 'Disoc\'h ebet kavet',
'noChoicesText' => 'N\'eus dibab ebet da ziuzañ',
'maxItemText' => 'N\'haller ket ouzhpennañ elfennoù all',
],
'upload_file' => 'Uskargit ur restr',
'remote_url' => 'URL a-bell',

View File

@ -20,7 +20,7 @@ return [
'AM' => 'Armenia',
'AO' => 'Angola',
'AQ' => 'Antarktik',
'AR' => "Arc'hantin",
'AR' => 'Arc\'hantin',
'AS' => 'Samoa Amerikan',
'AT' => 'Aostria',
'AU' => 'Aostralia',
@ -76,7 +76,7 @@ return [
'EC' => 'Ecuador',
'EE' => 'Estonia',
'EG' => 'Egipt',
'EH' => "Sahara ar C'hornôg",
'EH' => 'Sahara ar C\'hornôg',
'ER' => 'Eritrea',
'ES' => 'Spagn',
'ET' => 'Etiopia',
@ -85,7 +85,7 @@ return [
'FK' => 'Maloù, Inizi (Malvinas)',
'FM' => 'Mikronezia, Stadoù Kevreet',
'FO' => 'Faroe, Inizi',
'FR' => "Bro-C'hall",
'FR' => 'Bro-C\'hall',
'GA' => 'Gabon',
'GB' => 'Rouantelezh Unanet',
'GD' => 'Grenada',
@ -167,10 +167,10 @@ return [
'MU' => 'Moris',
'MV' => 'Maldivez',
'MW' => 'Malawi',
'MX' => "Mec'hiko",
'MX' => 'Mec\'hiko',
'MY' => 'Malaysia',
'MZ' => 'Mozambik',
'N/A' => "E-maez danvez (IP lec'hel…)",
'N/A' => 'E-maez danvez (IP lec\'hel…)',
'NA' => 'Namibia',
'NC' => 'Kaledonia-Nevez',
'NE' => 'Niger',
@ -186,7 +186,7 @@ return [
'OM' => 'Oman',
'PA' => 'Panama',
'PE' => 'Perou',
'PF' => "Polinezia C'hall",
'PF' => 'Polinezia C\'hall',
'PG' => 'Papoua Ginea-Nevez',
'PH' => 'Filipinez',
'PK' => 'Pakistan',
@ -250,8 +250,8 @@ return [
'VA' => 'Vatikan',
'VC' => 'Sant Visant hag an Inizi Granadinas',
'VE' => 'Venezuela, Republik Volivarian',
'VG' => "Inizi Gwerc'h Breizhveurat",
'VI' => "Inizi Gwerc'h, S.U.",
'VG' => 'Inizi Gwerc\'h Breizhveurat',
'VI' => 'Inizi Gwerc\'h, S.U.',
'VN' => 'Vietnam',
'VU' => 'Vanuatu',
'WF' => 'Wallis ha Futuna',

View File

@ -21,7 +21,7 @@ return [
other {# evezhiadenn}
}',
'all_podcast_episodes' => 'Holl rannoù ar podkast',
'back_to_podcast' => "Mont d'ar podkast en-dro",
'back_to_podcast' => 'Mont d\'ar podkast en-dro',
'edit' => 'Kemmañ',
'publish' => 'Embann',
'publish_edit' => 'Kemmañ an embannadur',
@ -29,7 +29,7 @@ return [
'publish_error' => 'Embannet eo bet ar rann dija.',
'publish_edit_error' => 'Embannet eo bet ar rann dija.',
'publish_cancel_error' => 'Embannet eo bet ar rann dija.',
'unpublish_error' => "N'eo ket bet embannet ar rann.",
'unpublish_error' => 'N\'eo ket bet embannet ar rann.',
'delete' => 'Dilemel',
'go_to_page' => 'Gwelout ar bajenn',
'create' => 'Ouzhpennañ ur rann',
@ -51,17 +51,17 @@ return [
],
'form' => [
'file_size_error' =>
"Re vras eo ho restr! {0} eo ar brasder uhelañ. Dav eo deoc'h kreskaat an talvoudoù `memory_limit`, `upload_max_filesize` ha `post_max_size` en ho restr kefluniañ, a-raok adloc'hañ ho servijer web hag uskargañ ho restr.",
'Re vras eo ho restr! {0} eo ar brasder uhelañ. Dav eo deoc\'h kreskaat an talvoudoù `memory_limit`, `upload_max_filesize` ha `post_max_size` en ho restr kefluniañ, a-raok adloc\'hañ ho servijer web hag uskargañ ho restr.',
'audio_file' => 'Restr aodio',
'audio_file_hint' => 'Dibabit ur restr .mp3 pe .m4a.',
'info_section_title' => 'Titouroù ar rann',
'cover' => 'Golo ar rann',
'cover_hint' =>
"Ma n'ho peus ket kaset ur golo e vo implijet hini ar podkast en e blas.",
'cover_size_hint' => "Ar golo a rankfe bezañ ur c'harrez 1400px e vent da nebeutañ.",
'Ma n\'ho peus ket kaset ur golo e vo implijet hini ar podkast en e blas.',
'cover_size_hint' => 'Ar golo a rankfe bezañ ur c\'harrez 1400px e vent da nebeutañ.',
'title' => 'Titl',
'title_hint' =>
"Dleout a rafe anv ar rann, sklaer ha berr. Arabat lakaat niverenn ar rann pe ar c'houlzad amañ.",
'Dleout a rafe anv ar rann, sklaer ha berr. Arabat lakaat niverenn ar rann pe ar c\'houlzad amañ.',
'permalink' => 'Peurliamm',
'season_number' => 'Koulzad',
'episode_number' => 'Rann',
@ -76,25 +76,25 @@ return [
],
'parental_advisory' => [
'label' => 'Kemenn evit ar gerent',
'hint' => "Hag ar rann-mañ a zo endalc'had ha ne zlefe ket gwelet gant bugale?",
'hint' => 'Hag ar rann-mañ a zo endalc\'had ha ne zlefe ket gwelet gant bugale?',
'undefined' => 'andermenet',
'clean' => 'Dereat',
'explicit' => "Endalc'had evit an oadourien",
'explicit' => 'Endalc\'had evit an oadourien',
],
'show_notes_section_title' => 'Notennoù ar rann',
'show_notes_section_subtitle' =>
"Betek 4000 arouez, sklaer ha berr. Notennoù a rann a c'hell sikour selaouerien·ezed zo kavout anezhi.",
'Betek 4000 arouez, sklaer ha berr. Notennoù a rann a c\'hell sikour selaouerien·ezed zo kavout anezhi.',
'description' => 'Deskrivadur',
'description_footer' => 'Traoñ an deskrivadur',
'description_footer_hint' =>
"Emañ ouzhpennet an destenn-mañ e dibenn an holl rannoù. Ul lec'h mat eo evit lakaat liammoù ho rouedadoù sokial da skouer.",
'Emañ ouzhpennet an destenn-mañ e dibenn an holl rannoù. Ul lec\'h mat eo evit lakaat liammoù ho rouedadoù sokial da skouer.',
'additional_files_section_title' => 'Restroù ouzhpenn',
'additional_files_section_subtitle' =>
"Ar restroù-mañ a c'hell bezañ implijet gant savennoù all evit aesaat an traoù d'ho selaouerien·ezed.<br />Sellit ouzh {podcastNamespaceLink} evit muioc'h a ditouroù.",
'location_section_title' => "Lec'h",
'location_section_subtitle' => "Eus peseurt lec'h ez eus kaoz er rann-mañ?",
'location_name' => "Anv pe chomlec'h al lec'h",
'location_name_hint' => "Al lec'h-mañ a c'hell bezañ unan gwir pe unan faltaziet",
'Ar restroù-mañ a c\'hell bezañ implijet gant savennoù all evit aesaat an traoù d\'ho selaouerien·ezed.<br />Sellit ouzh {podcastNamespaceLink} evit muioc\'h a ditouroù.',
'location_section_title' => 'Lec\'h',
'location_section_subtitle' => 'Eus peseurt lec\'h ez eus kaoz er rann-mañ?',
'location_name' => 'Anv pe chomlec\'h al lec\'h',
'location_name_hint' => 'Al lec\'h-mañ a c\'hell bezañ unan gwir pe unan faltaziet',
'transcript' => 'Treuzskrivadur (istitloù)',
'transcript_hint' => 'Aotreet e vez nemet .srt.',
'transcript_download' => 'Pellgargañ an treuzskrivadur',
@ -107,14 +107,14 @@ return [
'chapters_file' => 'Restr ar chabistroù',
'chapters_remote_url' => 'URL a-bell evit restr ar chabistroù',
'chapters_file_delete' => 'Dilemel restr ar chabistroù',
'advanced_section_title' => "Arventennoù kempleshoc'h",
'advanced_section_title' => 'Arventennoù kempleshoc\'h',
'advanced_section_subtitle' =>
"M'ho peus ezhomm eus balizennoù RSS ha n'eus ket anezho e Castopod e c'hellit o lakaat amañ.",
'M\'ho peus ezhomm eus balizennoù RSS ha n\'eus ket anezho e Castopod e c\'hellit o lakaat amañ.',
'custom_rss' => 'Balizennoù RSS personelaet evit ar rann',
'custom_rss_hint' => 'An dra-se a vo ouzhpennet e-barzh ar valizenn ❬item❭.',
'block' => 'Ar rann-se a rankfe bezañ kuzhet diouzh an holl savennoù',
'block_hint' =>
"Gwelusted ar rann. Ma fell deoc'h e vefe skarzhet ar rann eus roll Apple, gweredekait ar vaezienn-mañ.",
'Gwelusted ar rann. Ma fell deoc\'h e vefe skarzhet ar rann eus roll Apple, gweredekait ar vaezienn-mañ.',
'submit_create' => 'Krouiñ ar rann',
'submit_edit' => 'Enrollañ ar rann',
],
@ -136,8 +136,8 @@ return [
'submit' => 'Embann',
'submit_edit' => 'Kemmañ an embannadur',
'cancel_publication' => 'Nullañ an embannadur',
'message_warning' => "N'ho peus ket skrivet ur gemennadenn evit brudañ ho rann!",
'message_warning_hint' => "Ouzhpennañ ur gemennadenn a lakay muioc'h a dud er jeu, ha diwar se e vo gwelet muioc'h ho rann.",
'message_warning' => 'N\'ho peus ket skrivet ur gemennadenn evit brudañ ho rann!',
'message_warning_hint' => 'Ouzhpennañ ur gemennadenn a lakay muioc\'h a dud er jeu, ha diwar se e vo gwelet muioc\'h ho rann.',
'message_warning_submit' => 'Embann memestra',
],
'unpublish_form' => [
@ -155,9 +155,9 @@ return [
'embed' => [
'title' => 'Lenner enkorfet',
'label' =>
"Dibabit ul liv evit an tem, eilit ar c'hod er golver ha pegit anezhañ war ho lec'hienn.",
'Dibabit ul liv evit an tem, eilit ar c\'hod er golver ha pegit anezhañ war ho lec\'hienn.',
'clipboard_iframe' => 'Eilañ al lenner enkorfet er golver',
'clipboard_url' => "Eilañ ar chomlec'h er golver",
'clipboard_url' => 'Eilañ ar chomlec\'h er golver',
'dark' => 'Teñval',
'dark-transparent' => 'Teñval treuzwelus',
'light' => 'Sklaer',

View File

@ -10,7 +10,7 @@ declare(strict_types=1);
return [
'messages' => [
'actorNotFound' => "N'eo ket bet kavet ar gont-se!",
'actorNotFound' => 'N\'eo ket bet kavet ar gont-se!',
'blockActorSuccess' => 'Stanket eo bet {actor}!',
'unblockActorSuccess' => 'Distanket eo bet an implijer·ez!',
'blockDomainSuccess' => 'Stanket eo bet {domain}!',

View File

@ -10,7 +10,7 @@ declare(strict_types=1);
return [
'all_podcasts' => 'An holl bodkastoù',
'no_podcast' => "N'eo bet kavet podkast ebet!",
'no_podcast' => 'N\'eo bet kavet podkast ebet!',
'create' => 'Krouiñ ur podkast',
'import' => 'Enporzhiañ ur podkast',
'new_episode' => 'Rann nevez',

View File

@ -71,7 +71,7 @@ return [
'Wird von den meisten Plattformen verwendet werden, um den Podcast-Besitz zu überprüfen. Sichtbar im öffentlichen RSS-Feed.',
'publisher' => 'Herausgeber',
'publisher_hint' =>
"Die Gruppe, die für die Erstellung des Podcasts verantwortlich ist. Oft bezogen auf die Muttergesellschaft oder das Netzwerk eines Podcasts. Dieses Feld wird manchmal als 'Autor' bezeichnet.",
'Die Gruppe, die für die Erstellung des Podcasts verantwortlich ist. Oft bezogen auf die Muttergesellschaft oder das Netzwerk eines Podcasts. Dieses Feld wird manchmal als \'Autor\' bezeichnet.',
'copyright' => 'Urheberrecht',
'location_section_title' => 'Standort',
'location_section_subtitle' => 'Über welchen Ort handelt dieser Podcast?',
@ -143,7 +143,7 @@ return [
'improv' => 'Improvisation',
'stand_up' => 'Stand-Up',
'courses' => 'Kurse',
'how_to' => "So geht's",
'how_to' => 'So geht\'s',
'language_learning' => 'Sprachenlernen',
'self_improvement' => 'Weiterbildung',
'comedy_fiction' => 'Komödie Fiktion',

View File

@ -56,7 +56,7 @@ return [
'info_section_title' => 'Πληροφορίες επεισοδίου',
'cover' => 'Εξώφυλλο επισοδίου',
'cover_hint' =>
"Εάν δεν ορίσετε ένα εξώφυλλο, το εξώφυλλο του podcast θα χρησιμοποιηθεί αντ 'αυτού.",
'Εάν δεν ορίσετε ένα εξώφυλλο, το εξώφυλλο του podcast θα χρησιμοποιηθεί αντ \'αυτού.',
'cover_size_hint' => 'Το εξώφυλλο πρέπει να είναι τουλάχιστον 1400px πλάτος και ύψος.',
'title' => 'Τίτλος',
'title_hint' =>

View File

@ -37,7 +37,7 @@ return [
'funding' => 'financiering',
'analytics' => 'statistieken',
'locations' => 'locaties',
'webpages' => "web pagina's",
'webpages' => 'web pagina\'s',
'unique-listeners' => 'unieke luisteraars',
'players' => 'spelers',
'listening-time' => 'afspeeltijd',

View File

@ -28,7 +28,7 @@ return [
'by_country_yearly' => 'Afleveringen gedownload per land (van de afgelopen jaar)',
'by_domain_weekly' => 'Directe webpagina verzoeken (van de afgelopen week)',
'by_domain_yearly' => 'Directe webpagina verzoeken (van de afgelopen jaar)',
'by_entry_page' => "Webpagina's bezoeken via landingspagina (van de afgelopen week)",
'by_entry_page' => 'Webpagina\'s bezoeken via landingspagina (van de afgelopen week)',
'podcast_bots' => 'Bots (crawlers)',
'daily_listening_time' => 'Dagelijkse cumulatieve afspeeltijd',
'monthly_listening_time' => 'Maandelijkse cumulatieve afspeeltijd',

View File

@ -7,6 +7,7 @@ use Rector\CodingStyle\Rector\ClassMethod\UnSpreadOperatorRector;
use Rector\CodingStyle\Rector\Encapsed\EncapsedStringsToSprintfRector;
use Rector\CodingStyle\Rector\FuncCall\ConsistentPregDelimiterRector;
use Rector\CodingStyle\Rector\Stmt\NewlineAfterStatementRector;
use Rector\CodingStyle\Rector\String_\SymplifyQuoteEscapeRector;
use Rector\Core\Configuration\Option;
use Rector\Core\ValueObject\PhpVersion;
use Rector\EarlyReturn\Rector\If_\ChangeOrIfContinueToMultiContinueRector;
@ -66,6 +67,10 @@ return static function (ContainerConfigurator $containerConfigurator): void {
__DIR__ . '/app/Language/*',
__DIR__ . '/modules/*/Language/*',
],
SymplifyQuoteEscapeRector::class => [
__DIR__ . '/app/Language/*',
__DIR__ . '/modules/*/Language/*',
],
OptionalParametersAfterRequiredRector::class => [
__DIR__ . '/app/Validation',
],