Просмотр исходного кода

Fix french i18n for install + some fixes

French is finished!
Marien Fressinaud 11 лет назад
Родитель
Сommit
bf51a8e875

+ 1 - 1
app/Models/CategoryDAO.php

@@ -134,7 +134,7 @@ class FreshRSS_CategoryDAO extends Minz_ModelPdo {
 		$def_cat = $this->searchById(1);
 
 		if ($def_cat == null) {
-			$cat = new FreshRSS_Category(_t('default_category'));
+			$cat = new FreshRSS_Category(_t('gen.short.default_category'));
 			$cat->_id(1);
 
 			$values = array(

+ 2 - 2
app/Models/UserDAO.php

@@ -9,7 +9,7 @@ class FreshRSS_UserDAO extends Minz_ModelPdo {
 
 		$ok = false;
 		if (defined('SQL_CREATE_TABLES')) {	//E.g. MySQL
-			$sql = sprintf(SQL_CREATE_TABLES, $db['prefix'] . $username . '_', _t('default_category'));
+			$sql = sprintf(SQL_CREATE_TABLES, $db['prefix'] . $username . '_', _t('gen.short.default_category'));
 			$stm = $userPDO->bd->prepare($sql);
 			$ok = $stm && $stm->execute();
 		} else {	//E.g. SQLite
@@ -17,7 +17,7 @@ class FreshRSS_UserDAO extends Minz_ModelPdo {
 			if (is_array($SQL_CREATE_TABLES)) {
 				$ok = true;
 				foreach ($SQL_CREATE_TABLES as $instruction) {
-					$sql = sprintf($instruction, '', _t('default_category'));
+					$sql = sprintf($instruction, '', _t('gen.short.default_category'));
 					$stm = $userPDO->bd->prepare($sql);
 					$ok &= ($stm && $stm->execute());
 				}

+ 1 - 0
app/i18n/fr/conf.php

@@ -143,6 +143,7 @@ return array(
 		'first_article' => 'Passer au premier article',
 		'focus_search' => 'Accéder à la recherche',
 		'help' => 'Afficher la documentation',
+		'javascript' => 'Le JavaScript doit être activé pour pouvoir profiter des raccourcis.',
 		'last_article' => 'Passer au dernier article',
 		'load_more' => 'Charger plus d’articles',
 		'mark_read' => 'Marquer comme lu',

+ 1 - 91
app/i18n/fr/gen.php

@@ -134,100 +134,10 @@ return array(
 		'by_author' => 'Par <em>%s</em>',
 		'by_default' => 'Par défaut',
 		'damn' => 'Arf !',
+		'default_category' => 'Sans catégorie',
 		'no' => 'Non',
 		'ok' => 'Ok !',
-		'oops' => 'Oups !',
 		'or' => 'ou',
 		'yes' => 'Oui',
 	),
-
-	'activate_sharing' => 'Activer le partage',
-	'article' => 'Article',
-	'article_published_on' => 'Article publié initialement sur <a href="%s">%s</a>',
-	'article_published_on_author' => 'Article publié initialement sur <a href="%s">%s</a> par %s',
-	'articles' => 'articles',
-	'author' => 'Auteur',
-	'bad_opml_file' => 'Votre fichier OPML n’est pas valide.',
-	'base_url' => 'Base de l’URL',
-	'bdd' => 'Base de données',
-	'bdd_conf_is_ko' => 'Vérifiez les informations d’accès à la base de données.',
-	'bdd_conf_is_ok' => 'La configuration de la base de données a été enregistrée.',
-	'bdd_configuration' => 'Base de données',
-	'bdd_type' => 'Type de base de données',
-	'by_email' => 'Par courriel',
-	'by_feed' => 'par flux',
-	'cache_is_ok' => 'Les droits sur le répertoire de cache sont bons',
-	'can_not_be_deleted' => 'Ne peut pas être supprimée.',
-	'categories' => 'Catégories',
-	'categories_management' => 'Gestion des catégories',
-	'categories_updated' => 'Les catégories ont été mises à jour.',
-	'categorize' => 'Ranger dans une catégorie',
-	'category_number' => 'Catégorie n°%d',
-	'change_value' => 'Vous devriez changer cette valeur par n’importe quelle autre',
-	'checks' => 'Vérifications',
-	'choose_language' => 'Choisissez la langue pour FreshRSS',
-	'congratulations' => 'Félicitations !',
-	'ctype_is_nok' => 'Il manque une librairie pour la vérification des types de caractères (php-ctype)',
-	'ctype_is_ok' => 'Vous disposez du nécessaire pour la vérification des types de caractères (ctype)',
-	'curl_is_nok' => 'Vous ne disposez pas de cURL (paquet php5-curl)',
-	'curl_is_ok' => 'Vous disposez de cURL dans sa version %s',
-	'data_is_ok' => 'Les droits sur le répertoire de data sont bons',
-	'default_category' => 'Sans catégorie',
-	'default_user' => 'Nom de l’utilisateur par défaut <small>(16 caractères alphanumériques maximum)</small>',
-	'display' => 'Affichage',
-	'do_not_change_if_doubt' => 'Laissez tel quel dans le doute',
-	'dom_is_nok' => 'Il manque une librairie pour parcourir le DOM (paquet php-xml)',
-	'dom_is_ok' => 'Vous disposez du nécessaire pour parcourir le DOM',
-	'favicons_is_ok' => 'Les droits sur le répertoire des favicons sont bons',
-	'feed' => 'Flux',
-	'feeds' => 'Flux',
-	'finish_installation' => 'Terminer l’installation',
-	'fix_errors_before' => 'Veuillez corriger les erreurs avant de passer à l’étape suivante.',
-	'freshrss_installation' => 'Installation · FreshRSS',
-	'general_conf_is_ok' => 'La configuration générale a été enregistrée.',
-	'general_configuration' => 'Configuration générale',
-	'host' => 'Hôte',
-	'http_referer_is_nok' => 'Veuillez vérifier que vous ne modifiez pas votre HTTP REFERER.',
-	'http_referer_is_ok' => 'Le HTTP REFERER est connu et semble correspondre à votre serveur.',
-	'install_not_deleted' => 'Quelque chose s’est mal passé, vous devez supprimer le fichier <em>%s</em> à la main.',
-	'installation_is_ok' => 'L’installation s’est bien passée.<br />La dernière étape va maintenant tenter de supprimer les fichiers ainsi que d’éventuelles copies de base de données créés durant le processus de mise à jour.<br />Vous pouvez choisir de sauter cette étape en supprimant <kbd>./data/do-install.txt</kbd> manuellement.',
-	'installation_step' => 'Installation — étape %d · FreshRSS',
-	'javascript_for_shortcuts' => 'Le JavaScript doit être activé pour pouvoir profiter des raccourcis.',
-	'javascript_is_better' => 'FreshRSS est plus agréable à utiliser avec JavaScript activé',
-	'language_defined' => 'La langue a bien été définie.',
-	'log_is_ok' => 'Les droits sur le répertoire des logs sont bons',
-	'login_required' => 'Accès protégé par mot de passe :',
-	'minz_is_nok' => 'Vous ne disposez pas de la librairie Minz. Vous devriez exécuter le script <em>build.sh</em> ou bien <a href="https://github.com/marienfressinaud/MINZ">la télécharger sur Github</a> et installer dans le répertoire <em>%s</em> le contenu de son répertoire <em>/lib</em>.',
-	'minz_is_ok' => 'Vous disposez du framework Minz',
-	'next_page' => 'Passer à la page suivante',
-	'next_step' => 'Passer à l’étape suivante',
-	'no_feed_actualized' => 'Aucun flux n’a pu être mis à jour.',
-	'no_rss_feed' => 'Aucun flux RSS',
-	'no_selected_feed' => 'Aucun flux sélectionné.',
-	'not_read' => '%d non lu',
-	'not_reads' => '%d non lus',
-	'not_yet_implemented' => 'Pas encore implémenté',
-	'number_feeds' => '%d flux',
-	'pcre_is_nok' => 'Il manque une librairie pour les expressions régulières (php-pcre)',
-	'pcre_is_ok' => 'Vous disposez du nécessaire pour les expressions régulières (PCRE)',
-	'pdo_is_nok' => 'Vous ne disposez pas de PDO ou d’un des drivers supportés (pdo_mysql, pdo_sqlite)',
-	'pdo_is_ok' => 'Vous disposez de PDO et d’au moins un des drivers supportés (pdo_mysql, pdo_sqlite)',
-	'persona_is_ok' => 'Les droits sur le répertoire de Mozilla Persona sont bons',
-	'php_is_nok' => 'Votre version de PHP est la %s mais FreshRSS requiert au moins la version %s',
-	'php_is_ok' => 'Votre version de PHP est la %s, qui est compatible avec FreshRSS',
-	'prefix' => 'Préfixe des tables',
-	'previous_page' => 'Passer à la page précédente',
-	'public' => 'Public',
-	'random_string' => 'Chaîne aléatoire',
-	'sharing_management' => 'Gestion des options de partage',
-	'steps' => 'Étapes',
-	'this_is_the_end' => 'This is the end',
-	'update_end' => 'La mise à jour est terminée, vous pouvez maintenant passer à l’étape finale.',
-	'update_long' => 'Ce processus peut prendre longtemps, selon la taille de votre base de données. Vous aurez peut-être à attendre que cette page dépasse son temps maximum d’exécution (~5 minutes) puis à la recharger.',
-	'update_start' => 'Lancer la mise à jour',
-	'updated' => 'Modifications enregistrées.',
-	'version_update' => 'Mise à jour',
-	'your_diaspora_pod' => 'Votre pod Diaspora*',
-	'your_shaarli' => 'Votre Shaarli',
-	'your_wallabag' => 'Votre wallabag',
 );

+ 101 - 1
app/i18n/fr/install.php

@@ -1,5 +1,105 @@
 <?php
 
 return array(
-
+	'action' => array(
+		'finish' => 'Terminer l’installation',
+		'next_step' => 'Passer à l’étape suivante',
+	),
+	'auth' => array(
+		'email_persona' => 'Adresse courriel de connexion<br /><small>(pour <a href="https://persona.org/" rel="external">Mozilla Persona</a>)</small>',
+		'form' => 'Formulaire (traditionnel, requiert JavaScript)',
+		'http' => 'HTTP (pour utilisateurs avancés avec HTTPS)',
+		'none' => 'Aucune (dangereux)',
+		'password_form' => 'Mot de passe<br /><small>(pour connexion par formulaire)</small>',
+		'persona' => 'Mozilla Persona (moderne, requiert JavaScript)',
+		'type' => 'Méthode d’authentification',
+	),
+	'bdd' => array(
+		'_' => 'Base de données',
+		'conf' => array(
+			'_' => 'Base de données',
+			'ko' => 'Vérifiez les informations d’accès à la base de données.',
+			'ok' => 'La configuration de la base de données a été enregistrée.',
+		),
+		'host' => 'Hôte',
+		'password' => 'Mot de passe',
+		'prefix' => 'Préfixe des tables',
+		'type' => 'Type de base de données',
+		'username' => 'Nom d’utilisateur',
+	),
+	'check' => array(
+		'_' => 'Vérifications',
+		'cache' => array(
+			'nok' => 'Veuillez vérifier les droits sur le répertoire <em>./data/cache</em>. Le serveur HTTP doit être capable d’écrire dedans',
+			'ok' => 'Les droits sur le répertoire de cache sont bons.',
+		),
+		'ctype' => array(
+			'nok' => 'Il manque une librairie pour la vérification des types de caractères (php-ctype).',
+			'ok' => 'Vous disposez du nécessaire pour la vérification des types de caractères (ctype).',
+		),
+		'curl' => array(
+			'nok' => 'Vous ne disposez pas de cURL (paquet php5-curl).',
+			'ok' => 'Vous disposez de cURL.',
+		),
+		'data' => array(
+			'nok' => 'Veuillez vérifier les droits sur le répertoire <em>./data</em>. Le serveur HTTP doit être capable d’écrire dedans',
+			'ok' => 'Les droits sur le répertoire de data sont bons.',
+		),
+		'dom' => array(
+			'nok' => 'Il manque une librairie pour parcourir le DOM (paquet php-xml).',
+			'ok' => 'Vous disposez du nécessaire pour parcourir le DOM.',
+		),
+		'favicons' => array(
+			'nok' => 'Veuillez vérifier les droits sur le répertoire <em>./data/favicons</em>. Le serveur HTTP doit être capable d’écrire dedans',
+			'ok' => 'Les droits sur le répertoire des favicons sont bons.',
+		),
+		'http_referer' => array(
+			'nok' => 'Veuillez vérifier que vous ne modifiez pas votre HTTP REFERER.',
+			'ok' => 'Le HTTP REFERER est connu et semble correspondre à votre serveur.',
+		),
+		'logs' => array(
+			'nok' => 'Veuillez vérifier les droits sur le répertoire <em>./data/logs</em>. Le serveur HTTP doit être capable d’écrire dedans',
+			'ok' => 'Les droits sur le répertoire des logs sont bons.',
+		),
+		'minz' => array(
+			'nok' => 'Vous ne disposez pas de la librairie Minz.',
+			'ok' => 'Vous disposez du framework Minz',
+		),
+		'pcre' => array(
+			'nok' => 'Il manque une librairie pour les expressions régulières (php-pcre).',
+			'ok' => 'Vous disposez du nécessaire pour les expressions régulières (PCRE).',
+		),
+		'pdo' => array(
+			'nok' => 'Vous ne disposez pas de PDO ou d’un des drivers supportés (pdo_mysql, pdo_sqlite).',
+			'ok' => 'Vous disposez de PDO et d’au moins un des drivers supportés (pdo_mysql, pdo_sqlite).',
+		),
+		'persona' => array(
+			'nok' => 'Veuillez vérifier les droits sur le répertoire <em>./data/persona</em>. Le serveur HTTP doit être capable d’écrire dedans',
+			'ok' => 'Les droits sur le répertoire de Mozilla Persona sont bons.',
+		),
+		'php' => array(
+			'nok' => 'Votre version de PHP est la %s mais FreshRSS requiert au moins la version %s.',
+			'ok' => 'Votre version de PHP est la %s, qui est compatible avec FreshRSS.',
+		),
+	),
+	'conf' => array(
+		'_' => 'Configuration générale',
+		'ok' => 'La configuration générale a été enregistrée.',
+	),
+	'congratulations' => 'Félicitations !',
+	'default_user' => 'Nom de l’utilisateur par défaut <small>(16 caractères alphanumériques maximum)</small>',
+	'delete_articles_after' => 'Supprimer les articles après',
+	'fix_errors_before' => 'Veuillez corriger les erreurs avant de passer à l’étape suivante.',
+	'javascript_is_better' => 'FreshRSS est plus agréable à utiliser avec JavaScript activé',
+	'language' => array(
+		'_' => 'Langue',
+		'choose' => 'Choisissez la langue pour FreshRSS',
+		'defined' => 'La langue a bien été définie.',
+	),
+	'ok' => 'L’installation s’est bien passée.',
+	'not_deleted' => 'Quelque chose s’est mal passé, vous devez supprimer le fichier <em>%s</em> à la main.',
+	'step' => 'étape %d',
+	'steps' => 'Étapes',
+	'title' => 'Installation · FreshRSS',
+	'this_is_the_end' => 'This is the end',
 );

+ 2 - 0
app/i18n/fr/sub.php

@@ -27,8 +27,10 @@ return array(
 		'informations' => 'Informations',
 		'keep_history' => 'Nombre minimum d’articles à conserver',
 		'moved_category_deleted' => 'Lors de la suppression d’une catégorie, ses flux seront automatiquement classés dans <em>%s</em>.',
+		'no_selected' => 'Aucun flux sélectionné.',
 		'number_entries' => '%d articles',
 		'stats' => 'Statistiques',
+		'think_to_add' => 'Vous pouvez ajouter des flux.',
 		'title' => 'Titre',
 		'title_add' => 'Ajouter un flux RSS',
 		'ttl' => 'Ne pas automatiquement rafraîchir plus souvent que',

+ 85 - 84
app/install.php

@@ -85,7 +85,7 @@ function saveLanguage() {
 
 function saveStep2() {
 	if (!empty($_POST)) {
-		$_SESSION['title'] = substr(trim(param('title', _t('freshrss'))), 0, 25);
+		$_SESSION['title'] = substr(trim(param('title', _t('gen.freshrss'))), 0, 25);
 		$_SESSION['old_entries'] = param('old_entries', 3);
 		$_SESSION['auth_type'] = param('auth_type', 'form');
 		$_SESSION['default_user'] = substr(preg_replace('/[^a-zA-Z0-9]/', '', param('default_user', '')), 0, 16);
@@ -394,7 +394,7 @@ function checkBD() {
 		$c = new PDO($str, $_SESSION['bd_user'], $_SESSION['bd_password'], $driver_options);
 
 		if (defined('SQL_CREATE_TABLES')) {
-			$sql = sprintf(SQL_CREATE_TABLES, $_SESSION['bd_prefix_user'], _t('default_category'));
+			$sql = sprintf(SQL_CREATE_TABLES, $_SESSION['bd_prefix_user'], _t('gen.short.default_category'));
 			$stm = $c->prepare($sql);
 			$ok = $stm->execute();
 		} else {
@@ -402,7 +402,7 @@ function checkBD() {
 			if (is_array($SQL_CREATE_TABLES)) {
 				$ok = true;
 				foreach ($SQL_CREATE_TABLES as $instruction) {
-					$sql = sprintf($instruction, $_SESSION['bd_prefix_user'], _t('default_category'));
+					$sql = sprintf($instruction, $_SESSION['bd_prefix_user'], _t('gen.short.default_category'));
 					$stm = $c->prepare($sql);
 					$ok &= $stm->execute();
 				}
@@ -425,13 +425,13 @@ function printStep0() {
 	global $actual;
 ?>
 	<?php $s0 = checkStep0(); if ($s0['all'] == 'ok') { ?>
-	<p class="alert alert-success"><span class="alert-head"><?php echo _t('ok'); ?></span> <?php echo _t('language_defined'); ?></p>
+	<p class="alert alert-success"><span class="alert-head"><?php echo _t('gen.short.ok'); ?></span> <?php echo _t('install.language.defined'); ?></p>
 	<?php } ?>
 
 	<form action="index.php?step=0" method="post">
-		<legend><?php echo _t('choose_language'); ?></legend>
+		<legend><?php echo _t('install.language.choose'); ?></legend>
 		<div class="form-group">
-			<label class="group-name" for="language"><?php echo _t('language'); ?></label>
+			<label class="group-name" for="language"><?php echo _t('install.language'); ?></label>
 			<div class="group-controls">
 				<select name="language" id="language">
 				<?php $languages = availableLanguages(); ?>
@@ -444,10 +444,10 @@ function printStep0() {
 
 		<div class="form-group form-actions">
 			<div class="group-controls">
-				<button type="submit" class="btn btn-important"><?php echo _t('save'); ?></button>
-				<button type="reset" class="btn"><?php echo _t('cancel'); ?></button>
+				<button type="submit" class="btn btn-important"><?php echo _t('gen.action.submit'); ?></button>
+				<button type="reset" class="btn"><?php echo _t('gen.action.cancel'); ?></button>
 				<?php if ($s0['all'] == 'ok') { ?>
-				<a class="btn btn-important next-step" href="?step=1"><?php echo _t('next_step'); ?></a>
+				<a class="btn btn-important next-step" href="?step=1"><?php echo _t('install.action.next_step'); ?></a>
 				<?php } ?>
 			</div>
 		</div>
@@ -455,94 +455,95 @@ function printStep0() {
 <?php
 }
 
+// @todo refactor this view with the check_install action
 function printStep1() {
 	$res = checkStep1();
 ?>
-	<noscript><p class="alert alert-warn"><span class="alert-head"><?php echo _t('attention'); ?></span> <?php echo _t('javascript_is_better'); ?></p></noscript>
+	<noscript><p class="alert alert-warn"><span class="alert-head"><?php echo _t('gen.short.attention'); ?></span> <?php echo _t('install.javascript_is_better'); ?></p></noscript>
 
 	<?php if ($res['php'] == 'ok') { ?>
-	<p class="alert alert-success"><span class="alert-head"><?php echo _t('ok'); ?></span> <?php echo _t('php_is_ok', PHP_VERSION); ?></p>
+	<p class="alert alert-success"><span class="alert-head"><?php echo _t('gen.short.ok'); ?></span> <?php echo _t('install.check.php.ok', PHP_VERSION); ?></p>
 	<?php } else { ?>
-	<p class="alert alert-error"><span class="alert-head"><?php echo _t('damn'); ?></span> <?php echo _t('php_is_nok', PHP_VERSION, '5.2.1'); ?></p>
+	<p class="alert alert-error"><span class="alert-head"><?php echo _t('gen.short.damn'); ?></span> <?php echo _t('install.check.php.nok', PHP_VERSION, '5.2.1'); ?></p>
 	<?php } ?>
 
 	<?php if ($res['minz'] == 'ok') { ?>
-	<p class="alert alert-success"><span class="alert-head"><?php echo _t('ok'); ?></span> <?php echo _t('minz_is_ok'); ?></p>
+	<p class="alert alert-success"><span class="alert-head"><?php echo _t('gen.short.ok'); ?></span> <?php echo _t('install.check.minz.ok'); ?></p>
 	<?php } else { ?>
-	<p class="alert alert-error"><span class="alert-head"><?php echo _t('damn'); ?></span> <?php echo _t('minz_is_nok', LIB_PATH . '/Minz'); ?></p>
+	<p class="alert alert-error"><span class="alert-head"><?php echo _t('gen.short.damn'); ?></span> <?php echo _t('install.check.minz.nok', LIB_PATH . '/Minz'); ?></p>
 	<?php } ?>
 
 	<?php if ($res['pdo'] == 'ok') { ?>
-	<p class="alert alert-success"><span class="alert-head"><?php echo _t('ok'); ?></span> <?php echo _t('pdo_is_ok'); ?></p>
+	<p class="alert alert-success"><span class="alert-head"><?php echo _t('gen.short.ok'); ?></span> <?php echo _t('install.check.pdo.ok'); ?></p>
 	<?php } else { ?>
-	<p class="alert alert-error"><span class="alert-head"><?php echo _t('damn'); ?></span> <?php echo _t('pdo_is_nok'); ?></p>
+	<p class="alert alert-error"><span class="alert-head"><?php echo _t('gen.short.damn'); ?></span> <?php echo _t('install.check.pdo.nok'); ?></p>
 	<?php } ?>
 
 	<?php if ($res['curl'] == 'ok') { ?>
 	<?php $version = curl_version(); ?>
-	<p class="alert alert-success"><span class="alert-head"><?php echo _t('ok'); ?></span> <?php echo _t('curl_is_ok', $version['version']); ?></p>
+	<p class="alert alert-success"><span class="alert-head"><?php echo _t('gen.short.ok'); ?></span> <?php echo _t('install.check.curl.ok', $version['version']); ?></p>
 	<?php } else { ?>
-	<p class="alert alert-error"><span class="alert-head"><?php echo _t('damn'); ?></span> <?php echo _t('curl_is_nok'); ?></p>
+	<p class="alert alert-error"><span class="alert-head"><?php echo _t('gen.short.damn'); ?></span> <?php echo _t('install.check.curl.nok'); ?></p>
 	<?php } ?>
 
 	<?php if ($res['pcre'] == 'ok') { ?>
-	<p class="alert alert-success"><span class="alert-head"><?php echo _t('ok'); ?></span> <?php echo _t('pcre_is_ok'); ?></p>
+	<p class="alert alert-success"><span class="alert-head"><?php echo _t('gen.short.ok'); ?></span> <?php echo _t('install.check.pcre.ok'); ?></p>
 	<?php } else { ?>
-	<p class="alert alert-error"><span class="alert-head"><?php echo _t('damn'); ?></span> <?php echo _t('pcre_is_nok'); ?></p>
+	<p class="alert alert-error"><span class="alert-head"><?php echo _t('gen.short.damn'); ?></span> <?php echo _t('install.check.pcre.nok'); ?></p>
 	<?php } ?>
 
 	<?php if ($res['ctype'] == 'ok') { ?>
-	<p class="alert alert-success"><span class="alert-head"><?php echo _t('ok'); ?></span> <?php echo _t('ctype_is_ok'); ?></p>
+	<p class="alert alert-success"><span class="alert-head"><?php echo _t('gen.short.ok'); ?></span> <?php echo _t('install.check.ctype.ok'); ?></p>
 	<?php } else { ?>
-	<p class="alert alert-error"><span class="alert-head"><?php echo _t('damn'); ?></span> <?php echo _t('ctype_is_nok'); ?></p>
+	<p class="alert alert-error"><span class="alert-head"><?php echo _t('gen.short.damn'); ?></span> <?php echo _t('install.check.ctype.nok'); ?></p>
 	<?php } ?>
 
 	<?php if ($res['dom'] == 'ok') { ?>
-	<p class="alert alert-success"><span class="alert-head"><?php echo _t('ok'); ?></span> <?php echo _t('dom_is_ok'); ?></p>
+	<p class="alert alert-success"><span class="alert-head"><?php echo _t('gen.short.ok'); ?></span> <?php echo _t('install.check.dom.ok'); ?></p>
 	<?php } else { ?>
-	<p class="alert alert-error"><span class="alert-head"><?php echo _t('damn'); ?></span> <?php echo _t('dom_is_nok'); ?></p>
+	<p class="alert alert-error"><span class="alert-head"><?php echo _t('gen.short.damn'); ?></span> <?php echo _t('install.check.dom.nok'); ?></p>
 	<?php } ?>
 
 	<?php if ($res['data'] == 'ok') { ?>
-	<p class="alert alert-success"><span class="alert-head"><?php echo _t('ok'); ?></span> <?php echo _t('data_is_ok'); ?></p>
+	<p class="alert alert-success"><span class="alert-head"><?php echo _t('gen.short.ok'); ?></span> <?php echo _t('install.check.data.ok'); ?></p>
 	<?php } else { ?>
-	<p class="alert alert-error"><span class="alert-head"><?php echo _t('damn'); ?></span> <?php echo _t('file_is_nok', DATA_PATH); ?></p>
+	<p class="alert alert-error"><span class="alert-head"><?php echo _t('gen.short.damn'); ?></span> <?php echo _t('install.check.data.nok', DATA_PATH); ?></p>
 	<?php } ?>
 
 	<?php if ($res['cache'] == 'ok') { ?>
-	<p class="alert alert-success"><span class="alert-head"><?php echo _t('ok'); ?></span> <?php echo _t('cache_is_ok'); ?></p>
+	<p class="alert alert-success"><span class="alert-head"><?php echo _t('gen.short.ok'); ?></span> <?php echo _t('install.check.cache.ok'); ?></p>
 	<?php } else { ?>
-	<p class="alert alert-error"><span class="alert-head"><?php echo _t('damn'); ?></span> <?php echo _t('file_is_nok', CACHE_PATH); ?></p>
+	<p class="alert alert-error"><span class="alert-head"><?php echo _t('gen.short.damn'); ?></span> <?php echo _t('install.check.cache.nok', CACHE_PATH); ?></p>
 	<?php } ?>
 
 	<?php if ($res['log'] == 'ok') { ?>
-	<p class="alert alert-success"><span class="alert-head"><?php echo _t('ok'); ?></span> <?php echo _t('log_is_ok'); ?></p>
+	<p class="alert alert-success"><span class="alert-head"><?php echo _t('gen.short.ok'); ?></span> <?php echo _t('install.check.logs.ok'); ?></p>
 	<?php } else { ?>
-	<p class="alert alert-error"><span class="alert-head"><?php echo _t('damn'); ?></span> <?php echo _t('file_is_nok', LOG_PATH); ?></p>
+	<p class="alert alert-error"><span class="alert-head"><?php echo _t('gen.short.damn'); ?></span> <?php echo _t('install.check.logs.nok', LOG_PATH); ?></p>
 	<?php } ?>
 
 	<?php if ($res['favicons'] == 'ok') { ?>
-	<p class="alert alert-success"><span class="alert-head"><?php echo _t('ok'); ?></span> <?php echo _t('favicons_is_ok'); ?></p>
+	<p class="alert alert-success"><span class="alert-head"><?php echo _t('gen.short.ok'); ?></span> <?php echo _t('install.check.favicons.ok'); ?></p>
 	<?php } else { ?>
-	<p class="alert alert-error"><span class="alert-head"><?php echo _t('damn'); ?></span> <?php echo _t('file_is_nok', DATA_PATH . '/favicons'); ?></p>
+	<p class="alert alert-error"><span class="alert-head"><?php echo _t('gen.short.damn'); ?></span> <?php echo _t('install.check.favicons.nok', DATA_PATH . '/favicons'); ?></p>
 	<?php } ?>
 
 	<?php if ($res['persona'] == 'ok') { ?>
-	<p class="alert alert-success"><span class="alert-head"><?php echo _t('ok'); ?></span> <?php echo _t('persona_is_ok'); ?></p>
+	<p class="alert alert-success"><span class="alert-head"><?php echo _t('gen.short.ok'); ?></span> <?php echo _t('install.check.persona.ok'); ?></p>
 	<?php } else { ?>
-	<p class="alert alert-error"><span class="alert-head"><?php echo _t('damn'); ?></span> <?php echo _t('file_is_nok', DATA_PATH . '/persona'); ?></p>
+	<p class="alert alert-error"><span class="alert-head"><?php echo _t('gen.short.damn'); ?></span> <?php echo _t('install.check.persona.nok', DATA_PATH . '/persona'); ?></p>
 	<?php } ?>
 
 	<?php if ($res['http_referer'] == 'ok') { ?>
-	<p class="alert alert-success"><span class="alert-head"><?php echo _t('ok'); ?></span> <?php echo _t('http_referer_is_ok'); ?></p>
+	<p class="alert alert-success"><span class="alert-head"><?php echo _t('gen.short.ok'); ?></span> <?php echo _t('install.check.http_referer.ok'); ?></p>
 	<?php } else { ?>
-	<p class="alert alert-error"><span class="alert-head"><?php echo _t('damn'); ?></span> <?php echo _t('http_referer_is_nok'); ?></p>
+	<p class="alert alert-error"><span class="alert-head"><?php echo _t('gen.short.damn'); ?></span> <?php echo _t('install.check.http_referer.nok'); ?></p>
 	<?php } ?>
 
 	<?php if ($res['all'] == 'ok') { ?>
-	<a class="btn btn-important next-step" href="?step=2"><?php echo _t('next_step'); ?></a>
+	<a class="btn btn-important next-step" href="?step=2"><?php echo _t('install.action.next_step'); ?></a>
 	<?php } else { ?>
-	<p class="alert alert-error"><?php echo _t('fix_errors_before'); ?></p>
+	<p class="alert alert-error"><?php echo _t('install.action.fix_errors_before'); ?></p>
 	<?php } ?>
 <?php
 }
@@ -550,37 +551,37 @@ function printStep1() {
 function printStep2() {
 ?>
 	<?php $s2 = checkStep2(); if ($s2['all'] == 'ok') { ?>
-	<p class="alert alert-success"><span class="alert-head"><?php echo _t('ok'); ?></span> <?php echo _t('general_conf_is_ok'); ?></p>
+	<p class="alert alert-success"><span class="alert-head"><?php echo _t('gen.short.ok'); ?></span> <?php echo _t('install.conf.ok'); ?></p>
 	<?php } elseif (!empty($_POST)) { ?>
-	<p class="alert alert-error"><?php echo _t('fix_errors_before'); ?></p>
+	<p class="alert alert-error"><?php echo _t('install.fix_errors_before'); ?></p>
 	<?php } ?>
 
 	<form action="index.php?step=2" method="post">
-		<legend><?php echo _t('general_configuration'); ?></legend>
+		<legend><?php echo _t('install.conf'); ?></legend>
 
 		<div class="form-group">
-			<label class="group-name" for="title"><?php echo _t('title'); ?></label>
+			<label class="group-name" for="title"><?php echo _t('install.title'); ?></label>
 			<div class="group-controls">
-				<input type="text" id="title" name="title" value="<?php echo isset($_SESSION['title']) ? $_SESSION['title'] : _t('freshrss'); ?>" />
+				<input type="text" id="title" name="title" value="<?php echo isset($_SESSION['title']) ? $_SESSION['title'] : _t('gen.freshrss'); ?>" />
 			</div>
 		</div>
 
 		<div class="form-group">
-			<label class="group-name" for="old_entries"><?php echo _t('delete_articles_every'); ?></label>
+			<label class="group-name" for="old_entries"><?php echo _t('install.delete_articles_after'); ?></label>
 			<div class="group-controls">
-				<input type="number" id="old_entries" name="old_entries" required="required" min="1" max="1200" value="<?php echo isset($_SESSION['old_entries']) ? $_SESSION['old_entries'] : '3'; ?>" /> <?php echo _t('month'); ?>
+				<input type="number" id="old_entries" name="old_entries" required="required" min="1" max="1200" value="<?php echo isset($_SESSION['old_entries']) ? $_SESSION['old_entries'] : '3'; ?>" /> <?php echo _t('gen.date.month'); ?>
 			</div>
 		</div>
 
 		<div class="form-group">
-			<label class="group-name" for="default_user"><?php echo _t('default_user'); ?></label>
+			<label class="group-name" for="default_user"><?php echo _t('install.default_user'); ?></label>
 			<div class="group-controls">
-				<input type="text" id="default_user" name="default_user" required="required" size="16" maxlength="16" pattern="[0-9a-zA-Z]{1,16}" value="<?php echo isset($_SESSION['default_user']) ? $_SESSION['default_user'] : ''; ?>" placeholder="<?php echo httpAuthUser() == '' ? 'user1' : httpAuthUser(); ?>" />
+				<input type="text" id="default_user" name="default_user" required="required" size="16" maxlength="16" pattern="[0-9a-zA-Z]{1,16}" value="<?php echo isset($_SESSION['default_user']) ? $_SESSION['default_user'] : ''; ?>" placeholder="<?php echo httpAuthUser() == '' ? 'alice' : httpAuthUser(); ?>" />
 			</div>
 		</div>
 
 		<div class="form-group">
-			<label class="group-name" for="auth_type"><?php echo _t('auth_type'); ?></label>
+			<label class="group-name" for="auth_type"><?php echo _t('install.auth.type'); ?></label>
 			<div class="group-controls">
 				<select id="auth_type" name="auth_type" required="required" onchange="auth_type_change(true)">
 					<?php
@@ -589,30 +590,30 @@ function printStep2() {
 						}
 						$auth_type = isset($_SESSION['auth_type']) ? $_SESSION['auth_type'] : '';
 					?>
-					<option value="form"<?php echo $auth_type === 'form' || no_auth($auth_type) ? ' selected="selected"' : '', cryptAvailable() ? '' : ' disabled="disabled"'; ?>><?php echo _t('auth_form'); ?></option>
-					<option value="persona"<?php echo $auth_type === 'persona' ? ' selected="selected"' : ''; ?>><?php echo _t('auth_persona'); ?></option>
-					<option value="http_auth"<?php echo $auth_type === 'http_auth' ? ' selected="selected"' : '', httpAuthUser() == '' ? ' disabled="disabled"' : ''; ?>><?php echo _t('http_auth'); ?>(REMOTE_USER = '<?php echo httpAuthUser(); ?>')</option>
-					<option value="none"<?php echo $auth_type === 'none' ? ' selected="selected"' : ''; ?>><?php echo _t('auth_none'); ?></option>
+					<option value="form"<?php echo $auth_type === 'form' || no_auth($auth_type) ? ' selected="selected"' : '', cryptAvailable() ? '' : ' disabled="disabled"'; ?>><?php echo _t('install.auth.form'); ?></option>
+					<option value="persona"<?php echo $auth_type === 'persona' ? ' selected="selected"' : ''; ?>><?php echo _t('install.auth.persona'); ?></option>
+					<option value="http_auth"<?php echo $auth_type === 'http_auth' ? ' selected="selected"' : '', httpAuthUser() == '' ? ' disabled="disabled"' : ''; ?>><?php echo _t('install.auth.http'); ?>(REMOTE_USER = '<?php echo httpAuthUser(); ?>')</option>
+					<option value="none"<?php echo $auth_type === 'none' ? ' selected="selected"' : ''; ?>><?php echo _t('install.auth.none'); ?></option>
 				</select>
 			</div>
 		</div>
 
 		<div class="form-group">
-			<label class="group-name" for="passwordPlain"><?php echo _t('password_form'); ?></label>
+			<label class="group-name" for="passwordPlain"><?php echo _t('install.auth.password_form'); ?></label>
 			<div class="group-controls">
 				<div class="stick">
 					<input type="password" id="passwordPlain" name="passwordPlain" pattern=".{7,}" autocomplete="off" <?php echo $auth_type === 'form' ? ' required="required"' : ''; ?> />
 					<a class="btn toggle-password" data-toggle="passwordPlain"><?php echo FreshRSS_Themes::icon('key'); ?></a>
 				</div>
-				<noscript><b><?php echo _t('javascript_should_be_activated'); ?></b></noscript>
+				<noscript><b><?php echo _t('gen.js.should_be_activated'); ?></b></noscript>
 			</div>
 		</div>
 
 		<div class="form-group">
-			<label class="group-name" for="mail_login"><?php echo _t('persona_connection_email'); ?></label>
+			<label class="group-name" for="mail_login"><?php echo _t('install.auth.email_persona'); ?></label>
 			<div class="group-controls">
 				<input type="email" id="mail_login" name="mail_login" value="<?php echo isset($_SESSION['mail_login']) ? $_SESSION['mail_login'] : ''; ?>" placeholder="alice@example.net" <?php echo $auth_type === 'persona' ? ' required="required"' : ''; ?> />
-				<noscript><b><?php echo _t('javascript_should_be_activated'); ?></b></noscript>
+				<noscript><b><?php echo _t('gen.js.should_be_activated'); ?></b></noscript>
 			</div>
 		</div>
 
@@ -663,10 +664,10 @@ function printStep2() {
 
 		<div class="form-group form-actions">
 			<div class="group-controls">
-				<button type="submit" class="btn btn-important"><?php echo _t('save'); ?></button>
-				<button type="reset" class="btn"><?php echo _t('cancel'); ?></button>
+				<button type="submit" class="btn btn-important"><?php echo _t('gen.action.submit'); ?></button>
+				<button type="reset" class="btn"><?php echo _t('gen.action.cancel'); ?></button>
 				<?php if ($s2['all'] == 'ok') { ?>
-				<a class="btn btn-important next-step" href="?step=3"><?php echo _t('next_step'); ?></a>
+				<a class="btn btn-important next-step" href="?step=3"><?php echo _t('install.action.next_step'); ?></a>
 				<?php } ?>
 			</div>
 		</div>
@@ -677,15 +678,15 @@ function printStep2() {
 function printStep3() {
 ?>
 	<?php $s3 = checkStep3(); if ($s3['all'] == 'ok') { ?>
-	<p class="alert alert-success"><span class="alert-head"><?php echo _t('ok'); ?></span> <?php echo _t('bdd_conf_is_ok'); ?></p>
+	<p class="alert alert-success"><span class="alert-head"><?php echo _t('gen.short.ok'); ?></span> <?php echo _t('install.bdd.ok'); ?></p>
 	<?php } elseif ($s3['conn'] == 'ko') { ?>
-	<p class="alert alert-error"><span class="alert-head"><?php echo _t('damn'); ?></span> <?php echo _t('bdd_conf_is_ko'),(empty($_SESSION['bd_error']) ? '' : ' : ' . $_SESSION['bd_error']); ?></p>
+	<p class="alert alert-error"><span class="alert-head"><?php echo _t('gen.short.damn'); ?></span> <?php echo _t('install.bdd.ko'),(empty($_SESSION['bd_error']) ? '' : ' : ' . $_SESSION['bd_error']); ?></p>
 	<?php } ?>
 
 	<form action="index.php?step=3" method="post">
-		<legend><?php echo _t('bdd_configuration'); ?></legend>
+		<legend><?php echo _t('install.bdd.configuration'); ?></legend>
 		<div class="form-group">
-			<label class="group-name" for="type"><?php echo _t('bdd_type'); ?></label>
+			<label class="group-name" for="type"><?php echo _t('install.bdd.type'); ?></label>
 			<div class="group-controls">
 				<select name="type" id="type" onchange="mySqlShowHide()">
 				<?php if (extension_loaded('pdo_mysql')) {?>
@@ -706,35 +707,35 @@ function printStep3() {
 
 		<div id="mysql">
 		<div class="form-group">
-			<label class="group-name" for="host"><?php echo _t('host'); ?></label>
+			<label class="group-name" for="host"><?php echo _t('install.bdd.host'); ?></label>
 			<div class="group-controls">
 				<input type="text" id="host" name="host" pattern="[0-9A-Za-z_.-]{1,64}" value="<?php echo isset($_SESSION['bd_host']) ? $_SESSION['bd_host'] : 'localhost'; ?>" />
 			</div>
 		</div>
 
 		<div class="form-group">
-			<label class="group-name" for="user"><?php echo _t('username'); ?></label>
+			<label class="group-name" for="user"><?php echo _t('install.bdd.username'); ?></label>
 			<div class="group-controls">
 				<input type="text" id="user" name="user" maxlength="16" pattern="[0-9A-Za-z_.-]{1,16}" value="<?php echo isset($_SESSION['bd_user']) ? $_SESSION['bd_user'] : ''; ?>" />
 			</div>
 		</div>
 
 		<div class="form-group">
-			<label class="group-name" for="pass"><?php echo _t('password'); ?></label>
+			<label class="group-name" for="pass"><?php echo _t('install.bdd.password'); ?></label>
 			<div class="group-controls">
 				<input type="password" id="pass" name="pass" value="<?php echo isset($_SESSION['bd_password']) ? $_SESSION['bd_password'] : ''; ?>" />
 			</div>
 		</div>
 
 		<div class="form-group">
-			<label class="group-name" for="base"><?php echo _t('bdd'); ?></label>
+			<label class="group-name" for="base"><?php echo _t('install.bdd'); ?></label>
 			<div class="group-controls">
-				<input type="text" id="base" name="base" maxlength="64" pattern="[0-9A-Za-z_]{1,64}" value="<?php echo isset($_SESSION['bd_base']) ? $_SESSION['bd_base'] : ''; ?>" placeholder="freshrss" />
+				<input type="text" id="base" name="base" maxlength="64" pattern="[0-9A-Za-z_]{1,64}" value="<?php echo isset($_SESSION['bd_base']) ? $_SESSION['bd_base'] : ''; ?>" />
 			</div>
 		</div>
 
 		<div class="form-group">
-			<label class="group-name" for="prefix"><?php echo _t('prefix'); ?></label>
+			<label class="group-name" for="prefix"><?php echo _t('install.bdd.prefix'); ?></label>
 			<div class="group-controls">
 				<input type="text" id="prefix" name="prefix" maxlength="16" pattern="[0-9A-Za-z_]{1,16}" value="<?php echo isset($_SESSION['bd_prefix']) ? $_SESSION['bd_prefix'] : 'freshrss_'; ?>" />
 			</div>
@@ -749,10 +750,10 @@ function printStep3() {
 
 		<div class="form-group form-actions">
 			<div class="group-controls">
-				<button type="submit" class="btn btn-important"><?php echo _t('save'); ?></button>
-				<button type="reset" class="btn"><?php echo _t('cancel'); ?></button>
+				<button type="submit" class="btn btn-important"><?php echo _t('gen.action.submit'); ?></button>
+				<button type="reset" class="btn"><?php echo _t('gen.action.cancel'); ?></button>
 				<?php if ($s3['all'] == 'ok') { ?>
-				<a class="btn btn-important next-step" href="?step=4"><?php echo _t('next_step'); ?></a>
+				<a class="btn btn-important next-step" href="?step=4"><?php echo _t('install.action.next_step'); ?></a>
 				<?php } ?>
 			</div>
 		</div>
@@ -762,14 +763,14 @@ function printStep3() {
 
 function printStep4() {
 ?>
-	<p class="alert alert-success"><span class="alert-head"><?php echo _t('congratulations'); ?></span> <?php echo _t('installation_is_ok'); ?></p>
-	<a class="btn btn-important next-step" href="?step=5"><?php echo _t('finish_installation'); ?></a>
+	<p class="alert alert-success"><span class="alert-head"><?php echo _t('install.congratulations'); ?></span> <?php echo _t('install.ok'); ?></p>
+	<a class="btn btn-important next-step" href="?step=5"><?php echo _t('install.action.finish'); ?></a>
 <?php
 }
 
 function printStep5() {
 ?>
-	<p class="alert alert-error"><span class="alert-head"><?php echo _t('oops'); ?></span> <?php echo _t('install_not_deleted', DATA_PATH . '/do-install.txt'); ?></p>
+	<p class="alert alert-error"><span class="alert-head"><?php echo _t('gen.short.damn'); ?></span> <?php echo _t('install.not_deleted', DATA_PATH . '/do-install.txt'); ?></p>
 <?php
 }
 
@@ -802,7 +803,7 @@ case 5:
 	<head>
 		<meta charset="utf-8">
 		<meta name="viewport" content="initial-scale=1.0">
-		<title><?php echo _t('freshrss_installation'); ?></title>
+		<title><?php echo _t('install.title'); ?></title>
 		<link rel="stylesheet" type="text/css" media="all" href="../themes/base-theme/template.css" />
 		<link rel="stylesheet" type="text/css" media="all" href="../themes/Origine/origine.css" />
 	</head>
@@ -810,19 +811,19 @@ case 5:
 
 <div class="header">
 	<div class="item title">
-		<h1><a href="index.php"><?php echo _t('freshrss'); ?></a></h1>
-		<h2><?php echo _t('installation_step', STEP); ?></h2>
+		<h1><a href="index.php"><?php echo _t('install.title'); ?></a></h1>
+		<h2><?php echo _t('install.step', STEP); ?></h2>
 	</div>
 </div>
 
 <div id="global">
 	<ul class="nav nav-list aside">
-		<li class="nav-header"><?php echo _t('steps'); ?></li>
-		<li class="item<?php echo STEP == 0 ? ' active' : ''; ?>"><a href="?step=0"><?php echo _t('language'); ?></a></li>
-		<li class="item<?php echo STEP == 1 ? ' active' : ''; ?>"><a href="?step=1"><?php echo _t('checks'); ?></a></li>
-		<li class="item<?php echo STEP == 2 ? ' active' : ''; ?>"><a href="?step=2"><?php echo _t('general_configuration'); ?></a></li>
-		<li class="item<?php echo STEP == 3 ? ' active' : ''; ?>"><a href="?step=3"><?php echo _t('bdd_configuration'); ?></a></li>
-		<li class="item<?php echo STEP == 4 ? ' active' : ''; ?>"><a href="?step=5"><?php echo _t('this_is_the_end'); ?></a></li>
+		<li class="nav-header"><?php echo _t('install.steps'); ?></li>
+		<li class="item<?php echo STEP == 0 ? ' active' : ''; ?>"><a href="?step=0"><?php echo _t('install.language'); ?></a></li>
+		<li class="item<?php echo STEP == 1 ? ' active' : ''; ?>"><a href="?step=1"><?php echo _t('install.check'); ?></a></li>
+		<li class="item<?php echo STEP == 2 ? ' active' : ''; ?>"><a href="?step=2"><?php echo _t('install.conf'); ?></a></li>
+		<li class="item<?php echo STEP == 3 ? ' active' : ''; ?>"><a href="?step=3"><?php echo _t('install.bdd.conf'); ?></a></li>
+		<li class="item<?php echo STEP == 4 ? ' active' : ''; ?>"><a href="?step=5"><?php echo _t('install.this_is_the_end'); ?></a></li>
 	</ul>
 
 	<div class="post">

+ 2 - 2
app/views/subscription/feed.phtml

@@ -9,7 +9,7 @@ if ($this->feed) {
 } else {
 ?>
 <div class="alert alert-warn">
-	<span class="alert-head"><?php echo _t('no_selected_feed'); ?></span>
-	<?php echo _t('think_to_add'); ?>
+	<span class="alert-head"><?php echo _t('sub.feed.no_selected'); ?></span>
+	<?php echo _t('sub.feed.think_to_add'); ?>
 </div>
 <?php } ?>