diff options
author | Jérémy Benoist <j0k3r@users.noreply.github.com> | 2019-05-09 15:21:21 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-05-09 15:21:21 +0300 |
commit | 6e67f41152ad025e74696e7140de0f9fb0d601de (patch) | |
tree | 5d87be5998bedfc2e25099be17fdc1f3e5cc45ed | |
parent | 522e37ad274361dde697da13a92ff3f846599822 (diff) | |
parent | 68a90821a305867e9b655da2dbfe558d37253990 (diff) | |
download | wallabag-6e67f41152ad025e74696e7140de0f9fb0d601de.tar.gz wallabag-6e67f41152ad025e74696e7140de0f9fb0d601de.tar.zst wallabag-6e67f41152ad025e74696e7140de0f9fb0d601de.zip |
Merge pull request #3223 from wallabag/rss2atom
Changed RSS to Atom feed and improve paging
63 files changed, 787 insertions, 590 deletions
diff --git a/app/DoctrineMigrations/Version20190425115043.php b/app/DoctrineMigrations/Version20190425115043.php new file mode 100644 index 00000000..4c5c49cc --- /dev/null +++ b/app/DoctrineMigrations/Version20190425115043.php | |||
@@ -0,0 +1,58 @@ | |||
1 | <?php | ||
2 | |||
3 | namespace Application\Migrations; | ||
4 | |||
5 | use Doctrine\DBAL\Schema\Schema; | ||
6 | use Wallabag\CoreBundle\Doctrine\WallabagMigration; | ||
7 | |||
8 | /** | ||
9 | * Rename rss_token & rss_limit to feed_token & feed_limit. | ||
10 | */ | ||
11 | final class Version20190425115043 extends WallabagMigration | ||
12 | { | ||
13 | public function up(Schema $schema): void | ||
14 | { | ||
15 | switch ($this->connection->getDatabasePlatform()->getName()) { | ||
16 | case 'sqlite': | ||
17 | $this->addSql('DROP INDEX UNIQ_87E64C53A76ED395'); | ||
18 | $this->addSql('CREATE TEMPORARY TABLE __temp__' . $this->getTable('config', true) . ' AS SELECT id, user_id, theme, items_per_page, language, rss_token, rss_limit, reading_speed, pocket_consumer_key, action_mark_as_read, list_mode FROM ' . $this->getTable('config', true)); | ||
19 | $this->addSql('DROP TABLE ' . $this->getTable('config', true)); | ||
20 | $this->addSql('CREATE TABLE ' . $this->getTable('config', true) . ' (id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, user_id INTEGER DEFAULT NULL, theme VARCHAR(255) NOT NULL COLLATE BINARY, items_per_page INTEGER NOT NULL, language VARCHAR(255) NOT NULL COLLATE BINARY, reading_speed DOUBLE PRECISION DEFAULT NULL, pocket_consumer_key VARCHAR(255) DEFAULT NULL COLLATE BINARY, action_mark_as_read INTEGER DEFAULT 0, list_mode INTEGER DEFAULT NULL, feed_token VARCHAR(255) DEFAULT NULL, feed_limit INTEGER DEFAULT NULL, CONSTRAINT FK_87E64C53A76ED395 FOREIGN KEY (user_id) REFERENCES "wallabag_user" (id) NOT DEFERRABLE INITIALLY IMMEDIATE)'); | ||
21 | $this->addSql('INSERT INTO ' . $this->getTable('config', true) . ' (id, user_id, theme, items_per_page, language, feed_token, feed_limit, reading_speed, pocket_consumer_key, action_mark_as_read, list_mode) SELECT id, user_id, theme, items_per_page, language, rss_token, rss_limit, reading_speed, pocket_consumer_key, action_mark_as_read, list_mode FROM __temp__' . $this->getTable('config', true)); | ||
22 | $this->addSql('DROP TABLE __temp__' . $this->getTable('config', true)); | ||
23 | $this->addSql('CREATE UNIQUE INDEX UNIQ_87E64C53A76ED395 ON ' . $this->getTable('config', true) . ' (user_id)'); | ||
24 | break; | ||
25 | case 'mysql': | ||
26 | $this->addSql('ALTER TABLE ' . $this->getTable('config') . ' CHANGE rss_token feed_token VARCHAR(255) DEFAULT NULL'); | ||
27 | $this->addSql('ALTER TABLE ' . $this->getTable('config') . ' CHANGE rss_limit feed_limit INT DEFAULT NULL'); | ||
28 | break; | ||
29 | case 'postgresql': | ||
30 | $this->addSql('ALTER TABLE ' . $this->getTable('config') . ' RENAME COLUMN rss_token TO feed_token'); | ||
31 | $this->addSql('ALTER TABLE ' . $this->getTable('config') . ' RENAME COLUMN rss_limit TO feed_limit'); | ||
32 | break; | ||
33 | } | ||
34 | } | ||
35 | |||
36 | public function down(Schema $schema): void | ||
37 | { | ||
38 | switch ($this->connection->getDatabasePlatform()->getName()) { | ||
39 | case 'sqlite': | ||
40 | $this->addSql('DROP INDEX UNIQ_87E64C53A76ED395'); | ||
41 | $this->addSql('CREATE TEMPORARY TABLE __temp__' . $this->getTable('config', true) . ' AS SELECT id, user_id, theme, items_per_page, language, feed_token, feed_limit, reading_speed, pocket_consumer_key, action_mark_as_read, list_mode FROM "' . $this->getTable('config', true) . '"'); | ||
42 | $this->addSql('DROP TABLE "' . $this->getTable('config', true) . '"'); | ||
43 | $this->addSql('CREATE TABLE "' . $this->getTable('config', true) . '" (id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, user_id INTEGER DEFAULT NULL, theme VARCHAR(255) NOT NULL, items_per_page INTEGER NOT NULL, language VARCHAR(255) NOT NULL, reading_speed DOUBLE PRECISION DEFAULT NULL, pocket_consumer_key VARCHAR(255) DEFAULT NULL, action_mark_as_read INTEGER DEFAULT 0, list_mode INTEGER DEFAULT NULL, rss_token VARCHAR(255) DEFAULT NULL COLLATE BINARY, rss_limit INTEGER DEFAULT NULL)'); | ||
44 | $this->addSql('INSERT INTO "' . $this->getTable('config', true) . '" (id, user_id, theme, items_per_page, language, rss_token, rss_limit, reading_speed, pocket_consumer_key, action_mark_as_read, list_mode) SELECT id, user_id, theme, items_per_page, language, feed_token, feed_limit, reading_speed, pocket_consumer_key, action_mark_as_read, list_mode FROM __temp__' . $this->getTable('config', true)); | ||
45 | $this->addSql('DROP TABLE __temp__' . $this->getTable('config', true)); | ||
46 | $this->addSql('CREATE UNIQUE INDEX UNIQ_87E64C53A76ED395 ON "' . $this->getTable('config', true) . '" (user_id)'); | ||
47 | break; | ||
48 | case 'mysql': | ||
49 | $this->addSql('ALTER TABLE ' . $this->getTable('config') . ' CHANGE feed_token rss_token'); | ||
50 | $this->addSql('ALTER TABLE ' . $this->getTable('config') . ' CHANGE feed_limit rss_limit'); | ||
51 | break; | ||
52 | case 'postgresql': | ||
53 | $this->addSql('ALTER TABLE ' . $this->getTable('config') . ' RENAME COLUMN feed_token TO rss_token'); | ||
54 | $this->addSql('ALTER TABLE ' . $this->getTable('config') . ' RENAME COLUMN feed_limit TO rss_limit'); | ||
55 | break; | ||
56 | } | ||
57 | } | ||
58 | } | ||
diff --git a/app/Resources/static/themes/baggy/css/article.scss b/app/Resources/static/themes/baggy/css/article.scss index 9094ad55..d203ce31 100644 --- a/app/Resources/static/themes/baggy/css/article.scss +++ b/app/Resources/static/themes/baggy/css/article.scss | |||
@@ -85,7 +85,7 @@ blockquote { | |||
85 | color: #999; | 85 | color: #999; |
86 | } | 86 | } |
87 | 87 | ||
88 | .icon-rss { | 88 | .icon-feed { |
89 | background-color: #000; | 89 | background-color: #000; |
90 | color: #fff; | 90 | color: #fff; |
91 | padding: 0.2em 0.5em; | 91 | padding: 0.2em 0.5em; |
@@ -101,8 +101,8 @@ blockquote { | |||
101 | margin-bottom: 0.5em; | 101 | margin-bottom: 0.5em; |
102 | } | 102 | } |
103 | 103 | ||
104 | .icon-rss:hover, | 104 | .icon-feed:hover, |
105 | .icon-rss:focus { | 105 | .icon-feed:focus { |
106 | background-color: #fff; | 106 | background-color: #fff; |
107 | color: #000; | 107 | color: #000; |
108 | text-decoration: none; | 108 | text-decoration: none; |
diff --git a/app/Resources/static/themes/baggy/css/pictos.scss b/app/Resources/static/themes/baggy/css/pictos.scss index 2ff01937..b6ebf311 100644 --- a/app/Resources/static/themes/baggy/css/pictos.scss +++ b/app/Resources/static/themes/baggy/css/pictos.scss | |||
@@ -136,7 +136,7 @@ | |||
136 | content: "\ea3a"; | 136 | content: "\ea3a"; |
137 | } | 137 | } |
138 | 138 | ||
139 | .icon-rss::before { | 139 | .icon-feed::before { |
140 | content: "\e808"; | 140 | content: "\e808"; |
141 | } | 141 | } |
142 | 142 | ||
diff --git a/app/config/routing.yml b/app/config/routing.yml index a7c0f7e9..d4defca0 100644 --- a/app/config/routing.yml +++ b/app/config/routing.yml | |||
@@ -59,3 +59,39 @@ fos_js_routing: | |||
59 | 59 | ||
60 | 2fa_login_check: | 60 | 2fa_login_check: |
61 | path: /2fa_check | 61 | path: /2fa_check |
62 | |||
63 | # redirect RSS feed to Atom | ||
64 | rss_to_atom_unread: | ||
65 | path: /{username}/{token}/unread.xml | ||
66 | defaults: | ||
67 | _controller: FrameworkBundle:Redirect:redirect | ||
68 | route: unread_feed | ||
69 | permanent: true | ||
70 | |||
71 | rss_to_atom_archive: | ||
72 | path: /{username}/{token}/archive.xml | ||
73 | defaults: | ||
74 | _controller: FrameworkBundle:Redirect:redirect | ||
75 | route: archive_feed | ||
76 | permanent: true | ||
77 | |||
78 | rss_to_atom_starred: | ||
79 | path: /{username}/{token}/starred.xml | ||
80 | defaults: | ||
81 | _controller: FrameworkBundle:Redirect:redirect | ||
82 | route: starred_feed | ||
83 | permanent: true | ||
84 | |||
85 | rss_to_atom_all: | ||
86 | path: /{username}/{token}/all.xml | ||
87 | defaults: | ||
88 | _controller: FrameworkBundle:Redirect:redirect | ||
89 | route: all_feed | ||
90 | permanent: true | ||
91 | |||
92 | rss_to_atom_tags: | ||
93 | path: /{username}/{token}/tags/{slug}.xml | ||
94 | defaults: | ||
95 | _controller: FrameworkBundle:Redirect:redirect | ||
96 | route: tag_feed | ||
97 | permanent: true | ||
diff --git a/app/config/security.yml b/app/config/security.yml index 6a21b4e5..760b2550 100644 --- a/app/config/security.yml +++ b/app/config/security.yml | |||
@@ -72,6 +72,8 @@ security: | |||
72 | - { path: /(unread|starred|archive|all).xml$, roles: IS_AUTHENTICATED_ANONYMOUSLY } | 72 | - { path: /(unread|starred|archive|all).xml$, roles: IS_AUTHENTICATED_ANONYMOUSLY } |
73 | - { path: ^/locale, role: IS_AUTHENTICATED_ANONYMOUSLY } | 73 | - { path: ^/locale, role: IS_AUTHENTICATED_ANONYMOUSLY } |
74 | - { path: /tags/(.*).xml$, roles: IS_AUTHENTICATED_ANONYMOUSLY } | 74 | - { path: /tags/(.*).xml$, roles: IS_AUTHENTICATED_ANONYMOUSLY } |
75 | - { path: ^/feed, roles: IS_AUTHENTICATED_ANONYMOUSLY } | ||
76 | - { path: /(unread|starred|archive).xml$, roles: IS_AUTHENTICATED_ANONYMOUSLY } # For backwards compatibility | ||
75 | - { path: ^/share, roles: IS_AUTHENTICATED_ANONYMOUSLY } | 77 | - { path: ^/share, roles: IS_AUTHENTICATED_ANONYMOUSLY } |
76 | - { path: ^/settings, roles: ROLE_SUPER_ADMIN } | 78 | - { path: ^/settings, roles: ROLE_SUPER_ADMIN } |
77 | - { path: ^/annotations, roles: ROLE_USER } | 79 | - { path: ^/annotations, roles: ROLE_USER } |
diff --git a/src/Wallabag/CoreBundle/Command/InstallCommand.php b/src/Wallabag/CoreBundle/Command/InstallCommand.php index 49c84178..c58ae2b5 100644 --- a/src/Wallabag/CoreBundle/Command/InstallCommand.php +++ b/src/Wallabag/CoreBundle/Command/InstallCommand.php | |||
@@ -254,7 +254,7 @@ class InstallCommand extends ContainerAwareCommand | |||
254 | $question->setHidden(true); | 254 | $question->setHidden(true); |
255 | $user->setPlainPassword($this->io->askQuestion($question)); | 255 | $user->setPlainPassword($this->io->askQuestion($question)); |
256 | 256 | ||
257 | $user->setEmail($this->io->ask('Email', '')); | 257 | $user->setEmail($this->io->ask('Email', 'wallabag@wallabag.io')); |
258 | 258 | ||
259 | $user->setEnabled(true); | 259 | $user->setEnabled(true); |
260 | $user->addRole('ROLE_SUPER_ADMIN'); | 260 | $user->addRole('ROLE_SUPER_ADMIN'); |
diff --git a/src/Wallabag/CoreBundle/Controller/ConfigController.php b/src/Wallabag/CoreBundle/Controller/ConfigController.php index 9257ab18..3b281d48 100644 --- a/src/Wallabag/CoreBundle/Controller/ConfigController.php +++ b/src/Wallabag/CoreBundle/Controller/ConfigController.php | |||
@@ -14,7 +14,7 @@ use Wallabag\CoreBundle\Entity\Config; | |||
14 | use Wallabag\CoreBundle\Entity\TaggingRule; | 14 | use Wallabag\CoreBundle\Entity\TaggingRule; |
15 | use Wallabag\CoreBundle\Form\Type\ChangePasswordType; | 15 | use Wallabag\CoreBundle\Form\Type\ChangePasswordType; |
16 | use Wallabag\CoreBundle\Form\Type\ConfigType; | 16 | use Wallabag\CoreBundle\Form\Type\ConfigType; |
17 | use Wallabag\CoreBundle\Form\Type\RssType; | 17 | use Wallabag\CoreBundle\Form\Type\FeedType; |
18 | use Wallabag\CoreBundle\Form\Type\TaggingRuleType; | 18 | use Wallabag\CoreBundle\Form\Type\TaggingRuleType; |
19 | use Wallabag\CoreBundle\Form\Type\UserInformationType; | 19 | use Wallabag\CoreBundle\Form\Type\UserInformationType; |
20 | use Wallabag\CoreBundle\Tools\Utils; | 20 | use Wallabag\CoreBundle\Tools\Utils; |
@@ -92,17 +92,17 @@ class ConfigController extends Controller | |||
92 | return $this->redirect($this->generateUrl('config') . '#set3'); | 92 | return $this->redirect($this->generateUrl('config') . '#set3'); |
93 | } | 93 | } |
94 | 94 | ||
95 | // handle rss information | 95 | // handle feed information |
96 | $rssForm = $this->createForm(RssType::class, $config, ['action' => $this->generateUrl('config') . '#set2']); | 96 | $feedForm = $this->createForm(FeedType::class, $config, ['action' => $this->generateUrl('config') . '#set2']); |
97 | $rssForm->handleRequest($request); | 97 | $feedForm->handleRequest($request); |
98 | 98 | ||
99 | if ($rssForm->isSubmitted() && $rssForm->isValid()) { | 99 | if ($feedForm->isSubmitted() && $feedForm->isValid()) { |
100 | $em->persist($config); | 100 | $em->persist($config); |
101 | $em->flush(); | 101 | $em->flush(); |
102 | 102 | ||
103 | $this->addFlash( | 103 | $this->addFlash( |
104 | 'notice', | 104 | 'notice', |
105 | 'flashes.config.notice.rss_updated' | 105 | 'flashes.config.notice.feed_updated' |
106 | ); | 106 | ); |
107 | 107 | ||
108 | return $this->redirect($this->generateUrl('config') . '#set2'); | 108 | return $this->redirect($this->generateUrl('config') . '#set2'); |
@@ -143,14 +143,14 @@ class ConfigController extends Controller | |||
143 | return $this->render('WallabagCoreBundle:Config:index.html.twig', [ | 143 | return $this->render('WallabagCoreBundle:Config:index.html.twig', [ |
144 | 'form' => [ | 144 | 'form' => [ |
145 | 'config' => $configForm->createView(), | 145 | 'config' => $configForm->createView(), |
146 | 'rss' => $rssForm->createView(), | 146 | 'feed' => $feedForm->createView(), |
147 | 'pwd' => $pwdForm->createView(), | 147 | 'pwd' => $pwdForm->createView(), |
148 | 'user' => $userForm->createView(), | 148 | 'user' => $userForm->createView(), |
149 | 'new_tagging_rule' => $newTaggingRule->createView(), | 149 | 'new_tagging_rule' => $newTaggingRule->createView(), |
150 | ], | 150 | ], |
151 | 'rss' => [ | 151 | 'feed' => [ |
152 | 'username' => $user->getUsername(), | 152 | 'username' => $user->getUsername(), |
153 | 'token' => $config->getRssToken(), | 153 | 'token' => $config->getFeedToken(), |
154 | ], | 154 | ], |
155 | 'twofactor_auth' => $this->getParameter('twofactor_auth'), | 155 | 'twofactor_auth' => $this->getParameter('twofactor_auth'), |
156 | 'wallabag_url' => $this->getParameter('domain_name'), | 156 | 'wallabag_url' => $this->getParameter('domain_name'), |
@@ -281,19 +281,19 @@ class ConfigController extends Controller | |||
281 | public function generateTokenAction(Request $request) | 281 | public function generateTokenAction(Request $request) |
282 | { | 282 | { |
283 | $config = $this->getConfig(); | 283 | $config = $this->getConfig(); |
284 | $config->setRssToken(Utils::generateToken()); | 284 | $config->setFeedToken(Utils::generateToken()); |
285 | 285 | ||
286 | $em = $this->getDoctrine()->getManager(); | 286 | $em = $this->getDoctrine()->getManager(); |
287 | $em->persist($config); | 287 | $em->persist($config); |
288 | $em->flush(); | 288 | $em->flush(); |
289 | 289 | ||
290 | if ($request->isXmlHttpRequest()) { | 290 | if ($request->isXmlHttpRequest()) { |
291 | return new JsonResponse(['token' => $config->getRssToken()]); | 291 | return new JsonResponse(['token' => $config->getFeedToken()]); |
292 | } | 292 | } |
293 | 293 | ||
294 | $this->addFlash( | 294 | $this->addFlash( |
295 | 'notice', | 295 | 'notice', |
296 | 'flashes.config.notice.rss_token_updated' | 296 | 'flashes.config.notice.feed_token_updated' |
297 | ); | 297 | ); |
298 | 298 | ||
299 | return $this->redirect($this->generateUrl('config') . '#set2'); | 299 | return $this->redirect($this->generateUrl('config') . '#set2'); |
diff --git a/src/Wallabag/CoreBundle/Controller/RssController.php b/src/Wallabag/CoreBundle/Controller/FeedController.php index 1c831c03..8d422a90 100644 --- a/src/Wallabag/CoreBundle/Controller/RssController.php +++ b/src/Wallabag/CoreBundle/Controller/FeedController.php | |||
@@ -8,85 +8,96 @@ use Pagerfanta\Exception\OutOfRangeCurrentPageException; | |||
8 | use Pagerfanta\Pagerfanta; | 8 | use Pagerfanta\Pagerfanta; |
9 | use Sensio\Bundle\FrameworkExtraBundle\Configuration\ParamConverter; | 9 | use Sensio\Bundle\FrameworkExtraBundle\Configuration\ParamConverter; |
10 | use Symfony\Bundle\FrameworkBundle\Controller\Controller; | 10 | use Symfony\Bundle\FrameworkBundle\Controller\Controller; |
11 | use Symfony\Component\HttpFoundation\Request; | ||
12 | use Symfony\Component\HttpFoundation\Response; | 11 | use Symfony\Component\HttpFoundation\Response; |
13 | use Symfony\Component\Routing\Annotation\Route; | 12 | use Symfony\Component\Routing\Annotation\Route; |
14 | use Symfony\Component\Routing\Generator\UrlGeneratorInterface; | 13 | use Symfony\Component\Routing\Generator\UrlGeneratorInterface; |
15 | use Wallabag\CoreBundle\Entity\Tag; | 14 | use Wallabag\CoreBundle\Entity\Tag; |
16 | use Wallabag\UserBundle\Entity\User; | 15 | use Wallabag\UserBundle\Entity\User; |
17 | 16 | ||
18 | class RssController extends Controller | 17 | class FeedController extends Controller |
19 | { | 18 | { |
20 | /** | 19 | /** |
21 | * Shows unread entries for current user. | 20 | * Shows unread entries for current user. |
22 | * | 21 | * |
23 | * @Route("/{username}/{token}/unread.xml", name="unread_rss", defaults={"_format"="xml"}) | 22 | * @Route("/feed/{username}/{token}/unread/{page}", name="unread_feed", defaults={"page"=1, "_format"="xml"}) |
24 | * @ParamConverter("user", class="WallabagUserBundle:User", converter="username_rsstoken_converter") | 23 | * |
24 | * @ParamConverter("user", class="WallabagUserBundle:User", converter="username_feed_token_converter") | ||
25 | * | ||
26 | * @param User $user | ||
27 | * @param $page | ||
25 | * | 28 | * |
26 | * @return \Symfony\Component\HttpFoundation\Response | 29 | * @return \Symfony\Component\HttpFoundation\Response |
27 | */ | 30 | */ |
28 | public function showUnreadRSSAction(Request $request, User $user) | 31 | public function showUnreadFeedAction(User $user, $page) |
29 | { | 32 | { |
30 | return $this->showEntries('unread', $user, $request->query->get('page', 1)); | 33 | return $this->showEntries('unread', $user, $page); |
31 | } | 34 | } |
32 | 35 | ||
33 | /** | 36 | /** |
34 | * Shows read entries for current user. | 37 | * Shows read entries for current user. |
35 | * | 38 | * |
36 | * @Route("/{username}/{token}/archive.xml", name="archive_rss", defaults={"_format"="xml"}) | 39 | * @Route("/feed/{username}/{token}/archive/{page}", name="archive_feed", defaults={"page"=1, "_format"="xml"}) |
37 | * @ParamConverter("user", class="WallabagUserBundle:User", converter="username_rsstoken_converter") | 40 | * |
41 | * @ParamConverter("user", class="WallabagUserBundle:User", converter="username_feed_token_converter") | ||
42 | * | ||
43 | * @param User $user | ||
44 | * @param $page | ||
38 | * | 45 | * |
39 | * @return \Symfony\Component\HttpFoundation\Response | 46 | * @return \Symfony\Component\HttpFoundation\Response |
40 | */ | 47 | */ |
41 | public function showArchiveRSSAction(Request $request, User $user) | 48 | public function showArchiveFeedAction(User $user, $page) |
42 | { | 49 | { |
43 | return $this->showEntries('archive', $user, $request->query->get('page', 1)); | 50 | return $this->showEntries('archive', $user, $page); |
44 | } | 51 | } |
45 | 52 | ||
46 | /** | 53 | /** |
47 | * Shows starred entries for current user. | 54 | * Shows starred entries for current user. |
48 | * | 55 | * |
49 | * @Route("/{username}/{token}/starred.xml", name="starred_rss", defaults={"_format"="xml"}) | 56 | * @Route("/feed/{username}/{token}/starred/{page}", name="starred_feed", defaults={"page"=1, "_format"="xml"}) |
50 | * @ParamConverter("user", class="WallabagUserBundle:User", converter="username_rsstoken_converter") | 57 | * |
58 | * @ParamConverter("user", class="WallabagUserBundle:User", converter="username_feed_token_converter") | ||
59 | * | ||
60 | * @param User $user | ||
61 | * @param $page | ||
51 | * | 62 | * |
52 | * @return \Symfony\Component\HttpFoundation\Response | 63 | * @return \Symfony\Component\HttpFoundation\Response |
53 | */ | 64 | */ |
54 | public function showStarredRSSAction(Request $request, User $user) | 65 | public function showStarredFeedAction(User $user, $page) |
55 | { | 66 | { |
56 | return $this->showEntries('starred', $user, $request->query->get('page', 1)); | 67 | return $this->showEntries('starred', $user, $page); |
57 | } | 68 | } |
58 | 69 | ||
59 | /** | 70 | /** |
60 | * Shows all entries for current user. | 71 | * Shows all entries for current user. |
61 | * | 72 | * |
62 | * @Route("/{username}/{token}/all.xml", name="all_rss", defaults={"_format"="xml"}) | 73 | * @Route("/feed/{username}/{token}/all/{page}", name="all_feed", defaults={"page"=1, "_format"="xml"}) |
63 | * @ParamConverter("user", class="WallabagUserBundle:User", converter="username_rsstoken_converter") | 74 | * |
75 | * @ParamConverter("user", class="WallabagUserBundle:User", converter="username_feed_token_converter") | ||
64 | * | 76 | * |
65 | * @return \Symfony\Component\HttpFoundation\Response | 77 | * @return \Symfony\Component\HttpFoundation\Response |
66 | */ | 78 | */ |
67 | public function showAllRSSAction(Request $request, User $user) | 79 | public function showAllFeedAction(User $user, $page) |
68 | { | 80 | { |
69 | return $this->showEntries('all', $user, $request->query->get('page', 1)); | 81 | return $this->showEntries('all', $user, $page); |
70 | } | 82 | } |
71 | 83 | ||
72 | /** | 84 | /** |
73 | * Shows entries associated to a tag for current user. | 85 | * Shows entries associated to a tag for current user. |
74 | * | 86 | * |
75 | * @Route("/{username}/{token}/tags/{slug}.xml", name="tag_rss", defaults={"_format"="xml"}) | 87 | * @Route("/feed/{username}/{token}/tags/{slug}/{page}", name="tag_feed", defaults={"page"=1, "_format"="xml"}) |
76 | * @ParamConverter("user", class="WallabagUserBundle:User", converter="username_rsstoken_converter") | 88 | * |
89 | * @ParamConverter("user", class="WallabagUserBundle:User", converter="username_feed_token_converter") | ||
77 | * @ParamConverter("tag", options={"mapping": {"slug": "slug"}}) | 90 | * @ParamConverter("tag", options={"mapping": {"slug": "slug"}}) |
78 | * | 91 | * |
79 | * @return \Symfony\Component\HttpFoundation\Response | 92 | * @return \Symfony\Component\HttpFoundation\Response |
80 | */ | 93 | */ |
81 | public function showTagsAction(Request $request, User $user, Tag $tag) | 94 | public function showTagsFeedAction(User $user, Tag $tag, $page) |
82 | { | 95 | { |
83 | $page = $request->query->get('page', 1); | ||
84 | |||
85 | $url = $this->generateUrl( | 96 | $url = $this->generateUrl( |
86 | 'tag_rss', | 97 | 'tag_feed', |
87 | [ | 98 | [ |
88 | 'username' => $user->getUsername(), | 99 | 'username' => $user->getUsername(), |
89 | 'token' => $user->getConfig()->getRssToken(), | 100 | 'token' => $user->getConfig()->getFeedToken(), |
90 | 'slug' => $tag->getSlug(), | 101 | 'slug' => $tag->getSlug(), |
91 | ], | 102 | ], |
92 | UrlGeneratorInterface::ABSOLUTE_URL | 103 | UrlGeneratorInterface::ABSOLUTE_URL |
@@ -119,12 +130,15 @@ class RssController extends Controller | |||
119 | return $this->render( | 130 | return $this->render( |
120 | '@WallabagCore/themes/common/Entry/entries.xml.twig', | 131 | '@WallabagCore/themes/common/Entry/entries.xml.twig', |
121 | [ | 132 | [ |
122 | 'url_html' => $this->generateUrl('tag_entries', ['slug' => $tag->getSlug()], UrlGeneratorInterface::ABSOLUTE_URL), | 133 | 'type' => 'tag', |
123 | 'type' => 'tag (' . $tag->getLabel() . ')', | ||
124 | 'url' => $url, | 134 | 'url' => $url, |
125 | 'entries' => $entries, | 135 | 'entries' => $entries, |
136 | 'user' => $user->getUsername(), | ||
137 | 'domainName' => $this->getParameter('domain_name'), | ||
138 | 'version' => $this->getParameter('wallabag_core.version'), | ||
139 | 'tag' => $tag->getSlug(), | ||
126 | ], | 140 | ], |
127 | new Response('', 200, ['Content-Type' => 'application/rss+xml']) | 141 | new Response('', 200, ['Content-Type' => 'application/atom+xml']) |
128 | ); | 142 | ); |
129 | } | 143 | } |
130 | 144 | ||
@@ -162,14 +176,14 @@ class RssController extends Controller | |||
162 | $pagerAdapter = new DoctrineORMAdapter($qb->getQuery(), true, false); | 176 | $pagerAdapter = new DoctrineORMAdapter($qb->getQuery(), true, false); |
163 | $entries = new Pagerfanta($pagerAdapter); | 177 | $entries = new Pagerfanta($pagerAdapter); |
164 | 178 | ||
165 | $perPage = $user->getConfig()->getRssLimit() ?: $this->getParameter('wallabag_core.rss_limit'); | 179 | $perPage = $user->getConfig()->getFeedLimit() ?: $this->getParameter('wallabag_core.Feed_limit'); |
166 | $entries->setMaxPerPage($perPage); | 180 | $entries->setMaxPerPage($perPage); |
167 | 181 | ||
168 | $url = $this->generateUrl( | 182 | $url = $this->generateUrl( |
169 | $type . '_rss', | 183 | $type . '_feed', |
170 | [ | 184 | [ |
171 | 'username' => $user->getUsername(), | 185 | 'username' => $user->getUsername(), |
172 | 'token' => $user->getConfig()->getRssToken(), | 186 | 'token' => $user->getConfig()->getFeedToken(), |
173 | ], | 187 | ], |
174 | UrlGeneratorInterface::ABSOLUTE_URL | 188 | UrlGeneratorInterface::ABSOLUTE_URL |
175 | ); | 189 | ); |
@@ -178,19 +192,19 @@ class RssController extends Controller | |||
178 | $entries->setCurrentPage((int) $page); | 192 | $entries->setCurrentPage((int) $page); |
179 | } catch (OutOfRangeCurrentPageException $e) { | 193 | } catch (OutOfRangeCurrentPageException $e) { |
180 | if ($page > 1) { | 194 | if ($page > 1) { |
181 | return $this->redirect($url . '?page=' . $entries->getNbPages(), 302); | 195 | return $this->redirect($url . '/' . $entries->getNbPages()); |
182 | } | 196 | } |
183 | } | 197 | } |
184 | 198 | ||
185 | return $this->render( | 199 | return $this->render('@WallabagCore/themes/common/Entry/entries.xml.twig', [ |
186 | '@WallabagCore/themes/common/Entry/entries.xml.twig', | 200 | 'type' => $type, |
187 | [ | 201 | 'url' => $url, |
188 | 'url_html' => $this->generateUrl($type, [], UrlGeneratorInterface::ABSOLUTE_URL), | 202 | 'entries' => $entries, |
189 | 'type' => $type, | 203 | 'user' => $user->getUsername(), |
190 | 'url' => $url, | 204 | 'domainName' => $this->getParameter('domain_name'), |
191 | 'entries' => $entries, | 205 | 'version' => $this->getParameter('wallabag_core.version'), |
192 | ], | 206 | ], |
193 | new Response('', 200, ['Content-Type' => 'application/rss+xml']) | 207 | new Response('', 200, ['Content-Type' => 'application/atom+xml']) |
194 | ); | 208 | ); |
195 | } | 209 | } |
196 | } | 210 | } |
diff --git a/src/Wallabag/CoreBundle/DependencyInjection/WallabagCoreExtension.php b/src/Wallabag/CoreBundle/DependencyInjection/WallabagCoreExtension.php index a3ef2b53..e9a1e9e0 100644 --- a/src/Wallabag/CoreBundle/DependencyInjection/WallabagCoreExtension.php +++ b/src/Wallabag/CoreBundle/DependencyInjection/WallabagCoreExtension.php | |||
@@ -18,7 +18,7 @@ class WallabagCoreExtension extends Extension | |||
18 | $container->setParameter('wallabag_core.items_on_page', $config['items_on_page']); | 18 | $container->setParameter('wallabag_core.items_on_page', $config['items_on_page']); |
19 | $container->setParameter('wallabag_core.theme', $config['theme']); | 19 | $container->setParameter('wallabag_core.theme', $config['theme']); |
20 | $container->setParameter('wallabag_core.language', $config['language']); | 20 | $container->setParameter('wallabag_core.language', $config['language']); |
21 | $container->setParameter('wallabag_core.rss_limit', $config['rss_limit']); | 21 | $container->setParameter('wallabag_core.feed_limit', $config['rss_limit']); |
22 | $container->setParameter('wallabag_core.reading_speed', $config['reading_speed']); | 22 | $container->setParameter('wallabag_core.reading_speed', $config['reading_speed']); |
23 | $container->setParameter('wallabag_core.version', $config['version']); | 23 | $container->setParameter('wallabag_core.version', $config['version']); |
24 | $container->setParameter('wallabag_core.paypal_url', $config['paypal_url']); | 24 | $container->setParameter('wallabag_core.paypal_url', $config['paypal_url']); |
diff --git a/src/Wallabag/CoreBundle/Entity/Config.php b/src/Wallabag/CoreBundle/Entity/Config.php index b902ae2c..c6e65d66 100644 --- a/src/Wallabag/CoreBundle/Entity/Config.php +++ b/src/Wallabag/CoreBundle/Entity/Config.php | |||
@@ -60,21 +60,21 @@ class Config | |||
60 | /** | 60 | /** |
61 | * @var string | 61 | * @var string |
62 | * | 62 | * |
63 | * @ORM\Column(name="rss_token", type="string", nullable=true) | 63 | * @ORM\Column(name="feed_token", type="string", nullable=true) |
64 | */ | 64 | */ |
65 | private $rssToken; | 65 | private $feedToken; |
66 | 66 | ||
67 | /** | 67 | /** |
68 | * @var int | 68 | * @var int |
69 | * | 69 | * |
70 | * @ORM\Column(name="rss_limit", type="integer", nullable=true) | 70 | * @ORM\Column(name="feed_limit", type="integer", nullable=true) |
71 | * @Assert\Range( | 71 | * @Assert\Range( |
72 | * min = 1, | 72 | * min = 1, |
73 | * max = 100000, | 73 | * max = 100000, |
74 | * maxMessage = "validator.rss_limit_too_high" | 74 | * maxMessage = "validator.feed_limit_too_high" |
75 | * ) | 75 | * ) |
76 | */ | 76 | */ |
77 | private $rssLimit; | 77 | private $feedLimit; |
78 | 78 | ||
79 | /** | 79 | /** |
80 | * @var float | 80 | * @var float |
@@ -231,51 +231,51 @@ class Config | |||
231 | } | 231 | } |
232 | 232 | ||
233 | /** | 233 | /** |
234 | * Set rssToken. | 234 | * Set feed Token. |
235 | * | 235 | * |
236 | * @param string $rssToken | 236 | * @param string $feedToken |
237 | * | 237 | * |
238 | * @return Config | 238 | * @return Config |
239 | */ | 239 | */ |
240 | public function setRssToken($rssToken) | 240 | public function setFeedToken($feedToken) |
241 | { | 241 | { |
242 | $this->rssToken = $rssToken; | 242 | $this->feedToken = $feedToken; |
243 | 243 | ||
244 | return $this; | 244 | return $this; |
245 | } | 245 | } |
246 | 246 | ||
247 | /** | 247 | /** |
248 | * Get rssToken. | 248 | * Get feedToken. |
249 | * | 249 | * |
250 | * @return string | 250 | * @return string |
251 | */ | 251 | */ |
252 | public function getRssToken() | 252 | public function getFeedToken() |
253 | { | 253 | { |
254 | return $this->rssToken; | 254 | return $this->feedToken; |
255 | } | 255 | } |
256 | 256 | ||
257 | /** | 257 | /** |
258 | * Set rssLimit. | 258 | * Set Feed Limit. |
259 | * | 259 | * |
260 | * @param int $rssLimit | 260 | * @param int $feedLimit |
261 | * | 261 | * |
262 | * @return Config | 262 | * @return Config |
263 | */ | 263 | */ |
264 | public function setRssLimit($rssLimit) | 264 | public function setFeedLimit($feedLimit) |
265 | { | 265 | { |
266 | $this->rssLimit = $rssLimit; | 266 | $this->feedLimit = $feedLimit; |
267 | 267 | ||
268 | return $this; | 268 | return $this; |
269 | } | 269 | } |
270 | 270 | ||
271 | /** | 271 | /** |
272 | * Get rssLimit. | 272 | * Get Feed Limit. |
273 | * | 273 | * |
274 | * @return int | 274 | * @return int |
275 | */ | 275 | */ |
276 | public function getRssLimit() | 276 | public function getFeedLimit() |
277 | { | 277 | { |
278 | return $this->rssLimit; | 278 | return $this->feedLimit; |
279 | } | 279 | } |
280 | 280 | ||
281 | /** | 281 | /** |
diff --git a/src/Wallabag/CoreBundle/Form/Type/RssType.php b/src/Wallabag/CoreBundle/Form/Type/FeedType.php index 49b31c1e..9b34daf4 100644 --- a/src/Wallabag/CoreBundle/Form/Type/RssType.php +++ b/src/Wallabag/CoreBundle/Form/Type/FeedType.php | |||
@@ -7,14 +7,14 @@ use Symfony\Component\Form\Extension\Core\Type\SubmitType; | |||
7 | use Symfony\Component\Form\FormBuilderInterface; | 7 | use Symfony\Component\Form\FormBuilderInterface; |
8 | use Symfony\Component\OptionsResolver\OptionsResolver; | 8 | use Symfony\Component\OptionsResolver\OptionsResolver; |
9 | 9 | ||
10 | class RssType extends AbstractType | 10 | class FeedType extends AbstractType |
11 | { | 11 | { |
12 | public function buildForm(FormBuilderInterface $builder, array $options) | 12 | public function buildForm(FormBuilderInterface $builder, array $options) |
13 | { | 13 | { |
14 | $builder | 14 | $builder |
15 | ->add('rss_limit', null, [ | 15 | ->add('feed_limit', null, [ |
16 | 'label' => 'config.form_rss.rss_limit', | 16 | 'label' => 'config.form_feed.feed_limit', |
17 | 'property_path' => 'rssLimit', | 17 | 'property_path' => 'feedLimit', |
18 | ]) | 18 | ]) |
19 | ->add('save', SubmitType::class, [ | 19 | ->add('save', SubmitType::class, [ |
20 | 'label' => 'config.form.save', | 20 | 'label' => 'config.form.save', |
@@ -31,6 +31,6 @@ class RssType extends AbstractType | |||
31 | 31 | ||
32 | public function getBlockPrefix() | 32 | public function getBlockPrefix() |
33 | { | 33 | { |
34 | return 'rss_config'; | 34 | return 'feed_config'; |
35 | } | 35 | } |
36 | } | 36 | } |
diff --git a/src/Wallabag/CoreBundle/Helper/PreparePagerForEntries.php b/src/Wallabag/CoreBundle/Helper/PreparePagerForEntries.php index 183d394a..04abc6d0 100644 --- a/src/Wallabag/CoreBundle/Helper/PreparePagerForEntries.php +++ b/src/Wallabag/CoreBundle/Helper/PreparePagerForEntries.php | |||
@@ -21,7 +21,7 @@ class PreparePagerForEntries | |||
21 | 21 | ||
22 | /** | 22 | /** |
23 | * @param AdapterInterface $adapter | 23 | * @param AdapterInterface $adapter |
24 | * @param User $user If user isn't logged in, we can force it (like for rss) | 24 | * @param User $user If user isn't logged in, we can force it (like for feed) |
25 | * | 25 | * |
26 | * @return Pagerfanta|null | 26 | * @return Pagerfanta|null |
27 | */ | 27 | */ |
diff --git a/src/Wallabag/CoreBundle/ParamConverter/UsernameRssTokenConverter.php b/src/Wallabag/CoreBundle/ParamConverter/UsernameFeedTokenConverter.php index 4a2fcab5..e220abfc 100644 --- a/src/Wallabag/CoreBundle/ParamConverter/UsernameRssTokenConverter.php +++ b/src/Wallabag/CoreBundle/ParamConverter/UsernameFeedTokenConverter.php | |||
@@ -10,12 +10,12 @@ use Symfony\Component\HttpKernel\Exception\NotFoundHttpException; | |||
10 | use Wallabag\UserBundle\Entity\User; | 10 | use Wallabag\UserBundle\Entity\User; |
11 | 11 | ||
12 | /** | 12 | /** |
13 | * ParamConverter used in the RSS controller to retrieve the right user according to | 13 | * ParamConverter used in the Feed controller to retrieve the right user according to |
14 | * username & token given in the url. | 14 | * username & token given in the url. |
15 | * | 15 | * |
16 | * @see http://stfalcon.com/en/blog/post/symfony2-custom-paramconverter | 16 | * @see http://stfalcon.com/en/blog/post/symfony2-custom-paramconverter |
17 | */ | 17 | */ |
18 | class UsernameRssTokenConverter implements ParamConverterInterface | 18 | class UsernameFeedTokenConverter implements ParamConverterInterface |
19 | { | 19 | { |
20 | private $registry; | 20 | private $registry; |
21 | 21 | ||
@@ -67,7 +67,7 @@ class UsernameRssTokenConverter implements ParamConverterInterface | |||
67 | public function apply(Request $request, ParamConverter $configuration) | 67 | public function apply(Request $request, ParamConverter $configuration) |
68 | { | 68 | { |
69 | $username = $request->attributes->get('username'); | 69 | $username = $request->attributes->get('username'); |
70 | $rssToken = $request->attributes->get('token'); | 70 | $feedToken = $request->attributes->get('token'); |
71 | 71 | ||
72 | if (!$request->attributes->has('username') || !$request->attributes->has('token')) { | 72 | if (!$request->attributes->has('username') || !$request->attributes->has('token')) { |
73 | return false; | 73 | return false; |
@@ -78,8 +78,8 @@ class UsernameRssTokenConverter implements ParamConverterInterface | |||
78 | 78 | ||
79 | $userRepository = $em->getRepository($configuration->getClass()); | 79 | $userRepository = $em->getRepository($configuration->getClass()); |
80 | 80 | ||
81 | // Try to find user by its username and config rss_token | 81 | // Try to find user by its username and config feed_token |
82 | $user = $userRepository->findOneByUsernameAndRsstoken($username, $rssToken); | 82 | $user = $userRepository->findOneByUsernameAndFeedtoken($username, $feedToken); |
83 | 83 | ||
84 | if (null === $user || !($user instanceof User)) { | 84 | if (null === $user || !($user instanceof User)) { |
85 | throw new NotFoundHttpException(sprintf('%s not found.', $configuration->getClass())); | 85 | throw new NotFoundHttpException(sprintf('%s not found.', $configuration->getClass())); |
diff --git a/src/Wallabag/CoreBundle/Resources/config/services.yml b/src/Wallabag/CoreBundle/Resources/config/services.yml index a27dd210..280d779d 100644 --- a/src/Wallabag/CoreBundle/Resources/config/services.yml +++ b/src/Wallabag/CoreBundle/Resources/config/services.yml | |||
@@ -22,10 +22,10 @@ services: | |||
22 | tags: | 22 | tags: |
23 | - { name: form.type } | 23 | - { name: form.type } |
24 | 24 | ||
25 | wallabag_core.param_converter.username_rsstoken_converter: | 25 | wallabag_core.param_converter.username_feed_token_converter: |
26 | class: Wallabag\CoreBundle\ParamConverter\UsernameRssTokenConverter | 26 | class: Wallabag\CoreBundle\ParamConverter\UsernameFeedTokenConverter |
27 | tags: | 27 | tags: |
28 | - { name: request.param_converter, converter: username_rsstoken_converter } | 28 | - { name: request.param_converter, converter: username_feed_token_converter } |
29 | arguments: | 29 | arguments: |
30 | - "@doctrine" | 30 | - "@doctrine" |
31 | 31 | ||
diff --git a/src/Wallabag/CoreBundle/Resources/translations/messages.da.yml b/src/Wallabag/CoreBundle/Resources/translations/messages.da.yml index 454f547d..61ef3b8f 100644 --- a/src/Wallabag/CoreBundle/Resources/translations/messages.da.yml +++ b/src/Wallabag/CoreBundle/Resources/translations/messages.da.yml | |||
@@ -54,7 +54,7 @@ config: | |||
54 | page_title: 'Opsætning' | 54 | page_title: 'Opsætning' |
55 | tab_menu: | 55 | tab_menu: |
56 | settings: 'Indstillinger' | 56 | settings: 'Indstillinger' |
57 | rss: 'RSS' | 57 | feed: 'RSS' |
58 | user_info: 'Brugeroplysninger' | 58 | user_info: 'Brugeroplysninger' |
59 | password: 'Adgangskode' | 59 | password: 'Adgangskode' |
60 | # rules: 'Tagging rules' | 60 | # rules: 'Tagging rules' |
@@ -85,19 +85,19 @@ config: | |||
85 | # help_reading_speed: "wallabag calculates a reading time for each article. You can define here, thanks to this list, if you are a fast or a slow reader. wallabag will recalculate the reading time for each article." | 85 | # help_reading_speed: "wallabag calculates a reading time for each article. You can define here, thanks to this list, if you are a fast or a slow reader. wallabag will recalculate the reading time for each article." |
86 | # help_language: "You can change the language of wallabag interface." | 86 | # help_language: "You can change the language of wallabag interface." |
87 | # help_pocket_consumer_key: "Required for Pocket import. You can create it in your Pocket account." | 87 | # help_pocket_consumer_key: "Required for Pocket import. You can create it in your Pocket account." |
88 | form_rss: | 88 | form_feed: |
89 | description: 'RSS-feeds fra wallabag gør det muligt at læse de artikler, der gemmes i wallabag, med din RSS-læser. Det kræver, at du genererer et token først.' | 89 | description: 'RSS-feeds fra wallabag gør det muligt at læse de artikler, der gemmes i wallabag, med din RSS-læser. Det kræver, at du genererer et token først.' |
90 | token_label: 'RSS-Token' | 90 | token_label: 'RSS-Token' |
91 | no_token: 'Intet token' | 91 | no_token: 'Intet token' |
92 | token_create: 'Opret token' | 92 | token_create: 'Opret token' |
93 | token_reset: 'Nulstil token' | 93 | token_reset: 'Nulstil token' |
94 | rss_links: 'RSS-Links' | 94 | feed_links: 'RSS-Links' |
95 | rss_link: | 95 | feed_link: |
96 | unread: 'Ulæst' | 96 | unread: 'Ulæst' |
97 | starred: 'Favoritter' | 97 | starred: 'Favoritter' |
98 | archive: 'Arkiv' | 98 | archive: 'Arkiv' |
99 | # all: 'All' | 99 | # all: 'All' |
100 | # rss_limit: 'Number of items in the feed' | 100 | # feed_limit: 'Number of items in the feed' |
101 | form_user: | 101 | form_user: |
102 | # two_factor_description: "Enabling two factor authentication means you'll receive an email with a code OR need to use an OTP app (like Google Authenticator, Authy or FreeOTP) to get a one time code on every new untrusted connection. You can't choose both option." | 102 | # two_factor_description: "Enabling two factor authentication means you'll receive an email with a code OR need to use an OTP app (like Google Authenticator, Authy or FreeOTP) to get a one time code on every new untrusted connection. You can't choose both option." |
103 | name_label: 'Navn' | 103 | name_label: 'Navn' |
@@ -372,7 +372,7 @@ quickstart: | |||
372 | # title: 'Configure the application' | 372 | # title: 'Configure the application' |
373 | # description: 'In order to have an application which suits you, have a look into the configuration of wallabag.' | 373 | # description: 'In order to have an application which suits you, have a look into the configuration of wallabag.' |
374 | # language: 'Change language and design' | 374 | # language: 'Change language and design' |
375 | # rss: 'Enable RSS feeds' | 375 | # feed: 'Enable RSS feeds' |
376 | # tagging_rules: 'Write rules to automatically tag your articles' | 376 | # tagging_rules: 'Write rules to automatically tag your articles' |
377 | # admin: | 377 | # admin: |
378 | # title: 'Administration' | 378 | # title: 'Administration' |
@@ -589,10 +589,10 @@ flashes: | |||
589 | password_updated: 'Adgangskode opdateret' | 589 | password_updated: 'Adgangskode opdateret' |
590 | # password_not_updated_demo: "In demonstration mode, you can't change password for this user." | 590 | # password_not_updated_demo: "In demonstration mode, you can't change password for this user." |
591 | user_updated: 'Oplysninger opdateret' | 591 | user_updated: 'Oplysninger opdateret' |
592 | rss_updated: 'RSS-oplysninger opdateret' | 592 | feed_updated: 'RSS-oplysninger opdateret' |
593 | # tagging_rules_updated: 'Tagging rules updated' | 593 | # tagging_rules_updated: 'Tagging rules updated' |
594 | # tagging_rules_deleted: 'Tagging rule deleted' | 594 | # tagging_rules_deleted: 'Tagging rule deleted' |
595 | # rss_token_updated: 'RSS token updated' | 595 | # feed_token_updated: 'RSS token updated' |
596 | # annotations_reset: Annotations reset | 596 | # annotations_reset: Annotations reset |
597 | # tags_reset: Tags reset | 597 | # tags_reset: Tags reset |
598 | # entries_reset: Entries reset | 598 | # entries_reset: Entries reset |
diff --git a/src/Wallabag/CoreBundle/Resources/translations/messages.de.yml b/src/Wallabag/CoreBundle/Resources/translations/messages.de.yml index dc1d4723..991e00f1 100644 --- a/src/Wallabag/CoreBundle/Resources/translations/messages.de.yml +++ b/src/Wallabag/CoreBundle/Resources/translations/messages.de.yml | |||
@@ -54,7 +54,7 @@ config: | |||
54 | page_title: 'Einstellungen' | 54 | page_title: 'Einstellungen' |
55 | tab_menu: | 55 | tab_menu: |
56 | settings: 'Einstellungen' | 56 | settings: 'Einstellungen' |
57 | rss: 'RSS' | 57 | feed: 'RSS' |
58 | user_info: 'Benutzerinformation' | 58 | user_info: 'Benutzerinformation' |
59 | password: 'Kennwort' | 59 | password: 'Kennwort' |
60 | rules: 'Tagging-Regeln' | 60 | rules: 'Tagging-Regeln' |
@@ -85,19 +85,19 @@ config: | |||
85 | help_reading_speed: "wallabag berechnet eine Lesezeit pro Artikel. Hier kannst du definieren, ob du ein schneller oder langsamer Leser bist. wallabag wird die Lesezeiten danach neu berechnen." | 85 | help_reading_speed: "wallabag berechnet eine Lesezeit pro Artikel. Hier kannst du definieren, ob du ein schneller oder langsamer Leser bist. wallabag wird die Lesezeiten danach neu berechnen." |
86 | help_language: "Du kannst die Sprache der wallabag-Oberfläche ändern." | 86 | help_language: "Du kannst die Sprache der wallabag-Oberfläche ändern." |
87 | help_pocket_consumer_key: "Nötig für den Pocket-Import. Du kannst ihn in deinem Pocket account einrichten." | 87 | help_pocket_consumer_key: "Nötig für den Pocket-Import. Du kannst ihn in deinem Pocket account einrichten." |
88 | form_rss: | 88 | form_feed: |
89 | description: 'Die RSS-Feeds von wallabag erlauben es dir, deine gespeicherten Artikel mit deinem bevorzugten RSS-Reader zu lesen. Vorher musst du jedoch einen Token erstellen.' | 89 | description: 'Die RSS-Feeds von wallabag erlauben es dir, deine gespeicherten Artikel mit deinem bevorzugten RSS-Reader zu lesen. Vorher musst du jedoch einen Token erstellen.' |
90 | token_label: 'RSS-Token' | 90 | token_label: 'RSS-Token' |
91 | no_token: 'Kein Token' | 91 | no_token: 'Kein Token' |
92 | token_create: 'Token erstellen' | 92 | token_create: 'Token erstellen' |
93 | token_reset: 'Token zurücksetzen' | 93 | token_reset: 'Token zurücksetzen' |
94 | rss_links: 'RSS-Links' | 94 | feed_links: 'RSS-Links' |
95 | rss_link: | 95 | feed_link: |
96 | unread: 'Ungelesene' | 96 | unread: 'Ungelesene' |
97 | starred: 'Favoriten' | 97 | starred: 'Favoriten' |
98 | archive: 'Archivierte' | 98 | archive: 'Archivierte' |
99 | all: 'Alle' | 99 | all: 'Alle' |
100 | rss_limit: 'Anzahl der Einträge pro Feed' | 100 | feed_limit: 'Anzahl der Einträge pro Feed' |
101 | form_user: | 101 | form_user: |
102 | # two_factor_description: "Enabling two factor authentication means you'll receive an email with a code OR need to use an OTP app (like Google Authenticator, Authy or FreeOTP) to get a one time code on every new untrusted connection. You can't choose both option." | 102 | # two_factor_description: "Enabling two factor authentication means you'll receive an email with a code OR need to use an OTP app (like Google Authenticator, Authy or FreeOTP) to get a one time code on every new untrusted connection. You can't choose both option." |
103 | name_label: 'Name' | 103 | name_label: 'Name' |
@@ -363,7 +363,7 @@ quickstart: | |||
363 | title: 'Anwendung konfigurieren' | 363 | title: 'Anwendung konfigurieren' |
364 | description: 'Um die Applikation für dich anzupassen, schau in die Konfiguration von wallabag.' | 364 | description: 'Um die Applikation für dich anzupassen, schau in die Konfiguration von wallabag.' |
365 | language: 'Sprache und Design ändern' | 365 | language: 'Sprache und Design ändern' |
366 | rss: 'RSS-Feeds aktivieren' | 366 | feed: 'RSS-Feeds aktivieren' |
367 | tagging_rules: 'Schreibe Regeln, um deine Beiträge automatisch zu taggen (verschlagworten)' | 367 | tagging_rules: 'Schreibe Regeln, um deine Beiträge automatisch zu taggen (verschlagworten)' |
368 | admin: | 368 | admin: |
369 | title: 'Administration' | 369 | title: 'Administration' |
@@ -580,14 +580,14 @@ flashes: | |||
580 | password_updated: 'Kennwort aktualisiert' | 580 | password_updated: 'Kennwort aktualisiert' |
581 | password_not_updated_demo: 'Im Testmodus kannst du das Kennwort nicht ändern.' | 581 | password_not_updated_demo: 'Im Testmodus kannst du das Kennwort nicht ändern.' |
582 | user_updated: 'Information aktualisiert' | 582 | user_updated: 'Information aktualisiert' |
583 | rss_updated: 'RSS-Informationen aktualisiert' | 583 | feed_updated: 'RSS-Informationen aktualisiert' |
584 | tagging_rules_updated: 'Tagging-Regeln aktualisiert' | 584 | tagging_rules_updated: 'Tagging-Regeln aktualisiert' |
585 | tagging_rules_deleted: 'Tagging-Regel gelöscht' | 585 | tagging_rules_deleted: 'Tagging-Regel gelöscht' |
586 | rss_token_updated: 'RSS-Token aktualisiert' | 586 | feed_token_updated: 'RSS-Token aktualisiert' |
587 | annotations_reset: 'Anmerkungen zurücksetzen' | 587 | annotations_reset: Anmerkungen zurücksetzen |
588 | tags_reset: 'Tags zurücksetzen' | 588 | tags_reset: Tags zurücksetzen |
589 | entries_reset: 'Einträge zurücksetzen' | 589 | entries_reset: Einträge zurücksetzen |
590 | archived_reset: 'Archiverte Einträge zurücksetzen' | 590 | archived_reset: Archiverte Einträge zurücksetzen |
591 | entry: | 591 | entry: |
592 | notice: | 592 | notice: |
593 | entry_already_saved: 'Eintrag bereits am %date% gespeichert' | 593 | entry_already_saved: 'Eintrag bereits am %date% gespeichert' |
diff --git a/src/Wallabag/CoreBundle/Resources/translations/messages.en.yml b/src/Wallabag/CoreBundle/Resources/translations/messages.en.yml index 45145c80..5b875652 100644 --- a/src/Wallabag/CoreBundle/Resources/translations/messages.en.yml +++ b/src/Wallabag/CoreBundle/Resources/translations/messages.en.yml | |||
@@ -54,7 +54,7 @@ config: | |||
54 | page_title: 'Config' | 54 | page_title: 'Config' |
55 | tab_menu: | 55 | tab_menu: |
56 | settings: 'Settings' | 56 | settings: 'Settings' |
57 | rss: 'RSS' | 57 | feed: 'Feeds' |
58 | user_info: 'User information' | 58 | user_info: 'User information' |
59 | password: 'Password' | 59 | password: 'Password' |
60 | rules: 'Tagging rules' | 60 | rules: 'Tagging rules' |
@@ -85,19 +85,19 @@ config: | |||
85 | help_reading_speed: "wallabag calculates a reading time for each article. You can define here, thanks to this list, if you are a fast or a slow reader. wallabag will recalculate the reading time for each article." | 85 | help_reading_speed: "wallabag calculates a reading time for each article. You can define here, thanks to this list, if you are a fast or a slow reader. wallabag will recalculate the reading time for each article." |
86 | help_language: "You can change the language of wallabag interface." | 86 | help_language: "You can change the language of wallabag interface." |
87 | help_pocket_consumer_key: "Required for Pocket import. You can create it in your Pocket account." | 87 | help_pocket_consumer_key: "Required for Pocket import. You can create it in your Pocket account." |
88 | form_rss: | 88 | form_feed: |
89 | description: 'RSS feeds provided by wallabag allow you to read your saved articles with your favourite RSS reader. You need to generate a token first.' | 89 | description: 'Atom feeds provided by wallabag allow you to read your saved articles with your favourite Atom reader. You need to generate a token first.' |
90 | token_label: 'RSS token' | 90 | token_label: 'Feed token' |
91 | no_token: 'No token' | 91 | no_token: 'No token' |
92 | token_create: 'Create your token' | 92 | token_create: 'Create your token' |
93 | token_reset: 'Regenerate your token' | 93 | token_reset: 'Regenerate your token' |
94 | rss_links: 'RSS links' | 94 | feed_links: 'Feed links' |
95 | rss_link: | 95 | feed_link: |
96 | unread: 'Unread' | 96 | unread: 'Unread' |
97 | starred: 'Starred' | 97 | starred: 'Starred' |
98 | archive: 'Archived' | 98 | archive: 'Archived' |
99 | all: 'All' | 99 | all: 'All' |
100 | rss_limit: 'Number of items in the feed' | 100 | feed_limit: 'Number of items in the feed' |
101 | form_user: | 101 | form_user: |
102 | two_factor_description: "Enabling two factor authentication means you'll receive an email with a code OR need to use an OTP app (like Google Authenticator, Authy or FreeOTP) to get a one time code on every new untrusted connection. You can't choose both option." | 102 | two_factor_description: "Enabling two factor authentication means you'll receive an email with a code OR need to use an OTP app (like Google Authenticator, Authy or FreeOTP) to get a one time code on every new untrusted connection. You can't choose both option." |
103 | name_label: 'Name' | 103 | name_label: 'Name' |
@@ -372,7 +372,7 @@ quickstart: | |||
372 | title: 'Configure the application' | 372 | title: 'Configure the application' |
373 | description: 'In order to have an application which suits you, have a look into the configuration of wallabag.' | 373 | description: 'In order to have an application which suits you, have a look into the configuration of wallabag.' |
374 | language: 'Change language and design' | 374 | language: 'Change language and design' |
375 | rss: 'Enable RSS feeds' | 375 | feed: 'Enable feeds' |
376 | tagging_rules: 'Write rules to automatically tag your articles' | 376 | tagging_rules: 'Write rules to automatically tag your articles' |
377 | admin: | 377 | admin: |
378 | title: 'Administration' | 378 | title: 'Administration' |
@@ -589,10 +589,10 @@ flashes: | |||
589 | password_updated: 'Password updated' | 589 | password_updated: 'Password updated' |
590 | password_not_updated_demo: "In demonstration mode, you can't change password for this user." | 590 | password_not_updated_demo: "In demonstration mode, you can't change password for this user." |
591 | user_updated: 'Information updated' | 591 | user_updated: 'Information updated' |
592 | rss_updated: 'RSS information updated' | 592 | feed_updated: 'Feed information updated' |
593 | tagging_rules_updated: 'Tagging rules updated' | 593 | tagging_rules_updated: 'Tagging rules updated' |
594 | tagging_rules_deleted: 'Tagging rule deleted' | 594 | tagging_rules_deleted: 'Tagging rule deleted' |
595 | rss_token_updated: 'RSS token updated' | 595 | feed_token_updated: 'Feed token updated' |
596 | annotations_reset: Annotations reset | 596 | annotations_reset: Annotations reset |
597 | tags_reset: Tags reset | 597 | tags_reset: Tags reset |
598 | entries_reset: Entries reset | 598 | entries_reset: Entries reset |
diff --git a/src/Wallabag/CoreBundle/Resources/translations/messages.es.yml b/src/Wallabag/CoreBundle/Resources/translations/messages.es.yml index c1047e55..562b4191 100644 --- a/src/Wallabag/CoreBundle/Resources/translations/messages.es.yml +++ b/src/Wallabag/CoreBundle/Resources/translations/messages.es.yml | |||
@@ -54,7 +54,7 @@ config: | |||
54 | page_title: 'Configuración' | 54 | page_title: 'Configuración' |
55 | tab_menu: | 55 | tab_menu: |
56 | settings: 'Configuración' | 56 | settings: 'Configuración' |
57 | rss: 'RSS' | 57 | feed: 'RSS' |
58 | user_info: 'Información de usuario' | 58 | user_info: 'Información de usuario' |
59 | password: 'Contraseña' | 59 | password: 'Contraseña' |
60 | rules: 'Reglas de etiquetado automáticas' | 60 | rules: 'Reglas de etiquetado automáticas' |
@@ -85,19 +85,19 @@ config: | |||
85 | help_reading_speed: "wallabag calcula un tiempo de lectura para cada artículo. Puedes definir aquí, gracias a esta lista, si eres un lector rápido o lento. wallabag recalculará el tiempo de lectura para cada artículo." | 85 | help_reading_speed: "wallabag calcula un tiempo de lectura para cada artículo. Puedes definir aquí, gracias a esta lista, si eres un lector rápido o lento. wallabag recalculará el tiempo de lectura para cada artículo." |
86 | help_language: "Puedes cambiar el idioma de la interfaz de wallabag." | 86 | help_language: "Puedes cambiar el idioma de la interfaz de wallabag." |
87 | help_pocket_consumer_key: "Requerido para la importación desde Pocket. Puedes crearla en tu cuenta de Pocket." | 87 | help_pocket_consumer_key: "Requerido para la importación desde Pocket. Puedes crearla en tu cuenta de Pocket." |
88 | form_rss: | 88 | form_feed: |
89 | description: 'Los feeds RSS de wallabag permiten leer los artículos guardados con su lector RSS favorito. Primero necesitas generar un token.' | 89 | description: 'Los feeds RSS de wallabag permiten leer los artículos guardados con su lector RSS favorito. Primero necesitas generar un token.' |
90 | token_label: 'Token RSS' | 90 | token_label: 'Token RSS' |
91 | no_token: 'Sin token' | 91 | no_token: 'Sin token' |
92 | token_create: 'Crear token' | 92 | token_create: 'Crear token' |
93 | token_reset: 'Reiniciar token' | 93 | token_reset: 'Reiniciar token' |
94 | rss_links: 'URLs de feeds RSS' | 94 | feed_links: 'URLs de feeds RSS' |
95 | rss_link: | 95 | feed_link: |
96 | unread: 'sin leer' | 96 | unread: 'sin leer' |
97 | starred: 'favoritos' | 97 | starred: 'favoritos' |
98 | archive: 'archivados' | 98 | archive: 'archivados' |
99 | # all: 'All' | 99 | # all: 'All' |
100 | rss_limit: 'Límite de artículos en feed RSS' | 100 | feed_limit: 'Límite de artículos en feed RSS' |
101 | form_user: | 101 | form_user: |
102 | # two_factor_description: "Enabling two factor authentication means you'll receive an email with a code OR need to use an OTP app (like Google Authenticator, Authy or FreeOTP) to get a one time code on every new untrusted connection. You can't choose both option." | 102 | # two_factor_description: "Enabling two factor authentication means you'll receive an email with a code OR need to use an OTP app (like Google Authenticator, Authy or FreeOTP) to get a one time code on every new untrusted connection. You can't choose both option." |
103 | name_label: 'Nombre' | 103 | name_label: 'Nombre' |
@@ -372,7 +372,7 @@ quickstart: | |||
372 | title: 'Configure la aplicación' | 372 | title: 'Configure la aplicación' |
373 | description: 'Para que la aplicación se ajuste a tus necesidades, echa un vistazo a la configuración de wallabag.' | 373 | description: 'Para que la aplicación se ajuste a tus necesidades, echa un vistazo a la configuración de wallabag.' |
374 | language: 'Cambie el idioma y el diseño' | 374 | language: 'Cambie el idioma y el diseño' |
375 | rss: 'Activar los feeds RSS' | 375 | feed: 'Activar los feeds RSS' |
376 | tagging_rules: 'Escribe reglas para etiquetar automáticamente tus artículos' | 376 | tagging_rules: 'Escribe reglas para etiquetar automáticamente tus artículos' |
377 | admin: | 377 | admin: |
378 | title: 'Administración' | 378 | title: 'Administración' |
@@ -589,10 +589,10 @@ flashes: | |||
589 | password_updated: 'Contraseña actualizada' | 589 | password_updated: 'Contraseña actualizada' |
590 | password_not_updated_demo: "En el modo demo, no puede cambiar la contraseña del usuario." | 590 | password_not_updated_demo: "En el modo demo, no puede cambiar la contraseña del usuario." |
591 | user_updated: 'Información actualizada' | 591 | user_updated: 'Información actualizada' |
592 | rss_updated: 'Configuración RSS actualizada' | 592 | feed_updated: 'Configuración RSS actualizada' |
593 | tagging_rules_updated: 'Regla de etiquetado actualizada' | 593 | tagging_rules_updated: 'Regla de etiquetado actualizada' |
594 | tagging_rules_deleted: 'Regla de etiquetado eliminada' | 594 | tagging_rules_deleted: 'Regla de etiquetado eliminada' |
595 | rss_token_updated: 'Token RSS actualizado' | 595 | feed_token_updated: 'Token RSS actualizado' |
596 | annotations_reset: Anotaciones reiniciadas | 596 | annotations_reset: Anotaciones reiniciadas |
597 | tags_reset: Etiquetas reiniciadas | 597 | tags_reset: Etiquetas reiniciadas |
598 | entries_reset: Artículos reiniciados | 598 | entries_reset: Artículos reiniciados |
diff --git a/src/Wallabag/CoreBundle/Resources/translations/messages.fa.yml b/src/Wallabag/CoreBundle/Resources/translations/messages.fa.yml index 3042de2e..f360e0d6 100644 --- a/src/Wallabag/CoreBundle/Resources/translations/messages.fa.yml +++ b/src/Wallabag/CoreBundle/Resources/translations/messages.fa.yml | |||
@@ -54,7 +54,7 @@ config: | |||
54 | page_title: 'پیکربندی' | 54 | page_title: 'پیکربندی' |
55 | tab_menu: | 55 | tab_menu: |
56 | settings: 'تنظیمات' | 56 | settings: 'تنظیمات' |
57 | rss: 'آر-اس-اس' | 57 | feed: 'آر-اس-اس' |
58 | user_info: 'اطلاعات کاربر' | 58 | user_info: 'اطلاعات کاربر' |
59 | password: 'رمز' | 59 | password: 'رمز' |
60 | rules: 'برچسبگذاری خودکار' | 60 | rules: 'برچسبگذاری خودکار' |
@@ -85,19 +85,19 @@ config: | |||
85 | # help_reading_speed: "wallabag calculates a reading time for each article. You can define here, thanks to this list, if you are a fast or a slow reader. wallabag will recalculate the reading time for each article." | 85 | # help_reading_speed: "wallabag calculates a reading time for each article. You can define here, thanks to this list, if you are a fast or a slow reader. wallabag will recalculate the reading time for each article." |
86 | # help_language: "You can change the language of wallabag interface." | 86 | # help_language: "You can change the language of wallabag interface." |
87 | # help_pocket_consumer_key: "Required for Pocket import. You can create it in your Pocket account." | 87 | # help_pocket_consumer_key: "Required for Pocket import. You can create it in your Pocket account." |
88 | form_rss: | 88 | form_feed: |
89 | description: 'با خوراک آر-اس-اس که wallabag در اختیارتان میگذارد، میتوانید مقالههای ذخیرهشده را در نرمافزار آر-اس-اس دلخواه خود بخوانید. برای این کار نخست باید یک کد بسازید.' | 89 | description: 'با خوراک آر-اس-اس که wallabag در اختیارتان میگذارد، میتوانید مقالههای ذخیرهشده را در نرمافزار آر-اس-اس دلخواه خود بخوانید. برای این کار نخست باید یک کد بسازید.' |
90 | token_label: 'کد آر-اس-اس' | 90 | token_label: 'کد آر-اس-اس' |
91 | no_token: 'بدون کد' | 91 | no_token: 'بدون کد' |
92 | token_create: 'کد خود را بسازید' | 92 | token_create: 'کد خود را بسازید' |
93 | token_reset: 'بازنشانی کد' | 93 | token_reset: 'بازنشانی کد' |
94 | rss_links: 'پیوند آر-اس-اس' | 94 | feed_links: 'پیوند آر-اس-اس' |
95 | rss_link: | 95 | feed_link: |
96 | unread: 'خواندهنشده' | 96 | unread: 'خواندهنشده' |
97 | starred: 'برگزیده' | 97 | starred: 'برگزیده' |
98 | archive: 'بایگانی' | 98 | archive: 'بایگانی' |
99 | # all: 'All' | 99 | # all: 'All' |
100 | rss_limit: 'محدودیت آر-اس-اس' | 100 | feed_limit: 'محدودیت آر-اس-اس' |
101 | form_user: | 101 | form_user: |
102 | # two_factor_description: "Enabling two factor authentication means you'll receive an email with a code OR need to use an OTP app (like Google Authenticator, Authy or FreeOTP) to get a one time code on every new untrusted connection. You can't choose both option." | 102 | # two_factor_description: "Enabling two factor authentication means you'll receive an email with a code OR need to use an OTP app (like Google Authenticator, Authy or FreeOTP) to get a one time code on every new untrusted connection. You can't choose both option." |
103 | name_label: 'نام' | 103 | name_label: 'نام' |
@@ -372,7 +372,7 @@ quickstart: | |||
372 | title: 'برنامه را تنظیم کنید' | 372 | title: 'برنامه را تنظیم کنید' |
373 | # description: 'In order to have an application which suits you, have a look into the configuration of wallabag.' | 373 | # description: 'In order to have an application which suits you, have a look into the configuration of wallabag.' |
374 | language: 'زبان و نمای برنامه را تغییر دهید' | 374 | language: 'زبان و نمای برنامه را تغییر دهید' |
375 | rss: 'خوراک آر-اس-اس را فعال کنید' | 375 | feed: 'خوراک آر-اس-اس را فعال کنید' |
376 | tagging_rules: 'قانونهای برچسبگذاری خودکار مقالههایتان را تعریف کنید' | 376 | tagging_rules: 'قانونهای برچسبگذاری خودکار مقالههایتان را تعریف کنید' |
377 | admin: | 377 | admin: |
378 | title: 'مدیریت' | 378 | title: 'مدیریت' |
@@ -589,10 +589,10 @@ flashes: | |||
589 | password_updated: 'رمز بهروز شد' | 589 | password_updated: 'رمز بهروز شد' |
590 | password_not_updated_demo: "در حالت نمایشی نمیتوانید رمز کاربر را عوض کنید." | 590 | password_not_updated_demo: "در حالت نمایشی نمیتوانید رمز کاربر را عوض کنید." |
591 | user_updated: 'اطلاعات بهروز شد' | 591 | user_updated: 'اطلاعات بهروز شد' |
592 | rss_updated: 'اطلاعات آر-اس-اس بهروز شد' | 592 | feed_updated: 'اطلاعات آر-اس-اس بهروز شد' |
593 | tagging_rules_updated: 'برچسبگذاری خودکار بهروز شد' | 593 | tagging_rules_updated: 'برچسبگذاری خودکار بهروز شد' |
594 | tagging_rules_deleted: 'قانون برچسبگذاری پاک شد' | 594 | tagging_rules_deleted: 'قانون برچسبگذاری پاک شد' |
595 | rss_token_updated: 'کد آر-اس-اس بهروز شد' | 595 | feed_token_updated: 'کد آر-اس-اس بهروز شد' |
596 | # annotations_reset: Annotations reset | 596 | # annotations_reset: Annotations reset |
597 | # tags_reset: Tags reset | 597 | # tags_reset: Tags reset |
598 | # entries_reset: Entries reset | 598 | # entries_reset: Entries reset |
diff --git a/src/Wallabag/CoreBundle/Resources/translations/messages.fr.yml b/src/Wallabag/CoreBundle/Resources/translations/messages.fr.yml index 57740ba2..79f15154 100644 --- a/src/Wallabag/CoreBundle/Resources/translations/messages.fr.yml +++ b/src/Wallabag/CoreBundle/Resources/translations/messages.fr.yml | |||
@@ -54,7 +54,7 @@ config: | |||
54 | page_title: "Configuration" | 54 | page_title: "Configuration" |
55 | tab_menu: | 55 | tab_menu: |
56 | settings: "Paramètres" | 56 | settings: "Paramètres" |
57 | rss: "RSS" | 57 | feed: "Flux" |
58 | user_info: "Mon compte" | 58 | user_info: "Mon compte" |
59 | password: "Mot de passe" | 59 | password: "Mot de passe" |
60 | rules: "Règles de tag automatiques" | 60 | rules: "Règles de tag automatiques" |
@@ -85,19 +85,19 @@ config: | |||
85 | help_reading_speed: "wallabag calcule une durée de lecture pour chaque article. Vous pouvez définir ici, grâce à cette liste déroulante, si vous lisez plus ou moins vite. wallabag recalculera la durée de lecture de chaque article." | 85 | help_reading_speed: "wallabag calcule une durée de lecture pour chaque article. Vous pouvez définir ici, grâce à cette liste déroulante, si vous lisez plus ou moins vite. wallabag recalculera la durée de lecture de chaque article." |
86 | help_language: "Vous pouvez définir la langue de l’interface de wallabag." | 86 | help_language: "Vous pouvez définir la langue de l’interface de wallabag." |
87 | help_pocket_consumer_key: "Nécessaire pour l’import depuis Pocket. Vous pouvez le créer depuis votre compte Pocket." | 87 | help_pocket_consumer_key: "Nécessaire pour l’import depuis Pocket. Vous pouvez le créer depuis votre compte Pocket." |
88 | form_rss: | 88 | form_feed: |
89 | description: "Les flux RSS fournis par wallabag vous permettent de lire vos articles sauvegardés dans votre lecteur de flux préféré. Pour pouvoir les utiliser, vous devez d’abord créer un jeton." | 89 | description: "Les flux Atom fournis par wallabag vous permettent de lire vos articles sauvegardés dans votre lecteur de flux préféré. Pour pouvoir les utiliser, vous devez d’abord créer un jeton." |
90 | token_label: "Jeton RSS" | 90 | token_label: "Jeton de flux" |
91 | no_token: "Aucun jeton généré" | 91 | no_token: "Aucun jeton généré" |
92 | token_create: "Créez votre jeton" | 92 | token_create: "Créez votre jeton" |
93 | token_reset: "Réinitialisez votre jeton" | 93 | token_reset: "Réinitialisez votre jeton" |
94 | rss_links: "Adresses de vos flux RSS" | 94 | feed_links: "Adresses de vos flux" |
95 | rss_link: | 95 | feed_link: |
96 | unread: "Non lus" | 96 | unread: "Non lus" |
97 | starred: "Favoris" | 97 | starred: "Favoris" |
98 | archive: "Lus" | 98 | archive: "Lus" |
99 | all: "Tous" | 99 | all: "Tous" |
100 | rss_limit: "Nombre d’articles dans le flux" | 100 | feed_limit: "Nombre d’articles dans le flux" |
101 | form_user: | 101 | form_user: |
102 | two_factor_description: "Activer l’authentification double-facteur veut dire que vous allez recevoir un code par courriel OU que vous devriez utiliser une application de mot de passe à usage unique (comme Google Authenticator, Authy or FreeOTP) pour obtenir un code temporaire à chaque nouvelle connexion non approuvée. Vous ne pouvez pas choisir les deux options." | 102 | two_factor_description: "Activer l’authentification double-facteur veut dire que vous allez recevoir un code par courriel OU que vous devriez utiliser une application de mot de passe à usage unique (comme Google Authenticator, Authy or FreeOTP) pour obtenir un code temporaire à chaque nouvelle connexion non approuvée. Vous ne pouvez pas choisir les deux options." |
103 | name_label: "Nom" | 103 | name_label: "Nom" |
@@ -372,7 +372,7 @@ quickstart: | |||
372 | title: "Configurez l’application" | 372 | title: "Configurez l’application" |
373 | description: "Pour voir une application qui vous correspond, allez voir du côté de la configuration de wallabag." | 373 | description: "Pour voir une application qui vous correspond, allez voir du côté de la configuration de wallabag." |
374 | language: "Changez la langue et le design de l’application" | 374 | language: "Changez la langue et le design de l’application" |
375 | rss: "Activez les flux RSS" | 375 | feed: "Activez les flux Atom" |
376 | tagging_rules: "Écrivez des règles pour classer automatiquement vos articles" | 376 | tagging_rules: "Écrivez des règles pour classer automatiquement vos articles" |
377 | admin: | 377 | admin: |
378 | title: "Administration" | 378 | title: "Administration" |
@@ -590,10 +590,10 @@ flashes: | |||
590 | password_updated: "Votre mot de passe a bien été mis à jour" | 590 | password_updated: "Votre mot de passe a bien été mis à jour" |
591 | password_not_updated_demo: "En démo, vous ne pouvez pas changer le mot de passe de cet utilisateur." | 591 | password_not_updated_demo: "En démo, vous ne pouvez pas changer le mot de passe de cet utilisateur." |
592 | user_updated: "Vos informations personnelles ont bien été mises à jour" | 592 | user_updated: "Vos informations personnelles ont bien été mises à jour" |
593 | rss_updated: "La configuration des flux RSS a bien été mise à jour" | 593 | feed_updated: "La configuration des flux a bien été mise à jour" |
594 | tagging_rules_updated: "Règles mises à jour" | 594 | tagging_rules_updated: "Règles mises à jour" |
595 | tagging_rules_deleted: "Règle supprimée" | 595 | tagging_rules_deleted: "Règle supprimée" |
596 | rss_token_updated: "Jeton RSS mis à jour" | 596 | feed_token_updated: "Jeton des flux mis à jour" |
597 | annotations_reset: "Annotations supprimées" | 597 | annotations_reset: "Annotations supprimées" |
598 | tags_reset: "Tags supprimés" | 598 | tags_reset: "Tags supprimés" |
599 | entries_reset: "Articles supprimés" | 599 | entries_reset: "Articles supprimés" |
diff --git a/src/Wallabag/CoreBundle/Resources/translations/messages.it.yml b/src/Wallabag/CoreBundle/Resources/translations/messages.it.yml index 274e5338..daef359f 100644 --- a/src/Wallabag/CoreBundle/Resources/translations/messages.it.yml +++ b/src/Wallabag/CoreBundle/Resources/translations/messages.it.yml | |||
@@ -54,7 +54,7 @@ config: | |||
54 | page_title: 'Configurazione' | 54 | page_title: 'Configurazione' |
55 | tab_menu: | 55 | tab_menu: |
56 | settings: 'Impostazioni' | 56 | settings: 'Impostazioni' |
57 | rss: 'RSS' | 57 | feed: 'RSS' |
58 | user_info: 'Informazioni utente' | 58 | user_info: 'Informazioni utente' |
59 | password: 'Password' | 59 | password: 'Password' |
60 | rules: 'Regole di etichettatura' | 60 | rules: 'Regole di etichettatura' |
@@ -85,19 +85,19 @@ config: | |||
85 | help_reading_speed: "wallabag calcola un tempo di lettura per ogni articolo. Puoi definire qui, grazie a questa lista, se sei un lettore lento o veloce. wallabag ricalcolerà la velocità di lettura per ogni articolo." | 85 | help_reading_speed: "wallabag calcola un tempo di lettura per ogni articolo. Puoi definire qui, grazie a questa lista, se sei un lettore lento o veloce. wallabag ricalcolerà la velocità di lettura per ogni articolo." |
86 | help_language: "Puoi cambiare la lingua dell'interfaccia di wallabag." | 86 | help_language: "Puoi cambiare la lingua dell'interfaccia di wallabag." |
87 | help_pocket_consumer_key: "Richiesta per importare da Pocket. La puoi creare nel tuo account Pocket." | 87 | help_pocket_consumer_key: "Richiesta per importare da Pocket. La puoi creare nel tuo account Pocket." |
88 | form_rss: | 88 | form_feed: |
89 | description: 'I feed RSS generati da wallabag ti permettono di leggere i tuoi contenuti salvati con il tuo lettore di RSS preferito. Prima, devi generare un token.' | 89 | description: 'I feed RSS generati da wallabag ti permettono di leggere i tuoi contenuti salvati con il tuo lettore di RSS preferito. Prima, devi generare un token.' |
90 | token_label: 'Token RSS' | 90 | token_label: 'Token RSS' |
91 | no_token: 'Nessun token' | 91 | no_token: 'Nessun token' |
92 | token_create: 'Crea il tuo token' | 92 | token_create: 'Crea il tuo token' |
93 | token_reset: 'Rigenera il tuo token' | 93 | token_reset: 'Rigenera il tuo token' |
94 | rss_links: 'Collegamenti RSS' | 94 | feed_links: 'Collegamenti RSS' |
95 | rss_link: | 95 | feed_link: |
96 | unread: 'Non letti' | 96 | unread: 'Non letti' |
97 | starred: 'Preferiti' | 97 | starred: 'Preferiti' |
98 | archive: 'Archiviati' | 98 | archive: 'Archiviati' |
99 | # all: 'All' | 99 | # all: 'All' |
100 | rss_limit: 'Numero di elementi nel feed' | 100 | feed_limit: 'Numero di elementi nel feed' |
101 | form_user: | 101 | form_user: |
102 | # two_factor_description: "Enabling two factor authentication means you'll receive an email with a code OR need to use an OTP app (like Google Authenticator, Authy or FreeOTP) to get a one time code on every new untrusted connection. You can't choose both option." | 102 | # two_factor_description: "Enabling two factor authentication means you'll receive an email with a code OR need to use an OTP app (like Google Authenticator, Authy or FreeOTP) to get a one time code on every new untrusted connection. You can't choose both option." |
103 | name_label: 'Nome' | 103 | name_label: 'Nome' |
@@ -371,7 +371,7 @@ quickstart: | |||
371 | title: "Configura l'applicazione" | 371 | title: "Configura l'applicazione" |
372 | description: "Per avere un'applicazione che ti soddisfi, dai un'occhiata alla configurazione di wallabag." | 372 | description: "Per avere un'applicazione che ti soddisfi, dai un'occhiata alla configurazione di wallabag." |
373 | language: 'Cambia lingua e design' | 373 | language: 'Cambia lingua e design' |
374 | rss: 'Abilita i feed RSS' | 374 | feed: 'Abilita i feed RSS' |
375 | tagging_rules: 'Scrivi delle regole per taggare automaticamente i contenuti' | 375 | tagging_rules: 'Scrivi delle regole per taggare automaticamente i contenuti' |
376 | admin: | 376 | admin: |
377 | title: 'Amministrazione' | 377 | title: 'Amministrazione' |
@@ -588,10 +588,10 @@ flashes: | |||
588 | password_updated: 'Password aggiornata' | 588 | password_updated: 'Password aggiornata' |
589 | password_not_updated_demo: "In modalità demo, non puoi cambiare la password dell'utente." | 589 | password_not_updated_demo: "In modalità demo, non puoi cambiare la password dell'utente." |
590 | user_updated: 'Informazioni aggiornate' | 590 | user_updated: 'Informazioni aggiornate' |
591 | rss_updated: 'Informazioni RSS aggiornate' | 591 | feed_updated: 'Informazioni RSS aggiornate' |
592 | tagging_rules_updated: 'Regole di etichettatura aggiornate' | 592 | tagging_rules_updated: 'Regole di etichettatura aggiornate' |
593 | tagging_rules_deleted: 'Regola di etichettatura eliminate' | 593 | tagging_rules_deleted: 'Regola di etichettatura eliminate' |
594 | rss_token_updated: 'RSS token aggiornato' | 594 | feed_token_updated: 'RSS token aggiornato' |
595 | annotations_reset: Reset annotazioni | 595 | annotations_reset: Reset annotazioni |
596 | tags_reset: Reset etichette | 596 | tags_reset: Reset etichette |
597 | entries_reset: Reset articoli | 597 | entries_reset: Reset articoli |
diff --git a/src/Wallabag/CoreBundle/Resources/translations/messages.oc.yml b/src/Wallabag/CoreBundle/Resources/translations/messages.oc.yml index 4e5370f9..980ddeb4 100644 --- a/src/Wallabag/CoreBundle/Resources/translations/messages.oc.yml +++ b/src/Wallabag/CoreBundle/Resources/translations/messages.oc.yml | |||
@@ -54,7 +54,7 @@ config: | |||
54 | page_title: 'Configuracion' | 54 | page_title: 'Configuracion' |
55 | tab_menu: | 55 | tab_menu: |
56 | settings: 'Paramètres' | 56 | settings: 'Paramètres' |
57 | rss: 'RSS' | 57 | feed: 'RSS' |
58 | user_info: 'Mon compte' | 58 | user_info: 'Mon compte' |
59 | password: 'Senhal' | 59 | password: 'Senhal' |
60 | rules: "Règlas d'etiquetas automaticas" | 60 | rules: "Règlas d'etiquetas automaticas" |
@@ -85,19 +85,19 @@ config: | |||
85 | help_reading_speed: "wallabag calcula lo temps de lectura per cada article. Podètz lo definir aquí, gràcias a aquesta lista, se sètz un legeire rapid o lent. wallabag tornarà calcular lo temps de lectura per cada article." | 85 | help_reading_speed: "wallabag calcula lo temps de lectura per cada article. Podètz lo definir aquí, gràcias a aquesta lista, se sètz un legeire rapid o lent. wallabag tornarà calcular lo temps de lectura per cada article." |
86 | help_language: "Podètz cambiar la lenga de l'interfàcia de wallabag." | 86 | help_language: "Podètz cambiar la lenga de l'interfàcia de wallabag." |
87 | help_pocket_consumer_key: "Requesida per l'importacion de Pocket. Podètz la crear dins vòstre compte Pocket." | 87 | help_pocket_consumer_key: "Requesida per l'importacion de Pocket. Podètz la crear dins vòstre compte Pocket." |
88 | form_rss: | 88 | form_feed: |
89 | description: "Los fluxes RSS fornits per wallabag vos permeton de legir vòstres articles salvagardats dins vòstre lector de fluxes preferit. Per los poder emplegar, vos cal, d'en primièr crear un geton." | 89 | description: "Los fluxes RSS fornits per wallabag vos permeton de legir vòstres articles salvagardats dins vòstre lector de fluxes preferit. Per los poder emplegar, vos cal, d'en primièr crear un geton." |
90 | token_label: 'Geton RSS' | 90 | token_label: 'Geton RSS' |
91 | no_token: 'Pas cap de geton generat' | 91 | no_token: 'Pas cap de geton generat' |
92 | token_create: 'Creatz vòstre geton' | 92 | token_create: 'Creatz vòstre geton' |
93 | token_reset: 'Reïnicializatz vòstre geton' | 93 | token_reset: 'Reïnicializatz vòstre geton' |
94 | rss_links: 'URLs de vòstres fluxes RSS' | 94 | feed_links: 'URLs de vòstres fluxes RSS' |
95 | rss_link: | 95 | feed_link: |
96 | unread: 'Pas legits' | 96 | unread: 'Pas legits' |
97 | starred: 'Favorits' | 97 | starred: 'Favorits' |
98 | archive: 'Legits' | 98 | archive: 'Legits' |
99 | all: 'Totes' | 99 | all: 'Totes' |
100 | rss_limit: "Nombre d'articles dins un flux RSS" | 100 | feed_limit: "Nombre d'articles dins un flux" |
101 | form_user: | 101 | form_user: |
102 | # two_factor_description: "Enabling two factor authentication means you'll receive an email with a code OR need to use an OTP app (like Google Authenticator, Authy or FreeOTP) to get a one time code on every new untrusted connection. You can't choose both option." | 102 | # two_factor_description: "Enabling two factor authentication means you'll receive an email with a code OR need to use an OTP app (like Google Authenticator, Authy or FreeOTP) to get a one time code on every new untrusted connection. You can't choose both option." |
103 | name_label: 'Nom' | 103 | name_label: 'Nom' |
@@ -371,7 +371,7 @@ quickstart: | |||
371 | title: "Configuratz l'aplicacion" | 371 | title: "Configuratz l'aplicacion" |
372 | description: "Per fin d'aver una aplicacion que vos va ben, anatz veire la configuracion de wallabag." | 372 | description: "Per fin d'aver una aplicacion que vos va ben, anatz veire la configuracion de wallabag." |
373 | language: "Cambiatz la lenga e l'estil de l'aplicacion" | 373 | language: "Cambiatz la lenga e l'estil de l'aplicacion" |
374 | rss: 'Activatz los fluxes RSS' | 374 | feed: 'Activatz los fluxes RSS' |
375 | tagging_rules: 'Escrivètz de règlas per classar automaticament vòstres articles' | 375 | tagging_rules: 'Escrivètz de règlas per classar automaticament vòstres articles' |
376 | admin: | 376 | admin: |
377 | title: 'Administracion' | 377 | title: 'Administracion' |
@@ -588,10 +588,10 @@ flashes: | |||
588 | password_updated: 'Vòstre senhal es ben estat mes a jorn' | 588 | password_updated: 'Vòstre senhal es ben estat mes a jorn' |
589 | password_not_updated_demo: "En demostracion, podètz pas cambiar lo senhal d'aqueste utilizaire." | 589 | password_not_updated_demo: "En demostracion, podètz pas cambiar lo senhal d'aqueste utilizaire." |
590 | user_updated: 'Vòstres informacions personnelas son ben estadas mesas a jorn' | 590 | user_updated: 'Vòstres informacions personnelas son ben estadas mesas a jorn' |
591 | rss_updated: 'La configuracion dels fluxes RSS es ben estada mesa a jorn' | 591 | feed_updated: 'La configuracion dels fluxes RSS es ben estada mesa a jorn' |
592 | tagging_rules_updated: 'Règlas misa a jorn' | 592 | tagging_rules_updated: 'Règlas misa a jorn' |
593 | tagging_rules_deleted: 'Règla suprimida' | 593 | tagging_rules_deleted: 'Règla suprimida' |
594 | rss_token_updated: 'Geton RSS mes a jorn' | 594 | feed_token_updated: 'Geton RSS mes a jorn' |
595 | annotations_reset: Anotacions levadas | 595 | annotations_reset: Anotacions levadas |
596 | tags_reset: Etiquetas levadas | 596 | tags_reset: Etiquetas levadas |
597 | entries_reset: Articles levats | 597 | entries_reset: Articles levats |
diff --git a/src/Wallabag/CoreBundle/Resources/translations/messages.pl.yml b/src/Wallabag/CoreBundle/Resources/translations/messages.pl.yml index a7a4d6c3..3813ac37 100644 --- a/src/Wallabag/CoreBundle/Resources/translations/messages.pl.yml +++ b/src/Wallabag/CoreBundle/Resources/translations/messages.pl.yml | |||
@@ -54,7 +54,7 @@ config: | |||
54 | page_title: 'Konfiguracja' | 54 | page_title: 'Konfiguracja' |
55 | tab_menu: | 55 | tab_menu: |
56 | settings: 'Ustawienia' | 56 | settings: 'Ustawienia' |
57 | rss: 'Kanał RSS' | 57 | feed: 'Kanał RSS' |
58 | user_info: 'Informacje o użytkowniku' | 58 | user_info: 'Informacje o użytkowniku' |
59 | password: 'Hasło' | 59 | password: 'Hasło' |
60 | rules: 'Zasady tagowania' | 60 | rules: 'Zasady tagowania' |
@@ -85,19 +85,19 @@ config: | |||
85 | help_reading_speed: "wallabag oblicza czas czytania każdego artykułu. Dzięki tej liście możesz określić swoje tempo. Wallabag przeliczy ponownie czas potrzebny, na przeczytanie każdego z artykułów." | 85 | help_reading_speed: "wallabag oblicza czas czytania każdego artykułu. Dzięki tej liście możesz określić swoje tempo. Wallabag przeliczy ponownie czas potrzebny, na przeczytanie każdego z artykułów." |
86 | help_language: "Możesz zmienić język interfejsu wallabag." | 86 | help_language: "Możesz zmienić język interfejsu wallabag." |
87 | help_pocket_consumer_key: "Wymagane dla importu z Pocket. Możesz go stworzyć na swoim koncie Pocket." | 87 | help_pocket_consumer_key: "Wymagane dla importu z Pocket. Możesz go stworzyć na swoim koncie Pocket." |
88 | form_rss: | 88 | form_feed: |
89 | description: 'Kanały RSS prowadzone przez wallabag pozwalają Ci na czytanie twoich zapisanych artykułów w twoim ulubionym czytniku RSS. Musisz najpierw wynegenerować tokena.' | 89 | description: 'Kanały RSS prowadzone przez wallabag pozwalają Ci na czytanie twoich zapisanych artykułów w twoim ulubionym czytniku RSS. Musisz najpierw wynegenerować tokena.' |
90 | token_label: 'Token RSS' | 90 | token_label: 'Token RSS' |
91 | no_token: 'Brak tokena' | 91 | no_token: 'Brak tokena' |
92 | token_create: 'Stwórz tokena' | 92 | token_create: 'Stwórz tokena' |
93 | token_reset: 'Zresetuj swojego tokena' | 93 | token_reset: 'Zresetuj swojego tokena' |
94 | rss_links: 'RSS links' | 94 | feed_links: 'RSS links' |
95 | rss_link: | 95 | feed_link: |
96 | unread: 'Nieprzeczytane' | 96 | unread: 'Nieprzeczytane' |
97 | starred: 'Oznaczone gwiazdką' | 97 | starred: 'Oznaczone gwiazdką' |
98 | archive: 'Archiwum' | 98 | archive: 'Archiwum' |
99 | all: 'Wszystkie' | 99 | all: 'Wszystkie' |
100 | rss_limit: 'Link do RSS' | 100 | feed_limit: 'Link do RSS' |
101 | form_user: | 101 | form_user: |
102 | # two_factor_description: "Enabling two factor authentication means you'll receive an email with a code OR need to use an OTP app (like Google Authenticator, Authy or FreeOTP) to get a one time code on every new untrusted connection. You can't choose both option." | 102 | # two_factor_description: "Enabling two factor authentication means you'll receive an email with a code OR need to use an OTP app (like Google Authenticator, Authy or FreeOTP) to get a one time code on every new untrusted connection. You can't choose both option." |
103 | name_label: 'Nazwa' | 103 | name_label: 'Nazwa' |
@@ -371,7 +371,7 @@ quickstart: | |||
371 | title: 'Konfiguruj aplikację' | 371 | title: 'Konfiguruj aplikację' |
372 | description: 'W celu dopasowania aplikacji do swoich upodobań, zobacz konfigurację aplikacji' | 372 | description: 'W celu dopasowania aplikacji do swoich upodobań, zobacz konfigurację aplikacji' |
373 | language: 'Zmień język i wygląd' | 373 | language: 'Zmień język i wygląd' |
374 | rss: 'Włącz kanały RSS' | 374 | feed: 'Włącz kanały RSS' |
375 | tagging_rules: 'Napisz reguły pozwalające na automatyczne otagowanie twoich artykułów' | 375 | tagging_rules: 'Napisz reguły pozwalające na automatyczne otagowanie twoich artykułów' |
376 | admin: | 376 | admin: |
377 | title: 'Administracja' | 377 | title: 'Administracja' |
@@ -588,10 +588,10 @@ flashes: | |||
588 | password_updated: 'Hasło zaktualizowane' | 588 | password_updated: 'Hasło zaktualizowane' |
589 | password_not_updated_demo: "In demonstration mode, you can't change password for this user." | 589 | password_not_updated_demo: "In demonstration mode, you can't change password for this user." |
590 | user_updated: 'Informacje zaktualizowane' | 590 | user_updated: 'Informacje zaktualizowane' |
591 | rss_updated: 'Informacje RSS zaktualizowane' | 591 | feed_updated: 'Informacje RSS zaktualizowane' |
592 | tagging_rules_updated: 'Reguły tagowania zaktualizowane' | 592 | tagging_rules_updated: 'Reguły tagowania zaktualizowane' |
593 | tagging_rules_deleted: 'Reguła tagowania usunięta' | 593 | tagging_rules_deleted: 'Reguła tagowania usunięta' |
594 | rss_token_updated: 'Token kanału RSS zaktualizowany' | 594 | feed_token_updated: 'Token kanału RSS zaktualizowany' |
595 | annotations_reset: Zresetuj adnotacje | 595 | annotations_reset: Zresetuj adnotacje |
596 | tags_reset: Zresetuj tagi | 596 | tags_reset: Zresetuj tagi |
597 | entries_reset: Zresetuj wpisy | 597 | entries_reset: Zresetuj wpisy |
diff --git a/src/Wallabag/CoreBundle/Resources/translations/messages.pt.yml b/src/Wallabag/CoreBundle/Resources/translations/messages.pt.yml index a5483a6d..96943c05 100644 --- a/src/Wallabag/CoreBundle/Resources/translations/messages.pt.yml +++ b/src/Wallabag/CoreBundle/Resources/translations/messages.pt.yml | |||
@@ -54,7 +54,7 @@ config: | |||
54 | page_title: 'Config' | 54 | page_title: 'Config' |
55 | tab_menu: | 55 | tab_menu: |
56 | settings: 'Configurações' | 56 | settings: 'Configurações' |
57 | rss: 'RSS' | 57 | feed: 'RSS' |
58 | user_info: 'Informação do Usuário' | 58 | user_info: 'Informação do Usuário' |
59 | password: 'Senha' | 59 | password: 'Senha' |
60 | rules: 'Regras de tags' | 60 | rules: 'Regras de tags' |
@@ -85,19 +85,19 @@ config: | |||
85 | # help_reading_speed: "wallabag calculates a reading time for each article. You can define here, thanks to this list, if you are a fast or a slow reader. wallabag will recalculate the reading time for each article." | 85 | # help_reading_speed: "wallabag calculates a reading time for each article. You can define here, thanks to this list, if you are a fast or a slow reader. wallabag will recalculate the reading time for each article." |
86 | # help_language: "You can change the language of wallabag interface." | 86 | # help_language: "You can change the language of wallabag interface." |
87 | # help_pocket_consumer_key: "Required for Pocket import. You can create it in your Pocket account." | 87 | # help_pocket_consumer_key: "Required for Pocket import. You can create it in your Pocket account." |
88 | form_rss: | 88 | form_feed: |
89 | description: 'Feeds RSS providos pelo wallabag permitem que você leia seus artigos salvos em seu leitor de RSS favorito. Você precisa gerar um token primeiro.' | 89 | description: 'Feeds RSS providos pelo wallabag permitem que você leia seus artigos salvos em seu leitor de RSS favorito. Você precisa gerar um token primeiro.' |
90 | token_label: 'Token RSS' | 90 | token_label: 'Token RSS' |
91 | no_token: 'Nenhum Token' | 91 | no_token: 'Nenhum Token' |
92 | token_create: 'Criar seu token' | 92 | token_create: 'Criar seu token' |
93 | token_reset: 'Gerar novamente seu token' | 93 | token_reset: 'Gerar novamente seu token' |
94 | rss_links: 'Links RSS' | 94 | feed_links: 'Links RSS' |
95 | rss_link: | 95 | feed_link: |
96 | unread: 'Não lido' | 96 | unread: 'Não lido' |
97 | starred: 'Destacado' | 97 | starred: 'Destacado' |
98 | archive: 'Arquivado' | 98 | archive: 'Arquivado' |
99 | # all: 'All' | 99 | # all: 'All' |
100 | rss_limit: 'Número de itens no feed' | 100 | feed_limit: 'Número de itens no feed' |
101 | form_user: | 101 | form_user: |
102 | # two_factor_description: "Enabling two factor authentication means you'll receive an email with a code OR need to use an OTP app (like Google Authenticator, Authy or FreeOTP) to get a one time code on every new untrusted connection. You can't choose both option." | 102 | # two_factor_description: "Enabling two factor authentication means you'll receive an email with a code OR need to use an OTP app (like Google Authenticator, Authy or FreeOTP) to get a one time code on every new untrusted connection. You can't choose both option." |
103 | name_label: 'Nome' | 103 | name_label: 'Nome' |
@@ -371,7 +371,7 @@ quickstart: | |||
371 | title: 'Configurar a aplicação' | 371 | title: 'Configurar a aplicação' |
372 | description: 'Para ter uma aplicação que atende você, dê uma olhada na configuração do wallabag.' | 372 | description: 'Para ter uma aplicação que atende você, dê uma olhada na configuração do wallabag.' |
373 | language: 'Alterar idioma e design' | 373 | language: 'Alterar idioma e design' |
374 | rss: 'Habilitar feeds RSS' | 374 | feed: 'Habilitar feeds RSS' |
375 | tagging_rules: 'Escrever regras para acrescentar tags automaticamente em seus artigos' | 375 | tagging_rules: 'Escrever regras para acrescentar tags automaticamente em seus artigos' |
376 | admin: | 376 | admin: |
377 | title: 'Administração' | 377 | title: 'Administração' |
@@ -588,10 +588,10 @@ flashes: | |||
588 | password_updated: 'Senha atualizada' | 588 | password_updated: 'Senha atualizada' |
589 | password_not_updated_demo: 'Em modo de demonstração, você não pode alterar a senha deste usuário.' | 589 | password_not_updated_demo: 'Em modo de demonstração, você não pode alterar a senha deste usuário.' |
590 | # user_updated: 'Information updated' | 590 | # user_updated: 'Information updated' |
591 | rss_updated: 'Informação de RSS atualizada' | 591 | feed_updated: 'Informação de RSS atualizada' |
592 | tagging_rules_updated: 'Regras de tags atualizadas' | 592 | tagging_rules_updated: 'Regras de tags atualizadas' |
593 | tagging_rules_deleted: 'Regra de tag apagada' | 593 | tagging_rules_deleted: 'Regra de tag apagada' |
594 | rss_token_updated: 'Token RSS atualizado' | 594 | feed_token_updated: 'Token RSS atualizado' |
595 | # annotations_reset: Annotations reset | 595 | # annotations_reset: Annotations reset |
596 | # tags_reset: Tags reset | 596 | # tags_reset: Tags reset |
597 | # entries_reset: Entries reset | 597 | # entries_reset: Entries reset |
diff --git a/src/Wallabag/CoreBundle/Resources/translations/messages.ro.yml b/src/Wallabag/CoreBundle/Resources/translations/messages.ro.yml index 3b7fbd69..0ce11e74 100644 --- a/src/Wallabag/CoreBundle/Resources/translations/messages.ro.yml +++ b/src/Wallabag/CoreBundle/Resources/translations/messages.ro.yml | |||
@@ -54,7 +54,7 @@ config: | |||
54 | page_title: 'Configurație' | 54 | page_title: 'Configurație' |
55 | tab_menu: | 55 | tab_menu: |
56 | settings: 'Setări' | 56 | settings: 'Setări' |
57 | rss: 'RSS' | 57 | feed: 'RSS' |
58 | user_info: 'Informații despre utilizator' | 58 | user_info: 'Informații despre utilizator' |
59 | password: 'Parolă' | 59 | password: 'Parolă' |
60 | # rules: 'Tagging rules' | 60 | # rules: 'Tagging rules' |
@@ -85,19 +85,19 @@ config: | |||
85 | # help_reading_speed: "wallabag calculates a reading time for each article. You can define here, thanks to this list, if you are a fast or a slow reader. wallabag will recalculate the reading time for each article." | 85 | # help_reading_speed: "wallabag calculates a reading time for each article. You can define here, thanks to this list, if you are a fast or a slow reader. wallabag will recalculate the reading time for each article." |
86 | # help_language: "You can change the language of wallabag interface." | 86 | # help_language: "You can change the language of wallabag interface." |
87 | # help_pocket_consumer_key: "Required for Pocket import. You can create it in your Pocket account." | 87 | # help_pocket_consumer_key: "Required for Pocket import. You can create it in your Pocket account." |
88 | form_rss: | 88 | form_feed: |
89 | description: 'Feed-urile RSS oferite de wallabag îți permit să-ți citești articolele salvate în reader-ul tău preferat RSS.' | 89 | description: 'Feed-urile RSS oferite de wallabag îți permit să-ți citești articolele salvate în reader-ul tău preferat RSS.' |
90 | token_label: 'RSS-Token' | 90 | token_label: 'RSS-Token' |
91 | no_token: 'Fără token' | 91 | no_token: 'Fără token' |
92 | token_create: 'Crează-ți token' | 92 | token_create: 'Crează-ți token' |
93 | token_reset: 'Resetează-ți token-ul' | 93 | token_reset: 'Resetează-ți token-ul' |
94 | rss_links: 'Link-uri RSS' | 94 | feed_links: 'Link-uri RSS' |
95 | rss_link: | 95 | feed_link: |
96 | unread: 'Unread' | 96 | unread: 'Unread' |
97 | starred: 'Starred' | 97 | starred: 'Starred' |
98 | archive: 'Archived' | 98 | archive: 'Archived' |
99 | # all: 'All' | 99 | # all: 'All' |
100 | rss_limit: 'Limită RSS' | 100 | feed_limit: 'Limită RSS' |
101 | form_user: | 101 | form_user: |
102 | # two_factor_description: "Enabling two factor authentication means you'll receive an email with a code OR need to use an OTP app (like Google Authenticator, Authy or FreeOTP) to get a one time code on every new untrusted connection. You can't choose both option." | 102 | # two_factor_description: "Enabling two factor authentication means you'll receive an email with a code OR need to use an OTP app (like Google Authenticator, Authy or FreeOTP) to get a one time code on every new untrusted connection. You can't choose both option." |
103 | name_label: 'Nume' | 103 | name_label: 'Nume' |
@@ -371,7 +371,7 @@ quickstart: | |||
371 | # title: 'Configure the application' | 371 | # title: 'Configure the application' |
372 | # description: 'In order to have an application which suits you, have a look into the configuration of wallabag.' | 372 | # description: 'In order to have an application which suits you, have a look into the configuration of wallabag.' |
373 | # language: 'Change language and design' | 373 | # language: 'Change language and design' |
374 | # rss: 'Enable RSS feeds' | 374 | # feed: 'Enable RSS feeds' |
375 | # tagging_rules: 'Write rules to automatically tag your articles' | 375 | # tagging_rules: 'Write rules to automatically tag your articles' |
376 | # admin: | 376 | # admin: |
377 | # title: 'Administration' | 377 | # title: 'Administration' |
@@ -588,10 +588,10 @@ flashes: | |||
588 | password_updated: 'Parolă actualizată' | 588 | password_updated: 'Parolă actualizată' |
589 | password_not_updated_demo: "In demonstration mode, you can't change password for this user." | 589 | password_not_updated_demo: "In demonstration mode, you can't change password for this user." |
590 | user_updated: 'Informație actualizată' | 590 | user_updated: 'Informație actualizată' |
591 | rss_updated: 'Informație RSS actualizată' | 591 | feed_updated: 'Informație RSS actualizată' |
592 | # tagging_rules_updated: 'Tagging rules updated' | 592 | # tagging_rules_updated: 'Tagging rules updated' |
593 | # tagging_rules_deleted: 'Tagging rule deleted' | 593 | # tagging_rules_deleted: 'Tagging rule deleted' |
594 | # rss_token_updated: 'RSS token updated' | 594 | # feed_token_updated: 'RSS token updated' |
595 | # annotations_reset: Annotations reset | 595 | # annotations_reset: Annotations reset |
596 | # tags_reset: Tags reset | 596 | # tags_reset: Tags reset |
597 | # entries_reset: Entries reset | 597 | # entries_reset: Entries reset |
diff --git a/src/Wallabag/CoreBundle/Resources/translations/messages.ru.yml b/src/Wallabag/CoreBundle/Resources/translations/messages.ru.yml index 92746631..2ee2d83a 100644 --- a/src/Wallabag/CoreBundle/Resources/translations/messages.ru.yml +++ b/src/Wallabag/CoreBundle/Resources/translations/messages.ru.yml | |||
@@ -53,7 +53,7 @@ config: | |||
53 | page_title: 'Настройки' | 53 | page_title: 'Настройки' |
54 | tab_menu: | 54 | tab_menu: |
55 | settings: 'Настройки' | 55 | settings: 'Настройки' |
56 | rss: 'RSS' | 56 | feed: 'RSS' |
57 | user_info: 'Информация о пользователе' | 57 | user_info: 'Информация о пользователе' |
58 | password: 'Пароль' | 58 | password: 'Пароль' |
59 | rules: 'Правила настройки простановки тегов' | 59 | rules: 'Правила настройки простановки тегов' |
@@ -83,18 +83,18 @@ config: | |||
83 | help_reading_speed: "wallabag посчитает сколько времени занимает чтение каждой записи. Вы можете определить здесь, как быстро вы читаете. wallabag пересчитает время чтения для каждой записи." | 83 | help_reading_speed: "wallabag посчитает сколько времени занимает чтение каждой записи. Вы можете определить здесь, как быстро вы читаете. wallabag пересчитает время чтения для каждой записи." |
84 | help_language: "Вы можете изменить язык интерфейса wallabag." | 84 | help_language: "Вы можете изменить язык интерфейса wallabag." |
85 | help_pocket_consumer_key: "Обязательно для импорта из Pocket. Вы можете создать это в Вашем аккаунте на Pocket." | 85 | help_pocket_consumer_key: "Обязательно для импорта из Pocket. Вы можете создать это в Вашем аккаунте на Pocket." |
86 | form_rss: | 86 | form_feed: |
87 | description: 'RSS фид созданный с помощью wallabag позволяет читать Ваши записи через Ваш любимый RSS агрегатор. Для начала Вам потребуется создать ключ.' | 87 | description: 'RSS фид созданный с помощью wallabag позволяет читать Ваши записи через Ваш любимый RSS агрегатор. Для начала Вам потребуется создать ключ.' |
88 | token_label: 'RSS ключ' | 88 | token_label: 'RSS ключ' |
89 | no_token: 'Ключ не задан' | 89 | no_token: 'Ключ не задан' |
90 | token_create: 'Создать ключ' | 90 | token_create: 'Создать ключ' |
91 | token_reset: 'Пересоздать ключ' | 91 | token_reset: 'Пересоздать ключ' |
92 | rss_links: 'ссылка на RSS' | 92 | feed_links: 'ссылка на RSS' |
93 | rss_link: | 93 | feed_link: |
94 | unread: 'непрочитанные' | 94 | unread: 'непрочитанные' |
95 | starred: 'помеченные' | 95 | starred: 'помеченные' |
96 | archive: 'архивные' | 96 | archive: 'архивные' |
97 | rss_limit: 'Количество записей в фиде' | 97 | feed_limit: 'Количество записей в фиде' |
98 | form_user: | 98 | form_user: |
99 | # two_factor_description: "Enabling two factor authentication means you'll receive an email with a code OR need to use an OTP app (like Google Authenticator, Authy or FreeOTP) to get a one time code on every new untrusted connection. You can't choose both option." | 99 | # two_factor_description: "Enabling two factor authentication means you'll receive an email with a code OR need to use an OTP app (like Google Authenticator, Authy or FreeOTP) to get a one time code on every new untrusted connection. You can't choose both option." |
100 | name_label: 'Имя' | 100 | name_label: 'Имя' |
@@ -359,7 +359,7 @@ quickstart: | |||
359 | title: 'Настроить приложение' | 359 | title: 'Настроить приложение' |
360 | description: 'Чтобы иметь приложение, которое вам подходит, ознакомьтесь с конфигурацией wallabag.' | 360 | description: 'Чтобы иметь приложение, которое вам подходит, ознакомьтесь с конфигурацией wallabag.' |
361 | language: 'Выбрать язык и дизайн' | 361 | language: 'Выбрать язык и дизайн' |
362 | rss: 'Включить RSS фид' | 362 | feed: 'Включить RSS фид' |
363 | tagging_rules: 'Создать правило для автоматической установки тегов' | 363 | tagging_rules: 'Создать правило для автоматической установки тегов' |
364 | admin: | 364 | admin: |
365 | title: 'Администрирование' | 365 | title: 'Администрирование' |
@@ -554,10 +554,10 @@ flashes: | |||
554 | password_updated: 'Пароль обновлен' | 554 | password_updated: 'Пароль обновлен' |
555 | password_not_updated_demo: "В режиме демонстрации нельзя изменять пароль для этого пользователя." | 555 | password_not_updated_demo: "В режиме демонстрации нельзя изменять пароль для этого пользователя." |
556 | user_updated: 'Информация обновлена' | 556 | user_updated: 'Информация обновлена' |
557 | rss_updated: 'RSS информация обновлена' | 557 | feed_updated: 'RSS информация обновлена' |
558 | tagging_rules_updated: 'Правила тегировния обновлены' | 558 | tagging_rules_updated: 'Правила тегировния обновлены' |
559 | tagging_rules_deleted: 'Правила тегировния удалены' | 559 | tagging_rules_deleted: 'Правила тегировния удалены' |
560 | rss_token_updated: 'RSS ключ обновлен' | 560 | feed_token_updated: 'RSS ключ обновлен' |
561 | annotations_reset: "Аннотации сброшены" | 561 | annotations_reset: "Аннотации сброшены" |
562 | tags_reset: "Теги сброшены" | 562 | tags_reset: "Теги сброшены" |
563 | entries_reset: "Записи сброшены" | 563 | entries_reset: "Записи сброшены" |
diff --git a/src/Wallabag/CoreBundle/Resources/translations/messages.th.yml b/src/Wallabag/CoreBundle/Resources/translations/messages.th.yml index 1fe4fa0e..e04eee68 100644 --- a/src/Wallabag/CoreBundle/Resources/translations/messages.th.yml +++ b/src/Wallabag/CoreBundle/Resources/translations/messages.th.yml | |||
@@ -54,7 +54,7 @@ config: | |||
54 | page_title: 'กำหนดค่า' | 54 | page_title: 'กำหนดค่า' |
55 | tab_menu: | 55 | tab_menu: |
56 | settings: 'ตั้งค่า' | 56 | settings: 'ตั้งค่า' |
57 | rss: 'RSS' | 57 | feed: 'RSS' |
58 | user_info: 'ข้อมูลผู้ใช้' | 58 | user_info: 'ข้อมูลผู้ใช้' |
59 | password: 'รหัสผ่าน' | 59 | password: 'รหัสผ่าน' |
60 | rules: 'การแท็กข้อบังคับ' | 60 | rules: 'การแท็กข้อบังคับ' |
@@ -85,19 +85,19 @@ config: | |||
85 | help_reading_speed: "wallabag จะคำนวณเวลาการอ่านในแต่ละรายการซึ่งคุณสามารถกำหนดได้ที่นี้,ต้องขอบคุณรายการนี้,หากคุณเป็นนักอ่านที่เร็วหรือช้า wallabag จะทำการคำนวณเวลาที่อ่านใหม่ในแต่ละรายการ" | 85 | help_reading_speed: "wallabag จะคำนวณเวลาการอ่านในแต่ละรายการซึ่งคุณสามารถกำหนดได้ที่นี้,ต้องขอบคุณรายการนี้,หากคุณเป็นนักอ่านที่เร็วหรือช้า wallabag จะทำการคำนวณเวลาที่อ่านใหม่ในแต่ละรายการ" |
86 | help_language: "คุณสามารถเปลี่ยภาษาของ wallabag interface ได้" | 86 | help_language: "คุณสามารถเปลี่ยภาษาของ wallabag interface ได้" |
87 | help_pocket_consumer_key: "การ้องขอการเก็บการนำข้อมูลเข้า คุณสามารถสร้างบัญชีการเก็บของคุณ" | 87 | help_pocket_consumer_key: "การ้องขอการเก็บการนำข้อมูลเข้า คุณสามารถสร้างบัญชีการเก็บของคุณ" |
88 | form_rss: | 88 | form_feed: |
89 | description: 'RSS จะเก็บเงื่อนไขโดย wallabag ต้องยอมรับการอ่านรายการของคุณกับผู้อ่านที่ชอบ RSS คุณต้องทำเครื่องหมายก่อน' | 89 | description: 'RSS จะเก็บเงื่อนไขโดย wallabag ต้องยอมรับการอ่านรายการของคุณกับผู้อ่านที่ชอบ RSS คุณต้องทำเครื่องหมายก่อน' |
90 | token_label: 'เครื่องหมาย RSS' | 90 | token_label: 'เครื่องหมาย RSS' |
91 | no_token: 'ไม่มีเครื่องหมาย' | 91 | no_token: 'ไม่มีเครื่องหมาย' |
92 | token_create: 'สร้างเครื่องหมาย' | 92 | token_create: 'สร้างเครื่องหมาย' |
93 | token_reset: 'ทำเครื่องหมาย' | 93 | token_reset: 'ทำเครื่องหมาย' |
94 | rss_links: 'ลิงค์ RSS' | 94 | feed_links: 'ลิงค์ RSS' |
95 | rss_link: | 95 | feed_link: |
96 | unread: 'ยังไมได้่อ่าน' | 96 | unread: 'ยังไมได้่อ่าน' |
97 | starred: 'ทำการแสดง' | 97 | starred: 'ทำการแสดง' |
98 | archive: 'เอกสาร' | 98 | archive: 'เอกสาร' |
99 | all: 'ทั้งหมด' | 99 | all: 'ทั้งหมด' |
100 | rss_limit: 'จำนวนไอเทมที่เก็บ' | 100 | feed_limit: 'จำนวนไอเทมที่เก็บ' |
101 | form_user: | 101 | form_user: |
102 | # two_factor_description: "Enabling two factor authentication means you'll receive an email with a code OR need to use an OTP app (like Google Authenticator, Authy or FreeOTP) to get a one time code on every new untrusted connection. You can't choose both option." | 102 | # two_factor_description: "Enabling two factor authentication means you'll receive an email with a code OR need to use an OTP app (like Google Authenticator, Authy or FreeOTP) to get a one time code on every new untrusted connection. You can't choose both option." |
103 | name_label: 'ชื่อ' | 103 | name_label: 'ชื่อ' |
@@ -369,7 +369,7 @@ quickstart: | |||
369 | title: 'กำหนดค่าแอพพลิเคชั่น' | 369 | title: 'กำหนดค่าแอพพลิเคชั่น' |
370 | description: 'ภายใน order จะมี application suit ของคุณ, จะมองหาองค์ประกอบของ wallabag' | 370 | description: 'ภายใน order จะมี application suit ของคุณ, จะมองหาองค์ประกอบของ wallabag' |
371 | language: 'เปลี่ยนภาษาและออกแบบ' | 371 | language: 'เปลี่ยนภาษาและออกแบบ' |
372 | rss: 'เปิดใช้ RSS' | 372 | feed: 'เปิดใช้ RSS' |
373 | tagging_rules: 'เขียนข้อบังคับการแท็กอัตโนมัติของบทความของคุณ' | 373 | tagging_rules: 'เขียนข้อบังคับการแท็กอัตโนมัติของบทความของคุณ' |
374 | admin: | 374 | admin: |
375 | title: 'ผู้ดูแลระบบ' | 375 | title: 'ผู้ดูแลระบบ' |
@@ -586,10 +586,10 @@ flashes: | |||
586 | password_updated: 'อัปเดตรหัสผ่าน' | 586 | password_updated: 'อัปเดตรหัสผ่าน' |
587 | password_not_updated_demo: "In demonstration mode, you can't change password for this user." | 587 | password_not_updated_demo: "In demonstration mode, you can't change password for this user." |
588 | user_updated: 'อัปเดตข้อมูล' | 588 | user_updated: 'อัปเดตข้อมูล' |
589 | rss_updated: 'อัปเดตข้อมูล RSS' | 589 | feed_updated: 'อัปเดตข้อมูล RSS' |
590 | tagging_rules_updated: 'อัปเดตการแท็กข้อบังคับ' | 590 | tagging_rules_updated: 'อัปเดตการแท็กข้อบังคับ' |
591 | tagging_rules_deleted: 'การลบข้อบังคับของแท็ก' | 591 | tagging_rules_deleted: 'การลบข้อบังคับของแท็ก' |
592 | rss_token_updated: 'อัปเดตเครื่องหมาย RSS ' | 592 | feed_token_updated: 'อัปเดตเครื่องหมาย RSS ' |
593 | annotations_reset: รีเซ็ตหมายเหตุ | 593 | annotations_reset: รีเซ็ตหมายเหตุ |
594 | tags_reset: รีเซ็ตแท็ก | 594 | tags_reset: รีเซ็ตแท็ก |
595 | entries_reset: รีเซ็ตรายการ | 595 | entries_reset: รีเซ็ตรายการ |
diff --git a/src/Wallabag/CoreBundle/Resources/translations/messages.tr.yml b/src/Wallabag/CoreBundle/Resources/translations/messages.tr.yml index 3b8a0d59..2f86f25d 100644 --- a/src/Wallabag/CoreBundle/Resources/translations/messages.tr.yml +++ b/src/Wallabag/CoreBundle/Resources/translations/messages.tr.yml | |||
@@ -54,7 +54,7 @@ config: | |||
54 | page_title: 'Yapılandırma' | 54 | page_title: 'Yapılandırma' |
55 | tab_menu: | 55 | tab_menu: |
56 | settings: 'Ayarlar' | 56 | settings: 'Ayarlar' |
57 | rss: 'RSS' | 57 | feed: 'RSS' |
58 | user_info: 'Kullanıcı bilgileri' | 58 | user_info: 'Kullanıcı bilgileri' |
59 | password: 'Şifre' | 59 | password: 'Şifre' |
60 | rules: 'Etiketleme kuralları' | 60 | rules: 'Etiketleme kuralları' |
@@ -85,19 +85,19 @@ config: | |||
85 | # help_reading_speed: "wallabag calculates a reading time for each article. You can define here, thanks to this list, if you are a fast or a slow reader. wallabag will recalculate the reading time for each article." | 85 | # help_reading_speed: "wallabag calculates a reading time for each article. You can define here, thanks to this list, if you are a fast or a slow reader. wallabag will recalculate the reading time for each article." |
86 | # help_language: "You can change the language of wallabag interface." | 86 | # help_language: "You can change the language of wallabag interface." |
87 | # help_pocket_consumer_key: "Required for Pocket import. You can create it in your Pocket account." | 87 | # help_pocket_consumer_key: "Required for Pocket import. You can create it in your Pocket account." |
88 | form_rss: | 88 | form_feed: |
89 | description: 'wallabag RSS akışı kaydetmiş olduğunuz makalelerini favori RSS okuyucunuzda görüntülemenizi sağlar. Bunu yapabilmek için öncelikle belirteç (token) oluşturmalısınız.' | 89 | description: 'wallabag RSS akışı kaydetmiş olduğunuz makalelerini favori RSS okuyucunuzda görüntülemenizi sağlar. Bunu yapabilmek için öncelikle belirteç (token) oluşturmalısınız.' |
90 | token_label: 'RSS belirteci (token)' | 90 | token_label: 'RSS belirteci (token)' |
91 | no_token: 'Belirteç (token) yok' | 91 | no_token: 'Belirteç (token) yok' |
92 | token_create: 'Yeni belirteç (token) oluştur' | 92 | token_create: 'Yeni belirteç (token) oluştur' |
93 | token_reset: 'Belirteci (token) sıfırla' | 93 | token_reset: 'Belirteci (token) sıfırla' |
94 | rss_links: 'RSS akış bağlantıları' | 94 | feed_links: 'RSS akış bağlantıları' |
95 | rss_link: | 95 | feed_link: |
96 | unread: 'Okunmayan' | 96 | unread: 'Okunmayan' |
97 | starred: 'Favoriler' | 97 | starred: 'Favoriler' |
98 | archive: 'Arşiv' | 98 | archive: 'Arşiv' |
99 | # all: 'All' | 99 | # all: 'All' |
100 | rss_limit: 'RSS içeriğinden talep edilecek makale limiti' | 100 | feed_limit: 'RSS içeriğinden talep edilecek makale limiti' |
101 | form_user: | 101 | form_user: |
102 | # two_factor_description: "Enabling two factor authentication means you'll receive an email with a code OR need to use an OTP app (like Google Authenticator, Authy or FreeOTP) to get a one time code on every new untrusted connection. You can't choose both option." | 102 | # two_factor_description: "Enabling two factor authentication means you'll receive an email with a code OR need to use an OTP app (like Google Authenticator, Authy or FreeOTP) to get a one time code on every new untrusted connection. You can't choose both option." |
103 | name_label: 'İsim' | 103 | name_label: 'İsim' |
@@ -369,7 +369,7 @@ quickstart: | |||
369 | title: 'Uygulamayı Yapılandırma' | 369 | title: 'Uygulamayı Yapılandırma' |
370 | # description: 'In order to have an application which suits you, have a look into the configuration of wallabag.' | 370 | # description: 'In order to have an application which suits you, have a look into the configuration of wallabag.' |
371 | language: 'Dili ve tasarımı değiştirme' | 371 | language: 'Dili ve tasarımı değiştirme' |
372 | rss: 'RSS akışını aktifleştirme' | 372 | feed: 'RSS akışını aktifleştirme' |
373 | # tagging_rules: 'Write rules to automatically tag your articles' | 373 | # tagging_rules: 'Write rules to automatically tag your articles' |
374 | admin: | 374 | admin: |
375 | # title: 'Administration' | 375 | # title: 'Administration' |
@@ -566,10 +566,10 @@ flashes: | |||
566 | password_updated: 'Şifre güncellendi' | 566 | password_updated: 'Şifre güncellendi' |
567 | password_not_updated_demo: "In demonstration mode, you can't change password for this user." | 567 | password_not_updated_demo: "In demonstration mode, you can't change password for this user." |
568 | user_updated: 'Bilgiler güncellendi' | 568 | user_updated: 'Bilgiler güncellendi' |
569 | rss_updated: 'RSS bilgiler güncellendi' | 569 | feed_updated: 'RSS bilgiler güncellendi' |
570 | tagging_rules_updated: 'Tagging rules updated' | 570 | tagging_rules_updated: 'Tagging rules updated' |
571 | tagging_rules_deleted: 'Tagging rule deleted' | 571 | tagging_rules_deleted: 'Tagging rule deleted' |
572 | rss_token_updated: 'RSS token updated' | 572 | feed_token_updated: 'RSS token updated' |
573 | # annotations_reset: Annotations reset | 573 | # annotations_reset: Annotations reset |
574 | # tags_reset: Tags reset | 574 | # tags_reset: Tags reset |
575 | # entries_reset: Entries reset | 575 | # entries_reset: Entries reset |
diff --git a/src/Wallabag/CoreBundle/Resources/translations/validators.da.yml b/src/Wallabag/CoreBundle/Resources/translations/validators.da.yml index c6a84209..c0438978 100644 --- a/src/Wallabag/CoreBundle/Resources/translations/validators.da.yml +++ b/src/Wallabag/CoreBundle/Resources/translations/validators.da.yml | |||
@@ -3,5 +3,5 @@ validator: | |||
3 | password_too_short: 'Adgangskoden skal være mindst 8 tegn' | 3 | password_too_short: 'Adgangskoden skal være mindst 8 tegn' |
4 | # password_wrong_value: 'Wrong value for your current password' | 4 | # password_wrong_value: 'Wrong value for your current password' |
5 | # item_per_page_too_high: 'This will certainly kill the app' | 5 | # item_per_page_too_high: 'This will certainly kill the app' |
6 | # rss_limit_too_high: 'This will certainly kill the app' | 6 | # feed_limit_too_high: 'This will certainly kill the app' |
7 | # quote_length_too_high: 'The quote is too long. It should have {{ limit }} characters or less.' | 7 | # quote_length_too_high: 'The quote is too long. It should have {{ limit }} characters or less.' |
diff --git a/src/Wallabag/CoreBundle/Resources/translations/validators.de.yml b/src/Wallabag/CoreBundle/Resources/translations/validators.de.yml index 907b67a5..4c675ef4 100644 --- a/src/Wallabag/CoreBundle/Resources/translations/validators.de.yml +++ b/src/Wallabag/CoreBundle/Resources/translations/validators.de.yml | |||
@@ -3,6 +3,5 @@ validator: | |||
3 | password_too_short: 'Kennwort-Mindestlänge von acht Zeichen nicht erfüllt' | 3 | password_too_short: 'Kennwort-Mindestlänge von acht Zeichen nicht erfüllt' |
4 | password_wrong_value: 'Falscher Wert für dein aktuelles Kennwort' | 4 | password_wrong_value: 'Falscher Wert für dein aktuelles Kennwort' |
5 | item_per_page_too_high: 'Dies wird die Anwendung möglicherweise beenden' | 5 | item_per_page_too_high: 'Dies wird die Anwendung möglicherweise beenden' |
6 | rss_limit_too_high: 'Dies wird die Anwendung möglicherweise beenden' | 6 | feed_limit_too_high: 'Dies wird die Anwendung möglicherweise beenden' |
7 | quote_length_too_high: 'Das Zitat ist zu lang. Es sollte nicht mehr als {{ limit }} Zeichen enthalten.' | 7 | quote_length_too_high: 'Das Zitat ist zu lang. Es sollte nicht mehr als {{ limit }} Zeichen enthalten.' |
8 | |||
diff --git a/src/Wallabag/CoreBundle/Resources/translations/validators.en.yml b/src/Wallabag/CoreBundle/Resources/translations/validators.en.yml index 8cc117fe..89d4c68a 100644 --- a/src/Wallabag/CoreBundle/Resources/translations/validators.en.yml +++ b/src/Wallabag/CoreBundle/Resources/translations/validators.en.yml | |||
@@ -3,5 +3,5 @@ validator: | |||
3 | password_too_short: 'Password should by at least 8 chars long' | 3 | password_too_short: 'Password should by at least 8 chars long' |
4 | password_wrong_value: 'Wrong value for your current password' | 4 | password_wrong_value: 'Wrong value for your current password' |
5 | item_per_page_too_high: 'This will certainly kill the app' | 5 | item_per_page_too_high: 'This will certainly kill the app' |
6 | rss_limit_too_high: 'This will certainly kill the app' | 6 | feed_limit_too_high: 'This will certainly kill the app' |
7 | quote_length_too_high: 'The quote is too long. It should have {{ limit }} characters or less.' | 7 | quote_length_too_high: 'The quote is too long. It should have {{ limit }} characters or less.' |
diff --git a/src/Wallabag/CoreBundle/Resources/translations/validators.es.yml b/src/Wallabag/CoreBundle/Resources/translations/validators.es.yml index 97a8edfa..ba34ee76 100644 --- a/src/Wallabag/CoreBundle/Resources/translations/validators.es.yml +++ b/src/Wallabag/CoreBundle/Resources/translations/validators.es.yml | |||
@@ -3,5 +3,5 @@ validator: | |||
3 | password_too_short: 'La contraseña debe tener al menos 8 carácteres' | 3 | password_too_short: 'La contraseña debe tener al menos 8 carácteres' |
4 | password_wrong_value: 'Entrada equivocada para su contraseña actual' | 4 | password_wrong_value: 'Entrada equivocada para su contraseña actual' |
5 | item_per_page_too_high: 'Esto matará la aplicación' | 5 | item_per_page_too_high: 'Esto matará la aplicación' |
6 | rss_limit_too_high: 'Esto matará la aplicación' | 6 | feed_limit_too_high: 'Esto matará la aplicación' |
7 | # quote_length_too_high: 'The quote is too long. It should have {{ limit }} characters or less.' | 7 | # quote_length_too_high: 'The quote is too long. It should have {{ limit }} characters or less.' |
diff --git a/src/Wallabag/CoreBundle/Resources/translations/validators.fa.yml b/src/Wallabag/CoreBundle/Resources/translations/validators.fa.yml index ef677525..9b1a4af2 100644 --- a/src/Wallabag/CoreBundle/Resources/translations/validators.fa.yml +++ b/src/Wallabag/CoreBundle/Resources/translations/validators.fa.yml | |||
@@ -3,5 +3,5 @@ validator: | |||
3 | password_too_short: 'رمز شما باید ۸ حرف یا بیشتر باشد' | 3 | password_too_short: 'رمز شما باید ۸ حرف یا بیشتر باشد' |
4 | password_wrong_value: 'رمز فعلی را اشتباه وارد کردهاید' | 4 | password_wrong_value: 'رمز فعلی را اشتباه وارد کردهاید' |
5 | item_per_page_too_high: 'با این تعداد برنامه به فنا میرود' | 5 | item_per_page_too_high: 'با این تعداد برنامه به فنا میرود' |
6 | rss_limit_too_high: 'با این تعداد برنامه به فنا میرود' | 6 | feed_limit_too_high: 'با این تعداد برنامه به فنا میرود' |
7 | # quote_length_too_high: 'The quote is too long. It should have {{ limit }} characters or less.' | 7 | # quote_length_too_high: 'The quote is too long. It should have {{ limit }} characters or less.' |
diff --git a/src/Wallabag/CoreBundle/Resources/translations/validators.fr.yml b/src/Wallabag/CoreBundle/Resources/translations/validators.fr.yml index f31b4ed2..92f69aa0 100644 --- a/src/Wallabag/CoreBundle/Resources/translations/validators.fr.yml +++ b/src/Wallabag/CoreBundle/Resources/translations/validators.fr.yml | |||
@@ -3,5 +3,5 @@ validator: | |||
3 | password_too_short: "Le mot de passe doit contenir au moins 8 caractères" | 3 | password_too_short: "Le mot de passe doit contenir au moins 8 caractères" |
4 | password_wrong_value: "Votre mot de passe actuel est faux" | 4 | password_wrong_value: "Votre mot de passe actuel est faux" |
5 | item_per_page_too_high: "Ça ne va pas plaire à l’application" | 5 | item_per_page_too_high: "Ça ne va pas plaire à l’application" |
6 | rss_limit_too_high: "Ça ne va pas plaire à l’application" | 6 | feed_limit_too_high: "Ça ne va pas plaire à l’application" |
7 | quote_length_too_high: "La citation est trop longue. Elle doit avoir au maximum {{ limit }} caractères." | 7 | quote_length_too_high: "La citation est trop longue. Elle doit avoir au maximum {{ limit }} caractères." |
diff --git a/src/Wallabag/CoreBundle/Resources/translations/validators.it.yml b/src/Wallabag/CoreBundle/Resources/translations/validators.it.yml index d949cc3b..b20d6f51 100644 --- a/src/Wallabag/CoreBundle/Resources/translations/validators.it.yml +++ b/src/Wallabag/CoreBundle/Resources/translations/validators.it.yml | |||
@@ -3,5 +3,5 @@ validator: | |||
3 | password_too_short: 'La password deve essere lunga almeno 8 caratteri' | 3 | password_too_short: 'La password deve essere lunga almeno 8 caratteri' |
4 | password_wrong_value: 'Valore inserito per la password corrente errato' | 4 | password_wrong_value: 'Valore inserito per la password corrente errato' |
5 | item_per_page_too_high: 'Questo valore è troppo alto' | 5 | item_per_page_too_high: 'Questo valore è troppo alto' |
6 | rss_limit_too_high: 'Questo valore è troppo alto' | 6 | feed_limit_too_high: 'Questo valore è troppo alto' |
7 | # quote_length_too_high: 'The quote is too long. It should have {{ limit }} characters or less.' | 7 | # quote_length_too_high: 'The quote is too long. It should have {{ limit }} characters or less.' |
diff --git a/src/Wallabag/CoreBundle/Resources/translations/validators.oc.yml b/src/Wallabag/CoreBundle/Resources/translations/validators.oc.yml index 87f00f10..cb57844f 100644 --- a/src/Wallabag/CoreBundle/Resources/translations/validators.oc.yml +++ b/src/Wallabag/CoreBundle/Resources/translations/validators.oc.yml | |||
@@ -3,5 +3,5 @@ validator: | |||
3 | password_too_short: 'Lo senhal deu aver almens 8 caractèrs' | 3 | password_too_short: 'Lo senhal deu aver almens 8 caractèrs' |
4 | password_wrong_value: 'Vòstre senhal actual es pas bon' | 4 | password_wrong_value: 'Vòstre senhal actual es pas bon' |
5 | item_per_page_too_high: "Aquò li agradarà pas a l'aplicacion" | 5 | item_per_page_too_high: "Aquò li agradarà pas a l'aplicacion" |
6 | rss_limit_too_high: "Aquò li agradarà pas a l'aplicacion" | 6 | feed_limit_too_high: "Aquò li agradarà pas a l'aplicacion" |
7 | quote_length_too_high: 'Aquesta citacion es tròpa longa. Cal que faga {{ limit }} caractèrs o mens.' | 7 | quote_length_too_high: 'Aquesta citacion es tròpa longa. Cal que faga {{ limit }} caractèrs o mens.' |
diff --git a/src/Wallabag/CoreBundle/Resources/translations/validators.pl.yml b/src/Wallabag/CoreBundle/Resources/translations/validators.pl.yml index e4165c14..94757cc5 100644 --- a/src/Wallabag/CoreBundle/Resources/translations/validators.pl.yml +++ b/src/Wallabag/CoreBundle/Resources/translations/validators.pl.yml | |||
@@ -3,5 +3,5 @@ validator: | |||
3 | password_too_short: 'Hasło powinno mieć minimum 8 znaków długości' | 3 | password_too_short: 'Hasło powinno mieć minimum 8 znaków długości' |
4 | password_wrong_value: 'Twoje obecne hasło jest błędne' | 4 | password_wrong_value: 'Twoje obecne hasło jest błędne' |
5 | item_per_page_too_high: 'To może spowodować problemy z aplikacją' | 5 | item_per_page_too_high: 'To może spowodować problemy z aplikacją' |
6 | rss_limit_too_high: 'To może spowodować problemy z aplikacją' | 6 | feed_limit_too_high: 'To może spowodować problemy z aplikacją' |
7 | quote_length_too_high: 'Cytat jest zbyt długi. powinien mieć {{ limit }} znaków lub mniej.' | 7 | quote_length_too_high: 'Cytat jest zbyt długi. powinien mieć {{ limit }} znaków lub mniej.' |
diff --git a/src/Wallabag/CoreBundle/Resources/translations/validators.pt.yml b/src/Wallabag/CoreBundle/Resources/translations/validators.pt.yml index a8c1f9de..df2f3f35 100644 --- a/src/Wallabag/CoreBundle/Resources/translations/validators.pt.yml +++ b/src/Wallabag/CoreBundle/Resources/translations/validators.pt.yml | |||
@@ -3,5 +3,5 @@ validator: | |||
3 | password_too_short: 'A senha deve ter pelo menos 8 caracteres' | 3 | password_too_short: 'A senha deve ter pelo menos 8 caracteres' |
4 | password_wrong_value: 'A senha atual informada está errada' | 4 | password_wrong_value: 'A senha atual informada está errada' |
5 | item_per_page_too_high: 'Certamente isso pode matar a aplicação' | 5 | item_per_page_too_high: 'Certamente isso pode matar a aplicação' |
6 | rss_limit_too_high: 'Certamente isso pode matar a aplicação' | 6 | feed_limit_too_high: 'Certamente isso pode matar a aplicação' |
7 | # quote_length_too_high: 'The quote is too long. It should have {{ limit }} characters or less.' | 7 | # quote_length_too_high: 'The quote is too long. It should have {{ limit }} characters or less.' |
diff --git a/src/Wallabag/CoreBundle/Resources/translations/validators.ro.yml b/src/Wallabag/CoreBundle/Resources/translations/validators.ro.yml index 6840cf11..e5c8a72f 100644 --- a/src/Wallabag/CoreBundle/Resources/translations/validators.ro.yml +++ b/src/Wallabag/CoreBundle/Resources/translations/validators.ro.yml | |||
@@ -3,5 +3,5 @@ validator: | |||
3 | password_too_short: 'Parola ar trebui să conțină cel puțin 8 caractere' | 3 | password_too_short: 'Parola ar trebui să conțină cel puțin 8 caractere' |
4 | # password_wrong_value: 'Wrong value for your current password' | 4 | # password_wrong_value: 'Wrong value for your current password' |
5 | # item_per_page_too_high: 'This will certainly kill the app' | 5 | # item_per_page_too_high: 'This will certainly kill the app' |
6 | # rss_limit_too_high: 'This will certainly kill the app' | 6 | # feed_limit_too_high: 'This will certainly kill the app' |
7 | # quote_length_too_high: 'The quote is too long. It should have {{ limit }} characters or less.' | 7 | # quote_length_too_high: 'The quote is too long. It should have {{ limit }} characters or less.' |
diff --git a/src/Wallabag/CoreBundle/Resources/translations/validators.tr.yml b/src/Wallabag/CoreBundle/Resources/translations/validators.tr.yml index e1e7317f..881ffd3b 100644 --- a/src/Wallabag/CoreBundle/Resources/translations/validators.tr.yml +++ b/src/Wallabag/CoreBundle/Resources/translations/validators.tr.yml | |||
@@ -3,5 +3,5 @@ validator: | |||
3 | # password_too_short: 'Password should by at least 8 chars long' | 3 | # password_too_short: 'Password should by at least 8 chars long' |
4 | # password_wrong_value: 'Wrong value for your current password' | 4 | # password_wrong_value: 'Wrong value for your current password' |
5 | # item_per_page_too_high: 'This will certainly kill the app' | 5 | # item_per_page_too_high: 'This will certainly kill the app' |
6 | # rss_limit_too_high: 'This will certainly kill the app' | 6 | # feed_limit_too_high: 'This will certainly kill the app' |
7 | # quote_length_too_high: 'The quote is too long. It should have {{ limit }} characters or less.' | 7 | # quote_length_too_high: 'The quote is too long. It should have {{ limit }} characters or less.' |
diff --git a/src/Wallabag/CoreBundle/Resources/views/themes/baggy/Config/index.html.twig b/src/Wallabag/CoreBundle/Resources/views/themes/baggy/Config/index.html.twig index 93f8ddf8..4ef6ab3c 100644 --- a/src/Wallabag/CoreBundle/Resources/views/themes/baggy/Config/index.html.twig +++ b/src/Wallabag/CoreBundle/Resources/views/themes/baggy/Config/index.html.twig | |||
@@ -94,43 +94,43 @@ | |||
94 | {{ form_rest(form.config) }} | 94 | {{ form_rest(form.config) }} |
95 | </form> | 95 | </form> |
96 | 96 | ||
97 | <h2>{{ 'config.tab_menu.rss'|trans }}</h2> | 97 | <h2>{{ 'config.tab_menu.feed'|trans }}</h2> |
98 | 98 | ||
99 | {{ form_start(form.rss) }} | 99 | {{ form_start(form.feed) }} |
100 | {{ form_errors(form.rss) }} | 100 | {{ form_errors(form.feed) }} |
101 | 101 | ||
102 | <div class="row"> | 102 | <div class="row"> |
103 | {{ 'config.form_rss.description'|trans }} | 103 | {{ 'config.form_feed.description'|trans }} |
104 | </div> | 104 | </div> |
105 | 105 | ||
106 | <fieldset class="w500p inline"> | 106 | <fieldset class="w500p inline"> |
107 | <div class="row"> | 107 | <div class="row"> |
108 | <label>{{ 'config.form_rss.token_label'|trans }}</label> | 108 | <label>{{ 'config.form_feed.token_label'|trans }}</label> |
109 | {% if rss.token %} | 109 | {% if feed.token %} |
110 | {{ rss.token }} | 110 | {{ feed.token }} |
111 | {% else %} | 111 | {% else %} |
112 | <em>{{ 'config.form_rss.no_token'|trans }}</em> | 112 | <em>{{ 'config.form_feed.no_token'|trans }}</em> |
113 | {% endif %} | 113 | {% endif %} |
114 | – | 114 | – |
115 | <a href="{{ path('generate_token') }}"> | 115 | <a href="{{ path('generate_token') }}"> |
116 | {% if rss.token %} | 116 | {% if feed.token %} |
117 | {{ 'config.form_rss.token_reset'|trans }} | 117 | {{ 'config.form_feed.token_reset'|trans }} |
118 | {% else %} | 118 | {% else %} |
119 | {{ 'config.form_rss.token_create'|trans }} | 119 | {{ 'config.form_feed.token_create'|trans }} |
120 | {% endif %} | 120 | {% endif %} |
121 | </a> | 121 | </a> |
122 | </div> | 122 | </div> |
123 | </fieldset> | 123 | </fieldset> |
124 | 124 | ||
125 | {% if rss.token %} | 125 | {% if feed.token %} |
126 | <fieldset class="w500p inline"> | 126 | <fieldset class="w500p inline"> |
127 | <div class="row"> | 127 | <div class="row"> |
128 | <label>{{ 'config.form_rss.rss_links'|trans }}</label> | 128 | <label>{{ 'config.form_feed.feed_links'|trans }}</label> |
129 | <ul> | 129 | <ul> |
130 | <li><a href="{{ path('unread_rss', {'username': rss.username, 'token': rss.token}) }}">{{ 'config.form_rss.rss_link.unread'|trans }}</a></li> | 130 | <li><a href="{{ path('unread_feed', {'username': feed.username, 'token': feed.token}) }}">{{ 'config.form_feed.feed_link.unread'|trans }}</a></li> |
131 | <li><a href="{{ path('starred_rss', {'username': rss.username, 'token': rss.token}) }}">{{ 'config.form_rss.rss_link.starred'|trans }}</a></li> | 131 | <li><a href="{{ path('starred_feed', {'username': feed.username, 'token': feed.token}) }}">{{ 'config.form_feed.feed_link.starred'|trans }}</a></li> |
132 | <li><a href="{{ path('archive_rss', {'username': rss.username, 'token': rss.token}) }}">{{ 'config.form_rss.rss_link.archive'|trans }}</a></li> | 132 | <li><a href="{{ path('archive_feed', {'username': feed.username, 'token': feed.token}) }}">{{ 'config.form_feed.feed_link.archive'|trans }}</a></li> |
133 | <li><a href="{{ path('all_rss', {'username': rss.username, 'token': rss.token}) }}">{{ 'config.form_rss.rss_link.all'|trans }}</a></li> | 133 | <li><a href="{{ path('all_feed', {'username': feed.username, 'token': feed.token}) }}">{{ 'config.form_feed.feed_link.all'|trans }}</a></li> |
134 | </ul> | 134 | </ul> |
135 | </div> | 135 | </div> |
136 | </fieldset> | 136 | </fieldset> |
@@ -138,13 +138,13 @@ | |||
138 | 138 | ||
139 | <fieldset class="w500p inline"> | 139 | <fieldset class="w500p inline"> |
140 | <div class="row"> | 140 | <div class="row"> |
141 | {{ form_label(form.rss.rss_limit) }} | 141 | {{ form_label(form.feed.feed_limit) }} |
142 | {{ form_errors(form.rss.rss_limit) }} | 142 | {{ form_errors(form.feed.feed_limit) }} |
143 | {{ form_widget(form.rss.rss_limit) }} | 143 | {{ form_widget(form.feed.feed_limit) }} |
144 | </div> | 144 | </div> |
145 | </fieldset> | 145 | </fieldset> |
146 | 146 | ||
147 | {{ form_rest(form.rss) }} | 147 | {{ form_rest(form.feed) }} |
148 | </form> | 148 | </form> |
149 | 149 | ||
150 | <h2>{{ 'config.tab_menu.user_info'|trans }}</h2> | 150 | <h2>{{ 'config.tab_menu.user_info'|trans }}</h2> |
diff --git a/src/Wallabag/CoreBundle/Resources/views/themes/baggy/Entry/entries.html.twig b/src/Wallabag/CoreBundle/Resources/views/themes/baggy/Entry/entries.html.twig index fb296c9d..6c5d2601 100644 --- a/src/Wallabag/CoreBundle/Resources/views/themes/baggy/Entry/entries.html.twig +++ b/src/Wallabag/CoreBundle/Resources/views/themes/baggy/Entry/entries.html.twig | |||
@@ -2,8 +2,8 @@ | |||
2 | 2 | ||
3 | {% block head %} | 3 | {% block head %} |
4 | {{ parent() }} | 4 | {{ parent() }} |
5 | {% if tag is defined and app.user.config.rssToken %} | 5 | {% if tag is defined and app.user.config.feedToken %} |
6 | <link rel="alternate" type="application/rss+xml" href="{{ path('tag_rss', {'username': app.user.username, 'token': app.user.config.rssToken, 'slug': tag.slug}) }}" /> | 6 | <link rel="alternate" type="application/atom+xml" href="{{ path('tag_feed', {'username': app.user.username, 'token': app.user.config.feedToken, 'slug': tag.slug}) }}" /> |
7 | {% endif %} | 7 | {% endif %} |
8 | {% endblock %} | 8 | {% endblock %} |
9 | 9 | ||
@@ -28,8 +28,8 @@ | |||
28 | <div class="nb-results">{{ 'entry.list.number_on_the_page'|transchoice(entries.count) }}</div> | 28 | <div class="nb-results">{{ 'entry.list.number_on_the_page'|transchoice(entries.count) }}</div> |
29 | <div class="pagination"> | 29 | <div class="pagination"> |
30 | <a href="{{ path('switch_view_mode') }}"><i class="listMode-btn material-icons md-24">{% if listMode == 0 %}list{% else %}view_module{% endif %}</i></a> | 30 | <a href="{{ path('switch_view_mode') }}"><i class="listMode-btn material-icons md-24">{% if listMode == 0 %}list{% else %}view_module{% endif %}</i></a> |
31 | {% if app.user.config.rssToken %} | 31 | {% if app.user.config.feedToken %} |
32 | {% include "@WallabagCore/themes/common/Entry/_rss_link.html.twig" %} | 32 | {% include "@WallabagCore/themes/common/Entry/_feed_link.html.twig" %} |
33 | {% endif %} | 33 | {% endif %} |
34 | {% if currentRoute in ['unread', 'starred', 'archive', 'untagged', 'all'] %} | 34 | {% if currentRoute in ['unread', 'starred', 'archive', 'untagged', 'all'] %} |
35 | <a href="{{ path('random_entry', { 'type': currentRoute }) }}"><i class="btn-clickable material-icons md-24 js-random-action">casino</i></a> | 35 | <a href="{{ path('random_entry', { 'type': currentRoute }) }}"><i class="btn-clickable material-icons md-24 js-random-action">casino</i></a> |
diff --git a/src/Wallabag/CoreBundle/Resources/views/themes/baggy/Tag/tags.html.twig b/src/Wallabag/CoreBundle/Resources/views/themes/baggy/Tag/tags.html.twig index 35351ab1..ae8403bd 100644 --- a/src/Wallabag/CoreBundle/Resources/views/themes/baggy/Tag/tags.html.twig +++ b/src/Wallabag/CoreBundle/Resources/views/themes/baggy/Tag/tags.html.twig | |||
@@ -21,8 +21,8 @@ | |||
21 | <i class="material-icons">mode_edit</i> | 21 | <i class="material-icons">mode_edit</i> |
22 | </a> | 22 | </a> |
23 | {% endif %} | 23 | {% endif %} |
24 | {% if app.user.config.rssToken %} | 24 | {% if app.user.config.feedToken %} |
25 | <a rel="alternate" type="application/rss+xml" href="{{ path('tag_rss', {'username': app.user.username, 'token': app.user.config.rssToken, 'slug': tag.slug}) }}" class="right"> | 25 | <a rel="alternate" type="application/atom+xml" href="{{ path('tag_feed', {'username': app.user.username, 'token': app.user.config.feedToken, 'slug': tag.slug}) }}" class="right"> |
26 | <i class="material-icons md-24">rss_feed</i> | 26 | <i class="material-icons md-24">rss_feed</i> |
27 | </a> | 27 | </a> |
28 | {% endif %} | 28 | {% endif %} |
diff --git a/src/Wallabag/CoreBundle/Resources/views/themes/common/Entry/_feed_link.html.twig b/src/Wallabag/CoreBundle/Resources/views/themes/common/Entry/_feed_link.html.twig new file mode 100644 index 00000000..6df4c160 --- /dev/null +++ b/src/Wallabag/CoreBundle/Resources/views/themes/common/Entry/_feed_link.html.twig | |||
@@ -0,0 +1,11 @@ | |||
1 | {% if tag is defined %} | ||
2 | <a rel="alternate" type="application/atom+xml" href="{{ path('tag_feed', {'username': app.user.username, 'token': app.user.config.feedToken, 'slug': tag.slug}) }}" class="right"><i class="material-icons md-24">rss_feed</i></a> | ||
3 | {% elseif currentRoute in ['homepage', 'unread', 'starred', 'archive', 'all'] %} | ||
4 | {% set feedRoute = currentRoute %} | ||
5 | {% if currentRoute == 'homepage' %} | ||
6 | {% set feedRoute = 'unread' %} | ||
7 | {% endif %} | ||
8 | {% set feedRoute = feedRoute ~ '_feed' %} | ||
9 | |||
10 | <a rel="alternate" type="application/atom+xml" href="{{ path(feedRoute, {'username': app.user.username, 'token': app.user.config.feedToken}) }}" class="right"><i class="material-icons">rss_feed</i></a> | ||
11 | {% endif %} | ||
diff --git a/src/Wallabag/CoreBundle/Resources/views/themes/common/Entry/_rss_link.html.twig b/src/Wallabag/CoreBundle/Resources/views/themes/common/Entry/_rss_link.html.twig deleted file mode 100644 index eb26054c..00000000 --- a/src/Wallabag/CoreBundle/Resources/views/themes/common/Entry/_rss_link.html.twig +++ /dev/null | |||
@@ -1,11 +0,0 @@ | |||
1 | {% if tag is defined %} | ||
2 | <a rel="alternate" type="application/rss+xml" href="{{ path('tag_rss', {'username': app.user.username, 'token': app.user.config.rssToken, 'slug': tag.slug}) }}" class="right"><i class="material-icons md-24">rss_feed</i></a> | ||
3 | {% elseif currentRoute in ['homepage', 'unread', 'starred', 'archive', 'all'] %} | ||
4 | {% set rssRoute = currentRoute %} | ||
5 | {% if currentRoute == 'homepage' %} | ||
6 | {% set rssRoute = 'unread' %} | ||
7 | {% endif %} | ||
8 | {% set rssRoute = rssRoute ~ '_rss' %} | ||
9 | |||
10 | <a rel="alternate" type="application/rss+xml" href="{{ path(rssRoute, {'username': app.user.username, 'token': app.user.config.rssToken}) }}" class="right"><i class="material-icons">rss_feed</i></a> | ||
11 | {% endif %} | ||
diff --git a/src/Wallabag/CoreBundle/Resources/views/themes/common/Entry/entries.xml.twig b/src/Wallabag/CoreBundle/Resources/views/themes/common/Entry/entries.xml.twig index 25d09ec3..cf6f6571 100644 --- a/src/Wallabag/CoreBundle/Resources/views/themes/common/Entry/entries.xml.twig +++ b/src/Wallabag/CoreBundle/Resources/views/themes/common/Entry/entries.xml.twig | |||
@@ -1,34 +1,53 @@ | |||
1 | <?xml version="1.0" encoding="utf-8"?> | 1 | <?xml version="1.0" encoding="utf-8"?> |
2 | <rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:media="http://search.yahoo.com/mrss/"> | 2 | <feed xmlns="http://www.w3.org/2005/Atom"> |
3 | <channel> | 3 | {% if type != 'tag' %} |
4 | <title>wallabag - {{ type }} feed</title> | 4 | <title>wallabag — {{type}} feed</title> |
5 | <link>{{ url_html }}</link> | 5 | <subtitle type="html">Atom feed for {{ type }} entries</subtitle> |
6 | <link rel="self" href="{{ app.request.uri }}"/> | 6 | <id>wallabag:{{ domainName | removeScheme | removeWww }}:{{ user }}:{{ type }}</id> |
7 | {% if entries.hasPreviousPage -%} | 7 | <link rel="alternate" type="text/html" href="{{ url(type) }}"/> |
8 | <link rel="previous" href="{{ url }}?page={{ entries.previousPage }}"/> | 8 | {% else %} |
9 | {% endif -%} | 9 | <id>wallabag:{{ domainName | removeScheme | removeWww }}:{{ user }}:{{ type }}:{{ tag }}</id> |
10 | {% if entries.hasNextPage -%} | 10 | <link rel="alternate" type="text/html" href="{{ url('tag_entries', {'slug': tag}) }}"/> |
11 | <link rel="next" href="{{ url }}?page={{ entries.nextPage }}"/> | 11 | <title>wallabag — {{type}} {{ tag }} feed</title> |
12 | {% endif -%} | 12 | <subtitle type="html">Atom feed for entries tagged with {{ tag }}</subtitle> |
13 | <link rel="last" href="{{ url }}?page={{ entries.nbPages }}"/> | 13 | {% endif %} |
14 | <pubDate>{{ "now"|date(constant('DATE_RSS')) }}</pubDate> | 14 | {% if entries | length > 0 %} |
15 | <generator>wallabag</generator> | 15 | <updated>{{ (entries | first).createdAt | date('c') }}</updated> {# Indicates the last time the feed was modified in a significant way. #} |
16 | <description>wallabag {{ type }} elements</description> | 16 | {% endif %} |
17 | 17 | <link rel="self" type="application/atom+xml" href="{{ app.request.uri }}"/> | |
18 | {% for entry in entries %} | 18 | {% if entries.hasPreviousPage %} |
19 | 19 | <link rel="previous" href="{{ url }}/{{ entries.previousPage }}"/> | |
20 | <item> | 20 | {% endif -%} |
21 | <title><![CDATA[{{ entry.title|e }}]]></title> | 21 | {% if entries.hasNextPage %} |
22 | <source url="{{ url('view', { 'id': entry.id }) }}">wallabag</source> | 22 | <link rel="next" href="{{ url }}/{{ entries.nextPage }}"/> |
23 | <link>{{ entry.url }}</link> | 23 | {% endif -%} |
24 | <guid>{{ entry.url }}</guid> | 24 | <link rel="last" href="{{ url }}/{{ entries.nbPages }}"/> |
25 | <pubDate>{{ entry.createdAt|date(constant('DATE_RSS')) }}</pubDate> | 25 | <generator uri="https://wallabag.org" version="{{ version }}">wallabag</generator> |
26 | <description> | 26 | <author> |
27 | <![CDATA[{%- if entry.readingTime > 0 -%}{{ 'entry.list.reading_time_minutes'|trans({'%readingTime%': entry.readingTime}) }}{%- else -%}{{ 'entry.list.reading_time_less_one_minute'|trans|raw }}{%- endif %}{{ entry.content|raw -}}]]> | 27 | <name>{{ user }}</name> |
28 | </description> | 28 | </author> |
29 | </item> | 29 | <icon>{{ asset('favicon.ico') }}</icon> |
30 | 30 | <logo>{{ asset('bundles/wallabagcore/themes/_global/img/logo-square.png') }}</logo> | |
31 | {% for entry in entries %} | ||
32 | <entry> | ||
33 | <title><![CDATA[{{ entry.title|e }}]]></title> | ||
34 | <link rel="alternate" type="text/html" | ||
35 | href="{{ url('view', {'id': entry.id}) }}"/> | ||
36 | <link rel="via">{{ entry.url }}</link> | ||
37 | <id>wallabag:{{ domainName | removeScheme | removeWww }}:{{ user }}:entry:{{ entry.id }}</id> | ||
38 | <updated>{{ entry.updatedAt|date('c') }}</updated> | ||
39 | <published>{{ entry.createdAt|date('c') }}</published> | ||
40 | {% for tag in entry.tags %} | ||
41 | <category term="{{ tag.slug }}" label="{{ tag.label }}" /> | ||
31 | {% endfor %} | 42 | {% endfor %} |
32 | 43 | {% for author in entry.publishedBy %} | |
33 | </channel> | 44 | <author> |
34 | </rss> | 45 | <name>{{ author }}</name> |
46 | </author> | ||
47 | {% endfor %} | ||
48 | <content type="html" {% if entry.language %}xml:lang="{{ entry.language[:2] }}"{% endif %}> | ||
49 | <![CDATA[{%- if entry.readingTime > 0 -%}{{ 'entry.list.reading_time_minutes'|trans({'%readingTime%': entry.readingTime}) }}{%- else -%}{{ 'entry.list.reading_time_less_one_minute'|trans|raw }}{%- endif %}{{ entry.content|raw -}}]]> | ||
50 | </content> | ||
51 | </entry> | ||
52 | {% endfor %} | ||
53 | </feed> | ||
diff --git a/src/Wallabag/CoreBundle/Resources/views/themes/common/Static/quickstart.html.twig b/src/Wallabag/CoreBundle/Resources/views/themes/common/Static/quickstart.html.twig index 4580813c..521b3eea 100644 --- a/src/Wallabag/CoreBundle/Resources/views/themes/common/Static/quickstart.html.twig +++ b/src/Wallabag/CoreBundle/Resources/views/themes/common/Static/quickstart.html.twig | |||
@@ -21,7 +21,7 @@ | |||
21 | <div class="card-action"> | 21 | <div class="card-action"> |
22 | <ul> | 22 | <ul> |
23 | <li><a href="{{ path('config') }}">{{ 'quickstart.configure.language'|trans }}</a></li> | 23 | <li><a href="{{ path('config') }}">{{ 'quickstart.configure.language'|trans }}</a></li> |
24 | <li><a href="{{ path('config') }}#set2">{{ 'quickstart.configure.rss'|trans }}</a></li> | 24 | <li><a href="{{ path('config') }}#set2">{{ 'quickstart.configure.feed'|trans }}</a></li> |
25 | <li><a href="{{ path('config') }}#set5">{{ 'quickstart.more'|trans }}</a></li> | 25 | <li><a href="{{ path('config') }}#set5">{{ 'quickstart.more'|trans }}</a></li> |
26 | </ul> | 26 | </ul> |
27 | </div> | 27 | </div> |
diff --git a/src/Wallabag/CoreBundle/Resources/views/themes/material/Config/index.html.twig b/src/Wallabag/CoreBundle/Resources/views/themes/material/Config/index.html.twig index 412c18f4..818fc4e7 100644 --- a/src/Wallabag/CoreBundle/Resources/views/themes/material/Config/index.html.twig +++ b/src/Wallabag/CoreBundle/Resources/views/themes/material/Config/index.html.twig | |||
@@ -12,7 +12,7 @@ | |||
12 | <div class="div_tabs col s12"> | 12 | <div class="div_tabs col s12"> |
13 | <ul class="tabs"> | 13 | <ul class="tabs"> |
14 | <li class="tab col s12 m6 l3"><a class="active" href="#set1">{{ 'config.tab_menu.settings'|trans }}</a></li> | 14 | <li class="tab col s12 m6 l3"><a class="active" href="#set1">{{ 'config.tab_menu.settings'|trans }}</a></li> |
15 | <li class="tab col s12 m6 l3"><a href="#set2">{{ 'config.tab_menu.rss'|trans }}</a></li> | 15 | <li class="tab col s12 m6 l3"><a href="#set2">{{ 'config.tab_menu.feed'|trans }}</a></li> |
16 | <li class="tab col s12 m6 l3"><a href="#set3">{{ 'config.tab_menu.user_info'|trans }}</a></li> | 16 | <li class="tab col s12 m6 l3"><a href="#set3">{{ 'config.tab_menu.user_info'|trans }}</a></li> |
17 | <li class="tab col s12 m6 l3"><a href="#set4">{{ 'config.tab_menu.password'|trans }}</a></li> | 17 | <li class="tab col s12 m6 l3"><a href="#set4">{{ 'config.tab_menu.password'|trans }}</a></li> |
18 | <li class="tab col s12 m6 l3"><a href="#set5">{{ 'config.tab_menu.rules'|trans }}</a></li> | 18 | <li class="tab col s12 m6 l3"><a href="#set5">{{ 'config.tab_menu.rules'|trans }}</a></li> |
@@ -122,42 +122,42 @@ | |||
122 | </div> | 122 | </div> |
123 | 123 | ||
124 | <div id="set2" class="col s12"> | 124 | <div id="set2" class="col s12"> |
125 | {{ form_start(form.rss) }} | 125 | {{ form_start(form.feed) }} |
126 | {{ form_errors(form.rss) }} | 126 | {{ form_errors(form.feed) }} |
127 | 127 | ||
128 | <div class="row"> | 128 | <div class="row"> |
129 | <div class="input-field col s12"> | 129 | <div class="input-field col s12"> |
130 | {{ 'config.form_rss.description'|trans }} | 130 | {{ 'config.form_feed.description'|trans }} |
131 | </div> | 131 | </div> |
132 | </div> | 132 | </div> |
133 | 133 | ||
134 | <div class="row"> | 134 | <div class="row"> |
135 | <div class="col s12"> | 135 | <div class="col s12"> |
136 | <h6 class="grey-text">{{ 'config.form_rss.token_label'|trans }}</h6> | 136 | <h6 class="grey-text">{{ 'config.form_feed.token_label'|trans }}</h6> |
137 | <div> | 137 | <div> |
138 | {% if rss.token %} | 138 | {% if feed.token %} |
139 | {{ rss.token }} | 139 | {{ feed.token }} |
140 | {% else %} | 140 | {% else %} |
141 | <em>{{ 'config.form_rss.no_token'|trans }}</em> | 141 | <em>{{ 'config.form_feed.no_token'|trans }}</em> |
142 | {% endif %} | 142 | {% endif %} |
143 | – <a href="{{ path('generate_token') }}"> | 143 | – <a href="{{ path('generate_token') }}"> |
144 | {% if rss.token %} | 144 | {% if feed.token %} |
145 | {{ 'config.form_rss.token_reset'|trans }} | 145 | {{ 'config.form_feed.token_reset'|trans }} |
146 | {% else %} | 146 | {% else %} |
147 | {{ 'config.form_rss.token_create'|trans }} | 147 | {{ 'config.form_feed.token_create'|trans }} |
148 | {% endif %}</a> | 148 | {% endif %}</a> |
149 | </div> | 149 | </div> |
150 | </div> | 150 | </div> |
151 | </div> | 151 | </div> |
152 | {% if rss.token %} | 152 | {% if feed.token %} |
153 | <div class="row"> | 153 | <div class="row"> |
154 | <div class="col s12"> | 154 | <div class="col s12"> |
155 | <h6 class="grey-text">{{ 'config.form_rss.rss_links'|trans }}</h6> | 155 | <h6 class="grey-text">{{ 'config.form_feed.feed_links'|trans }}</h6> |
156 | <ul> | 156 | <ul> |
157 | <li><a href="{{ path('unread_rss', {'username': rss.username, 'token': rss.token}) }}">{{ 'config.form_rss.rss_link.unread'|trans }}</a></li> | 157 | <li><a href="{{ path('unread_feed', {'username': feed.username, 'token': feed.token}) }}">{{ 'config.form_feed.feed_link.unread'|trans }}</a></li> |
158 | <li><a href="{{ path('starred_rss', {'username': rss.username, 'token': rss.token}) }}">{{ 'config.form_rss.rss_link.starred'|trans }}</a></li> | 158 | <li><a href="{{ path('starred_feed', {'username': feed.username, 'token': feed.token}) }}">{{ 'config.form_feed.feed_link.starred'|trans }}</a></li> |
159 | <li><a href="{{ path('archive_rss', {'username': rss.username, 'token': rss.token}) }}">{{ 'config.form_rss.rss_link.archive'|trans }}</a></li> | 159 | <li><a href="{{ path('archive_feed', {'username': feed.username, 'token': feed.token}) }}">{{ 'config.form_feed.feed_link.archive'|trans }}</a></li> |
160 | <li><a href="{{ path('all_rss', {'username': rss.username, 'token': rss.token}) }}">{{ 'config.form_rss.rss_link.all'|trans }}</a></li> | 160 | <li><a href="{{ path('all_feed', {'username': feed.username, 'token': feed.token}) }}">{{ 'config.form_feed.feed_link.all'|trans }}</a></li> |
161 | </ul> | 161 | </ul> |
162 | </div> | 162 | </div> |
163 | </div> | 163 | </div> |
@@ -165,14 +165,14 @@ | |||
165 | 165 | ||
166 | <div class="row"> | 166 | <div class="row"> |
167 | <div class="input-field col s12"> | 167 | <div class="input-field col s12"> |
168 | {{ form_label(form.rss.rss_limit) }} | 168 | {{ form_label(form.feed.feed_limit) }} |
169 | {{ form_errors(form.rss.rss_limit) }} | 169 | {{ form_errors(form.feed.feed_limit) }} |
170 | {{ form_widget(form.rss.rss_limit) }} | 170 | {{ form_widget(form.feed.feed_limit) }} |
171 | </div> | 171 | </div> |
172 | </div> | 172 | </div> |
173 | 173 | ||
174 | {{ form_widget(form.rss.save, {'attr': {'class': 'btn waves-effect waves-light'}}) }} | 174 | {{ form_widget(form.feed.save, {'attr': {'class': 'btn waves-effect waves-light'}}) }} |
175 | {{ form_rest(form.rss) }} | 175 | {{ form_rest(form.feed) }} |
176 | </form> | 176 | </form> |
177 | </div> | 177 | </div> |
178 | 178 | ||
diff --git a/src/Wallabag/CoreBundle/Resources/views/themes/material/Entry/entries.html.twig b/src/Wallabag/CoreBundle/Resources/views/themes/material/Entry/entries.html.twig index 067c8975..476d7403 100644 --- a/src/Wallabag/CoreBundle/Resources/views/themes/material/Entry/entries.html.twig +++ b/src/Wallabag/CoreBundle/Resources/views/themes/material/Entry/entries.html.twig | |||
@@ -2,8 +2,8 @@ | |||
2 | 2 | ||
3 | {% block head %} | 3 | {% block head %} |
4 | {{ parent() }} | 4 | {{ parent() }} |
5 | {% if tag is defined and app.user.config.rssToken %} | 5 | {% if tag is defined and app.user.config.feedToken %} |
6 | <link rel="alternate" type="application/rss+xml" href="{{ path('tag_rss', {'username': app.user.username, 'token': app.user.config.rssToken, 'slug': tag.slug}) }}" /> | 6 | <link rel="alternate" type="application/atom+xml" href="{{ path('tag_feed', {'username': app.user.username, 'token': app.user.config.feedToken, 'slug': tag.slug}) }}" /> |
7 | {% endif %} | 7 | {% endif %} |
8 | {% endblock %} | 8 | {% endblock %} |
9 | 9 | ||
@@ -28,8 +28,8 @@ | |||
28 | <div class="nb-results"> | 28 | <div class="nb-results"> |
29 | {{ 'entry.list.number_on_the_page'|transchoice(entries.count) }} | 29 | {{ 'entry.list.number_on_the_page'|transchoice(entries.count) }} |
30 | <a href="{{ path('switch_view_mode') }}"><i class="material-icons">{% if listMode == 0 %}view_list{% else %}view_module{% endif %}</i></a> | 30 | <a href="{{ path('switch_view_mode') }}"><i class="material-icons">{% if listMode == 0 %}view_list{% else %}view_module{% endif %}</i></a> |
31 | {% if app.user.config.rssToken %} | 31 | {% if app.user.config.feedToken %} |
32 | {% include "@WallabagCore/themes/common/Entry/_rss_link.html.twig" %} | 32 | {% include "@WallabagCore/themes/common/Entry/_feed_link.html.twig" %} |
33 | {% endif %} | 33 | {% endif %} |
34 | </div> | 34 | </div> |
35 | {% if entries.getNbPages > 1 %} | 35 | {% if entries.getNbPages > 1 %} |
diff --git a/src/Wallabag/CoreBundle/Resources/views/themes/material/Tag/tags.html.twig b/src/Wallabag/CoreBundle/Resources/views/themes/material/Tag/tags.html.twig index 21e88a9a..79907bbb 100644 --- a/src/Wallabag/CoreBundle/Resources/views/themes/material/Tag/tags.html.twig +++ b/src/Wallabag/CoreBundle/Resources/views/themes/material/Tag/tags.html.twig | |||
@@ -25,8 +25,8 @@ | |||
25 | <i class="material-icons">mode_edit</i> | 25 | <i class="material-icons">mode_edit</i> |
26 | </a> | 26 | </a> |
27 | {% endif %} | 27 | {% endif %} |
28 | {% if app.user.config.rssToken %} | 28 | {% if app.user.config.feedToken %} |
29 | <a rel="alternate" type="application/rss+xml" href="{{ path('tag_rss', {'username': app.user.username, 'token': app.user.config.rssToken, 'slug': tag.slug}) }}" class="card-tag-rss"><i class="material-icons">rss_feed</i></a> | 29 | <a rel="alternate" type="application/atom+xml" href="{{ path('tag_feed', {'username': app.user.username, 'token': app.user.config.feedToken, 'slug': tag.slug}) }}" class="card-tag-rss"><i class="material-icons">rss_feed</i></a> |
30 | {% endif %} | 30 | {% endif %} |
31 | </li> | 31 | </li> |
32 | {% endfor %} | 32 | {% endfor %} |
diff --git a/src/Wallabag/CoreBundle/Tools/Utils.php b/src/Wallabag/CoreBundle/Tools/Utils.php index e56e251e..b7ad7966 100644 --- a/src/Wallabag/CoreBundle/Tools/Utils.php +++ b/src/Wallabag/CoreBundle/Tools/Utils.php | |||
@@ -5,7 +5,7 @@ namespace Wallabag\CoreBundle\Tools; | |||
5 | class Utils | 5 | class Utils |
6 | { | 6 | { |
7 | /** | 7 | /** |
8 | * Generate a token used for RSS. | 8 | * Generate a token used for Feeds. |
9 | * | 9 | * |
10 | * @param int $length Length of the token | 10 | * @param int $length Length of the token |
11 | * | 11 | * |
diff --git a/src/Wallabag/CoreBundle/Twig/WallabagExtension.php b/src/Wallabag/CoreBundle/Twig/WallabagExtension.php index 00b1e595..536185d4 100644 --- a/src/Wallabag/CoreBundle/Twig/WallabagExtension.php +++ b/src/Wallabag/CoreBundle/Twig/WallabagExtension.php | |||
@@ -28,6 +28,7 @@ class WallabagExtension extends \Twig_Extension implements \Twig_Extension_Globa | |||
28 | { | 28 | { |
29 | return [ | 29 | return [ |
30 | new \Twig_SimpleFilter('removeWww', [$this, 'removeWww']), | 30 | new \Twig_SimpleFilter('removeWww', [$this, 'removeWww']), |
31 | new \Twig_SimpleFilter('removeScheme', [$this, 'removeScheme']), | ||
31 | new \Twig_SimpleFilter('removeSchemeAndWww', [$this, 'removeSchemeAndWww']), | 32 | new \Twig_SimpleFilter('removeSchemeAndWww', [$this, 'removeSchemeAndWww']), |
32 | ]; | 33 | ]; |
33 | } | 34 | } |
@@ -46,11 +47,14 @@ class WallabagExtension extends \Twig_Extension implements \Twig_Extension_Globa | |||
46 | return preg_replace('/^www\./i', '', $url); | 47 | return preg_replace('/^www\./i', '', $url); |
47 | } | 48 | } |
48 | 49 | ||
50 | public function removeScheme($url) | ||
51 | { | ||
52 | return preg_replace('#^https?://#i', '', $url); | ||
53 | } | ||
54 | |||
49 | public function removeSchemeAndWww($url) | 55 | public function removeSchemeAndWww($url) |
50 | { | 56 | { |
51 | return $this->removeWww( | 57 | return $this->removeWww($this->removeScheme($url)); |
52 | preg_replace('@^https?://@i', '', $url) | ||
53 | ); | ||
54 | } | 58 | } |
55 | 59 | ||
56 | /** | 60 | /** |
diff --git a/src/Wallabag/UserBundle/EventListener/CreateConfigListener.php b/src/Wallabag/UserBundle/EventListener/CreateConfigListener.php index 5cabfd35..81954213 100644 --- a/src/Wallabag/UserBundle/EventListener/CreateConfigListener.php +++ b/src/Wallabag/UserBundle/EventListener/CreateConfigListener.php | |||
@@ -18,19 +18,19 @@ class CreateConfigListener implements EventSubscriberInterface | |||
18 | private $em; | 18 | private $em; |
19 | private $theme; | 19 | private $theme; |
20 | private $itemsOnPage; | 20 | private $itemsOnPage; |
21 | private $rssLimit; | 21 | private $feedLimit; |
22 | private $language; | 22 | private $language; |
23 | private $readingSpeed; | 23 | private $readingSpeed; |
24 | private $actionMarkAsRead; | 24 | private $actionMarkAsRead; |
25 | private $listMode; | 25 | private $listMode; |
26 | private $session; | 26 | private $session; |
27 | 27 | ||
28 | public function __construct(EntityManager $em, $theme, $itemsOnPage, $rssLimit, $language, $readingSpeed, $actionMarkAsRead, $listMode, Session $session) | 28 | public function __construct(EntityManager $em, $theme, $itemsOnPage, $feedLimit, $language, $readingSpeed, $actionMarkAsRead, $listMode, Session $session) |
29 | { | 29 | { |
30 | $this->em = $em; | 30 | $this->em = $em; |
31 | $this->theme = $theme; | 31 | $this->theme = $theme; |
32 | $this->itemsOnPage = $itemsOnPage; | 32 | $this->itemsOnPage = $itemsOnPage; |
33 | $this->rssLimit = $rssLimit; | 33 | $this->feedLimit = $feedLimit; |
34 | $this->language = $language; | 34 | $this->language = $language; |
35 | $this->readingSpeed = $readingSpeed; | 35 | $this->readingSpeed = $readingSpeed; |
36 | $this->actionMarkAsRead = $actionMarkAsRead; | 36 | $this->actionMarkAsRead = $actionMarkAsRead; |
@@ -54,7 +54,7 @@ class CreateConfigListener implements EventSubscriberInterface | |||
54 | $config = new Config($event->getUser()); | 54 | $config = new Config($event->getUser()); |
55 | $config->setTheme($this->theme); | 55 | $config->setTheme($this->theme); |
56 | $config->setItemsPerPage($this->itemsOnPage); | 56 | $config->setItemsPerPage($this->itemsOnPage); |
57 | $config->setRssLimit($this->rssLimit); | 57 | $config->setFeedLimit($this->feedLimit); |
58 | $config->setLanguage($this->session->get('_locale', $this->language)); | 58 | $config->setLanguage($this->session->get('_locale', $this->language)); |
59 | $config->setReadingSpeed($this->readingSpeed); | 59 | $config->setReadingSpeed($this->readingSpeed); |
60 | $config->setActionMarkAsRead($this->actionMarkAsRead); | 60 | $config->setActionMarkAsRead($this->actionMarkAsRead); |
diff --git a/src/Wallabag/UserBundle/Repository/UserRepository.php b/src/Wallabag/UserBundle/Repository/UserRepository.php index be693d3b..4abd55f1 100644 --- a/src/Wallabag/UserBundle/Repository/UserRepository.php +++ b/src/Wallabag/UserBundle/Repository/UserRepository.php | |||
@@ -9,18 +9,18 @@ use Wallabag\UserBundle\Entity\User; | |||
9 | class UserRepository extends EntityRepository | 9 | class UserRepository extends EntityRepository |
10 | { | 10 | { |
11 | /** | 11 | /** |
12 | * Find a user by its username and rss roken. | 12 | * Find a user by its username and Feed token. |
13 | * | 13 | * |
14 | * @param string $username | 14 | * @param string $username |
15 | * @param string $rssToken | 15 | * @param string $feedToken |
16 | * | 16 | * |
17 | * @return User|null | 17 | * @return User|null |
18 | */ | 18 | */ |
19 | public function findOneByUsernameAndRsstoken($username, $rssToken) | 19 | public function findOneByUsernameAndFeedtoken($username, $feedToken) |
20 | { | 20 | { |
21 | return $this->createQueryBuilder('u') | 21 | return $this->createQueryBuilder('u') |
22 | ->leftJoin('u.config', 'c') | 22 | ->leftJoin('u.config', 'c') |
23 | ->where('c.rssToken = :rss_token')->setParameter('rss_token', $rssToken) | 23 | ->where('c.feedToken = :feed_token')->setParameter('feed_token', $feedToken) |
24 | ->andWhere('u.username = :username')->setParameter('username', $username) | 24 | ->andWhere('u.username = :username')->setParameter('username', $username) |
25 | ->getQuery() | 25 | ->getQuery() |
26 | ->getOneOrNullResult(); | 26 | ->getOneOrNullResult(); |
diff --git a/src/Wallabag/UserBundle/Resources/config/services.yml b/src/Wallabag/UserBundle/Resources/config/services.yml index 72cda3f8..2dcf3011 100644 --- a/src/Wallabag/UserBundle/Resources/config/services.yml +++ b/src/Wallabag/UserBundle/Resources/config/services.yml | |||
@@ -28,7 +28,7 @@ services: | |||
28 | - "@doctrine.orm.entity_manager" | 28 | - "@doctrine.orm.entity_manager" |
29 | - "%wallabag_core.theme%" | 29 | - "%wallabag_core.theme%" |
30 | - "%wallabag_core.items_on_page%" | 30 | - "%wallabag_core.items_on_page%" |
31 | - "%wallabag_core.rss_limit%" | 31 | - "%wallabag_core.feed_limit%" |
32 | - "%wallabag_core.language%" | 32 | - "%wallabag_core.language%" |
33 | - "%wallabag_core.reading_speed%" | 33 | - "%wallabag_core.reading_speed%" |
34 | - "%wallabag_core.action_mark_as_read%" | 34 | - "%wallabag_core.action_mark_as_read%" |
diff --git a/tests/Wallabag/CoreBundle/Controller/ConfigControllerTest.php b/tests/Wallabag/CoreBundle/Controller/ConfigControllerTest.php index 1090a686..d8478ce3 100644 --- a/tests/Wallabag/CoreBundle/Controller/ConfigControllerTest.php +++ b/tests/Wallabag/CoreBundle/Controller/ConfigControllerTest.php | |||
@@ -33,7 +33,7 @@ class ConfigControllerTest extends WallabagCoreTestCase | |||
33 | $this->assertCount(1, $crawler->filter('button[id=config_save]')); | 33 | $this->assertCount(1, $crawler->filter('button[id=config_save]')); |
34 | $this->assertCount(1, $crawler->filter('button[id=change_passwd_save]')); | 34 | $this->assertCount(1, $crawler->filter('button[id=change_passwd_save]')); |
35 | $this->assertCount(1, $crawler->filter('button[id=update_user_save]')); | 35 | $this->assertCount(1, $crawler->filter('button[id=update_user_save]')); |
36 | $this->assertCount(1, $crawler->filter('button[id=rss_config_save]')); | 36 | $this->assertCount(1, $crawler->filter('button[id=feed_config_save]')); |
37 | } | 37 | } |
38 | 38 | ||
39 | public function testUpdate() | 39 | public function testUpdate() |
@@ -297,7 +297,7 @@ class ConfigControllerTest extends WallabagCoreTestCase | |||
297 | $this->assertContains('flashes.config.notice.user_updated', $alert[0]); | 297 | $this->assertContains('flashes.config.notice.user_updated', $alert[0]); |
298 | } | 298 | } |
299 | 299 | ||
300 | public function testRssUpdateResetToken() | 300 | public function testFeedUpdateResetToken() |
301 | { | 301 | { |
302 | $this->logInAs('admin'); | 302 | $this->logInAs('admin'); |
303 | $client = $this->getClient(); | 303 | $client = $this->getClient(); |
@@ -313,7 +313,7 @@ class ConfigControllerTest extends WallabagCoreTestCase | |||
313 | } | 313 | } |
314 | 314 | ||
315 | $config = $user->getConfig(); | 315 | $config = $user->getConfig(); |
316 | $config->setRssToken(null); | 316 | $config->setFeedToken(null); |
317 | $em->persist($config); | 317 | $em->persist($config); |
318 | $em->flush(); | 318 | $em->flush(); |
319 | 319 | ||
@@ -322,7 +322,7 @@ class ConfigControllerTest extends WallabagCoreTestCase | |||
322 | $this->assertSame(200, $client->getResponse()->getStatusCode()); | 322 | $this->assertSame(200, $client->getResponse()->getStatusCode()); |
323 | 323 | ||
324 | $this->assertGreaterThan(1, $body = $crawler->filter('body')->extract(['_text'])); | 324 | $this->assertGreaterThan(1, $body = $crawler->filter('body')->extract(['_text'])); |
325 | $this->assertContains('config.form_rss.no_token', $body[0]); | 325 | $this->assertContains('config.form_feed.no_token', $body[0]); |
326 | 326 | ||
327 | $client->request('GET', '/generate-token'); | 327 | $client->request('GET', '/generate-token'); |
328 | $this->assertSame(302, $client->getResponse()->getStatusCode()); | 328 | $this->assertSame(302, $client->getResponse()->getStatusCode()); |
@@ -330,7 +330,7 @@ class ConfigControllerTest extends WallabagCoreTestCase | |||
330 | $crawler = $client->followRedirect(); | 330 | $crawler = $client->followRedirect(); |
331 | 331 | ||
332 | $this->assertGreaterThan(1, $body = $crawler->filter('body')->extract(['_text'])); | 332 | $this->assertGreaterThan(1, $body = $crawler->filter('body')->extract(['_text'])); |
333 | $this->assertNotContains('config.form_rss.no_token', $body[0]); | 333 | $this->assertNotContains('config.form_feed.no_token', $body[0]); |
334 | } | 334 | } |
335 | 335 | ||
336 | public function testGenerateTokenAjax() | 336 | public function testGenerateTokenAjax() |
@@ -351,7 +351,7 @@ class ConfigControllerTest extends WallabagCoreTestCase | |||
351 | $this->assertArrayHasKey('token', $content); | 351 | $this->assertArrayHasKey('token', $content); |
352 | } | 352 | } |
353 | 353 | ||
354 | public function testRssUpdate() | 354 | public function testFeedUpdate() |
355 | { | 355 | { |
356 | $this->logInAs('admin'); | 356 | $this->logInAs('admin'); |
357 | $client = $this->getClient(); | 357 | $client = $this->getClient(); |
@@ -360,10 +360,10 @@ class ConfigControllerTest extends WallabagCoreTestCase | |||
360 | 360 | ||
361 | $this->assertSame(200, $client->getResponse()->getStatusCode()); | 361 | $this->assertSame(200, $client->getResponse()->getStatusCode()); |
362 | 362 | ||
363 | $form = $crawler->filter('button[id=rss_config_save]')->form(); | 363 | $form = $crawler->filter('button[id=feed_config_save]')->form(); |
364 | 364 | ||
365 | $data = [ | 365 | $data = [ |
366 | 'rss_config[rss_limit]' => 12, | 366 | 'feed_config[feed_limit]' => 12, |
367 | ]; | 367 | ]; |
368 | 368 | ||
369 | $client->submit($form, $data); | 369 | $client->submit($form, $data); |
@@ -372,31 +372,31 @@ class ConfigControllerTest extends WallabagCoreTestCase | |||
372 | 372 | ||
373 | $crawler = $client->followRedirect(); | 373 | $crawler = $client->followRedirect(); |
374 | 374 | ||
375 | $this->assertContains('flashes.config.notice.rss_updated', $crawler->filter('body')->extract(['_text'])[0]); | 375 | $this->assertContains('flashes.config.notice.feed_updated', $crawler->filter('body')->extract(['_text'])[0]); |
376 | } | 376 | } |
377 | 377 | ||
378 | public function dataForRssFailed() | 378 | public function dataForFeedFailed() |
379 | { | 379 | { |
380 | return [ | 380 | return [ |
381 | [ | 381 | [ |
382 | [ | 382 | [ |
383 | 'rss_config[rss_limit]' => 0, | 383 | 'feed_config[feed_limit]' => 0, |
384 | ], | 384 | ], |
385 | 'This value should be 1 or more.', | 385 | 'This value should be 1 or more.', |
386 | ], | 386 | ], |
387 | [ | 387 | [ |
388 | [ | 388 | [ |
389 | 'rss_config[rss_limit]' => 1000000000000, | 389 | 'feed_config[feed_limit]' => 1000000000000, |
390 | ], | 390 | ], |
391 | 'validator.rss_limit_too_high', | 391 | 'validator.feed_limit_too_high', |
392 | ], | 392 | ], |
393 | ]; | 393 | ]; |
394 | } | 394 | } |
395 | 395 | ||
396 | /** | 396 | /** |
397 | * @dataProvider dataForRssFailed | 397 | * @dataProvider dataForFeedFailed |
398 | */ | 398 | */ |
399 | public function testRssFailed($data, $expectedMessage) | 399 | public function testFeedFailed($data, $expectedMessage) |
400 | { | 400 | { |
401 | $this->logInAs('admin'); | 401 | $this->logInAs('admin'); |
402 | $client = $this->getClient(); | 402 | $client = $this->getClient(); |
@@ -405,7 +405,7 @@ class ConfigControllerTest extends WallabagCoreTestCase | |||
405 | 405 | ||
406 | $this->assertSame(200, $client->getResponse()->getStatusCode()); | 406 | $this->assertSame(200, $client->getResponse()->getStatusCode()); |
407 | 407 | ||
408 | $form = $crawler->filter('button[id=rss_config_save]')->form(); | 408 | $form = $crawler->filter('button[id=feed_config_save]')->form(); |
409 | 409 | ||
410 | $crawler = $client->submit($form, $data); | 410 | $crawler = $client->submit($form, $data); |
411 | 411 | ||
diff --git a/tests/Wallabag/CoreBundle/Controller/EntryControllerTest.php b/tests/Wallabag/CoreBundle/Controller/EntryControllerTest.php index 28291b5a..caa8929d 100644 --- a/tests/Wallabag/CoreBundle/Controller/EntryControllerTest.php +++ b/tests/Wallabag/CoreBundle/Controller/EntryControllerTest.php | |||
@@ -166,7 +166,7 @@ class EntryControllerTest extends WallabagCoreTestCase | |||
166 | $this->assertSame($this->url, $content->getUrl()); | 166 | $this->assertSame($this->url, $content->getUrl()); |
167 | $this->assertContains('Google', $content->getTitle()); | 167 | $this->assertContains('Google', $content->getTitle()); |
168 | $this->assertSame('fr', $content->getLanguage()); | 168 | $this->assertSame('fr', $content->getLanguage()); |
169 | $this->assertSame('2016-04-07 19:01:35', $content->getPublishedAt()->format('Y-m-d H:i:s')); | 169 | $this->assertSame('2015-03-28 11:43:19', $content->getPublishedAt()->format('Y-m-d H:i:s')); |
170 | $this->assertArrayHasKey('x-frame-options', $content->getHeaders()); | 170 | $this->assertArrayHasKey('x-frame-options', $content->getHeaders()); |
171 | $client->getContainer()->get('craue_config')->set('store_article_headers', 0); | 171 | $client->getContainer()->get('craue_config')->set('store_article_headers', 0); |
172 | } | 172 | } |
diff --git a/tests/Wallabag/CoreBundle/Controller/FeedControllerTest.php b/tests/Wallabag/CoreBundle/Controller/FeedControllerTest.php new file mode 100644 index 00000000..d52d7bb8 --- /dev/null +++ b/tests/Wallabag/CoreBundle/Controller/FeedControllerTest.php | |||
@@ -0,0 +1,261 @@ | |||
1 | <?php | ||
2 | |||
3 | namespace Tests\Wallabag\CoreBundle\Controller; | ||
4 | |||
5 | use Tests\Wallabag\CoreBundle\WallabagCoreTestCase; | ||
6 | |||
7 | class FeedControllerTest extends WallabagCoreTestCase | ||
8 | { | ||
9 | public function validateDom($xml, $type, $nb = null, $tagValue = null) | ||
10 | { | ||
11 | $doc = new \DOMDocument(); | ||
12 | $doc->loadXML($xml); | ||
13 | |||
14 | $xpath = new \DOMXPath($doc); | ||
15 | $xpath->registerNamespace('a', 'http://www.w3.org/2005/Atom'); | ||
16 | |||
17 | if (null === $nb) { | ||
18 | $this->assertGreaterThan(0, $xpath->query('//a:entry')->length); | ||
19 | } else { | ||
20 | $this->assertSame($nb, $xpath->query('//a:entry')->length); | ||
21 | } | ||
22 | |||
23 | $this->assertSame(1, $xpath->query('/a:feed')->length); | ||
24 | |||
25 | $this->assertSame(1, $xpath->query('/a:feed/a:title')->length); | ||
26 | $this->assertContains('favicon.ico', $xpath->query('/a:feed/a:icon')->item(0)->nodeValue); | ||
27 | $this->assertContains('logo-square.png', $xpath->query('/a:feed/a:logo')->item(0)->nodeValue); | ||
28 | |||
29 | $this->assertSame(1, $xpath->query('/a:feed/a:updated')->length); | ||
30 | |||
31 | $this->assertSame(1, $xpath->query('/a:feed/a:generator')->length); | ||
32 | $this->assertSame('wallabag', $xpath->query('/a:feed/a:generator')->item(0)->nodeValue); | ||
33 | $this->assertSame('admin', $xpath->query('/a:feed/a:author/a:name')->item(0)->nodeValue); | ||
34 | |||
35 | $this->assertSame(1, $xpath->query('/a:feed/a:subtitle')->length); | ||
36 | if (null !== $tagValue && 0 === strpos($type, 'tag')) { | ||
37 | $this->assertSame('wallabag — ' . $type . ' ' . $tagValue . ' feed', $xpath->query('/a:feed/a:title')->item(0)->nodeValue); | ||
38 | $this->assertSame('Atom feed for entries tagged with ' . $tagValue, $xpath->query('/a:feed/a:subtitle')->item(0)->nodeValue); | ||
39 | } else { | ||
40 | $this->assertSame('wallabag — ' . $type . ' feed', $xpath->query('/a:feed/a:title')->item(0)->nodeValue); | ||
41 | $this->assertSame('Atom feed for ' . $type . ' entries', $xpath->query('/a:feed/a:subtitle')->item(0)->nodeValue); | ||
42 | } | ||
43 | |||
44 | $this->assertSame(1, $xpath->query('/a:feed/a:link[@rel="self"]')->length); | ||
45 | $this->assertContains($type, $xpath->query('/a:feed/a:link[@rel="self"]')->item(0)->getAttribute('href')); | ||
46 | |||
47 | $this->assertSame(1, $xpath->query('/a:feed/a:link[@rel="last"]')->length); | ||
48 | |||
49 | foreach ($xpath->query('//a:entry') as $item) { | ||
50 | $this->assertSame(1, $xpath->query('a:title', $item)->length); | ||
51 | $this->assertSame(1, $xpath->query('a:link[@rel="via"]', $item)->length); | ||
52 | $this->assertSame(1, $xpath->query('a:link[@rel="alternate"]', $item)->length); | ||
53 | $this->assertSame(1, $xpath->query('a:id', $item)->length); | ||
54 | $this->assertSame(1, $xpath->query('a:published', $item)->length); | ||
55 | $this->assertSame(1, $xpath->query('a:content', $item)->length); | ||
56 | } | ||
57 | } | ||
58 | |||
59 | public function dataForBadUrl() | ||
60 | { | ||
61 | return [ | ||
62 | [ | ||
63 | '/feed/admin/YZIOAUZIAO/unread', | ||
64 | ], | ||
65 | [ | ||
66 | '/feed/wallace/YZIOAUZIAO/starred', | ||
67 | ], | ||
68 | [ | ||
69 | '/feed/wallace/YZIOAUZIAO/archives', | ||
70 | ], | ||
71 | [ | ||
72 | '/feed/wallace/YZIOAUZIAO/all', | ||
73 | ], | ||
74 | ]; | ||
75 | } | ||
76 | |||
77 | /** | ||
78 | * @dataProvider dataForBadUrl | ||
79 | */ | ||
80 | public function testBadUrl($url) | ||
81 | { | ||
82 | $client = $this->getClient(); | ||
83 | |||
84 | $client->request('GET', $url); | ||
85 | |||
86 | $this->assertSame(404, $client->getResponse()->getStatusCode()); | ||
87 | } | ||
88 | |||
89 | public function testUnread() | ||
90 | { | ||
91 | $client = $this->getClient(); | ||
92 | $em = $client->getContainer()->get('doctrine.orm.entity_manager'); | ||
93 | $user = $em | ||
94 | ->getRepository('WallabagUserBundle:User') | ||
95 | ->findOneByUsername('admin'); | ||
96 | |||
97 | $config = $user->getConfig(); | ||
98 | $config->setFeedToken('SUPERTOKEN'); | ||
99 | $config->setFeedLimit(2); | ||
100 | $em->persist($config); | ||
101 | $em->flush(); | ||
102 | |||
103 | $client->request('GET', '/feed/admin/SUPERTOKEN/unread'); | ||
104 | |||
105 | $this->assertSame(200, $client->getResponse()->getStatusCode()); | ||
106 | |||
107 | $this->validateDom($client->getResponse()->getContent(), 'unread', 2); | ||
108 | } | ||
109 | |||
110 | public function testStarred() | ||
111 | { | ||
112 | $client = $this->getClient(); | ||
113 | $em = $client->getContainer()->get('doctrine.orm.entity_manager'); | ||
114 | $user = $em | ||
115 | ->getRepository('WallabagUserBundle:User') | ||
116 | ->findOneByUsername('admin'); | ||
117 | |||
118 | $config = $user->getConfig(); | ||
119 | $config->setFeedToken('SUPERTOKEN'); | ||
120 | $config->setFeedLimit(1); | ||
121 | $em->persist($config); | ||
122 | $em->flush(); | ||
123 | |||
124 | $client = $this->getClient(); | ||
125 | $client->request('GET', '/feed/admin/SUPERTOKEN/starred'); | ||
126 | |||
127 | $this->assertSame(200, $client->getResponse()->getStatusCode(), 1); | ||
128 | |||
129 | $this->validateDom($client->getResponse()->getContent(), 'starred'); | ||
130 | } | ||
131 | |||
132 | public function testArchives() | ||
133 | { | ||
134 | $client = $this->getClient(); | ||
135 | $em = $client->getContainer()->get('doctrine.orm.entity_manager'); | ||
136 | $user = $em | ||
137 | ->getRepository('WallabagUserBundle:User') | ||
138 | ->findOneByUsername('admin'); | ||
139 | |||
140 | $config = $user->getConfig(); | ||
141 | $config->setFeedToken('SUPERTOKEN'); | ||
142 | $config->setFeedLimit(null); | ||
143 | $em->persist($config); | ||
144 | $em->flush(); | ||
145 | |||
146 | $client = $this->getClient(); | ||
147 | $client->request('GET', '/feed/admin/SUPERTOKEN/archive'); | ||
148 | |||
149 | $this->assertSame(200, $client->getResponse()->getStatusCode()); | ||
150 | |||
151 | $this->validateDom($client->getResponse()->getContent(), 'archive'); | ||
152 | } | ||
153 | |||
154 | public function testAll() | ||
155 | { | ||
156 | $client = $this->getClient(); | ||
157 | $em = $client->getContainer()->get('doctrine.orm.entity_manager'); | ||
158 | $user = $em | ||
159 | ->getRepository('WallabagUserBundle:User') | ||
160 | ->findOneByUsername('admin'); | ||
161 | |||
162 | $config = $user->getConfig(); | ||
163 | $config->setFeedToken('SUPERTOKEN'); | ||
164 | $config->setFeedLimit(null); | ||
165 | $em->persist($config); | ||
166 | $em->flush(); | ||
167 | |||
168 | $client = $this->getClient(); | ||
169 | $client->request('GET', '/feed/admin/SUPERTOKEN/all'); | ||
170 | |||
171 | $this->assertSame(200, $client->getResponse()->getStatusCode()); | ||
172 | |||
173 | $this->validateDom($client->getResponse()->getContent(), 'all'); | ||
174 | } | ||
175 | |||
176 | public function testPagination() | ||
177 | { | ||
178 | $client = $this->getClient(); | ||
179 | $em = $client->getContainer()->get('doctrine.orm.entity_manager'); | ||
180 | $user = $em | ||
181 | ->getRepository('WallabagUserBundle:User') | ||
182 | ->findOneByUsername('admin'); | ||
183 | |||
184 | $config = $user->getConfig(); | ||
185 | $config->setFeedToken('SUPERTOKEN'); | ||
186 | $config->setFeedLimit(1); | ||
187 | $em->persist($config); | ||
188 | $em->flush(); | ||
189 | |||
190 | $client = $this->getClient(); | ||
191 | |||
192 | $client->request('GET', '/feed/admin/SUPERTOKEN/unread'); | ||
193 | $this->assertSame(200, $client->getResponse()->getStatusCode()); | ||
194 | $this->validateDom($client->getResponse()->getContent(), 'unread'); | ||
195 | |||
196 | $client->request('GET', '/feed/admin/SUPERTOKEN/unread/2'); | ||
197 | $this->assertSame(200, $client->getResponse()->getStatusCode()); | ||
198 | $this->validateDom($client->getResponse()->getContent(), 'unread'); | ||
199 | |||
200 | $client->request('GET', '/feed/admin/SUPERTOKEN/unread/3000'); | ||
201 | $this->assertSame(302, $client->getResponse()->getStatusCode()); | ||
202 | } | ||
203 | |||
204 | public function testTags() | ||
205 | { | ||
206 | $client = $this->getClient(); | ||
207 | $em = $client->getContainer()->get('doctrine.orm.entity_manager'); | ||
208 | $user = $em | ||
209 | ->getRepository('WallabagUserBundle:User') | ||
210 | ->findOneByUsername('admin'); | ||
211 | |||
212 | $config = $user->getConfig(); | ||
213 | $config->setFeedToken('SUPERTOKEN'); | ||
214 | $config->setFeedLimit(null); | ||
215 | $em->persist($config); | ||
216 | $em->flush(); | ||
217 | |||
218 | $client = $this->getClient(); | ||
219 | $client->request('GET', '/feed/admin/SUPERTOKEN/tags/foo'); | ||
220 | |||
221 | $this->assertSame(200, $client->getResponse()->getStatusCode()); | ||
222 | |||
223 | $this->validateDom($client->getResponse()->getContent(), 'tag', 2, 'foo'); | ||
224 | |||
225 | $client->request('GET', '/feed/admin/SUPERTOKEN/tags/foo/3000'); | ||
226 | $this->assertSame(302, $client->getResponse()->getStatusCode()); | ||
227 | } | ||
228 | |||
229 | public function dataForRedirect() | ||
230 | { | ||
231 | return [ | ||
232 | [ | ||
233 | '/admin/YZIOAUZIAO/unread.xml', | ||
234 | ], | ||
235 | [ | ||
236 | '/admin/YZIOAUZIAO/starred.xml', | ||
237 | ], | ||
238 | [ | ||
239 | '/admin/YZIOAUZIAO/archive.xml', | ||
240 | ], | ||
241 | [ | ||
242 | '/admin/YZIOAUZIAO/all.xml', | ||
243 | ], | ||
244 | [ | ||
245 | '/admin/YZIOAUZIAO/tags/foo.xml', | ||
246 | ], | ||
247 | ]; | ||
248 | } | ||
249 | |||
250 | /** | ||
251 | * @dataProvider dataForRedirect | ||
252 | */ | ||
253 | public function testRedirectFromRssToAtom($url) | ||
254 | { | ||
255 | $client = $this->getClient(); | ||
256 | |||
257 | $client->request('GET', $url); | ||
258 | |||
259 | $this->assertSame(301, $client->getResponse()->getStatusCode()); | ||
260 | } | ||
261 | } | ||
diff --git a/tests/Wallabag/CoreBundle/Controller/RssControllerTest.php b/tests/Wallabag/CoreBundle/Controller/RssControllerTest.php deleted file mode 100644 index afa90621..00000000 --- a/tests/Wallabag/CoreBundle/Controller/RssControllerTest.php +++ /dev/null | |||
@@ -1,221 +0,0 @@ | |||
1 | <?php | ||
2 | |||
3 | namespace Tests\Wallabag\CoreBundle\Controller; | ||
4 | |||
5 | use Tests\Wallabag\CoreBundle\WallabagCoreTestCase; | ||
6 | |||
7 | class RssControllerTest extends WallabagCoreTestCase | ||
8 | { | ||
9 | public function validateDom($xml, $type, $urlPagination, $nb = null) | ||
10 | { | ||
11 | $doc = new \DOMDocument(); | ||
12 | $doc->loadXML($xml); | ||
13 | |||
14 | $xpath = new \DOMXPath($doc); | ||
15 | |||
16 | if (null === $nb) { | ||
17 | $this->assertGreaterThan(0, $xpath->query('//item')->length); | ||
18 | } else { | ||
19 | $this->assertSame($nb, $xpath->query('//item')->length); | ||
20 | } | ||
21 | |||
22 | $this->assertSame(1, $xpath->query('/rss')->length); | ||
23 | $this->assertSame(1, $xpath->query('/rss/channel')->length); | ||
24 | |||
25 | $this->assertSame(1, $xpath->query('/rss/channel/title')->length); | ||
26 | $this->assertSame('wallabag - ' . $type . ' feed', $xpath->query('/rss/channel/title')->item(0)->nodeValue); | ||
27 | |||
28 | $this->assertSame(1, $xpath->query('/rss/channel/pubDate')->length); | ||
29 | |||
30 | $this->assertSame(1, $xpath->query('/rss/channel/generator')->length); | ||
31 | $this->assertSame('wallabag', $xpath->query('/rss/channel/generator')->item(0)->nodeValue); | ||
32 | |||
33 | $this->assertSame(1, $xpath->query('/rss/channel/description')->length); | ||
34 | $this->assertSame('wallabag ' . $type . ' elements', $xpath->query('/rss/channel/description')->item(0)->nodeValue); | ||
35 | |||
36 | $this->assertSame(1, $xpath->query('/rss/channel/link[@rel="self"]')->length); | ||
37 | $this->assertContains($urlPagination . '.xml', $xpath->query('/rss/channel/link[@rel="self"]')->item(0)->getAttribute('href')); | ||
38 | |||
39 | $this->assertSame(1, $xpath->query('/rss/channel/link[@rel="last"]')->length); | ||
40 | $this->assertContains($urlPagination . '.xml?page=', $xpath->query('/rss/channel/link[@rel="last"]')->item(0)->getAttribute('href')); | ||
41 | |||
42 | foreach ($xpath->query('//item') as $item) { | ||
43 | $this->assertSame(1, $xpath->query('title', $item)->length); | ||
44 | $this->assertSame(1, $xpath->query('source', $item)->length); | ||
45 | $this->assertSame(1, $xpath->query('link', $item)->length); | ||
46 | $this->assertSame(1, $xpath->query('guid', $item)->length); | ||
47 | $this->assertSame(1, $xpath->query('pubDate', $item)->length); | ||
48 | $this->assertSame(1, $xpath->query('description', $item)->length); | ||
49 | } | ||
50 | } | ||
51 | |||
52 | public function dataForBadUrl() | ||
53 | { | ||
54 | return [ | ||
55 | [ | ||
56 | '/admin/YZIOAUZIAO/unread.xml', | ||
57 | ], | ||
58 | [ | ||
59 | '/wallace/YZIOAUZIAO/starred.xml', | ||
60 | ], | ||
61 | [ | ||
62 | '/wallace/YZIOAUZIAO/archives.xml', | ||
63 | ], | ||
64 | [ | ||
65 | '/wallace/YZIOAUZIAO/all.xml', | ||
66 | ], | ||
67 | ]; | ||
68 | } | ||
69 | |||
70 | /** | ||
71 | * @dataProvider dataForBadUrl | ||
72 | */ | ||
73 | public function testBadUrl($url) | ||
74 | { | ||
75 | $client = $this->getClient(); | ||
76 | |||
77 | $client->request('GET', $url); | ||
78 | |||
79 | $this->assertSame(404, $client->getResponse()->getStatusCode()); | ||
80 | } | ||
81 | |||
82 | public function testUnread() | ||
83 | { | ||
84 | $client = $this->getClient(); | ||
85 | $em = $client->getContainer()->get('doctrine.orm.entity_manager'); | ||
86 | $user = $em | ||
87 | ->getRepository('WallabagUserBundle:User') | ||
88 | ->findOneByUsername('admin'); | ||
89 | |||
90 | $config = $user->getConfig(); | ||
91 | $config->setRssToken('SUPERTOKEN'); | ||
92 | $config->setRssLimit(2); | ||
93 | $em->persist($config); | ||
94 | $em->flush(); | ||
95 | |||
96 | $client->request('GET', '/admin/SUPERTOKEN/unread.xml'); | ||
97 | |||
98 | $this->assertSame(200, $client->getResponse()->getStatusCode()); | ||
99 | |||
100 | $this->validateDom($client->getResponse()->getContent(), 'unread', 'unread', 2); | ||
101 | } | ||
102 | |||
103 | public function testStarred() | ||
104 | { | ||
105 | $client = $this->getClient(); | ||
106 | $em = $client->getContainer()->get('doctrine.orm.entity_manager'); | ||
107 | $user = $em | ||
108 | ->getRepository('WallabagUserBundle:User') | ||
109 | ->findOneByUsername('admin'); | ||
110 | |||
111 | $config = $user->getConfig(); | ||
112 | $config->setRssToken('SUPERTOKEN'); | ||
113 | $config->setRssLimit(1); | ||
114 | $em->persist($config); | ||
115 | $em->flush(); | ||
116 | |||
117 | $client = $this->getClient(); | ||
118 | $client->request('GET', '/admin/SUPERTOKEN/starred.xml'); | ||
119 | |||
120 | $this->assertSame(200, $client->getResponse()->getStatusCode(), 1); | ||
121 | |||
122 | $this->validateDom($client->getResponse()->getContent(), 'starred', 'starred'); | ||
123 | } | ||
124 | |||
125 | public function testArchives() | ||
126 | { | ||
127 | $client = $this->getClient(); | ||
128 | $em = $client->getContainer()->get('doctrine.orm.entity_manager'); | ||
129 | $user = $em | ||
130 | ->getRepository('WallabagUserBundle:User') | ||
131 | ->findOneByUsername('admin'); | ||
132 | |||
133 | $config = $user->getConfig(); | ||
134 | $config->setRssToken('SUPERTOKEN'); | ||
135 | $config->setRssLimit(null); | ||
136 | $em->persist($config); | ||
137 | $em->flush(); | ||
138 | |||
139 | $client = $this->getClient(); | ||
140 | $client->request('GET', '/admin/SUPERTOKEN/archive.xml'); | ||
141 | |||
142 | $this->assertSame(200, $client->getResponse()->getStatusCode()); | ||
143 | |||
144 | $this->validateDom($client->getResponse()->getContent(), 'archive', 'archive'); | ||
145 | } | ||
146 | |||
147 | public function testAll() | ||
148 | { | ||
149 | $client = $this->getClient(); | ||
150 | $em = $client->getContainer()->get('doctrine.orm.entity_manager'); | ||
151 | $user = $em | ||
152 | ->getRepository('WallabagUserBundle:User') | ||
153 | ->findOneByUsername('admin'); | ||
154 | |||
155 | $config = $user->getConfig(); | ||
156 | $config->setRssToken('SUPERTOKEN'); | ||
157 | $config->setRssLimit(null); | ||
158 | $em->persist($config); | ||
159 | $em->flush(); | ||
160 | |||
161 | $client = $this->getClient(); | ||
162 | $client->request('GET', '/admin/SUPERTOKEN/all.xml'); | ||
163 | |||
164 | $this->assertSame(200, $client->getResponse()->getStatusCode()); | ||
165 | |||
166 | $this->validateDom($client->getResponse()->getContent(), 'all', 'all'); | ||
167 | } | ||
168 | |||
169 | public function testPagination() | ||
170 | { | ||
171 | $client = $this->getClient(); | ||
172 | $em = $client->getContainer()->get('doctrine.orm.entity_manager'); | ||
173 | $user = $em | ||
174 | ->getRepository('WallabagUserBundle:User') | ||
175 | ->findOneByUsername('admin'); | ||
176 | |||
177 | $config = $user->getConfig(); | ||
178 | $config->setRssToken('SUPERTOKEN'); | ||
179 | $config->setRssLimit(1); | ||
180 | $em->persist($config); | ||
181 | $em->flush(); | ||
182 | |||
183 | $client = $this->getClient(); | ||
184 | |||
185 | $client->request('GET', '/admin/SUPERTOKEN/unread.xml'); | ||
186 | $this->assertSame(200, $client->getResponse()->getStatusCode()); | ||
187 | $this->validateDom($client->getResponse()->getContent(), 'unread', 'unread'); | ||
188 | |||
189 | $client->request('GET', '/admin/SUPERTOKEN/unread.xml?page=2'); | ||
190 | $this->assertSame(200, $client->getResponse()->getStatusCode()); | ||
191 | $this->validateDom($client->getResponse()->getContent(), 'unread', 'unread'); | ||
192 | |||
193 | $client->request('GET', '/admin/SUPERTOKEN/unread.xml?page=3000'); | ||
194 | $this->assertSame(302, $client->getResponse()->getStatusCode()); | ||
195 | } | ||
196 | |||
197 | public function testTags() | ||
198 | { | ||
199 | $client = $this->getClient(); | ||
200 | $em = $client->getContainer()->get('doctrine.orm.entity_manager'); | ||
201 | $user = $em | ||
202 | ->getRepository('WallabagUserBundle:User') | ||
203 | ->findOneByUsername('admin'); | ||
204 | |||
205 | $config = $user->getConfig(); | ||
206 | $config->setRssToken('SUPERTOKEN'); | ||
207 | $config->setRssLimit(null); | ||
208 | $em->persist($config); | ||
209 | $em->flush(); | ||
210 | |||
211 | $client = $this->getClient(); | ||
212 | $client->request('GET', '/admin/SUPERTOKEN/tags/foo.xml'); | ||
213 | |||
214 | $this->assertSame(200, $client->getResponse()->getStatusCode()); | ||
215 | |||
216 | $this->validateDom($client->getResponse()->getContent(), 'tag (foo)', 'tags/foo'); | ||
217 | |||
218 | $client->request('GET', '/admin/SUPERTOKEN/tags/foo.xml?page=3000'); | ||
219 | $this->assertSame(302, $client->getResponse()->getStatusCode()); | ||
220 | } | ||
221 | } | ||
diff --git a/tests/Wallabag/CoreBundle/Controller/SecurityControllerTest.php b/tests/Wallabag/CoreBundle/Controller/SecurityControllerTest.php index b03c7550..93019b1f 100644 --- a/tests/Wallabag/CoreBundle/Controller/SecurityControllerTest.php +++ b/tests/Wallabag/CoreBundle/Controller/SecurityControllerTest.php | |||
@@ -13,7 +13,7 @@ class SecurityControllerTest extends WallabagCoreTestCase | |||
13 | $client->followRedirects(); | 13 | $client->followRedirects(); |
14 | 14 | ||
15 | $crawler = $client->request('GET', '/config'); | 15 | $crawler = $client->request('GET', '/config'); |
16 | $this->assertContains('config.form_rss.description', $crawler->filter('body')->extract(['_text'])[0]); | 16 | $this->assertContains('config.form_feed.description', $crawler->filter('body')->extract(['_text'])[0]); |
17 | } | 17 | } |
18 | 18 | ||
19 | public function testLoginWithout2Factor() | 19 | public function testLoginWithout2Factor() |
@@ -23,7 +23,7 @@ class SecurityControllerTest extends WallabagCoreTestCase | |||
23 | $client->followRedirects(); | 23 | $client->followRedirects(); |
24 | 24 | ||
25 | $crawler = $client->request('GET', '/config'); | 25 | $crawler = $client->request('GET', '/config'); |
26 | $this->assertContains('config.form_rss.description', $crawler->filter('body')->extract(['_text'])[0]); | 26 | $this->assertContains('config.form_feed.description', $crawler->filter('body')->extract(['_text'])[0]); |
27 | } | 27 | } |
28 | 28 | ||
29 | public function testLoginWith2FactorEmail() | 29 | public function testLoginWith2FactorEmail() |
diff --git a/tests/Wallabag/CoreBundle/ParamConverter/UsernameRssTokenConverterTest.php b/tests/Wallabag/CoreBundle/ParamConverter/UsernameFeedTokenConverterTest.php index 800af5c9..92fe38cd 100644 --- a/tests/Wallabag/CoreBundle/ParamConverter/UsernameRssTokenConverterTest.php +++ b/tests/Wallabag/CoreBundle/ParamConverter/UsernameFeedTokenConverterTest.php | |||
@@ -5,15 +5,15 @@ namespace Tests\Wallabag\CoreBundle\ParamConverter; | |||
5 | use PHPUnit\Framework\TestCase; | 5 | use PHPUnit\Framework\TestCase; |
6 | use Sensio\Bundle\FrameworkExtraBundle\Configuration\ParamConverter; | 6 | use Sensio\Bundle\FrameworkExtraBundle\Configuration\ParamConverter; |
7 | use Symfony\Component\HttpFoundation\Request; | 7 | use Symfony\Component\HttpFoundation\Request; |
8 | use Wallabag\CoreBundle\ParamConverter\UsernameRssTokenConverter; | 8 | use Wallabag\CoreBundle\ParamConverter\UsernameFeedTokenConverter; |
9 | use Wallabag\UserBundle\Entity\User; | 9 | use Wallabag\UserBundle\Entity\User; |
10 | 10 | ||
11 | class UsernameRssTokenConverterTest extends TestCase | 11 | class UsernameFeedTokenConverterTest extends TestCase |
12 | { | 12 | { |
13 | public function testSupportsWithNoRegistry() | 13 | public function testSupportsWithNoRegistry() |
14 | { | 14 | { |
15 | $params = new ParamConverter([]); | 15 | $params = new ParamConverter([]); |
16 | $converter = new UsernameRssTokenConverter(); | 16 | $converter = new UsernameFeedTokenConverter(); |
17 | 17 | ||
18 | $this->assertFalse($converter->supports($params)); | 18 | $this->assertFalse($converter->supports($params)); |
19 | } | 19 | } |
@@ -29,7 +29,7 @@ class UsernameRssTokenConverterTest extends TestCase | |||
29 | ->will($this->returnValue([])); | 29 | ->will($this->returnValue([])); |
30 | 30 | ||
31 | $params = new ParamConverter([]); | 31 | $params = new ParamConverter([]); |
32 | $converter = new UsernameRssTokenConverter($registry); | 32 | $converter = new UsernameFeedTokenConverter($registry); |
33 | 33 | ||
34 | $this->assertFalse($converter->supports($params)); | 34 | $this->assertFalse($converter->supports($params)); |
35 | } | 35 | } |
@@ -45,7 +45,7 @@ class UsernameRssTokenConverterTest extends TestCase | |||
45 | ->will($this->returnValue(['default' => null])); | 45 | ->will($this->returnValue(['default' => null])); |
46 | 46 | ||
47 | $params = new ParamConverter([]); | 47 | $params = new ParamConverter([]); |
48 | $converter = new UsernameRssTokenConverter($registry); | 48 | $converter = new UsernameFeedTokenConverter($registry); |
49 | 49 | ||
50 | $this->assertFalse($converter->supports($params)); | 50 | $this->assertFalse($converter->supports($params)); |
51 | } | 51 | } |
@@ -83,7 +83,7 @@ class UsernameRssTokenConverterTest extends TestCase | |||
83 | ->will($this->returnValue($em)); | 83 | ->will($this->returnValue($em)); |
84 | 84 | ||
85 | $params = new ParamConverter(['class' => 'superclass']); | 85 | $params = new ParamConverter(['class' => 'superclass']); |
86 | $converter = new UsernameRssTokenConverter($registry); | 86 | $converter = new UsernameFeedTokenConverter($registry); |
87 | 87 | ||
88 | $this->assertFalse($converter->supports($params)); | 88 | $this->assertFalse($converter->supports($params)); |
89 | } | 89 | } |
@@ -121,7 +121,7 @@ class UsernameRssTokenConverterTest extends TestCase | |||
121 | ->will($this->returnValue($em)); | 121 | ->will($this->returnValue($em)); |
122 | 122 | ||
123 | $params = new ParamConverter(['class' => 'WallabagUserBundle:User']); | 123 | $params = new ParamConverter(['class' => 'WallabagUserBundle:User']); |
124 | $converter = new UsernameRssTokenConverter($registry); | 124 | $converter = new UsernameFeedTokenConverter($registry); |
125 | 125 | ||
126 | $this->assertTrue($converter->supports($params)); | 126 | $this->assertTrue($converter->supports($params)); |
127 | } | 127 | } |
@@ -129,7 +129,7 @@ class UsernameRssTokenConverterTest extends TestCase | |||
129 | public function testApplyEmptyRequest() | 129 | public function testApplyEmptyRequest() |
130 | { | 130 | { |
131 | $params = new ParamConverter([]); | 131 | $params = new ParamConverter([]); |
132 | $converter = new UsernameRssTokenConverter(); | 132 | $converter = new UsernameFeedTokenConverter(); |
133 | 133 | ||
134 | $res = $converter->apply(new Request(), $params); | 134 | $res = $converter->apply(new Request(), $params); |
135 | 135 | ||
@@ -147,7 +147,7 @@ class UsernameRssTokenConverterTest extends TestCase | |||
147 | ->getMock(); | 147 | ->getMock(); |
148 | 148 | ||
149 | $repo->expects($this->once()) | 149 | $repo->expects($this->once()) |
150 | ->method('findOneByUsernameAndRsstoken') | 150 | ->method('findOneByUsernameAndFeedToken') |
151 | ->with('test', 'test') | 151 | ->with('test', 'test') |
152 | ->will($this->returnValue(null)); | 152 | ->will($this->returnValue(null)); |
153 | 153 | ||
@@ -170,7 +170,7 @@ class UsernameRssTokenConverterTest extends TestCase | |||
170 | ->will($this->returnValue($em)); | 170 | ->will($this->returnValue($em)); |
171 | 171 | ||
172 | $params = new ParamConverter(['class' => 'WallabagUserBundle:User']); | 172 | $params = new ParamConverter(['class' => 'WallabagUserBundle:User']); |
173 | $converter = new UsernameRssTokenConverter($registry); | 173 | $converter = new UsernameFeedTokenConverter($registry); |
174 | $request = new Request([], [], ['username' => 'test', 'token' => 'test']); | 174 | $request = new Request([], [], ['username' => 'test', 'token' => 'test']); |
175 | 175 | ||
176 | $converter->apply($request, $params); | 176 | $converter->apply($request, $params); |
@@ -185,7 +185,7 @@ class UsernameRssTokenConverterTest extends TestCase | |||
185 | ->getMock(); | 185 | ->getMock(); |
186 | 186 | ||
187 | $repo->expects($this->once()) | 187 | $repo->expects($this->once()) |
188 | ->method('findOneByUsernameAndRsstoken') | 188 | ->method('findOneByUsernameAndFeedtoken') |
189 | ->with('test', 'test') | 189 | ->with('test', 'test') |
190 | ->will($this->returnValue($user)); | 190 | ->will($this->returnValue($user)); |
191 | 191 | ||
@@ -208,7 +208,7 @@ class UsernameRssTokenConverterTest extends TestCase | |||
208 | ->will($this->returnValue($em)); | 208 | ->will($this->returnValue($em)); |
209 | 209 | ||
210 | $params = new ParamConverter(['class' => 'WallabagUserBundle:User', 'name' => 'user']); | 210 | $params = new ParamConverter(['class' => 'WallabagUserBundle:User', 'name' => 'user']); |
211 | $converter = new UsernameRssTokenConverter($registry); | 211 | $converter = new UsernameFeedTokenConverter($registry); |
212 | $request = new Request([], [], ['username' => 'test', 'token' => 'test']); | 212 | $request = new Request([], [], ['username' => 'test', 'token' => 'test']); |
213 | 213 | ||
214 | $converter->apply($request, $params); | 214 | $converter->apply($request, $params); |
diff --git a/tests/Wallabag/CoreBundle/Twig/WallabagExtensionTest.php b/tests/Wallabag/CoreBundle/Twig/WallabagExtensionTest.php index bb92f745..39fcec16 100644 --- a/tests/Wallabag/CoreBundle/Twig/WallabagExtensionTest.php +++ b/tests/Wallabag/CoreBundle/Twig/WallabagExtensionTest.php | |||
@@ -32,6 +32,31 @@ class WallabagExtensionTest extends TestCase | |||
32 | $this->assertSame('gist.github.com', $extension->removeWww('gist.github.com')); | 32 | $this->assertSame('gist.github.com', $extension->removeWww('gist.github.com')); |
33 | } | 33 | } |
34 | 34 | ||
35 | public function testRemoveScheme() | ||
36 | { | ||
37 | $entryRepository = $this->getMockBuilder('Wallabag\CoreBundle\Repository\EntryRepository') | ||
38 | ->disableOriginalConstructor() | ||
39 | ->getMock(); | ||
40 | |||
41 | $tagRepository = $this->getMockBuilder('Wallabag\CoreBundle\Repository\TagRepository') | ||
42 | ->disableOriginalConstructor() | ||
43 | ->getMock(); | ||
44 | |||
45 | $tokenStorage = $this->getMockBuilder('Symfony\Component\Security\Core\Authentication\Token\Storage\TokenStorageInterface') | ||
46 | ->disableOriginalConstructor() | ||
47 | ->getMock(); | ||
48 | |||
49 | $translator = $this->getMockBuilder('Symfony\Component\Translation\TranslatorInterface') | ||
50 | ->disableOriginalConstructor() | ||
51 | ->getMock(); | ||
52 | |||
53 | $extension = new WallabagExtension($entryRepository, $tagRepository, $tokenStorage, 0, $translator); | ||
54 | |||
55 | $this->assertSame('lemonde.fr', $extension->removeScheme('lemonde.fr')); | ||
56 | $this->assertSame('gist.github.com', $extension->removeScheme('gist.github.com')); | ||
57 | $this->assertSame('gist.github.com', $extension->removeScheme('https://gist.github.com')); | ||
58 | } | ||
59 | |||
35 | public function testRemoveSchemeAndWww() | 60 | public function testRemoveSchemeAndWww() |
36 | { | 61 | { |
37 | $entryRepository = $this->getMockBuilder('Wallabag\CoreBundle\Repository\EntryRepository') | 62 | $entryRepository = $this->getMockBuilder('Wallabag\CoreBundle\Repository\EntryRepository') |
diff --git a/tests/Wallabag/UserBundle/EventListener/CreateConfigListenerTest.php b/tests/Wallabag/UserBundle/EventListener/CreateConfigListenerTest.php index c13bfbea..fd32f380 100644 --- a/tests/Wallabag/UserBundle/EventListener/CreateConfigListenerTest.php +++ b/tests/Wallabag/UserBundle/EventListener/CreateConfigListenerTest.php | |||
@@ -62,7 +62,7 @@ class CreateConfigListenerTest extends TestCase | |||
62 | $config = new Config($user); | 62 | $config = new Config($user); |
63 | $config->setTheme('baggy'); | 63 | $config->setTheme('baggy'); |
64 | $config->setItemsPerPage(20); | 64 | $config->setItemsPerPage(20); |
65 | $config->setRssLimit(50); | 65 | $config->setFeedLimit(50); |
66 | $config->setLanguage('fr'); | 66 | $config->setLanguage('fr'); |
67 | $config->setReadingSpeed(1); | 67 | $config->setReadingSpeed(1); |
68 | 68 | ||