浏览代码

Fix i18n for index Controller

Fix strings for:

- about page
- rss and reader views
- fix title of global view
Marien Fressinaud 11 年之前
父节点
当前提交
57bffe83eb

+ 2 - 2
app/Controllers/indexController.php

@@ -98,7 +98,7 @@ class FreshRSS_index_Controller extends Minz_ActionController {
 		$this->view->categories = FreshRSS_Context::$categories;
 
 		$this->view->rss_title = FreshRSS_Context::$name . ' | ' . Minz_View::title();
-		$title = _t('gen.title.global_view');
+		$title = _t('index.feed.title_global');
 		if (FreshRSS_Context::$get_unread > 0) {
 			$title = '(' . FreshRSS_Context::$get_unread . ') ' . $title;
 		}
@@ -206,7 +206,7 @@ class FreshRSS_index_Controller extends Minz_ActionController {
 	 * This action displays the about page of FreshRSS.
 	 */
 	public function aboutAction() {
-		Minz_View::prependTitle(_t('about') . ' · ');
+		Minz_View::prependTitle(_t('index.about.title') . ' · ');
 	}
 
 	/**

+ 0 - 15
app/i18n/en/gen.php

@@ -71,7 +71,6 @@ return array(
 		'_' => 'Title',
 		'authentication' => 'Authentication',
 		'check_install' => 'Installation checking',
-		'global_view' => 'Global view',
 		'user_management' => 'Manage users',
 		'user_profile' => 'Profile',
 	),
@@ -84,7 +83,6 @@ return array(
 	'administration' => 'Manage',
 	'advanced' => 'Advanced',
 	'after_onread' => 'After “mark all as read”,',
-	'agpl3' => '<a href="https://www.gnu.org/licenses/agpl-3.0.html">AGPL 3</a>',
 	'all_feeds' => 'All feeds',
 	'allow_anonymous' => 'Allow anonymous reading of the articles of the default user (%s)',
 	'allow_anonymous_refresh' => 'Allow anonymous refresh of the articles',
@@ -132,7 +130,6 @@ return array(
 	'bdd_type' => 'Type of database',
 	'blank_to_disable' => 'Leave blank to disable',
 	'bottom_line' => 'Bottom line',
-	'bugs_reports' => 'Bugs reports',
 	'by' => 'by',
 	'by_default' => 'By default',
 	'by_email' => 'By email',
@@ -164,8 +161,6 @@ return array(
 	'content_width' => 'Content width',
 	'create' => 'Create',
 	'create_user' => 'Create new user',
-	'credits' => 'Credits',
-	'credits_content' => 'Some design elements come from <a href="http://twitter.github.io/bootstrap/">Bootstrap</a> although FreshRSS doesn’t use this framework. <a href="https://git.gnome.org/browse/gnome-icon-theme-symbolic">Icons</a> come from <a href="https://www.gnome.org/">GNOME project</a>. <em>Open Sans</em> font police has been created by <a href="https://www.google.com/webfonts/specimen/Open+Sans">Steve Matteson</a>. Favicons are collected with <a href="https://getfavicon.appspot.com/">getFavicon API</a>. FreshRSS is based on <a href="https://github.com/marienfressinaud/MINZ">Minz</a>, a PHP framework.',
 	'css_path_on_website' => 'Articles CSS path on original website',
 	'ctype_is_nok' => 'You lack a required library for character type checking (php-ctype)',
 	'ctype_is_ok' => 'You have the required library for character type checking (ctype)',
@@ -223,12 +218,10 @@ return array(
 	'first_article' => 'Skip to the first article',
 	'fix_errors_before' => 'Fix errors before skip to the next step.',
 	'focus_search' => 'Access search box',
-	'freshrss_description' => 'FreshRSS is a RSS feeds aggregator to self-host like <a href="http://tontof.net/kriss/feed/">Kriss Feed</a> or <a href="http://projet.idleman.fr/leed/">Leed</a>. It is light and easy to take in hand while being powerful and configurable tool.',
 	'freshrss_installation' => 'Installation · FreshRSS',
 	'fri' => 'Fri',
 	'general_conf_is_ok' => 'General configuration has been saved.',
 	'general_configuration' => 'General configuration',
-	'github_or_email' => '<a href="https://github.com/marienfressinaud/FreshRSS/issues">on Github</a> or <a href="mailto:dev@marienfressinaud.fr">by mail</a>',
 	'help' => 'Display documentation',
 	'hide_read_feeds' => 'Hide categories & feeds with no unread article (does not work with “Show all articles” configuration)',
 	'host' => 'Host',
@@ -269,8 +262,6 @@ return array(
 	'last_month' => 'Last month',
 	'last_week' => 'Last week',
 	'last_year' => 'Last year',
-	'lead_developer' => 'Lead developer',
-	'license' => 'License',
 	'log_is_ok' => 'Permissions on logs directory are good',
 	'login_configuration' => 'Login',
 	'login_persona_problem' => 'Connection problem with Persona?',
@@ -295,7 +286,6 @@ return array(
 	'next_step' => 'Go to the next step',
 	'no' => 'No',
 	'no_feed_actualized' => 'No RSS feed has been updated',
-	'no_feed_to_display' => 'There is no article to show.',
 	'no_feed_to_refresh' => 'There is no feed to refresh…',
 	'no_query' => 'You haven’t created any user query yet.',
 	'no_query_filter' => 'No filter',
@@ -334,7 +324,6 @@ return array(
 	'prefix' => 'Table prefix',
 	'previous_article' => 'Skip to the previous article',
 	'previous_page' => 'Skip to the previous page',
-	'project_website' => 'Project website',
 	'public' => 'Public',
 	'publication_date' => 'Date of publication',
 	'purge_completed' => 'Purge completed (%d articles deleted)',
@@ -371,7 +360,6 @@ return array(
 	'refresh' => 'Refresh',
 	'retrieve_truncated_feeds' => 'Retrieves truncated RSS feeds (attention, requires more time!)',
 	'rss_feed_management' => 'RSS feeds management',
-	'rss_feeds_of' => 'RSS feed of %s',
 	'sat' => 'Sat',
 	'save' => 'Save',
 	'scroll' => 'while scrolling',
@@ -413,7 +401,6 @@ return array(
 	'submit' => 'Submit',
 	'sun' => 'Sun',
 	'theme' => 'Theme',
-	'think_to_add' => 'You may add some feeds.',
 	'this_is_the_end' => 'This is the end',
 	'thu' => 'Thu',
 	'top_line' => 'Top line',
@@ -442,9 +429,7 @@ return array(
 	'username_admin' => 'Administrator username',
 	'users' => 'Users',
 	'users_list' => 'List of users',
-	'version' => 'Version',
 	'version_update' => 'Update',
-	'website' => 'Website',
 	'website_url' => 'Website URL',
 	'wed' => 'Wed',
 	'width_large' => 'Large',

+ 19 - 0
app/i18n/en/index.php

@@ -1,11 +1,30 @@
 <?php
 
 return array(
+	'about' => array(
+		'_' => 'About',
+		'agpl3' => '<a href="https://www.gnu.org/licenses/agpl-3.0.html">AGPL 3</a>',
+		'bugs_reports' => 'Bugs reports',
+		'credits' => 'Credits',
+		'credits_content' => 'Some design elements come from <a href="http://twitter.github.io/bootstrap/">Bootstrap</a> although FreshRSS doesn’t use this framework. <a href="https://git.gnome.org/browse/gnome-icon-theme-symbolic">Icons</a> come from <a href="https://www.gnome.org/">GNOME project</a>. <em>Open Sans</em> font police has been created by <a href="https://www.google.com/webfonts/specimen/Open+Sans">Steve Matteson</a>. Favicons are collected with <a href="https://getfavicon.appspot.com/">getFavicon API</a>. FreshRSS is based on <a href="https://github.com/marienfressinaud/MINZ">Minz</a>, a PHP framework.',
+		'freshrss_description' => 'FreshRSS is a RSS feeds aggregator to self-host like <a href="http://tontof.net/kriss/feed/">Kriss Feed</a> or <a href="http://projet.idleman.fr/leed/">Leed</a>. It is light and easy to take in hand while being powerful and configurable tool.',
+		'github_or_email' => '<a href="https://github.com/marienfressinaud/FreshRSS/issues">on Github</a> or <a href="mailto:dev@marienfressinaud.fr">by mail</a>',
+		'lead_developer' => 'Lead developer',
+		'license' => 'License',
+		'project_website' => 'Project website',
+		'title' => 'About',
+		'version' => 'Version',
+		'website' => 'Website',
+	),
 	'entry' => array(
 		'by_author' => 'By <em>%s</em>',
 	),
 	'feed' => array(
+		'add' => 'You may add some feeds.',
+		'empty' => 'There is no article to show.',
+		'rss_of' => 'RSS feed of %s',
 		'title' => 'Your RSS feeds',
+		'title_global' => 'Global view',
 		'title_fav' => 'Your favourites',
 	),
 	'log' => array(

+ 0 - 14
app/i18n/fr/gen.php

@@ -84,7 +84,6 @@ return array(
 	'administration' => 'Gérer',
 	'advanced' => 'Avancé',
 	'after_onread' => 'Après “marquer tout comme lu”,',
-	'agpl3' => '<a href="https://www.gnu.org/licenses/agpl-3.0.html">AGPL 3</a>',
 	'all_feeds' => 'Tous les flux',
 	'allow_anonymous' => 'Autoriser la lecture anonyme des articles de l’utilisateur par défaut (%s)',
 	'allow_anonymous_refresh' => 'Autoriser le rafraîchissement anonyme des flux',
@@ -132,7 +131,6 @@ return array(
 	'bdd_type' => 'Type de base de données',
 	'blank_to_disable' => 'Laissez vide pour désactiver',
 	'bottom_line' => 'Ligne du bas',
-	'bugs_reports' => 'Rapports de bugs',
 	'by' => 'par',
 	'by_default' => 'Par défaut',
 	'by_email' => 'Par courriel',
@@ -164,8 +162,6 @@ return array(
 	'content_width' => 'Largeur du contenu',
 	'create' => 'Créer',
 	'create_user' => 'Créer un nouvel utilisateur',
-	'credits' => 'Crédits',
-	'credits_content' => 'Des éléments de design sont issus du <a href="http://twitter.github.io/bootstrap/">projet Bootstrap</a> bien que FreshRSS n’utilise pas ce framework. Les <a href="https://git.gnome.org/browse/gnome-icon-theme-symbolic">icônes</a> sont issues du <a href="https://www.gnome.org/">projet GNOME</a>. La police <em>Open Sans</em> utilisée a été créée par <a href="https://www.google.com/webfonts/specimen/Open+Sans">Steve Matteson</a>. Les favicons sont récupérés grâce au site <a href="https://getfavicon.appspot.com/">getFavicon</a>. FreshRSS repose sur <a href="https://github.com/marienfressinaud/MINZ">Minz</a>, un framework PHP.',
 	'css_path_on_website' => 'Sélecteur CSS des articles sur le site d’origine',
 	'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)',
@@ -223,12 +219,10 @@ return array(
 	'first_article' => 'Passer au premier article',
 	'fix_errors_before' => 'Veuillez corriger les erreurs avant de passer à l’étape suivante.',
 	'focus_search' => 'Accéder à la recherche',
-	'freshrss_description' => 'FreshRSS est un agrégateur de flux RSS à auto-héberger à l’image de <a href="http://tontof.net/kriss/feed/">Kriss Feed</a> ou <a href="http://projet.idleman.fr/leed/">Leed</a>. Il se veut léger et facile à prendre en main tout en étant un outil puissant et paramétrable.',
 	'freshrss_installation' => 'Installation · FreshRSS',
 	'fri' => 'ven.',
 	'general_conf_is_ok' => 'La configuration générale a été enregistrée.',
 	'general_configuration' => 'Configuration générale',
-	'github_or_email' => '<a href="https://github.com/marienfressinaud/FreshRSS/issues">sur Github</a> ou <a href="mailto:dev@marienfressinaud.fr">par courriel</a>',
 	'help' => 'Afficher la documentation',
 	'hide_read_feeds' => 'Cacher les catégories & flux sans article non-lu (ne fonctionne pas avec la configuration “Afficher tous les articles”)',
 	'host' => 'Hôte',
@@ -269,8 +263,6 @@ return array(
 	'last_month' => 'Depuis le mois dernier',
 	'last_week' => 'Depuis la semaine dernière',
 	'last_year' => 'Depuis l’année dernière',
-	'lead_developer' => 'Développeur principal',
-	'license' => 'Licence',
 	'log_is_ok' => 'Les droits sur le répertoire des logs sont bons',
 	'login_configuration' => 'Identification',
 	'login_persona_problem' => 'Problème de connexion à Persona ?',
@@ -295,7 +287,6 @@ return array(
 	'next_step' => 'Passer à l’étape suivante',
 	'no' => 'Non',
 	'no_feed_actualized' => 'Aucun flux n’a pu être mis à jour.',
-	'no_feed_to_display' => 'Il n’y a aucun article à afficher.',
 	'no_feed_to_refresh' => 'Il n’y a aucun flux à actualiser…',
 	'no_query' => 'Vous n’avez pas encore créé de filtre.',
 	'no_query_filter' => 'Aucun filtre appliqué',
@@ -334,7 +325,6 @@ return array(
 	'prefix' => 'Préfixe des tables',
 	'previous_article' => 'Passer à l’article précédent',
 	'previous_page' => 'Passer à la page précédente',
-	'project_website' => 'Site du projet',
 	'public' => 'Public',
 	'publication_date' => 'Date de publication',
 	'purge_completed' => 'Purge effectuée (%d articles supprimés).',
@@ -371,7 +361,6 @@ return array(
 	'refresh' => 'Actualisation',
 	'retrieve_truncated_feeds' => 'Permet de récupérer les flux tronqués (attention, demande plus de temps !)',
 	'rss_feed_management' => 'Gestion des flux RSS',
-	'rss_feeds_of' => 'Flux RSS de %s',
 	'sat' => 'sam.',
 	'save' => 'Enregistrer',
 	'scroll' => 'au défilement de la page',
@@ -413,7 +402,6 @@ return array(
 	'submit' => 'Valider',
 	'sun' => 'dim.',
 	'theme' => 'Thème',
-	'think_to_add' => 'Vous pouvez ajouter des flux.',
 	'this_is_the_end' => 'This is the end',
 	'thu' => 'jeu.',
 	'top_line' => 'Ligne du haut',
@@ -442,9 +430,7 @@ return array(
 	'username_admin' => 'Nom d’utilisateur administrateur',
 	'users' => 'Utilisateurs',
 	'users_list' => 'Liste des utilisateurs',
-	'version' => 'Version',
 	'version_update' => 'Mise à jour',
-	'website' => 'Site Internet',
 	'website_url' => 'URL du site',
 	'wed' => 'mer.',
 	'width_large' => 'Large',

+ 19 - 0
app/i18n/fr/index.php

@@ -1,11 +1,30 @@
 <?php
 
 return array(
+	'about' => array(
+		'_' => 'À propos',
+		'agpl3' => '<a href="https://www.gnu.org/licenses/agpl-3.0.html">AGPL 3</a>',
+		'bugs_reports' => 'Rapports de bugs',
+		'credits' => 'Crédits',
+		'credits_content' => 'Des éléments de design sont issus du <a href="http://twitter.github.io/bootstrap/">projet Bootstrap</a> bien que FreshRSS n’utilise pas ce framework. Les <a href="https://git.gnome.org/browse/gnome-icon-theme-symbolic">icônes</a> sont issues du <a href="https://www.gnome.org/">projet GNOME</a>. La police <em>Open Sans</em> utilisée a été créée par <a href="https://www.google.com/webfonts/specimen/Open+Sans">Steve Matteson</a>. Les favicons sont récupérés grâce au site <a href="https://getfavicon.appspot.com/">getFavicon</a>. FreshRSS repose sur <a href="https://github.com/marienfressinaud/MINZ">Minz</a>, un framework PHP.',
+		'freshrss_description' => 'FreshRSS est un agrégateur de flux RSS à auto-héberger à l’image de <a href="http://tontof.net/kriss/feed/">Kriss Feed</a> ou <a href="http://projet.idleman.fr/leed/">Leed</a>. Il se veut léger et facile à prendre en main tout en étant un outil puissant et paramétrable.',
+		'github_or_email' => '<a href="https://github.com/marienfressinaud/FreshRSS/issues">sur Github</a> ou <a href="mailto:dev@marienfressinaud.fr">par courriel</a>',
+		'lead_developer' => 'Développeur principal',
+		'license' => 'Licence',
+		'project_website' => 'Site du projet',
+		'title' => 'À propos',
+		'version' => 'Version',
+		'website' => 'Site Internet',
+	),
 	'entry' => array(
 		'by_author' => 'Par <em>%s</em>',
 	),
 	'feed' => array(
+		'add' => 'Vous pouvez ajouter des flux.',
+		'empty' => 'Il n’y a aucun article à afficher.',
+		'rss_of' => 'Flux RSS de %s',
 		'title' => 'Vos flux RSS',
+		'title_global' => 'Vue globale',
 		'title_fav' => 'Vos favoris',
 	),
 	'log' => array(

+ 13 - 13
app/views/index/about.phtml

@@ -1,27 +1,27 @@
 <div class="post content">
-	<a href="<?php echo _url('index', 'index'); ?>"><?php echo _t('back_to_rss_feeds'); ?></a>
+	<a href="<?php echo _url('index', 'index'); ?>"><?php echo _t('gen.action.back_to_rss_feeds'); ?></a>
 
-	<h1><?php echo _t('about_freshrss'); ?></h1>
+	<h1><?php echo _t('index.about'); ?></h1>
 
 	<dl class="infos">
-		<dt><?php echo _t('project_website'); ?></dt>
+		<dt><?php echo _t('index.about.project_website'); ?></dt>
 		<dd><a href="<?php echo FRESHRSS_WEBSITE; ?>"><?php echo FRESHRSS_WEBSITE; ?></a></dd>
 
-		<dt><?php echo _t('lead_developer'); ?></dt>
-		<dd><a href="mailto:contact@marienfressinaud.fr">Marien Fressinaud</a> — <a href="http://marienfressinaud.fr"><?php echo _t('website'); ?></a></dd>
+		<dt><?php echo _t('index.about.lead_developer'); ?></dt>
+		<dd><a href="mailto:contact@marienfressinaud.fr">Marien Fressinaud</a> — <a href="http://marienfressinaud.fr"><?php echo _t('index.about.website'); ?></a></dd>
 
-		<dt><?php echo _t('bugs_reports'); ?></dt>
-		<dd><?php echo _t('github_or_email'); ?></dd>
+		<dt><?php echo _t('index.about.bugs_reports'); ?></dt>
+		<dd><?php echo _t('index.about.github_or_email'); ?></dd>
 
-		<dt><?php echo _t('license'); ?></dt>
-		<dd><?php echo _t('agpl3'); ?></dd>
+		<dt><?php echo _t('index.about.license'); ?></dt>
+		<dd><?php echo _t('index.about.agpl3'); ?></dd>
 
-		<dt><?php echo _t('version'); ?></dt>
+		<dt><?php echo _t('index.about.version'); ?></dt>
 		<dd><?php echo FRESHRSS_VERSION; ?></dd>
 	</dl>
 
-	<p><?php echo _t('freshrss_description'); ?></p>
+	<p><?php echo _t('index.about.freshrss_description'); ?></p>
 
-	<h1><?php echo _t('credits'); ?></h1>
-	<p><?php echo _t('credits_content'); ?></p>
+	<h1><?php echo _t('index.about.credits'); ?></h1>
+	<p><?php echo _t('index.about.credits_content'); ?></p>
 </div>

+ 2 - 2
app/views/index/normal.phtml

@@ -187,7 +187,7 @@ if (!empty($this->entries)) {
 
 <?php } else { ?>
 <div id="stream" class="prompt alert alert-warn normal">
-	<h2><?php echo _t('no_feed_to_display'); ?></h2>
-	<a href="<?php echo _url('subscription', 'index'); ?>"><?php echo _t('think_to_add'); ?></a><br /><br />
+	<h2><?php echo _t('index.feed.empty'); ?></h2>
+	<a href="<?php echo _url('subscription', 'index'); ?>"><?php echo _t('index.feed.add'); ?></a><br /><br />
 </div>
 <?php } ?>

+ 3 - 3
app/views/index/reader.phtml

@@ -23,7 +23,7 @@ if (!empty($this->entries)) {
 
 				<div class="author"><?php
 					$author = $item->author();
-					echo $author != '' ? _t('by_author', $author) . ' — ' : '',
+					echo $author != '' ? _t('index.entry.by_author', $author) . ' — ' : '',
 						$item->date();
 				?></div>
 
@@ -38,7 +38,7 @@ if (!empty($this->entries)) {
 
 <?php } else { ?>
 <div id="stream" class="prompt alert alert-warn reader">
-	<h2><?php echo _t('no_feed_to_display'); ?></h2>
-	<a href="<?php echo _url('subscription', 'index'); ?>"><?php echo _t('think_to_add'); ?></a><br /><br />
+	<h2><?php echo _t('index.feed.empty'); ?></h2>
+	<a href="<?php echo _url('subscription', 'index'); ?>"><?php echo _t('index.feed.add'); ?></a><br /><br />
 </div>
 <?php } ?>

+ 1 - 1
app/views/index/rss.phtml

@@ -3,7 +3,7 @@
 	<channel>
 		<title><?php echo $this->rss_title; ?></title>
 		<link><?php echo Minz_Url::display(null, 'html', true); ?></link>
-		<description><?php echo _t('rss_feeds_of', $this->rss_title); ?></description>
+		<description><?php echo _t('index.feed.rss_of', $this->rss_title); ?></description>
 		<pubDate><?php echo date('D, d M Y H:i:s O'); ?></pubDate>
 		<lastBuildDate><?php echo gmdate('D, d M Y H:i:s'); ?> GMT</lastBuildDate>
 		<atom:link href="<?php echo Minz_Url::display($this->url, 'html', true); ?>" rel="self" type="application/rss+xml" />