From 530a1d4b6b043f6b6976bb7ad25b380c29d5b5a4 Mon Sep 17 00:00:00 2001 From: Marien Fressinaud Date: Mon, 6 Oct 2014 14:23:17 +0200 Subject: Update i18n with strings from i18n.freshrss.org No more seperation between normal and install files. I will work on that later! --- app/install.php | 5 ----- 1 file changed, 5 deletions(-) (limited to 'app/install.php') diff --git a/app/install.php b/app/install.php index 4449cd063..cfdd733ce 100644 --- a/app/install.php +++ b/app/install.php @@ -54,11 +54,6 @@ function initTranslate() { if (file_exists($file)) { $translates = array_merge($translates, include($file)); } - - $file = APP_PATH . '/i18n/install.' . $actual . '.php'; - if (file_exists($file)) { - $translates = array_merge($translates, include($file)); - } } function getBetterLanguage($fallback) { -- cgit v1.2.3 From ddc50090b55cd744e24995c872435a3fed7092da Mon Sep 17 00:00:00 2001 From: Marien Fressinaud Date: Wed, 3 Dec 2014 16:58:12 +0100 Subject: Fix i18n for installation script See https://github.com/FreshRSS/FreshRSS/issues/334 --- app/install.php | 27 ++++----------------------- 1 file changed, 4 insertions(+), 23 deletions(-) (limited to 'app/install.php') diff --git a/app/install.php b/app/install.php index cfdd733ce..f54565c73 100644 --- a/app/install.php +++ b/app/install.php @@ -42,18 +42,12 @@ function param($key, $default = false) { // gestion internationalisation -$translates = array(); -$actual = 'en'; function initTranslate() { - global $translates; - global $actual; - - $actual = isset($_SESSION['language']) ? $_SESSION['language'] : getBetterLanguage('en'); - - $file = APP_PATH . '/i18n/' . $actual . '.php'; - if (file_exists($file)) { - $translates = array_merge($translates, include($file)); + if (!isset($_SESSION['language'])) { + $_SESSION['language'] = getBetterLanguage('en'); } + + Minz_Translate::init(); } function getBetterLanguage($fallback) { @@ -75,19 +69,6 @@ function availableLanguages() { ); } -function _t($key) { - global $translates; - $translate = $key; - if (isset($translates[$key])) { - $translate = $translates[$key]; - } - - $args = func_get_args(); - unset($args[0]); - - return vsprintf($translate, $args); -} - /*** SAUVEGARDES ***/ function saveLanguage() { -- cgit v1.2.3 From bf51a8e87569617eca685cdcc1e7194f199b98fa Mon Sep 17 00:00:00 2001 From: Marien Fressinaud Date: Thu, 11 Dec 2014 22:40:07 +0100 Subject: Fix french i18n for install + some fixes French is finished! --- app/Models/CategoryDAO.php | 2 +- app/Models/UserDAO.php | 4 +- app/i18n/fr/conf.php | 1 + app/i18n/fr/gen.php | 92 +-------------------- app/i18n/fr/install.php | 102 ++++++++++++++++++++++- app/i18n/fr/sub.php | 2 + app/install.php | 169 +++++++++++++++++++------------------- app/views/subscription/feed.phtml | 4 +- 8 files changed, 195 insertions(+), 181 deletions(-) (limited to 'app/install.php') diff --git a/app/Models/CategoryDAO.php b/app/Models/CategoryDAO.php index 2e333d2f1..27a558522 100644 --- a/app/Models/CategoryDAO.php +++ b/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( diff --git a/app/Models/UserDAO.php b/app/Models/UserDAO.php index 60fca71b1..f04ae26bf 100644 --- a/app/Models/UserDAO.php +++ b/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()); } diff --git a/app/i18n/fr/conf.php b/app/i18n/fr/conf.php index 2e3414081..cf2c542e6 100644 --- a/app/i18n/fr/conf.php +++ b/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', diff --git a/app/i18n/fr/gen.php b/app/i18n/fr/gen.php index 26990b4fe..b2cdd3504 100644 --- a/app/i18n/fr/gen.php +++ b/app/i18n/fr/gen.php @@ -134,100 +134,10 @@ return array( 'by_author' => 'Par %s', '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 %s', - 'article_published_on_author' => 'Article publié initialement sur %s 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 (16 caractères alphanumériques maximum)', - '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 %s à la main.', - 'installation_is_ok' => 'L’installation s’est bien passée.
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.
Vous pouvez choisir de sauter cette étape en supprimant ./data/do-install.txt 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 build.sh ou bien la télécharger sur Github et installer dans le répertoire %s le contenu de son répertoire /lib.', - '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', ); diff --git a/app/i18n/fr/install.php b/app/i18n/fr/install.php index afca37ed3..738b1c084 100644 --- a/app/i18n/fr/install.php +++ b/app/i18n/fr/install.php @@ -1,5 +1,105 @@ array( + 'finish' => 'Terminer l’installation', + 'next_step' => 'Passer à l’étape suivante', + ), + 'auth' => array( + 'email_persona' => 'Adresse courriel de connexion
(pour Mozilla Persona)', + 'form' => 'Formulaire (traditionnel, requiert JavaScript)', + 'http' => 'HTTP (pour utilisateurs avancés avec HTTPS)', + 'none' => 'Aucune (dangereux)', + 'password_form' => 'Mot de passe
(pour connexion par formulaire)', + '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 ./data/cache. 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 ./data. 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 ./data/favicons. 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 ./data/logs. 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 ./data/persona. 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 (16 caractères alphanumériques maximum)', + '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 %s à la main.', + 'step' => 'étape %d', + 'steps' => 'Étapes', + 'title' => 'Installation · FreshRSS', + 'this_is_the_end' => 'This is the end', ); diff --git a/app/i18n/fr/sub.php b/app/i18n/fr/sub.php index b9d9f4bc2..a3f7c4d6d 100644 --- a/app/i18n/fr/sub.php +++ b/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 %s.', + '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', diff --git a/app/install.php b/app/install.php index f54565c73..fcdf8d604 100644 --- a/app/install.php +++ b/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; ?> -

+

- +
- +
+
- +
- +
- +
- +
- +
- +
/>
- +
- +
/> - +
@@ -663,10 +664,10 @@ function printStep2() {
- - + + - +
@@ -677,15 +678,15 @@ function printStep2() { function printStep3() { ?> -

+

-

+

- +
- +
- +
- +
- +
- +
- +
@@ -749,10 +750,10 @@ function printStep3() {
- - + + - +
@@ -762,14 +763,14 @@ function printStep3() { function printStep4() { ?> -

- +

+ -

+

- <?php echo _t('freshrss_installation'); ?> + <?php echo _t('install.title'); ?> @@ -810,19 +811,19 @@ case 5:
-

-

+

+

diff --git a/app/views/subscription/feed.phtml b/app/views/subscription/feed.phtml index 48a401c4a..60664fdee 100644 --- a/app/views/subscription/feed.phtml +++ b/app/views/subscription/feed.phtml @@ -9,7 +9,7 @@ if ($this->feed) { } else { ?>
- - + +
-- cgit v1.2.3 From a34503a7aba67028c12a4db23fe101c3e927a53e Mon Sep 17 00:00:00 2001 From: Marien Fressinaud Date: Thu, 11 Dec 2014 22:42:20 +0100 Subject: Fix i1_n keys in install script --- app/install.php | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'app/install.php') diff --git a/app/install.php b/app/install.php index fcdf8d604..8091a9eb0 100644 --- a/app/install.php +++ b/app/install.php @@ -678,13 +678,13 @@ function printStep2() { function printStep3() { ?> -

+

-

+

- +
-- cgit v1.2.3 From 039a83759d41615aaa593fa62deff4c25fc126a2 Mon Sep 17 00:00:00 2001 From: Marien Fressinaud Date: Sun, 28 Dec 2014 17:42:46 +0100 Subject: Fix install.php to consider new data organization - Introduce USERS_PATH - Remove LOG_PATH - Use join_path in install.php - Change references to old data files to the new ones - Update i18n See https://github.com/FreshRSS/FreshRSS/issues/729 --- app/i18n/en/install.php | 9 +++++---- app/i18n/fr/install.php | 9 +++++---- app/install.php | 49 +++++++++++++++++++++++++++---------------------- constants.php | 2 +- 4 files changed, 38 insertions(+), 31 deletions(-) (limited to 'app/install.php') diff --git a/app/i18n/en/install.php b/app/i18n/en/install.php index ed3210190..e8073e8b6 100644 --- a/app/i18n/en/install.php +++ b/app/i18n/en/install.php @@ -3,6 +3,7 @@ return array( 'action' => array( 'finish' => 'Complete installation', + 'fix_errors_before' => 'Fix errors before skip to the next step.', 'next_step' => 'Go to the next step', ), 'auth' => array( @@ -57,10 +58,6 @@ return array( 'nok' => 'Please check that you are not altering your HTTP REFERER.', 'ok' => 'Your HTTP REFERER is known and corresponds to your server.', ), - 'logs' => array( - 'nok' => 'Check permissions on ./data/logs directory. HTTP server must have rights to write into', - 'ok' => 'Permissions on logs directory are good.', - ), 'minz' => array( 'nok' => 'You lack the Minz framework.', 'ok' => 'You have the Minz framework.', @@ -81,6 +78,10 @@ return array( 'nok' => 'Your PHP version is %s but FreshRSS requires at least version %s.', 'ok' => 'Your PHP version is %s, which is compatible with FreshRSS.', ), + 'users' => array( + 'nok' => 'Check permissions on ./data/users directory. HTTP server must have rights to write into', + 'ok' => 'Permissions on users directory are good.', + ), ), 'conf' => array( '_' => 'General configuration', diff --git a/app/i18n/fr/install.php b/app/i18n/fr/install.php index f1ef2ea3f..d1b78ffb6 100644 --- a/app/i18n/fr/install.php +++ b/app/i18n/fr/install.php @@ -3,6 +3,7 @@ return array( 'action' => array( 'finish' => 'Terminer l’installation', + 'fix_errors_before' => 'Veuillez corriger les erreurs avant de passer à l’étape suivante.', 'next_step' => 'Passer à l’étape suivante', ), 'auth' => array( @@ -57,10 +58,6 @@ return 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 ./data/logs. 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', @@ -81,6 +78,10 @@ return 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.', ), + 'users' => array( + 'nok' => 'Veuillez vérifier les droits sur le répertoire ./data/users. Le serveur HTTP doit être capable d’écrire dedans', + 'ok' => 'Les droits sur le répertoire des utilisateurs sont bons.', + ), ), 'conf' => array( '_' => 'Configuration générale', diff --git a/app/install.php b/app/install.php index 8091a9eb0..8b65fbb6f 100644 --- a/app/install.php +++ b/app/install.php @@ -132,12 +132,17 @@ function saveStep2() { 'token' => $token, ); - $configPath = DATA_PATH . '/' . $_SESSION['default_user'] . '_user.php'; - @unlink($configPath); //To avoid access-rights problems - file_put_contents($configPath, " PDO::ERRMODE_EXCEPTION, ); @@ -229,7 +234,7 @@ function newPdo() { } function deleteInstall() { - $res = unlink(DATA_PATH . '/do-install.txt'); + $res = unlink(join_path(DATA_PATH, 'do-install.txt')); if (!$res) { return false; @@ -270,7 +275,7 @@ function checkStep0() { function checkStep1() { $php = version_compare(PHP_VERSION, '5.2.1') >= 0; - $minz = file_exists(LIB_PATH . '/Minz'); + $minz = file_exists(join_path(LIB_PATH, 'Minz')); $curl = extension_loaded('curl'); $pdo_mysql = extension_loaded('pdo_mysql'); $pdo_sqlite = extension_loaded('pdo_sqlite'); @@ -280,9 +285,9 @@ function checkStep1() { $dom = class_exists('DOMDocument'); $data = DATA_PATH && is_writable(DATA_PATH); $cache = CACHE_PATH && is_writable(CACHE_PATH); - $log = LOG_PATH && is_writable(LOG_PATH); - $favicons = is_writable(DATA_PATH . '/favicons'); - $persona = is_writable(DATA_PATH . '/persona'); + $users = USERS_PATH && is_writable(USERS_PATH); + $favicons = is_writable(join_path(DATA_PATH, 'favicons')); + $persona = is_writable(join_path(DATA_PATH, 'persona')); $http_referer = is_referer_from_same_domain(); return array( @@ -297,12 +302,12 @@ function checkStep1() { 'dom' => $dom ? 'ok' : 'ko', 'data' => $data ? 'ok' : 'ko', 'cache' => $cache ? 'ok' : 'ko', - 'log' => $log ? 'ok' : 'ko', + 'users' => $users ? 'ok' : 'ko', 'favicons' => $favicons ? 'ok' : 'ko', 'persona' => $persona ? 'ok' : 'ko', 'http_referer' => $http_referer ? 'ok' : 'ko', 'all' => $php && $minz && $curl && $pdo && $pcre && $ctype && $dom && - $data && $cache && $log && $favicons && $persona && $http_referer ? + $data && $cache && $users && $favicons && $persona && $http_referer ? 'ok' : 'ko' ); } @@ -327,7 +332,7 @@ function checkStep2() { if ($defaultUser === null) { $defaultUser = empty($_SESSION['default_user']) ? '' : $_SESSION['default_user']; } - $data = is_writable(DATA_PATH . '/' . $defaultUser . '_user.php'); + $data = is_writable(join_path(USERS_PATH, $defaultUser, 'config.php')); return array( 'conf' => $conf ? 'ok' : 'ko', @@ -339,7 +344,7 @@ function checkStep2() { } function checkStep3() { - $conf = is_writable(DATA_PATH . '/config.php'); + $conf = is_writable(join_path(DATA_PATH, 'config.php')); $bd = isset($_SESSION['bd_type']) && isset($_SESSION['bd_host']) && @@ -382,7 +387,7 @@ function checkBD() { $str = 'mysql:host=' . $_SESSION['bd_host'] . ';dbname=' . $_SESSION['bd_base']; break; case 'sqlite': - $str = 'sqlite:' . DATA_PATH . '/' . $_SESSION['default_user'] . '.sqlite'; + $str = 'sqlite:' . join_path(USERS_PATH, $_SESSION['default_user'], 'db.sqlite'); $driver_options = array( PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION, ); @@ -414,7 +419,7 @@ function checkBD() { } if (!$ok) { - @unlink(DATA_PATH . '/config.php'); + @unlink(join_path(DATA_PATH, 'config.php')); } return $ok; @@ -470,7 +475,7 @@ function printStep1() {

-

+

@@ -516,10 +521,10 @@ function printStep1() {

- -

+ +

-

+

diff --git a/constants.php b/constants.php index f66a012b0..07dd6f18e 100644 --- a/constants.php +++ b/constants.php @@ -16,7 +16,7 @@ define('FRESHRSS_PATH', dirname(__FILE__)); define('DATA_PATH', FRESHRSS_PATH . '/data'); define('UPDATE_FILENAME', DATA_PATH . '/update.php'); - define('LOG_PATH', DATA_PATH . '/log'); + define('USERS_PATH', DATA_PATH . '/users'); define('CACHE_PATH', DATA_PATH . '/cache'); define('LIB_PATH', FRESHRSS_PATH . '/lib'); -- cgit v1.2.3 From 59abb0c7540369e59b9b81caa867fc7b70c52667 Mon Sep 17 00:00:00 2001 From: Marien Fressinaud Date: Thu, 8 Jan 2015 12:12:41 +0100 Subject: Fix i18n in install.php --- app/install.php | 41 ++++++++++++++++++++--------------------- 1 file changed, 20 insertions(+), 21 deletions(-) (limited to 'app/install.php') diff --git a/app/install.php b/app/install.php index 8b65fbb6f..a2c12e79f 100644 --- a/app/install.php +++ b/app/install.php @@ -43,30 +43,29 @@ function param($key, $default = false) { // gestion internationalisation function initTranslate() { + $available_languages = array( + 'en' => 'English', + 'fr' => 'Français' + ); + if (!isset($_SESSION['language'])) { - $_SESSION['language'] = getBetterLanguage('en'); + $best = get_best_language(); + if (!isset($available_languages[$best])) { + $best = 'en'; + } + + $_SESSION['language'] = $best; } - Minz_Translate::init(); + Minz_Translate::init(array( + 'en' => 'English', + 'fr' => 'Français', + ), $_SESSION['language']); } -function getBetterLanguage($fallback) { - $available = availableLanguages(); +function get_best_language() { $accept = $_SERVER['HTTP_ACCEPT_LANGUAGE']; - $language = strtolower(substr($accept, 0, 2)); - - if (isset($available[$language])) { - return $language; - } else { - return $fallback; - } -} - -function availableLanguages() { - return array( - 'en' => 'English', - 'fr' => 'Français' - ); + return strtolower(substr($accept, 0, 2)); } @@ -263,7 +262,7 @@ function checkStep() { } function checkStep0() { - $languages = availableLanguages(); + $languages = Minz_Translate::availableLanguages(); $language = isset($_SESSION['language']) && isset($languages[$_SESSION['language']]); @@ -427,7 +426,8 @@ function checkBD() { /*** AFFICHAGE ***/ function printStep0() { - global $actual; + $actual = Minz_Translate::language(); + $languages = Minz_Translate::availableLanguages(); ?>

@@ -439,7 +439,6 @@ function printStep0() {
- $lib) { ?> - + +
diff --git a/lib/Minz/Translate.php b/lib/Minz/Translate.php index a90af659e..24497a193 100644 --- a/lib/Minz/Translate.php +++ b/lib/Minz/Translate.php @@ -49,7 +49,7 @@ class Minz_Translate { self::$lang_name = $lang_name; self::$lang_files = array(); self::$translates = array(); - foreach ($path_list as $path) { + foreach (self::$path_list as $path) { self::loadLang($path); } } -- cgit v1.2.3 From 2d1cb016abb1ad2e5c9a875c649a702480f97b1b Mon Sep 17 00:00:00 2001 From: Marien Fressinaud Date: Tue, 13 Jan 2015 11:16:13 +0100 Subject: Fix user interaction with showing password feature Before, the password was hidden again after 2 seconds. Now, the password is hidden when the mouse is released Fix https://github.com/FreshRSS/FreshRSS/issues/734 --- app/install.php | 17 ++++++++++------- app/views/user/manage.phtml | 2 +- app/views/user/profile.phtml | 4 ++-- p/scripts/main.js | 15 ++++++++------- 4 files changed, 21 insertions(+), 17 deletions(-) (limited to 'app/install.php') diff --git a/app/install.php b/app/install.php index a79b0d318..eb2f764f9 100644 --- a/app/install.php +++ b/app/install.php @@ -611,23 +611,26 @@ function printStep2() {