forked from wallabag/wallabag
Compare commits
501 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 919d7da5cb | |||
| 5d4ca7a56c | |||
| 9e9463dc93 | |||
| ed9210db09 | |||
| ccf2b0c165 | |||
| fa457013ff | |||
| 5ed098d06f | |||
| ef9f93c76e | |||
| 063c704014 | |||
| 820fd99d69 | |||
| fb6884d23b | |||
| fc69b49a93 | |||
| 5347945f76 | |||
| c355857922 | |||
| 24a2fefa7c | |||
| 8e81a2a59a | |||
| cb059f32e8 | |||
| 7cd15b0454 | |||
| b942d998a4 | |||
| b8e4f2dca2 | |||
| 380d8d71e3 | |||
| dd7446e62a | |||
| 446a346ecd | |||
| 6a67274733 | |||
| 6dcfd42607 | |||
| 2815bcfffe | |||
| c787ae74f9 | |||
| 549e11470e | |||
| 7ecec508f5 | |||
| 00ae548a2a | |||
| f0747f3f19 | |||
| e89a9ad45d | |||
| 15f8cb274b | |||
| 2217fcedf2 | |||
| 654199e3b0 | |||
| 3a6c9c9cef | |||
| 585c9340de | |||
| 776b4e7c4b | |||
| a9bca8f520 | |||
| 98ce60f669 | |||
| b6d523875f | |||
| acc7892611 | |||
| 655edbf7aa | |||
| 3c85d0b0d4 | |||
| 08631f15e9 | |||
| 173e35283f | |||
| 889792349a | |||
| 9943aca902 | |||
| 6725dd0d28 | |||
| 41e1d97c96 | |||
| 161637889b | |||
| 8070b8ddb1 | |||
| 4f211779b7 | |||
| 96586a00aa | |||
| dd6a5ab047 | |||
| 51cc1e5c49 | |||
| 81b0406224 | |||
| 361aae350d | |||
| e46098d72d | |||
| b8efa82b7e | |||
| 3b15e38f4d | |||
| c4cf0917eb | |||
| c435da2e34 | |||
| 9599d6f289 | |||
| 7acd207054 | |||
| e61825a620 | |||
| 17315e51bd | |||
| edde6705c7 | |||
| fa908b6df2 | |||
| 0060a65152 | |||
| ecc9e573b5 | |||
| 87680f6ebf | |||
| c356146ddf | |||
| 5fed2aece3 | |||
| 5d1c7dff4f | |||
| 1fed05d936 | |||
| e10636b962 | |||
| a39522e58f | |||
| af5e79c425 | |||
| f4042f1acd | |||
| c48b8ef7f2 | |||
| 9683e2afbe | |||
| 87ae5b0d83 | |||
| 83bd9f1c46 | |||
| d09ed7c976 | |||
| c0ceda027c | |||
| d09ec28d12 | |||
| 6c2b6b77fd | |||
| 2beca682a1 | |||
| 66806abd6f | |||
| 950912125c | |||
| bbb4423f94 | |||
| b933c7a85d | |||
| c0c25ff8e6 | |||
| 2c618b522b | |||
| c737ad2dd3 | |||
| c4fd2feccc | |||
| 3ee8f60a2b | |||
| 84857aa9eb | |||
| e44e5d9c26 | |||
| 449c4aa14b | |||
| c5bca4503a | |||
| 3baf1aab5b | |||
| 9711880900 | |||
| 5c172c7f17 | |||
| c018d41f90 | |||
| baed5e76aa | |||
| 3b39a489f9 | |||
| 239dab154b | |||
| 6e99bd034e | |||
| 4fd5cf38c9 | |||
| a3d6424eb3 | |||
| 7b6733b2cc | |||
| c1b28f113d | |||
| 72fe07a35a | |||
| 1b7a5486ba | |||
| 1a09ca0cb7 | |||
| be5c95451e | |||
| a11e8e73fa | |||
| d8b1a0c57c | |||
| a4d8672555 | |||
| 13f8feab92 | |||
| 9fc634b080 | |||
| 46a914cad7 | |||
| baaec89a75 | |||
| 4aa818866b | |||
| f1219f797f | |||
| 45bed218d1 | |||
| 567ae27e30 | |||
| deeb5c22fe | |||
| 749612edb2 | |||
| 8cd332b1cb | |||
| acfb02f2b7 | |||
| b724f3de1f | |||
| dbf62c760a | |||
| ae834510fc | |||
| fb88f38cc7 | |||
| a6acf912eb | |||
| 1e1527fe69 | |||
| 9bd806a20e | |||
| a1a9b78f7b | |||
| b14652f8f5 | |||
| effbee5b94 | |||
| 8e2f44ab32 | |||
| f0d20c347a | |||
| f6d6310b76 | |||
| dc47b5d6e7 | |||
| 2752d4f86a | |||
| e99b9c5c33 | |||
| 1a46a320f0 | |||
| b3719a12ac | |||
| 28457ec217 | |||
| 181daf3fda | |||
| c3596f50b8 | |||
| a3e4a979bf | |||
| 5f5831d12f | |||
| ee90510af0 | |||
| f407d5c341 | |||
| 8eca5841a9 | |||
| b5d800a601 | |||
| 4f60a0ee83 | |||
| 3d8bbfa803 | |||
| 035d83eaba | |||
| f29c1d2b8e | |||
| 3a82d7103e | |||
| 7c620a2c7a | |||
| da27d43c91 | |||
| ecbb478bfb | |||
| 251e05ddde | |||
| f2eed4257e | |||
| 951b1565d5 | |||
| 9d6081caf3 | |||
| 6fea5b26ea | |||
| 89e54aaa7e | |||
| 5fd9754be1 | |||
| b184f5783f | |||
| 7983678bc5 | |||
| d783a6a461 | |||
| 5bb5de209f | |||
| c99b2f31bd | |||
| c4fc7cf964 | |||
| 4258a53f9e | |||
| 9953c64b02 | |||
| a3aa7a659f | |||
| 6701df4c73 | |||
| d079a6479e | |||
| 68dd104c56 | |||
| 15005e2cf4 | |||
| 0bdba594d8 | |||
| 3622a7fd8e | |||
| 106dc242b6 | |||
| 0b7332f4fc | |||
| eebe81c9c4 | |||
| 58e96a27dd | |||
| 6590416be1 | |||
| 723ee8eefa | |||
| 92d2c6e4a6 | |||
| 4c58904f48 | |||
| 12afd275f0 | |||
| 4518baeabd | |||
| b4c5de9fe8 | |||
| dd18fdfa8b | |||
| 5f689846fe | |||
| f5eb73d150 | |||
| 18e0af0f4b | |||
| 21cd9f7ee5 | |||
| 786f637c2d | |||
| 3f5b68e390 | |||
| e571fa797d | |||
| aedb508a5b | |||
| c5ce0bfe8f | |||
| b05105b7aa | |||
| a9dbb25a10 | |||
| 9e380ef0ff | |||
| 84dcaaaea9 | |||
| 4f0032e394 | |||
| e3df54581b | |||
| bf3a1c30bf | |||
| 5a09b2cfab | |||
| 6cd7db0d46 | |||
| 280b906f0f | |||
| f061581bbd | |||
| d3262da307 | |||
| 0b179e2726 | |||
| 3137d9b1cc | |||
| 20cad7d61f | |||
| 9468304c7a | |||
| f8e32edde4 | |||
| 3a483dfa6d | |||
| 305ee4df8c | |||
| 00b0517918 | |||
| de640f1f8e | |||
| d78eaefd81 | |||
| 42f08e59a7 | |||
| c2309ea662 | |||
| 4a58ece72b | |||
| 50f8b099a4 | |||
| a31532a094 | |||
| 99fa116c07 | |||
| 5ff3074b10 | |||
| cf58d426fe | |||
| 56b99f80c6 | |||
| 6655cb2170 | |||
| 084f16386c | |||
| 7d95952572 | |||
| c5c8ed7b19 | |||
| 6928c74fa9 | |||
| 5a38865c70 | |||
| 971279d72e | |||
| 481b5f68a6 | |||
| a7cca0bf14 | |||
| 3286b73cf6 | |||
| f30de01648 | |||
| d0b5af63ce | |||
| 382f667326 | |||
| ac902bc887 | |||
| 8869c7a153 | |||
| b50cd2564c | |||
| db11a34b80 | |||
| 54cd1ac73d | |||
| 348597e21b | |||
| 716de7ddb7 | |||
| 87ab4652f2 | |||
| f1dfc0273e | |||
| da56d97afc | |||
| d63b2369ad | |||
| 4a03869feb | |||
| 8e89b3ad76 | |||
| ebda18636c | |||
| 07e249ee57 | |||
| 950261afd4 | |||
| b0fec1b6b7 | |||
| eb16ca4c58 | |||
| d608caa0ad | |||
| b9c0b2c465 | |||
| 91a8b004ef | |||
| 7ce490dd29 | |||
| c459a203f5 | |||
| 363d292cb5 | |||
| c43c103259 | |||
| 30bd24adb6 | |||
| 530ea1bfaa | |||
| d7fb4c55fd | |||
| b735e17fb1 | |||
| 73cfcf09d9 | |||
| dace23025c | |||
| 7ab84d8bf5 | |||
| 0f0a59376a | |||
| 6258b0aebb | |||
| 395e700ff8 | |||
| 9fe059fec1 | |||
| a8db5b3782 | |||
| b4e7c82a7c | |||
| 6c2fac4ef6 | |||
| 0fb77636d2 | |||
| fceeae6499 | |||
| 1bdedfe65d | |||
| 5654c3aaf3 | |||
| b267e967e8 | |||
| 381f9681b5 | |||
| 3e1c1ff1fb | |||
| 86cf8852cf | |||
| 6a1ef0b62a | |||
| 4331b2e8a2 | |||
| 11031114e2 | |||
| e77bff287d | |||
| 8273828399 | |||
| 5ed882997e | |||
| 54e158fc7e | |||
| 6e487a445c | |||
| ec8089fa62 | |||
| 2c2599db85 | |||
| acaba9805e | |||
| be1b119d18 | |||
| 9e110c2cd7 | |||
| 7d4bad91ed | |||
| eab2629abb | |||
| 146fe1411d | |||
| ec19e6b63e | |||
| 65fbb8ea7d | |||
| 16fa567afb | |||
| 567d1c65f3 | |||
| 2f62fce4dc | |||
| eea8a7a8f3 | |||
| 9221dc957e | |||
| 5c8183c8e3 | |||
| f886494c7d | |||
| 5097def2de | |||
| af95cdb3f0 | |||
| dd752cfeb1 | |||
| 445db242e7 | |||
| 4020b8ef7e | |||
| 81dbb1ff61 | |||
| ac9ae46fc4 | |||
| 444f88a42e | |||
| 2211a83578 | |||
| 6407f9cc9c | |||
| 68e1211860 | |||
| 077700ab37 | |||
| cbb62fa009 | |||
| facbab0718 | |||
| 51dc165c32 | |||
| 64de194067 | |||
| bd1c9fd8e3 | |||
| edc74a024b | |||
| 96ff96b879 | |||
| 30b773aeb6 | |||
| db4c80a8b2 | |||
| d588ef82ef | |||
| 00bf1651ca | |||
| e8cea15c51 | |||
| 80f5e7b731 | |||
| db6a1b0270 | |||
| ca84d4ea21 | |||
| 13cbcab6ce | |||
| f44e826212 | |||
| 51e7cbac5c | |||
| 8c65f36b2d | |||
| cc76bd5f5a | |||
| 717d3821bb | |||
| 4ab0601645 | |||
| b58f79f03b | |||
| d9951d6355 | |||
| 8de65a1fb4 | |||
| 56b8c07355 | |||
| 3d7123351a | |||
| 8d05bc1b0b | |||
| 8c9e65817f | |||
| e17d4ebe13 | |||
| 3ea55bba9f | |||
| f295e3dc5c | |||
| 5a69fec5da | |||
| 5592a23ae1 | |||
| 4c58787b87 | |||
| 2b357d4e42 | |||
| bdba7caf8a | |||
| 94c68bf65f | |||
| f1aeafc076 | |||
| 35ae211266 | |||
| 9dc71c431d | |||
| ddff6274a2 | |||
| 232c31921c | |||
| 0140b0c262 | |||
| ff6158811b | |||
| a1600a5852 | |||
| 573538c1a5 | |||
| 3360f30d43 | |||
| 71680cdb61 | |||
| 21dee08b4d | |||
| 83193417a6 | |||
| 6004de48ff | |||
| 1697076575 | |||
| c4b24503f3 | |||
| dc5fbff644 | |||
| 36ba1d48ad | |||
| 41271bc153 | |||
| 88ad78373d | |||
| 5179c9ce04 | |||
| 4d8b07764d | |||
| 90c38a0a1b | |||
| 70b43023c2 | |||
| 26ebe39be1 | |||
| 01aea3ef27 | |||
| aaff187629 | |||
| e861061c7a | |||
| 75f89a4d42 | |||
| e61096dec9 | |||
| 12bc9a36fb | |||
| 621c105dcb | |||
| e2e1163927 | |||
| 7e00b32203 | |||
| 41930e729c | |||
| 92f4818153 | |||
| a2ecac603c | |||
| eb1cf4b0ea | |||
| f3ff6c92b0 | |||
| 5857031262 | |||
| be30d7164c | |||
| d6869fdd2f | |||
| 6f61b96e29 | |||
| 2267453d1f | |||
| 863dd6ed07 | |||
| b4dde9040b | |||
| 0d6e44bdf1 | |||
| d20139151e | |||
| 68060f545a | |||
| c1b195f860 | |||
| 0631f5c8d0 | |||
| ad621f198f | |||
| e5fdbaba5b | |||
| 0b0ffa67e7 | |||
| 7655409ca8 | |||
| 1b88c662a4 | |||
| cbb26547e5 | |||
| 77faf7369b | |||
| 1c8505acb3 | |||
| 25bd0edad6 | |||
| c9dc7098b3 | |||
| 40cd56daf8 | |||
| f7f6d5d13d | |||
| 1bf5419e8c | |||
| fb4d1fd10b | |||
| 5437f0e3da | |||
| 478c20d3a4 | |||
| cc47d78845 | |||
| 40ac680d6d | |||
| 44d722f700 | |||
| ed8e1994d6 | |||
| 9e65927829 | |||
| f5b0832812 | |||
| 16b9f36c4e | |||
| 056dd58eb4 | |||
| ab6f22a1f6 | |||
| c7a8800794 | |||
| 9dc4f2a790 | |||
| febcf4be3b | |||
| 9007459605 | |||
| 9743058f7d | |||
| 9aeac727df | |||
| 415da16e77 | |||
| 03b531c360 | |||
| 5e5cb502f4 | |||
| 2249f40aa2 | |||
| 49ad7aeeb3 | |||
| 7245b8b611 | |||
| c6f3f27b84 | |||
| 61e0101771 | |||
| b0907c15ff | |||
| 71efdeb055 | |||
| 61a3e0fbb4 | |||
| 83f10796a7 | |||
| df7b937f54 | |||
| 7f10756aa2 | |||
| 4bf24ac3fe | |||
| a6d22ca31e | |||
| ca57b4d41a | |||
| c9d1be066e | |||
| 5afe8ed150 | |||
| e646da6c6a | |||
| 0766fa00d9 | |||
| 548d752937 | |||
| b553b77ceb | |||
| fb5c155484 | |||
| 657a6c43a3 | |||
| d5360a7b7e | |||
| ee3db8ad86 | |||
| a9cf250f93 | |||
| 8d59aa2c25 | |||
| 14cb0b7c73 | |||
| 39117f7b64 | |||
| 98b834d836 | |||
| 39c595d048 | |||
| 35b7e6443b | |||
| fd6a079388 | |||
| e250066222 | |||
| 34cfa612a6 | |||
| 1fa61d0f0c | |||
| 475fc69fe4 | |||
| 7fc15c2ea5 | |||
| 626b1e45bd | |||
| f5d82abcfe |
21
.github/ISSUE_TEMPLATE.md
vendored
21
.github/ISSUE_TEMPLATE.md
vendored
@ -1,21 +0,0 @@
|
||||
:warning: If your issue is about an error during fetching a link, please read: http://doc.wallabag.org/en/user/errors_during_fetching.html#how-can-i-help-to-fix-that
|
||||
|
||||
### Issue details
|
||||
|
||||
Please provide issue details here.
|
||||
Remember, this is _not_ a place to ask questions. For that, go to https://community.wallabag.org/ (forum) or http://gitter.im/wallabag/wallabag (chat).
|
||||
|
||||
### Environment
|
||||
|
||||
* wallabag version (or git revision) that exhibits the issue:
|
||||
* How did you install wallabag? Via `git clone` or by downloading the package?
|
||||
* Last wallabag version that did not exhibit the issue (if applicable):
|
||||
* php version:
|
||||
* OS:
|
||||
* type of hosting (shared or dedicated):
|
||||
* which storage system you choose at install (SQLite, MySQL/MariaDB or PostgreSQL):
|
||||
|
||||
### Steps to reproduce/test case
|
||||
|
||||
Please provide necessary steps for reproduction of this issue, or better the
|
||||
reduced test case (without any external dependencies, if possible).
|
||||
30
.github/ISSUE_TEMPLATE/1-fetching-content.md
vendored
Normal file
30
.github/ISSUE_TEMPLATE/1-fetching-content.md
vendored
Normal file
@ -0,0 +1,30 @@
|
||||
---
|
||||
name: Fetching content
|
||||
about: If wallabag can't extract content for an URL
|
||||
title: Wrong display in wallabag (HOST)
|
||||
labels: Site Config
|
||||
assignees: ''
|
||||
|
||||
---
|
||||
|
||||
<!--
|
||||
Thank you for reporting a fetching issue.
|
||||
|
||||
Please fill in as much of the template below as you're able.
|
||||
-->
|
||||
|
||||
**Before submitting the issue, please read:**
|
||||
If wallabag can't parse / extract content for a given link, please first read the documentation about it:
|
||||
http://doc.wallabag.org/en/user/errors_during_fetching.html#how-can-i-help-to-fix-that
|
||||
|
||||
We have a lot of requests about fetching config issue. It'll help us A LOT if you give a try to fix it on your own following the doc.
|
||||
If you failed to fix it yourself, tick the following boxes:
|
||||
- [ ] I've tried myself without success
|
||||
- [ ] I've replaced `HOST` in the issue title with the host of the URL that can't be fetched (ie: `nytimes.com`, `20minutes.fr`, `bbc.com`, etc.)
|
||||
|
||||
**Content related:**
|
||||
- URL: [full url of the content]
|
||||
- wallabag version: [e.g. 2.4.0]
|
||||
|
||||
**Describe what's wrong:**
|
||||
A clear and concise description of what you expected to happen.
|
||||
43
.github/ISSUE_TEMPLATE/2-bug-report.md
vendored
Normal file
43
.github/ISSUE_TEMPLATE/2-bug-report.md
vendored
Normal file
@ -0,0 +1,43 @@
|
||||
---
|
||||
name: Bug report
|
||||
about: Create a report to help us improve
|
||||
title: ''
|
||||
labels: ''
|
||||
assignees: ''
|
||||
|
||||
---
|
||||
|
||||
<!--
|
||||
Thank you for reporting an issue.
|
||||
|
||||
Please fill in as much of the template below as you're able.
|
||||
|
||||
Version: if you know it, otherwise use the git revision
|
||||
Installation: How did you install wallabag? Using git clone, the docker image, an installer, downloading the package, etc.
|
||||
PHP version: The version of PHP you are using
|
||||
OS: The host running wallabag
|
||||
Database: The storage system your instance is using (SQLite, MySQL/MariaDB or PostgreSQL) with the version
|
||||
Parameters: Paste the content of your app/config/parameters.yml (hide sensitive stuff if you want)
|
||||
-->
|
||||
### Environment
|
||||
|
||||
* **Version**:
|
||||
* **Installation**:
|
||||
* **PHP version**:
|
||||
* **OS**:
|
||||
* **Database**:
|
||||
* **Parameters**:
|
||||
|
||||
<details>
|
||||
<summary>My <code>app/config/parameters.yml</code> is:</summary>
|
||||
|
||||
```
|
||||
PASTE HERE
|
||||
```
|
||||
</details>
|
||||
|
||||
### What steps will reproduce the bug?
|
||||
|
||||
<!--
|
||||
Enter details about your bug and how to reproduce it
|
||||
-->
|
||||
26
.github/ISSUE_TEMPLATE/3-feature-request.md
vendored
Normal file
26
.github/ISSUE_TEMPLATE/3-feature-request.md
vendored
Normal file
@ -0,0 +1,26 @@
|
||||
---
|
||||
name: Feature request
|
||||
about: Suggest an idea for this project
|
||||
title: ''
|
||||
labels: Feature
|
||||
assignees: ''
|
||||
|
||||
---
|
||||
|
||||
<!--
|
||||
Thank you for suggesting an idea to make wallabag better.
|
||||
|
||||
Please fill in as much of the template below as you're able.
|
||||
-->
|
||||
|
||||
**Is your feature request related to a problem? Please describe.**
|
||||
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
|
||||
|
||||
**Describe the solution you'd like**
|
||||
A clear and concise description of what you want to happen.
|
||||
|
||||
**Describe alternatives you've considered**
|
||||
A clear and concise description of any alternative solutions or features you've considered.
|
||||
|
||||
**Additional context**
|
||||
Add any other context or screenshots about the feature request here.
|
||||
5
.github/ISSUE_TEMPLATE/config.yml
vendored
Normal file
5
.github/ISSUE_TEMPLATE/config.yml
vendored
Normal file
@ -0,0 +1,5 @@
|
||||
blank_issues_enabled: false
|
||||
contact_links:
|
||||
- name: Want to ask something?
|
||||
url: https://gitter.im/wallabag/wallabag
|
||||
about: Use Gitter to ask questions.
|
||||
3
.github/workflows/assets.yml
vendored
3
.github/workflows/assets.yml
vendored
@ -2,11 +2,10 @@ name: "Assets"
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
branches:
|
||||
- master
|
||||
push:
|
||||
branches:
|
||||
- master
|
||||
- 2.*
|
||||
|
||||
jobs:
|
||||
js:
|
||||
|
||||
3
.github/workflows/coding-standards.yml
vendored
3
.github/workflows/coding-standards.yml
vendored
@ -2,11 +2,10 @@ name: "CS"
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
branches:
|
||||
- master
|
||||
push:
|
||||
branches:
|
||||
- master
|
||||
- 2.*
|
||||
|
||||
jobs:
|
||||
coding-standards:
|
||||
|
||||
5
.github/workflows/continuous-integration.yml
vendored
5
.github/workflows/continuous-integration.yml
vendored
@ -2,11 +2,10 @@ name: "CI"
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
branches:
|
||||
- "master"
|
||||
push:
|
||||
branches:
|
||||
- "master"
|
||||
- master
|
||||
- 2.*
|
||||
|
||||
env:
|
||||
PGPASSWORD: wallabagrocks
|
||||
|
||||
3
.github/workflows/translations.yml
vendored
3
.github/workflows/translations.yml
vendored
@ -2,11 +2,10 @@ name: "Translations"
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
branches:
|
||||
- master
|
||||
push:
|
||||
branches:
|
||||
- master
|
||||
- 2.*
|
||||
|
||||
jobs:
|
||||
translations:
|
||||
|
||||
@ -30,6 +30,10 @@ checks:
|
||||
# use the new PHP analysis engine
|
||||
# https://scrutinizer-ci.com/docs/tools/php/php-analyzer/guides/migrate_to_new_php_analysis
|
||||
build:
|
||||
environment:
|
||||
php:
|
||||
version: 7.4
|
||||
|
||||
nodes:
|
||||
analysis:
|
||||
tests:
|
||||
|
||||
38
CHANGELOG.md
38
CHANGELOG.md
@ -1,5 +1,43 @@
|
||||
# Changelog
|
||||
|
||||
## [2.4.2](https://github.com/wallabag/wallabag/tree/2.4.2)
|
||||
[Full Changelog](https://github.com/wallabag/wallabag/compare/2.4.1...2.4.2)
|
||||
|
||||
### Fixes
|
||||
- Fix nav lang filter [#4908](https://github.com/wallabag/wallabag/pull/4908)
|
||||
- Fix accessibility problem with the 2FA QR code [#4915](https://github.com/wallabag/wallabag/pull/4915)
|
||||
- Preselect currently active section in the filter menu [#4972](https://github.com/wallabag/wallabag/pull/4972)
|
||||
- Fix translation of date in the footer using IntlDateFormatter [#4971](https://github.com/wallabag/wallabag/pull/4971)
|
||||
- Update dark theme [#4921](https://github.com/wallabag/wallabag/pull/4921)
|
||||
- Dark theme updated [#4983](https://github.com/wallabag/wallabag/pull/4983)
|
||||
- Fix account dropdown width [#4969](https://github.com/wallabag/wallabag/pull/4969)
|
||||
- Fix auto prefered color scheme [#5071](https://github.com/wallabag/wallabag/pull/5071)
|
||||
- Convert tag label to lowercase in RuleBasedTagger [#5111](https://github.com/wallabag/wallabag/pull/5111)
|
||||
- Fix myreadspeed links [#5113](https://github.com/wallabag/wallabag/pull/5113)
|
||||
- Internal server error while exporting to epub [#5052](https://github.com/wallabag/wallabag/issues/5052)
|
||||
- Error parsing image URL (with scrset) [#4914](https://github.com/wallabag/wallabag/issues/4914)
|
||||
|
||||
## [2.4.1](https://github.com/wallabag/wallabag/tree/2.4.1)
|
||||
[Full Changelog](https://github.com/wallabag/wallabag/compare/2.4.0...2.4.1)
|
||||
|
||||
### Fixes
|
||||
- Fix path icons from manifest.json [#4811](https://github.com/wallabag/wallabag/pull/4811)
|
||||
- Fix missing apple-touch-icon-512.png from manifest.json [#4823](https://github.com/wallabag/wallabag/pull/4823)
|
||||
- migrations: fix mysql migration for an edge case [#4832](https://github.com/wallabag/wallabag/pull/4832)
|
||||
- Add a command to clean downloaded images [#4844](https://github.com/wallabag/wallabag/pull/4844)
|
||||
- Add a query to parse only non-hashed URL [#4865](https://github.com/wallabag/wallabag/pull/4865) [#4878](https://github.com/wallabag/wallabag/pull/4878)
|
||||
- material: fix issue with cookie check for light/dark theme [#4866](https://github.com/wallabag/wallabag/pull/4866)
|
||||
- Show OTP secret next to the QR Code [#4868](https://github.com/wallabag/wallabag/pull/4868)
|
||||
- views: add title to tag li elements, for consistency [#4894](https://github.com/wallabag/wallabag/pull/4894)
|
||||
- Add label and issuer to otp config [#4301](https://github.com/wallabag/wallabag/pull/4301)
|
||||
|
||||
### Meta
|
||||
- Update release process and introduce 2.4.1-dev [#4808](https://github.com/wallabag/wallabag/pull/4808)
|
||||
- Remove community.wallabag.org from the issue template [#4817](https://github.com/wallabag/wallabag/pull/4817)
|
||||
- Update issue templates [#4843](https://github.com/wallabag/wallabag/pull/4843)
|
||||
- Allow GitHub Actions to run on 2.* branches [#4896](https://github.com/wallabag/wallabag/pull/4896)
|
||||
- Prepare 2.4.1 [#4904](https://github.com/wallabag/wallabag/pull/4904)
|
||||
|
||||
## [2.4.0](https://github.com/wallabag/wallabag/tree/2.4.0)
|
||||
[Full Changelog](https://github.com/wallabag/wallabag/compare/2.3.8...2.4.0)
|
||||
|
||||
|
||||
@ -16,25 +16,6 @@ During this documentation, we assume the release is `$LAST_WALLABAG_RELEASE` (li
|
||||
|
||||
#### Create a new release on GitHub
|
||||
|
||||
- Run these commands to create the tag:
|
||||
|
||||
```
|
||||
git checkout master
|
||||
git pull origin master
|
||||
git checkout -b release-$LAST_WALLABAG_RELEASE
|
||||
composer up
|
||||
```
|
||||
|
||||
- Then continue with these commands:
|
||||
|
||||
```
|
||||
git add composer.lock
|
||||
git commit -m "Release wallabag $LAST_WALLABAG_RELEASE"
|
||||
git push origin release-$LAST_WALLABAG_RELEASE
|
||||
```
|
||||
|
||||
- Create a new pull request with this title `Release wallabag $LAST_WALLABAG_RELEASE`. This pull request is used to launch builds on Travis-CI.
|
||||
- Once PR is green, merge it and delete the branch.
|
||||
- Run this command to create the package:
|
||||
|
||||
```
|
||||
@ -42,7 +23,7 @@ make release VERSION=$LAST_WALLABAG_RELEASE
|
||||
```
|
||||
|
||||
- [Create the new release on GitHub](https://github.com/wallabag/wallabag/releases/new) by targetting the `master` branch or any appropriate branch (for instance backports). You have to upload the package (generated previously).
|
||||
- Update the URL shortener (used on `wllbg.org` to update links like `https://wllbg.org/latest-v2-package` or `http://wllbg.org/latest-v2`)
|
||||
- Update nginx config to change the redirect rule for `https://wllbg.org/latest-v2-package` & `http://wllbg.org/latest-v2` (they both redirect to the asset of the GitHub release)
|
||||
- Update Dockerfile https://github.com/wallabag/docker (and create a new tag)
|
||||
- Update wallabag.org website (downloads, MD5 sum, releases and new blog post)
|
||||
- Put the next patch version suffixed with `-dev` in `app/config/wallabag.yml` (`wallabag_core.version`)
|
||||
|
||||
@ -64,8 +64,10 @@ final class Version20190510141130 extends WallabagMigration
|
||||
$this->addSql('ALTER TABLE ' . $this->getTable('oauth2_access_tokens') . ' DROP FOREIGN KEY FK_368A4209A76ED395');
|
||||
$this->addSql('ALTER TABLE ' . $this->getTable('oauth2_access_tokens') . ' ADD CONSTRAINT FK_368A4209A76ED395 FOREIGN KEY (user_id) REFERENCES ' . $this->getTable('user') . ' (id) ON DELETE CASCADE');
|
||||
|
||||
$this->addSql('ALTER TABLE ' . $this->getTable('oauth2_clients') . ' DROP FOREIGN KEY IDX_user_oauth_client');
|
||||
$this->addSql('ALTER TABLE ' . $this->getTable('oauth2_clients') . ' ADD CONSTRAINT FK_635D765EA76ED395 FOREIGN KEY (user_id) REFERENCES ' . $this->getTable('user') . ' (id)');
|
||||
if ($schema->getTable($this->getTable('oauth2_clients'))->hasForeignKey('IDX_user_oauth_client')) {
|
||||
$this->addSql('ALTER TABLE ' . $this->getTable('oauth2_clients') . ' DROP FOREIGN KEY IDX_user_oauth_client');
|
||||
$this->addSql('ALTER TABLE ' . $this->getTable('oauth2_clients') . ' ADD CONSTRAINT FK_635D765EA76ED395 FOREIGN KEY (user_id) REFERENCES ' . $this->getTable('user') . ' (id)');
|
||||
}
|
||||
|
||||
$this->addSql('ALTER TABLE ' . $this->getTable('oauth2_refresh_tokens') . ' DROP FOREIGN KEY FK_20C9FB24A76ED395');
|
||||
$this->addSql('ALTER TABLE ' . $this->getTable('oauth2_refresh_tokens') . ' ADD CONSTRAINT FK_20C9FB24A76ED395 FOREIGN KEY (user_id) REFERENCES ' . $this->getTable('user') . ' (id) ON DELETE CASCADE');
|
||||
|
||||
@ -0,0 +1 @@
|
||||
{}
|
||||
@ -0,0 +1 @@
|
||||
{}
|
||||
@ -0,0 +1,40 @@
|
||||
shaarli_share_origin_url: Ενεργοποίηση κοινοποίησης πρωτότυπου URL στο Shaarli, αν είναι ενεργοποιημένη η υπηρεσία
|
||||
store_article_headers: Ενεργοποίηση αποθήκευσης επικεφαλίδων HTTP για κάθε άρθρο
|
||||
api_user_registration: Ενεργοποίηση εγγραφής χρήστη μέσω του API
|
||||
restricted_access: Ενεργοποίηση επαλήθευσης για ιστοσελίδες με paywall
|
||||
download_images_enabled: Λήψη εικόνων τοπικά
|
||||
share_public: Να επιτρέπονται URL για τα άρθρα
|
||||
demo_mode_username: Χρήστης demo
|
||||
demo_mode_enabled: Ενεργοποίηση λειτουργίας demo; (Χρησιμοποιείται μόνο για το δημόσιο demo του wallabag)
|
||||
matomo_enabled: Ενεργοποίηση Matomo
|
||||
matomo_site_id: ID της ιστοσελίδας σας στο Matomo
|
||||
matomo_host: Διεύθυνση της ιστοσελίδας σας στο Matomo (χωρίς http:// ή https://)
|
||||
modify_settings: εφαρμογή
|
||||
misc: ποικίλα
|
||||
import: εισαγωγή
|
||||
export: εξαγωγή
|
||||
entry: άρθρο
|
||||
wallabag_support_url: Υποστήριξη URL για wallabag
|
||||
show_printlink: Προβολή συνδέσμου για εκτύπωση περιεχομένου
|
||||
share_unmark: Ενεργοποίηση κοινοποίησης στο Unmark.it
|
||||
share_twitter: Ενεργοποίηση κοινοποίησης στο Twitter
|
||||
share_scuttle: Ενεργοποίηση κοινοποίησης στο Scuttle
|
||||
share_shaarli: Ενεργοποίηση κοινοποίησης στο Shaarli
|
||||
share_mail: Ενεργοποίηση κοινοποίησης με ηλεκτρονικό ταχυδρομείο
|
||||
share_diaspora: Ενεργοποίηση κοινοποίησης στο diaspora*
|
||||
unmark_url: URL του Unmark, αν είναι ενεργοποιημένη η υπηρεσία
|
||||
scuttle_url: URL του Scuttle, αν είναι ενεργοποιημένη η υπηρεσία
|
||||
shaarli_url: URL του Shaarli, αν είναι ενεργοποιημένη η υπηρεσία
|
||||
import_with_redis: Ενεργοποίηση Redis για την ασύγχρονη εισαγωγή δεδομένων
|
||||
import_with_rabbitmq: Ενεργοποίηση RabbitMQ για την ασύγχρονη εισαγωγή δεδομένων
|
||||
export_xml: Ενεργοποίηση εξαγωγής ΧΜΛ
|
||||
export_txt: Ενεργοποίηση εξαγωγής TXT
|
||||
export_json: Ενεργοποίηση εξαγωγής JSON
|
||||
export_csv: Ενεργοποίηση εξαγωγής CSV
|
||||
export_pdf: Ενεργοποίηση εξαγωγής PDF
|
||||
export_mobi: Ενεργοποίηση εξαγωγής .mobi
|
||||
export_epub: Ενεργοποίηση εξαγωγής ePub
|
||||
diaspora_url: URL του diaspora*, αν είναι ενεργοποιημένη η υπηρεσία
|
||||
carrot: Ενεργοποίηση κοινοποίησης στο Carrot
|
||||
download_pictures: Λήψη των εικόνων στον διακομιστή σας
|
||||
settings_changed: Η ρύθμιση παραμέτρων ενημερώθηκε
|
||||
@ -0,0 +1 @@
|
||||
{}
|
||||
@ -0,0 +1,40 @@
|
||||
shaarli_share_origin_url: Activar a compartición do URL de orixe en Shaarli, se o servizo está activo
|
||||
store_article_headers: Activar se wallabag garda cabeceiras HTTP para cada artigo
|
||||
api_user_registration: Activar rexistro de usuarias a través da API
|
||||
restricted_access: Activar autenticación para sitios web con acceso de pagamento
|
||||
download_images_enabled: Descargar imaxes localmente
|
||||
share_public: Permitir URLs públicos para entradas
|
||||
demo_mode_username: Usuaria Demo
|
||||
demo_mode_enabled: Activar modo demostración? (Só se usa na demo pública de wallabag)
|
||||
matomo_enabled: Activar Matomo
|
||||
matomo_site_id: ID do teu sitio web en Matomo
|
||||
matomo_host: Servidor do teu sitio web en Matomo (sen http:// ou https://)
|
||||
modify_settings: aplicar
|
||||
misc: varios
|
||||
import: importar
|
||||
export: exportar
|
||||
entry: artigo
|
||||
wallabag_support_url: URL de axuda de wallabag
|
||||
show_printlink: Mostrar unha ligazón para imprimir o contido
|
||||
share_unmark: Activar a compartición en Unmark.it
|
||||
share_twitter: Activar a compartición en Twitter
|
||||
share_scuttle: Activar a compartición en Scuttle
|
||||
share_shaarli: Activar a compartición en Shaarli
|
||||
share_mail: Activar a compartición por email
|
||||
share_diaspora: Activar a compartición en diaspora*
|
||||
unmark_url: URL Unmark, se o servizo está activo
|
||||
scuttle_url: URL Scuttle, se o servizo está activo
|
||||
shaarli_url: URL Shaarli, se o servizo está activo
|
||||
import_with_redis: Activar a importación asíncrona con Redis
|
||||
import_with_rabbitmq: Activar a importación asíncrona con RabbitMQ
|
||||
export_xml: Activar exportación XML
|
||||
export_txt: Activar exportación TXT
|
||||
export_json: Activar exportación JSON
|
||||
export_csv: Activar exportación CSV
|
||||
export_pdf: Activar exportación PDF
|
||||
export_mobi: Activar exportación .mobi
|
||||
export_epub: Activar exportación ePub
|
||||
diaspora_url: URL de diaspora*, se o servizo está activo
|
||||
carrot: Activar compartir en Carrot
|
||||
download_pictures: Descargar imaxes no teu servidor
|
||||
settings_changed: Configuración actualizada
|
||||
@ -8,7 +8,7 @@
|
||||
.card-stacked .preview:not(.preview--default),
|
||||
.card .preview:not(.preview--default),
|
||||
.collapsible-header,
|
||||
.collection .collection-item,
|
||||
.collection,
|
||||
.dropdown-content,
|
||||
.nav-panel-add,
|
||||
.nav-panel-search,
|
||||
@ -16,13 +16,34 @@
|
||||
.side-nav .collapsible-body,
|
||||
.side-nav.fixed .collapsible-body,
|
||||
.tabs {
|
||||
background-color: black;
|
||||
background-color: #121212;
|
||||
}
|
||||
|
||||
.dropdown-content li {
|
||||
background-color: #232323;
|
||||
}
|
||||
|
||||
.dropdown-content li:hover,
|
||||
.dropdown-content li.active,
|
||||
.dropdown-content li.selected {
|
||||
background-color: #575757;
|
||||
background-color: #2c2c2c;
|
||||
}
|
||||
|
||||
.dropdown-content .divider {
|
||||
background-color: #383838;
|
||||
}
|
||||
|
||||
.collection {
|
||||
border-color: transparent;
|
||||
}
|
||||
|
||||
.collection .collection-item {
|
||||
border-color: #121212;
|
||||
}
|
||||
|
||||
.card:hover,
|
||||
.collection .collection-item:hover {
|
||||
background-color: #272727;
|
||||
}
|
||||
|
||||
main #content,
|
||||
@ -33,31 +54,48 @@
|
||||
#article article h4,
|
||||
#article article h5,
|
||||
#article article h6,
|
||||
.dropdown-content li > a,
|
||||
.results a,
|
||||
.side-nav li > a,
|
||||
.side-nav li > a > i.material-icons {
|
||||
color: #dfdfdf;
|
||||
}
|
||||
|
||||
.cyan,
|
||||
.cyan.darken-1,
|
||||
.cyan.darken-2 {
|
||||
background-color: #1d1d1d !important;
|
||||
}
|
||||
|
||||
.grey-text.text-darken-4 {
|
||||
color: #dfdfdf !important;
|
||||
}
|
||||
|
||||
.side-nav li.active,
|
||||
#article .chip {
|
||||
background-color: #373737;
|
||||
}
|
||||
|
||||
.side-nav li.active {
|
||||
background-color: #2f2f2f;
|
||||
}
|
||||
|
||||
.side-nav li:not(.logo) > a:hover,
|
||||
.side-nav .collapsible-header:hover,
|
||||
.side-nav.fixed .collapsible-header:hover {
|
||||
background-color: #333;
|
||||
background-color: #1d1d1d;
|
||||
}
|
||||
|
||||
#article {
|
||||
box-shadow: 0 0 10px #575757;
|
||||
box-shadow: 0 0 10px #1d1d1d;
|
||||
}
|
||||
|
||||
nav,
|
||||
.card,
|
||||
.side-nav {
|
||||
box-shadow: 0 2px 2px 0 rgba(255, 255, 255, 0.4), 0 1px 5px 0 rgba(255, 255, 255, 0.4), 0 3px 1px -2px rgba(255, 255, 255, 0.4);
|
||||
.collection .collection-item {
|
||||
background-color: #1d1d1d;
|
||||
}
|
||||
|
||||
.card-action {
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
.logo img,
|
||||
@ -70,4 +108,10 @@
|
||||
.collapsible {
|
||||
border-color: #222;
|
||||
}
|
||||
|
||||
@media only screen and (min-width: 992px) {
|
||||
#article {
|
||||
background-color: #101010;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -15,7 +15,7 @@
|
||||
}
|
||||
|
||||
@media screen and (min-width: 993px) {
|
||||
main #content {
|
||||
.entry #content {
|
||||
padding-left: 70px;
|
||||
}
|
||||
}
|
||||
|
||||
@ -145,17 +145,12 @@ nav {
|
||||
top: 0;
|
||||
}
|
||||
|
||||
@media (min-width: 993px) {
|
||||
.button-collapse {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
||||
.dropdown-content {
|
||||
min-width: 300px;
|
||||
width: 100%;
|
||||
|
||||
li {
|
||||
min-height: auto;
|
||||
padding-right: 15px;
|
||||
}
|
||||
|
||||
li > a {
|
||||
@ -165,3 +160,14 @@ nav {
|
||||
white-space: initial;
|
||||
}
|
||||
}
|
||||
|
||||
@media (min-width: 993px) {
|
||||
.button-collapse {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.dropdown-content {
|
||||
min-width: 300px;
|
||||
width: initial;
|
||||
}
|
||||
}
|
||||
|
||||
@ -58,14 +58,15 @@ function darkTheme() {
|
||||
},
|
||||
|
||||
exists() {
|
||||
return document.cookie.split(';').map((cookie) => cookie.split('=')).filter((cookie) => cookie[0] === 'theme').length;
|
||||
return document.cookie.split(';').some((cookie) => cookie.trim().startsWith(`${this.name}=`));
|
||||
},
|
||||
};
|
||||
const preferedColorScheme = {
|
||||
choose() {
|
||||
if (this.isAvailable() && themeCookie.exists() === 0) {
|
||||
const themeCookieExists = themeCookie.exists();
|
||||
if (this.isAvailable() && !themeCookieExists) {
|
||||
const isPreferedColorSchemeDark = window.matchMedia('(prefers-color-scheme: dark)').matches === true;
|
||||
if (themeCookie.exists() === 0) {
|
||||
if (!themeCookieExists) {
|
||||
themeDom[isPreferedColorSchemeDark ? 'addClass' : 'removeClass'](rootEl);
|
||||
}
|
||||
}
|
||||
|
||||
@ -209,6 +209,7 @@ scheb_two_factor:
|
||||
|
||||
google:
|
||||
enabled: "%twofactor_auth%"
|
||||
issuer: "%server_name%"
|
||||
template: WallabagUserBundle:Authentication:form.html.twig
|
||||
|
||||
email:
|
||||
|
||||
@ -24,6 +24,7 @@ parameters:
|
||||
database_charset: utf8mb4
|
||||
|
||||
domain_name: https://your-wallabag-url-instance.com
|
||||
server_name: "Your wallabag instance"
|
||||
|
||||
mailer_transport: smtp
|
||||
mailer_user: ~
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
wallabag_core:
|
||||
version: 2.4.0
|
||||
version: 2.4.2
|
||||
paypal_url: "https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=9UBA65LG3FX9Y&lc=gb"
|
||||
languages:
|
||||
en: 'English'
|
||||
|
||||
1656
composer.lock
generated
1656
composer.lock
generated
File diff suppressed because it is too large
Load Diff
42
package.json
42
package.json
@ -36,43 +36,43 @@
|
||||
"url": "https://github.com/wallabag/wallabag/issues"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@babel/core": "^7.12.10",
|
||||
"@babel/preset-env": "^7.12.10",
|
||||
"autoprefixer": "^10.1.0",
|
||||
"@babel/core": "^7.13.10",
|
||||
"@babel/preset-env": "^7.13.10",
|
||||
"autoprefixer": "^10.2.5",
|
||||
"babel-eslint": "^10.1.0",
|
||||
"babel-loader": "^8.2.2",
|
||||
"css-loader": "^5.0.1",
|
||||
"eslint": "^7.15.0",
|
||||
"css-loader": "^5.1.3",
|
||||
"eslint": "^7.22.0",
|
||||
"eslint-config-airbnb-base": "^14.2.1",
|
||||
"eslint-loader": "^4.0.2",
|
||||
"eslint-plugin-import": "^2.22.1",
|
||||
"file-loader": "^6.2.0",
|
||||
"lato-font": "^3.0.0",
|
||||
"mini-css-extract-plugin": "^1.3.2",
|
||||
"mini-css-extract-plugin": "^1.3.9",
|
||||
"node-sass": "^5.0.0",
|
||||
"postcss": "^8.2.1",
|
||||
"postcss-loader": "^4.0.4",
|
||||
"sass": "^1.30.0",
|
||||
"sass-loader": "^10.0.5",
|
||||
"postcss": "^8.2.7",
|
||||
"postcss-loader": "^5.2.0",
|
||||
"sass": "^1.32.8",
|
||||
"sass-loader": "^11.0.1",
|
||||
"style-loader": "^2.0.0",
|
||||
"stylelint": "^13.7.2",
|
||||
"stylelint-config-standard": "^20.0.0",
|
||||
"stylelint-scss": "^3.18.0",
|
||||
"stylelint": "^13.12.0",
|
||||
"stylelint-config-standard": "^21.0.0",
|
||||
"stylelint-scss": "^3.19.0",
|
||||
"stylelint-webpack-plugin": "^2.1.1",
|
||||
"url-loader": "^4.1.1",
|
||||
"webpack": "^5.10.0",
|
||||
"webpack-cli": "^4.2.0",
|
||||
"webpack-dev-server": "^3.11.0",
|
||||
"webpack-manifest-plugin": "^3.0.0",
|
||||
"webpack-merge": "^5.4.1"
|
||||
"webpack": "^5.26.0",
|
||||
"webpack-cli": "^4.5.0",
|
||||
"webpack-dev-server": "^3.11.2",
|
||||
"webpack-manifest-plugin": "^3.1.0",
|
||||
"webpack-merge": "^5.7.3"
|
||||
},
|
||||
"dependencies": {
|
||||
"annotator": "wallabag/annotator#master",
|
||||
"clipboard": "^2.0.4",
|
||||
"clipboard": "^2.0.8",
|
||||
"hammerjs": "^2.0.8",
|
||||
"highlight.js": "^10.4.1",
|
||||
"highlight.js": "^10.6.0",
|
||||
"icomoon-free-npm": "^0.0.0",
|
||||
"jquery": "^3.5.0",
|
||||
"jquery": "^3.6.0",
|
||||
"jquery.cookie": "^1.4.1",
|
||||
"jr-qrcode": "^1.0.7",
|
||||
"material-design-icons-iconfont": "^6.1.0",
|
||||
|
||||
@ -7,8 +7,7 @@ parameters:
|
||||
symfony:
|
||||
container_xml_path: %rootDir%/../../../var/cache/test/appTestDebugProjectContainer.xml
|
||||
|
||||
# https://github.com/phpstan/phpstan/issues/694#issuecomment-350724288
|
||||
autoload_files:
|
||||
bootstrapFiles:
|
||||
- vendor/bin/.phpunit/phpunit-8.3-0/vendor/autoload.php
|
||||
|
||||
inferPrivatePropertyTypeFromConstructor: true
|
||||
|
||||
101
src/Wallabag/CoreBundle/Command/CleanDownloadedImagesCommand.php
Normal file
101
src/Wallabag/CoreBundle/Command/CleanDownloadedImagesCommand.php
Normal file
@ -0,0 +1,101 @@
|
||||
<?php
|
||||
|
||||
namespace Wallabag\CoreBundle\Command;
|
||||
|
||||
use Symfony\Bundle\FrameworkBundle\Command\ContainerAwareCommand;
|
||||
use Symfony\Component\Console\Input\InputInterface;
|
||||
use Symfony\Component\Console\Input\InputOption;
|
||||
use Symfony\Component\Console\Output\OutputInterface;
|
||||
use Symfony\Component\Console\Style\SymfonyStyle;
|
||||
use Symfony\Component\Finder\Finder;
|
||||
|
||||
class CleanDownloadedImagesCommand extends ContainerAwareCommand
|
||||
{
|
||||
protected function configure()
|
||||
{
|
||||
$this
|
||||
->setName('wallabag:clean-downloaded-images')
|
||||
->setDescription('Cleans downloaded images which are no more associated to an entry')
|
||||
->addOption(
|
||||
'dry-run',
|
||||
null,
|
||||
InputOption::VALUE_NONE,
|
||||
'Do not remove images, just dump counters'
|
||||
);
|
||||
}
|
||||
|
||||
protected function execute(InputInterface $input, OutputInterface $output)
|
||||
{
|
||||
$io = new SymfonyStyle($input, $output);
|
||||
|
||||
$dryRun = (bool) $input->getOption('dry-run');
|
||||
|
||||
if ($dryRun) {
|
||||
$io->text('Dry run mode <info>enabled</info> (no images will be removed)');
|
||||
}
|
||||
|
||||
$downloadImages = $this->getContainer()->get('wallabag_core.entry.download_images');
|
||||
$baseFolder = $downloadImages->getBaseFolder();
|
||||
|
||||
$io->text('Retrieve existing images');
|
||||
|
||||
// retrieve _existing_ folders in the image folder
|
||||
$finder = new Finder();
|
||||
$finder
|
||||
->directories()
|
||||
->ignoreDotFiles(true)
|
||||
->depth(2)
|
||||
->in($baseFolder);
|
||||
|
||||
$existingPaths = [];
|
||||
foreach ($finder as $file) {
|
||||
$existingPaths[] = $file->getFilename();
|
||||
}
|
||||
|
||||
$io->text(sprintf(' -> <info>%d</info> images found', \count($existingPaths)));
|
||||
|
||||
$io->text('Retrieve valid folders attached to a user');
|
||||
|
||||
$entries = $this->getContainer()->get('wallabag_core.entry_repository')->findAllEntriesIdByUserId();
|
||||
|
||||
// retrieve _valid_ folders from existing entries
|
||||
$validPaths = [];
|
||||
foreach ($entries as $entry) {
|
||||
$path = $downloadImages->getRelativePath($entry['id']);
|
||||
|
||||
if (!file_exists($baseFolder . '/' . $path)) {
|
||||
continue;
|
||||
}
|
||||
|
||||
// only store the hash, not the full path
|
||||
$validPaths[] = explode('/', $path)[2];
|
||||
}
|
||||
|
||||
$io->text(sprintf(' -> <info>%d</info> folders found', \count($validPaths)));
|
||||
|
||||
$deletedCount = 0;
|
||||
|
||||
$io->text('Remove images');
|
||||
|
||||
// check if existing path are valid, if not, remove all images and the folder
|
||||
foreach ($existingPaths as $existingPath) {
|
||||
if (!\in_array($existingPath, $validPaths, true)) {
|
||||
$fullPath = $baseFolder . '/' . $existingPath[0] . '/' . $existingPath[1] . '/' . $existingPath;
|
||||
$files = glob($fullPath . '/*.*');
|
||||
|
||||
if (!$dryRun) {
|
||||
array_map('unlink', $files);
|
||||
rmdir($fullPath);
|
||||
}
|
||||
|
||||
$deletedCount += \count($files);
|
||||
|
||||
$io->text(sprintf('Deleted images in <info>%s</info>: <info>%d</info>', $existingPath, \count($files)));
|
||||
}
|
||||
}
|
||||
|
||||
$io->success(sprintf('Finished cleaning. %d deleted images', $deletedCount));
|
||||
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
@ -59,7 +59,7 @@ class GenerateUrlHashesCommand extends ContainerAwareCommand
|
||||
$em = $this->getContainer()->get('doctrine.orm.entity_manager');
|
||||
$repo = $this->getDoctrine()->getRepository('WallabagCoreBundle:Entry');
|
||||
|
||||
$entries = $repo->findByUser($user->getId());
|
||||
$entries = $repo->findByEmptyHashedUrlAndUserId($user->getId());
|
||||
|
||||
$i = 1;
|
||||
foreach ($entries as $entry) {
|
||||
|
||||
@ -327,7 +327,7 @@ class ConfigController extends Controller
|
||||
$backupCodes = (new BackupCodes())->toArray();
|
||||
$backupCodesHashed = array_map(
|
||||
function ($backupCode) {
|
||||
return password_hash($backupCode, PASSWORD_DEFAULT);
|
||||
return password_hash($backupCode, \PASSWORD_DEFAULT);
|
||||
},
|
||||
$backupCodes
|
||||
);
|
||||
@ -344,6 +344,7 @@ class ConfigController extends Controller
|
||||
return $this->render('WallabagCoreBundle:Config:otp_app.html.twig', [
|
||||
'backupCodes' => $backupCodes,
|
||||
'qr_code' => $this->get('scheb_two_factor.security.google_authenticator')->getQRContent($user),
|
||||
'secret' => $secret,
|
||||
]);
|
||||
}
|
||||
|
||||
|
||||
@ -532,6 +532,8 @@ class EntryController extends Controller
|
||||
$searchTerm = (isset($request->get('search_entry')['term']) ? $request->get('search_entry')['term'] : '');
|
||||
$currentRoute = (null !== $request->query->get('currentRoute') ? $request->query->get('currentRoute') : '');
|
||||
|
||||
$formOptions = [];
|
||||
|
||||
switch ($type) {
|
||||
case 'search':
|
||||
$qb = $repository->getBuilderForSearchByUser($this->getUser()->getId(), $searchTerm, $currentRoute);
|
||||
@ -541,12 +543,15 @@ class EntryController extends Controller
|
||||
break;
|
||||
case 'starred':
|
||||
$qb = $repository->getBuilderForStarredByUser($this->getUser()->getId());
|
||||
$formOptions['filter_starred'] = true;
|
||||
break;
|
||||
case 'archive':
|
||||
$qb = $repository->getBuilderForArchiveByUser($this->getUser()->getId());
|
||||
$formOptions['filter_archived'] = true;
|
||||
break;
|
||||
case 'unread':
|
||||
$qb = $repository->getBuilderForUnreadByUser($this->getUser()->getId());
|
||||
$formOptions['filter_unread'] = true;
|
||||
break;
|
||||
case 'all':
|
||||
$qb = $repository->getBuilderForAllByUser($this->getUser()->getId());
|
||||
@ -555,7 +560,7 @@ class EntryController extends Controller
|
||||
throw new \InvalidArgumentException(sprintf('Type "%s" is not implemented.', $type));
|
||||
}
|
||||
|
||||
$form = $this->createForm(EntryFilterType::class);
|
||||
$form = $this->createForm(EntryFilterType::class, [], $formOptions);
|
||||
|
||||
if ($request->query->has($form->getName())) {
|
||||
// manually bind values from the request
|
||||
|
||||
@ -84,7 +84,7 @@ class Tag
|
||||
*/
|
||||
public function setLabel($label)
|
||||
{
|
||||
$this->label = mb_convert_case($label, MB_CASE_LOWER);
|
||||
$this->label = mb_convert_case($label, \MB_CASE_LOWER);
|
||||
|
||||
return $this;
|
||||
}
|
||||
|
||||
@ -118,12 +118,15 @@ class EntryFilterType extends AbstractType
|
||||
])
|
||||
->add('isArchived', CheckboxFilterType::class, [
|
||||
'label' => 'entry.filters.archived_label',
|
||||
'data' => $options['filter_archived'],
|
||||
])
|
||||
->add('isStarred', CheckboxFilterType::class, [
|
||||
'label' => 'entry.filters.starred_label',
|
||||
'data' => $options['filter_starred'],
|
||||
])
|
||||
->add('isUnread', CheckboxFilterType::class, [
|
||||
'label' => 'entry.filters.unread_label',
|
||||
'data' => $options['filter_unread'],
|
||||
'apply_filter' => function (QueryInterface $filterQuery, $field, $values) {
|
||||
if (false === $values['value']) {
|
||||
return;
|
||||
@ -177,6 +180,9 @@ class EntryFilterType extends AbstractType
|
||||
$resolver->setDefaults([
|
||||
'csrf_protection' => false,
|
||||
'validation_groups' => ['filtering'],
|
||||
'filter_archived' => false,
|
||||
'filter_starred' => false,
|
||||
'filter_unread' => false,
|
||||
]);
|
||||
}
|
||||
}
|
||||
|
||||
@ -141,7 +141,7 @@ class ContentProxy
|
||||
$date = $value;
|
||||
|
||||
// is it a timestamp?
|
||||
if (false !== filter_var($date, FILTER_VALIDATE_INT)) {
|
||||
if (false !== filter_var($date, \FILTER_VALIDATE_INT)) {
|
||||
$date = '@' . $date;
|
||||
}
|
||||
|
||||
@ -163,7 +163,7 @@ class ContentProxy
|
||||
*/
|
||||
public function setEntryDomainName(Entry $entry)
|
||||
{
|
||||
$domainName = parse_url($entry->getUrl(), PHP_URL_HOST);
|
||||
$domainName = parse_url($entry->getUrl(), \PHP_URL_HOST);
|
||||
if (false !== $domainName) {
|
||||
$entry->setDomainName($domainName);
|
||||
}
|
||||
@ -177,7 +177,7 @@ class ContentProxy
|
||||
public function setDefaultEntryTitle(Entry $entry)
|
||||
{
|
||||
$url = parse_url($entry->getUrl());
|
||||
$path = pathinfo($url['path'], PATHINFO_BASENAME);
|
||||
$path = pathinfo($url['path'], \PATHINFO_BASENAME);
|
||||
|
||||
if (empty($path)) {
|
||||
$path = $url['host'];
|
||||
|
||||
@ -37,6 +37,11 @@ class DownloadImages
|
||||
$this->setFolder();
|
||||
}
|
||||
|
||||
public function getBaseFolder()
|
||||
{
|
||||
return $this->baseFolder;
|
||||
}
|
||||
|
||||
/**
|
||||
* Process the html and extract images URLs from it.
|
||||
*
|
||||
@ -99,7 +104,7 @@ class DownloadImages
|
||||
* @param string $url Url from where the image were found
|
||||
* @param string $relativePath Relative local path to saved the image
|
||||
*
|
||||
* @return string Relative url to access the image from the web
|
||||
* @return string|false Relative url to access the image from the web
|
||||
*/
|
||||
public function processSingleImage($entryId, $imagePath, $url, $relativePath = null)
|
||||
{
|
||||
@ -210,6 +215,29 @@ class DownloadImages
|
||||
@rmdir($folderPath);
|
||||
}
|
||||
|
||||
/**
|
||||
* Generate the folder where we are going to save images based on the entry url.
|
||||
*
|
||||
* @param int $entryId ID of the entry
|
||||
* @param bool $createFolder Should we create the folder for the given id?
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
public function getRelativePath($entryId, $createFolder = true)
|
||||
{
|
||||
$hashId = hash('crc32', $entryId);
|
||||
$relativePath = $hashId[0] . '/' . $hashId[1] . '/' . $hashId;
|
||||
$folderPath = $this->baseFolder . '/' . $relativePath;
|
||||
|
||||
if (!file_exists($folderPath) && $createFolder) {
|
||||
mkdir($folderPath, 0777, true);
|
||||
}
|
||||
|
||||
$this->logger->debug('DownloadImages: Folder used for that Entry id', ['folder' => $folderPath, 'entryId' => $entryId]);
|
||||
|
||||
return $relativePath;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get images urls from the srcset image attribute.
|
||||
*
|
||||
@ -254,28 +282,6 @@ class DownloadImages
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Generate the folder where we are going to save images based on the entry url.
|
||||
*
|
||||
* @param int $entryId ID of the entry
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
private function getRelativePath($entryId)
|
||||
{
|
||||
$hashId = hash('crc32', $entryId);
|
||||
$relativePath = $hashId[0] . '/' . $hashId[1] . '/' . $hashId;
|
||||
$folderPath = $this->baseFolder . '/' . $relativePath;
|
||||
|
||||
if (!file_exists($folderPath)) {
|
||||
mkdir($folderPath, 0777, true);
|
||||
}
|
||||
|
||||
$this->logger->debug('DownloadImages: Folder used for that Entry id', ['folder' => $folderPath, 'entryId' => $entryId]);
|
||||
|
||||
return $relativePath;
|
||||
}
|
||||
|
||||
/**
|
||||
* Make an $url absolute based on the $base.
|
||||
*
|
||||
|
||||
@ -94,6 +94,7 @@ class RuleBasedTagger
|
||||
*/
|
||||
private function getTag($label)
|
||||
{
|
||||
$label = mb_convert_case($label, \MB_CASE_LOWER);
|
||||
$tag = $this->tagRepository->findOneByLabel($label);
|
||||
|
||||
if (!$tag) {
|
||||
|
||||
@ -44,7 +44,7 @@ class TagsAssigner
|
||||
}
|
||||
|
||||
foreach ($tags as $label) {
|
||||
$label = trim(mb_convert_case($label, MB_CASE_LOWER));
|
||||
$label = trim(mb_convert_case($label, \MB_CASE_LOWER));
|
||||
|
||||
// avoid empty tag
|
||||
if (0 === \strlen($label)) {
|
||||
|
||||
@ -369,6 +369,22 @@ class EntryRepository extends EntityRepository
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* Find all entries which have an empty value for hash.
|
||||
*
|
||||
* @return Entry|false
|
||||
*/
|
||||
public function findByEmptyHashedUrlAndUserId(int $userId)
|
||||
{
|
||||
return $this->createQueryBuilder('e')
|
||||
->where('e.hashedUrl = :empty')->setParameter('empty', '')
|
||||
->orWhere('e.hashedUrl is null')
|
||||
->andWhere('e.user = :user_id')->setParameter('user_id', $userId)
|
||||
->andWhere('e.url is not null')
|
||||
->getQuery()
|
||||
->getResult();
|
||||
}
|
||||
|
||||
/**
|
||||
* Find an entry by its hashed url and its owner.
|
||||
* If it exists, return the entry otherwise return false.
|
||||
|
||||
@ -0,0 +1 @@
|
||||
{}
|
||||
@ -0,0 +1 @@
|
||||
{}
|
||||
@ -28,6 +28,7 @@ entry:
|
||||
page_titles:
|
||||
all: Všechny položky
|
||||
untagged: Položky bez štítků
|
||||
default_title: Název položky
|
||||
menu:
|
||||
top:
|
||||
search: Hledat
|
||||
@ -88,6 +89,11 @@ config:
|
||||
new_user: Přidat uživatele
|
||||
form:
|
||||
save: Uložit
|
||||
otp:
|
||||
app:
|
||||
qrcode_label: QR kód
|
||||
enable: Povolit
|
||||
cancel: Zrušit
|
||||
security:
|
||||
register:
|
||||
page_title: Vytvořit účet
|
||||
|
||||
@ -145,7 +145,7 @@ about:
|
||||
third_party:
|
||||
license: 'Licens'
|
||||
howto:
|
||||
page_title: ''
|
||||
page_title: 'KUow-to'
|
||||
top_menu:
|
||||
browser_addons: 'Browserudvidelser'
|
||||
mobile_apps: 'Apps'
|
||||
|
||||
@ -20,7 +20,7 @@ menu:
|
||||
archive: Archiv
|
||||
all_articles: Alle Artikel
|
||||
config: Konfiguration
|
||||
tags: Markierungen
|
||||
tags: Tags
|
||||
internal_settings: Interne Einstellungen
|
||||
import: Importieren
|
||||
howto: How-To
|
||||
@ -60,7 +60,7 @@ config:
|
||||
rss: RSS
|
||||
user_info: Benutzerinformation
|
||||
password: Kennwort
|
||||
rules: Markierungsregeln
|
||||
rules: Tagging Regeln
|
||||
new_user: Benutzer hinzufügen
|
||||
reset: Zurücksetzen
|
||||
ignore_origin: Regeln fürs Ignorieren des Ursprungs
|
||||
@ -111,7 +111,7 @@ config:
|
||||
help_twoFactorAuthentication: Wenn du 2FA aktivierst, wirst du bei jedem Login einen Code per E-Mail bekommen.
|
||||
delete:
|
||||
title: Lösche mein Konto (a.k.a Gefahrenzone)
|
||||
description: Wenn du dein Konto löschst, werden ALL deine Artikel, ALL deine Markierungen, ALL deine Anmerkungen und dein Konto dauerhaft gelöscht (kann NICHT RÜCKGÄNGIG gemacht werden). Du wirst anschließend abgemeldet.
|
||||
description: Wenn du dein Konto löschst, werden ALL deine Artikel, ALL deine Tags, ALL deine Anmerkungen und dein Konto dauerhaft gelöscht (kann NICHT RÜCKGÄNGIG gemacht werden). Du wirst anschließend abgemeldet.
|
||||
confirm: Bist du wirklich sicher? (DIES KANN NICHT RÜCKGÄNGIG GEMACHT WERDEN)
|
||||
button: Lösche mein Konto
|
||||
two_factor:
|
||||
@ -129,7 +129,7 @@ config:
|
||||
title: Zurücksetzen (a.k.a Gefahrenzone)
|
||||
description: Beim Nutzen der folgenden Schaltflächenhast du die Möglichkeit, einige Informationen von deinem Konto zu entfernen. Sei dir bewusst, dass dies NICHT RÜCKGÄNGIG zu machen ist.
|
||||
annotations: Entferne ALLE Annotationen
|
||||
tags: Entferne ALLE Markierungen
|
||||
tags: Entferne ALLE Tags
|
||||
entries: Entferne ALLE Einträge
|
||||
archived: Entferne ALLE archivierten Einträge
|
||||
confirm: Bist du wirklich sicher? (DIES KANN NICHT RÜCKGÄNGIG GEMACHT WERDEN)
|
||||
@ -144,15 +144,15 @@ config:
|
||||
delete_rule_label: löschen
|
||||
edit_rule_label: bearbeiten
|
||||
rule_label: Regel
|
||||
tags_label: Markierungen
|
||||
tags_label: Tags
|
||||
faq:
|
||||
title: FAQ
|
||||
tagging_rules_definition_title: Was bedeuten die „Markierungsregeln“?
|
||||
tagging_rules_definition_description: Dies sind Regeln von wallabag, um neu hinzugefügte Einträge automatisch zu markieren.<br />Jedes Mal, wenn ein neuer Eintrag hinzugefügt wird, werden die Markierungsregeln angewandt. Dies erleichtert dir die Arbeit, deine Einträge manuell zu kategorisieren.
|
||||
tagging_rules_definition_title: Was bedeuten die „Tagging-Regeln“?
|
||||
tagging_rules_definition_description: Dies sind Regeln von wallabag, um neu hinzugefügte Einträge automatisch zu taggen.<br />Jedes Mal, wenn ein neuer Eintrag hinzugefügt wird, werden die Tagging-Regeln angewandt. Dies erleichtert dir die Arbeit, deine Einträge manuell zu kategorisieren.
|
||||
how_to_use_them_title: Wie nutze ich sie?
|
||||
how_to_use_them_description: 'Nehmen wir an, du möchtest deine Einträge als „<i>schnell lesbar</i>“ markiert, wenn die Lesezeit kürzer als drei Minuten ist.<br />In diesem Fall solltest du „readingTime <= 3“ in das Feld <i>Regel</i> und „<i>schnell lesbar</i>“ in das Feld <i>Markierungen</i> schreiben.<br />Mehrere Markierungen können gleichzeitig hinzugefügt werden, indem sie durch ein Komma getrennt werden: „<i>schnell lesbar, interessant</i>“.<br />Komplexe Regeln können durch vordefinierte Operatoren geschrieben werden: wenn „<i>readingTime >= 5 AND domainName = "github.com"</i>“ dann markiere als „<i>länger lesen, GitHub</i>“'
|
||||
how_to_use_them_description: 'Nehmen wir an, du möchtest deine Einträge als „<i>schnell lesbar</i>“ markiert, wenn die Lesezeit kürzer als drei Minuten ist.<br />In diesem Fall solltest du „readingTime <= 3“ in das Feld <i>Regel</i> und „<i>schnell lesbar</i>“ in das Feld <i>Tags</i> schreiben.<br />Mehrere Tags können gleichzeitig hinzugefügt werden, indem sie durch ein Komma getrennt werden: „<i>schnell lesbar, interessant</i>“.<br />Komplexe Regeln können durch vordefinierte Operatoren geschrieben werden: wenn „<i>readingTime >= 5 AND domainName = "github.com"</i>“ dann tagge als „<i>länger lesen, GitHub</i>“'
|
||||
variables_available_title: Welche Variablen und Operatoren kann ich benutzen, um Regeln zu schreiben?
|
||||
variables_available_description: 'Die folgenden Variablen und Operatoren können genutzt werden, um Markierungsregeln zu erstellen:'
|
||||
variables_available_description: 'Die folgenden Variablen und Operatoren können genutzt werden, um Tagging-Regeln zu erstellen:'
|
||||
meaning: Bedeutung
|
||||
variable_description:
|
||||
label: Variable
|
||||
@ -180,11 +180,11 @@ config:
|
||||
export: Exportieren
|
||||
import_submit: Importieren
|
||||
card:
|
||||
export_tagging_rules_detail: Dadurch wird eine JSON-Datei heruntergeladen, mit der du Markierungsegeln an anderer Stelle importieren oder sichern kannst.
|
||||
export_tagging_rules_detail: Dadurch wird eine JSON-Datei heruntergeladen, mit der du Tagging-Regeln an anderer Stelle importieren oder sichern kannst.
|
||||
import_tagging_rules_detail: Du musst die zuvor exportierte JSON-Datei auswählen.
|
||||
export_tagging_rules: Markierungsregeln exportieren
|
||||
import_tagging_rules: Markierungsregeln importieren
|
||||
new_tagging_rule: Markierungsregel erstellen
|
||||
export_tagging_rules: Tagging-Regeln exportieren
|
||||
import_tagging_rules: Tagging-Regeln importieren
|
||||
new_tagging_rule: Tagging-Regel erstellen
|
||||
file_label: JSON-Datei
|
||||
otp:
|
||||
app:
|
||||
@ -194,6 +194,8 @@ config:
|
||||
two_factor_code_description_3: 'Du solltest diese Backup-Codes an einem sicheren Ort abspeichern. Du kannst sie nutzen, falls du den Zugang zu deiner OTP-App verlierst:'
|
||||
two_factor_code_description_2: 'Du kannst diesen QR-Code mit deiner App scannen:'
|
||||
two_factor_code_description_1: Du hast soeben die OTP-Zwei-Faktor-Authentifizierung aktiviert. Öffne deine OTP-App und nutze diesen Code, um ein Einmalkennwort zu erhalten. Der Code wird verschwinden, sobald du die Seite neulädst.
|
||||
two_factor_code_description_5: 'Wenn du den QR-Code nicht sehen oder nicht scannen kannst, trage in deine App folgendes Geheimnis ein:'
|
||||
qrcode_label: QR-Code
|
||||
page_title: Zwei-Faktor-Authentifizierung
|
||||
form_ignore_origin_rules:
|
||||
faq:
|
||||
@ -234,7 +236,7 @@ entry:
|
||||
starred: Favorisierte Einträge
|
||||
archived: Archivierte Einträge
|
||||
filtered: Gefilterte Einträge
|
||||
filtered_tags: 'Gefiltert nach Markierungen:'
|
||||
filtered_tags: 'Gefiltert nach Tags:'
|
||||
filtered_search: 'Gefiltert nach Suche:'
|
||||
untagged: Nicht markierte Einträge
|
||||
all: Alle Einträge
|
||||
@ -243,7 +245,7 @@ entry:
|
||||
reading_time: geschätzte Lesezeit
|
||||
reading_time_minutes: 'geschätzte Lesezeit: %readingTime% min'
|
||||
reading_time_less_one_minute: 'geschätzte Lesezeit: < 1 min'
|
||||
number_of_tags: '{1}und eine andere Markierung|]1,Inf[und %count% andere Markierungen'
|
||||
number_of_tags: '{1}und eine anderer Tag|]1,Inf[und %count% andere Tags'
|
||||
reading_time_minutes_short: '%readingTime% min'
|
||||
reading_time_less_one_minute_short: '< 1 min'
|
||||
original_article: Originalartikel
|
||||
@ -285,7 +287,7 @@ entry:
|
||||
view_original_article: Originalartikel
|
||||
re_fetch_content: Inhalt neu laden
|
||||
delete: Löschen
|
||||
add_a_tag: Markierung hinzufügen
|
||||
add_a_tag: Tag hinzufügen
|
||||
share_content: Teilen
|
||||
share_email_label: E-Mail
|
||||
public_link: Öffentlicher Link
|
||||
@ -323,7 +325,7 @@ entry:
|
||||
shared_by_wallabag: Dieser Artikel wurde von %username% mittels <a href="%wallabag_instance%">wallabag</a> geteilt
|
||||
confirm:
|
||||
delete: Bist du sicher, dass du diesen Artikel löschen möchtest?
|
||||
delete_tag: Bist du sicher, dass du diese Markierung vom Artikel entfernen möchtest?
|
||||
delete_tag: Bist du sicher, dass du diesen Tag vom Artikel entfernen möchtest?
|
||||
metadata:
|
||||
reading_time: Geschätzte Lesezeit
|
||||
reading_time_minutes_short: '%readingTime% min'
|
||||
@ -393,7 +395,7 @@ howto:
|
||||
go_starred: Zu Favoriten gehen
|
||||
go_archive: Zu archivierten gehen
|
||||
go_all: Zu allen Artikel gehen
|
||||
go_tags: Zu den Markierungen gehen
|
||||
go_tags: Zu den Tags gehen
|
||||
go_config: Einstellungen öffnen
|
||||
go_import: Import-Sektion öffnen
|
||||
go_developers: Zur Entwickler-Seite gehen
|
||||
@ -466,15 +468,15 @@ quickstart:
|
||||
email: Über E-Mail
|
||||
gitter: Auf Gitter
|
||||
tag:
|
||||
page_title: Markierungen
|
||||
page_title: Tags
|
||||
list:
|
||||
number_on_the_page: '{0} Es gibt keine Markierungen.|{1} Es gibt eine Markierung.|]1,Inf[ Es gibt %count% Markierungen.'
|
||||
number_on_the_page: '{0} Es gibt keine Tags.|{1} Es gibt einen Tag.|]1,Inf[ Es gibt %count% Tags.'
|
||||
see_untagged_entries: Zeige nicht markierte Einträge
|
||||
untagged: Nicht markierte Einträge
|
||||
no_untagged_entries: Es gibt keine nicht markierte Einträge.
|
||||
new:
|
||||
add: Hinzufügen
|
||||
placeholder: Du kannst verschiedene Markierungen, getrennt von einem Komma, hinzufügen.
|
||||
placeholder: Du kannst verschiedene Tags, getrennt von einem Komma, hinzufügen.
|
||||
export:
|
||||
footer_template: <div style="text-align:center;"><p>Generiert von wallabag mit Hilfe von %method%</p><p>Bitte öffne <a href="https://github.com/wallabag/wallabag/issues">ein Ticket</a> wenn du ein Problem mit der Darstellung von diesem E-Book auf deinem Gerät hast.</p></div>
|
||||
unknown: Unbekannt
|
||||
@ -638,11 +640,11 @@ flashes:
|
||||
password_not_updated_demo: Im Testmodus kannst du das Kennwort nicht ändern.
|
||||
user_updated: Information aktualisiert
|
||||
rss_updated: RSS-Informationen aktualisiert
|
||||
tagging_rules_updated: Markierungsregeln aktualisiert
|
||||
tagging_rules_deleted: Markierungsregel gelöscht
|
||||
tagging_rules_updated: Tagging-Regeln aktualisiert
|
||||
tagging_rules_deleted: Tagging-Regel gelöscht
|
||||
rss_token_updated: RSS-Token aktualisiert
|
||||
annotations_reset: Anmerkungen zurücksetzen
|
||||
tags_reset: Markierungen zurücksetzen
|
||||
tags_reset: Tags zurücksetzen
|
||||
entries_reset: Einträge zurücksetzen
|
||||
archived_reset: Archiverte Einträge zurücksetzen
|
||||
ignore_origin_rules_deleted: Regel fürs Ignorieren des Ursprungs gelöscht
|
||||
@ -652,8 +654,8 @@ flashes:
|
||||
feed_updated: Feed-Informationen aktualisiert
|
||||
otp_disabled: Zwei-Faktor-Authentifizierung deaktiviert
|
||||
otp_enabled: Zwei-Faktor-Authentifizierung aktiviert
|
||||
tagging_rules_not_imported: Fehler beim Importieren von Markierungsregeln
|
||||
tagging_rules_imported: Markierungsregeln importiert
|
||||
tagging_rules_not_imported: Fehler beim Importieren von Tagging-Regeln
|
||||
tagging_rules_imported: Tagging-Regeln importiert
|
||||
entry:
|
||||
notice:
|
||||
entry_already_saved: Eintrag bereits am %date% gespeichert
|
||||
@ -670,8 +672,8 @@ flashes:
|
||||
no_random_entry: Es wurde kein Artikel mit diesen Kriterien gefunden
|
||||
tag:
|
||||
notice:
|
||||
tag_added: Markierung hinzugefügt
|
||||
tag_renamed: Markierung umbenannt
|
||||
tag_added: Tag hinzugefügt
|
||||
tag_renamed: Tag umbenannt
|
||||
import:
|
||||
notice:
|
||||
failed: Import fehlgeschlagen, bitte erneut probieren.
|
||||
|
||||
701
src/Wallabag/CoreBundle/Resources/translations/messages.el.yml
Normal file
701
src/Wallabag/CoreBundle/Resources/translations/messages.el.yml
Normal file
@ -0,0 +1,701 @@
|
||||
developer:
|
||||
existing_clients:
|
||||
field_grant_types: Τύπος προνομίου επιτρέπεται
|
||||
no_client: Κανένας πελάτης προς το παρόν.
|
||||
field_uris: URI ανακατεύθυνσης
|
||||
field_secret: Μυστικό κλειδί πελάτη
|
||||
field_id: ID πελάτη
|
||||
title: Υπάρχοντες πελάτες
|
||||
client_parameter:
|
||||
field_secret: Μυστικό κλειδί πελάτη
|
||||
field_id: ID πελάτη
|
||||
field_name: Όνομα πελάτη
|
||||
page_description: Ορίστε οι παράμετροι του πελάτη σας.
|
||||
page_title: Διαχείριση πελατών API > Παράμετροι πελάτη
|
||||
read_howto: Διαβάστε το «Πώς να δημιουργήσω την πρώτη μου εφαρμογή»
|
||||
back: Επιστροφή
|
||||
client:
|
||||
copy_to_clipboard: Αντιγραφή
|
||||
action_back: Επιστροφή
|
||||
form:
|
||||
save_label: Δημιουργία νέου πελάτη
|
||||
redirect_uris_label: URI ανακατεύθυνσης (προαιρετικό)
|
||||
name_label: Όνομα του πελάτη
|
||||
page_description: Πρόκειται να δημιουργήσετε έναν νέο πελάτη. Παρακαλούμε συμπληρώστε το παρακάτω πεδίο για το URI ανακατεύθυνσης της εφαρμογής σας.
|
||||
page_title: Διαχείριση πελατών API > Νέος πελάτης
|
||||
remove:
|
||||
action: Αφαίρεση του πελάτη %name%
|
||||
warn_message_2: Αν το αφαιρέσετε, κάθε εφαρμογή ρυθμισμένη με αυτόν τον πελάτη δεν θα μπορέσει να επαληθεύσει με το δικό σας wallabag.
|
||||
warn_message_1: Έχετε τη δυνατότητα να αφαιρέσετε τον πελάτη %name%. Αυτή η δράση είναι ΜΗ ΑΝΑΣΤΡΕΨΙΜΗ!
|
||||
clients:
|
||||
create_new: Δημιουργία νέου πελάτη
|
||||
title: Πελάτες
|
||||
list_methods: Προβολή σε λίστα των μεθόδων API
|
||||
full_documentation: Προβολή πλήρους τεκμηρίωσης του API
|
||||
how_to_first_app: Πώς να δημιουργήσω την πρώτη μου εφαρμογή
|
||||
documentation: Τεκμηρίωση
|
||||
welcome_message: Καλώς ήρθατε στο API του wallabag
|
||||
page_title: Διαχείριση πελατών API
|
||||
howto:
|
||||
back: Επιστροφή
|
||||
description:
|
||||
paragraph_8: Αν θέλετε να δείτε όλα τα ακροσημεία του API, μπορείτε να ρίξετε μια ματιά <a href="%link%">στην τεκμηρίωση του API</a>.
|
||||
paragraph_7: Αυτή η κλήση θα επιστρέψει όλες τις καταχωρίσεις για τον χρήστη σας.
|
||||
paragraph_6: 'Το access_token είναι χρήσιμο για να γίνει κλήση προς το ακροσημείο του API: Για παράδειγμα:'
|
||||
paragraph_5: 'Το API θα επιστρέψει μια απάντηση όπως αυτή:'
|
||||
paragraph_4: 'Τώρα, δημιουργήστε το σύμβολό σας (αντικαταστήστε τα client_id, client_secret, username και password με τις σωστές αξίες):'
|
||||
paragraph_3: Για να δημιουργήσετε αυτό το σύμβολο, πρέπει να <a href="%link%">δημιουργήσετε έναν καινούριο πελάτη</a>.
|
||||
paragraph_2: Πρέπει να χρησιμοποιήσετε ένα σύμβολο για να γίνει επικοινωνία μεταξύ της τρίτης εφαρμογής και του API του wallabag.
|
||||
paragraph_1: Οι ακόλουθες εντολές χρησιμοποιούν τη <a href="https://github.com/jkbrzt/httpie">βιβλιοθήκη HTTPie</a>. Σιγουρευτείτε ότι είναι εγκατεστημένη στο σύστημά σας πριν τη χρησιμοποιήσετε.
|
||||
page_title: Διαχείριση πελατών API > Πώς να δημιουργήσω την πρώτη μου εφαρμογή
|
||||
about:
|
||||
helping:
|
||||
by_contributing_2: μία αναφορά σφάλματος αναγράφει όλα όσα χρειαζόμαστε
|
||||
by_paypal: μέσω Paypal
|
||||
by_contributing: 'συνεισφέροντας στο εγχείρημα:'
|
||||
description: 'Το wallabag είναι δωρεάν και ανοιχτού κώδικα. Μπορείτε να μας βοηθήσετε:'
|
||||
getting_help:
|
||||
documentation: Τεκμηρίωση
|
||||
support: <a href="https://github.com/wallabag/wallabag/issues">στο GitHub</a>
|
||||
bug_reports: Αναφορές σφάλματος
|
||||
third_party:
|
||||
license: Άδεια
|
||||
package: Πακέτο
|
||||
description: 'Ορίστε η λίστα με όλες τις βιβλιοθήκες από τρίτους που χρησιμοποιούνται στο wallabag (με τις άδειές τους):'
|
||||
contributors:
|
||||
description: Ευχαριστούμε όσους συνεισέφεραν στην εφαρμογή web του wallabag
|
||||
who_behind_wallabag:
|
||||
version: Έκδοση
|
||||
license: Άδεια
|
||||
project_website: Ιστοσελίδα του εγχειρήματος
|
||||
many_contributors: Και πολλούς άλλους συμμετέχοντες ♥ <a href="https://github.com/wallabag/wallabag/graphs/contributors">στο GitHub</a>
|
||||
website: ιστοσελίδα
|
||||
developped_by: Προγραμματισμένο από
|
||||
top_menu:
|
||||
third_party: Βιβλιοθήκες από τρίτους
|
||||
contributors: Συμμετέχοντες
|
||||
helping: Υποστήριξη του wallabag
|
||||
getting_help: Βοήθεια
|
||||
who_behind_wallabag: Η ομάδα πίσω από το wallabag
|
||||
page_title: Σχετιά
|
||||
flashes:
|
||||
ignore_origin_instance_rule:
|
||||
notice:
|
||||
deleted: Ο γενικός κανόνας αγνόησε-προέλευση διαγράφηκε
|
||||
updated: Ο γενικός κανόνας αγνόησε-προέλευση ενημερώθηκε
|
||||
added: Ο γενικός κανόνας αγνόησε-προέλευση προστέθηκε
|
||||
site_credential:
|
||||
notice:
|
||||
deleted: Το πιστοποιητικό ιστοσελίδας για «%host%» διαγράφηκε
|
||||
updated: Το πιστοποιητικό ιστοσελίδας για «%host%» ενημερώθηκε
|
||||
added: Το πιστοποιητικό ιστοσελίδας για «%host%» προστέθηκε
|
||||
user:
|
||||
notice:
|
||||
deleted: Ο χρήστης «%username%» διαγράφηκε
|
||||
updated: Ο χρήστης «%username%» ενημερώθηκε
|
||||
added: Ο χρήστης «%username%» προστέθηκε
|
||||
developer:
|
||||
notice:
|
||||
client_deleted: Ο πελάτης %name% διαγράφηκε
|
||||
client_created: Ο νέος πελάτης %name% δημιουργήθηκε.
|
||||
import:
|
||||
error:
|
||||
rabbit_enabled_not_installed: Το RabbitMQ είναι ενεργοποιημένο για τη διαχείριση ασύγχρονης εισαγωγής αλλά φαίνεται ότι <u>δεν μπορούμε να συνδεθούμε σε αυτό</u>. Παρακαλούμε ελέγξτε τις ρυθμίσεις του RabbitMQ.
|
||||
redis_enabled_not_installed: Το Redis είναι ενεργοποιημένο για τη διαχείριση ασύγχρονης εισαγωγής αλλά φαίνεται ότι <u>δεν μπορούμε να συνδεθούμε σε αυτό</u>. Παρακαλούμε ελέγξτε τις ρυθμίσεις του Redis.
|
||||
notice:
|
||||
summary_with_queue: 'Σύνοψη εισαγωγής: %queued% βρίσκονται σε αναμονή.'
|
||||
summary: 'Σύνοψη εισαγωγής: %imported% εισάχθηκαν, %skipped% έχουν ήδη αποθηκευτεί.'
|
||||
failed_on_file: Σφάλμα κατά τη διαδικασία εισαγωγής. Παρακαλούμε ελέγξτε το αρχείο εισαγωγής σας.
|
||||
failed: Η εισαγωγή απέτυχε, παρακαλούμε προσπαθήστε ξανά.
|
||||
tag:
|
||||
notice:
|
||||
tag_renamed: Η ετικέτα μετονομάστηκε
|
||||
tag_added: Η ετικέτα προστέθηκε
|
||||
entry:
|
||||
notice:
|
||||
no_random_entry: Κανένα άρθρο δεν βρέθηκε με αυτά τα κριτήρια
|
||||
entry_deleted: Η καταχώριση διαγράφηκε
|
||||
entry_unstarred: Η καταχώριση σημάνθηκε ως μη αγαπημένη
|
||||
entry_starred: Η καταχώριση σημάνθηκε ως αγαπημένη
|
||||
entry_unarchived: Η καταχώριση βγήκε από το αρχείο
|
||||
entry_archived: Η καταχώριση αρχειοθετήθηκε
|
||||
entry_reloaded_failed: Η καταχώριση ανανεώθηκε αλλά το πιάσιμο περιεχομένου απέτυχε
|
||||
entry_reloaded: Η καταχώριση ανανεώθηκε
|
||||
entry_updated: Η καταχώριση ενημερώθηκε
|
||||
entry_saved_failed: Η καταχώριση αποθηκεύτηκε αλλά το πιάσιμο περιεχομένου απέτυχε
|
||||
entry_saved: Η καταχώριση αποθηκεύτηκε
|
||||
entry_already_saved: Η καταχώριση έχει ήδη αποθηκευτεί στις %date%
|
||||
config:
|
||||
notice:
|
||||
ignore_origin_rules_updated: Ο κανόνας αγνόησε-προέλευση ενημερώθηκε
|
||||
ignore_origin_rules_deleted: Ο κανόνας αγνόησε-προέλευση διαγράφηκε
|
||||
tagging_rules_not_imported: Σφάλμα κατά την εισαγωγή κανόνων σήμανσης ετικετών
|
||||
tagging_rules_imported: Οι κανόνες σήμανσης ετικετών εισάχθηκαν
|
||||
otp_disabled: Η επαλήθευση διπλού παράγοντα απενεργοποιήθηκε
|
||||
otp_enabled: Η επαλήθευση διπλού παράγοντα ενεργοποιήθηκε
|
||||
archived_reset: Οι αρχειοθετημένες καταχωρίσεις διαγράφηκαν
|
||||
entries_reset: Έγινε επαναφορά των καταχωρίσεων
|
||||
tags_reset: Έγινε επαναφορά των ετικετών
|
||||
annotations_reset: Έγινε επαναφορά των σχολιασμών
|
||||
feed_token_revoked: Το σύμβολο τροφοδότησης διαγράφηκε
|
||||
feed_token_updated: Το σύμβολο τροφοδότησης ενημερώθηκε
|
||||
feed_updated: Οι πληροφορίες τροφοδότησης ενημερώθηκαν
|
||||
tagging_rules_deleted: Ο κανόνας σήμανσης ετικετών διαγράφηκε
|
||||
tagging_rules_updated: Οι κανόνες σήμανσης ετικετών ενημερώθηκαν
|
||||
user_updated: Οι πληροφορίες ενημερώθηκαν
|
||||
password_not_updated_demo: Στη λειτουργία demo, δεν μπορείτε να αλλάξετε τον κωδικό για αυτόν τον χρήστη.
|
||||
password_updated: Ο κωδικός ενημερώθηκε
|
||||
config_saved: Οι ρυθμίσεις αποθηκεύτηκαν.
|
||||
error:
|
||||
page_title: Προέκυψε ένα σφάλμα
|
||||
ignore_origin_instance_rule:
|
||||
form:
|
||||
back_to_list: Επιστροφή στη λίστα
|
||||
delete_confirm: Είστε σίγουρος;
|
||||
delete: Διαγραφή
|
||||
save: Αποθήκευση
|
||||
rule_label: Κανόνας
|
||||
list:
|
||||
create_new_one: Δημιουργία νέου γενικού κανόνα αγνόησε-προέλευση
|
||||
no: Όχι
|
||||
yes: Ναι
|
||||
edit_action: Επεξεργασία
|
||||
actions: Δράσεις
|
||||
description: Εδώ μπορείτε να διαχειριστείτε τους γενικούς κανόνες αγνόησε-προέλευση που χρησιμοποιούνται για να αγνοηθούν κάποια μοτίβα του URL προέλευσης.
|
||||
edit_ignore_origin_instance_rule: Επεξεργασία υπάρχοντος κανόνα αγνόησε-προέλευση
|
||||
new_ignore_origin_instance_rule: Δημιουργία γενικού κανόνα αγνόησε-προέλευση
|
||||
page_title: Γενικοί κανόνες αγνόησε-προέλευση
|
||||
site_credential:
|
||||
form:
|
||||
back_to_list: Επιστροφή στη λίστα
|
||||
delete_confirm: Είστε σίγουρος;
|
||||
delete: Διαγραφή
|
||||
save: Αποθήκευση
|
||||
password_label: Κωδικός
|
||||
host_label: Ξενιστής (subdomain.example.org, .example.org, κλπ.)
|
||||
username_label: Σύνδεση
|
||||
list:
|
||||
create_new_one: Δημιουργία νέου πιστοποιητικού
|
||||
no: Όχι
|
||||
yes: Ναι
|
||||
edit_action: Επεξεργασία
|
||||
actions: Δράσεις
|
||||
description: Εδώ μπορείτε να διαχειριστείτε όλα τα πιστοποιητικά για τις ιστοσελίδες που τα απαιτούν (δημιουργία, επεξεργασία και διαγραφή), όπως ένα paywall, μια επαλήθευση, κλπ.
|
||||
edit_site_credential: Επεξεργασίας υπάρχοντος πιστοποιητικού
|
||||
new_site_credential: Δημιουργία ενός πιστοποιητικού
|
||||
page_title: Διαχείριση πιστοποιητικών ιστοσελίδων
|
||||
import:
|
||||
pinboard:
|
||||
how_to: Παρακαλούμε επιλέξτε το εξαγόμενο από το Pinboard και πατήστε στο παρακάτω κουμπί για να το ανεβάσετε και να το εισαγάγετε.
|
||||
description: Αυτός ο εισαγωγέας θα εισαγάγει όλα τα άρθρα σας από το Pinboard. Στη σελίδα «Backup» (https://pinboard.in/settings/backup), πατήστε στο «JSON» στο τμήμα «Bookmarks». Θα γίνει λήψη ενός αρχείου JSON, χωρίς κατάληξη .json («pinboard_export»).
|
||||
page_title: Εισαγωγή > Pinboard
|
||||
instapaper:
|
||||
how_to: Παρακαλούμε επιλέξτε το εξαγόμενο από το Instapaper και πατήστε στο παρακάτω κουμπί για να το ανεβάσετε και να το εισαγάγετε.
|
||||
description: Αυτός ο εισαγωγέας θα εισαγάγει όλα τα άρθρα σας από το Instapaper. Στη σελίδα ρυθμίσεων (https://www.instapaper.com/user), πατήστε «Download .CSV file» στο τμήμα «Export». Θα γίνει λήψη ενός φακέλου CSV («instapaper-export.csv»).
|
||||
page_title: Εισαγωγή > Instapaper
|
||||
firefox:
|
||||
how_to: Παρακαλούμε επιλέξτε το αρχείο σελιδοδεικτών και πατήστε στο παρακάτω κουμπί για να το εισαγάγετε. Έχετε υπόψη σας ότι η διαδικασία μπορεί να πάρει αρκετό χρόνο επειδή όλα τα άρθρα πρέπει να πιαστούν.
|
||||
description: Αυτός ο εισαγωγέας θα εισαγάγει όλους τους σελιδοδείκτες σας από το Firefox. Μεταβείτε απλώς στους σελιδοδείκτες σας (Ctrl+Shift+O), μετά στο «Εισαγωγή και αποθήκευση», επιλέξτε «Αποήκευση… ». Θα έχετε ένα αρχείο JSON.
|
||||
page_title: Εισαγωγή > Firefox
|
||||
chrome:
|
||||
how_to: Παρακαλούμε επιλέξτε το αρχείο σελιδοδεικτών σας και πατήστε στο παρακάτω κουμπί για να το εισαγάγετε. Έχετε υπόψη σας ότι η διαδικασία μπορεί να πάρει αρκετό χρόνο επειδή όλα τα άρθρα πρέπει να ξαναπιαστούν.
|
||||
description: 'Αυτός ο εισαγωγέας θα εισαγάγει όλους τους σελιδοδείκτες σας από το Chrome. Η τοποθεσία του αρχείου εξαρτάται από το λειτουργικό σας σύστημα: <ul><li>Στα Linux, μεταβείτε στον κατάλογο <code>~/.config/chromium/Default/</code></li><li>Στα Windows, πρέπει να βρίσκεται στο <code>%LOCALAPPDATA%\Google\Chrome\User Data\Default</code></li><li>Στα OS X, πρέπει να βρίσκεται στο <code>~/Library/Application Support/Google/Chrome/Default/Bookmarks</code></li></ul>Μόλις είστε εκεί, αντιγράψτε το αρχείο σελιδοδεικτών σας σε κάποιο μέρος που μπορείτε να το βρείτε.<em><br>Έχετε υπόψη σας ότι αν έχετε Chromium αντί για Chrome, θα πρέπει να διορθώσετε τα μονοπάτια καταλλήλως.</em></p>'
|
||||
page_title: Εισαγωγή > Chrome
|
||||
worker:
|
||||
download_images_warning: Ενεργοποιήσατε τη λήψη εικόνων για τα άρθρα σας. Σε συνδυασμό με την κλασική εισαγωγή, ενδέχεται να πάρει υπερβολικά πολύ χρόνο (ή να αποτύχει). Σας συνιστούμε <strong>ιδιαίτερα έντονα</strong> να ενεργοποιήσετε ασύγχρονη εισαγωγή για να αποφύγετε σφάλματα.
|
||||
enabled: 'Η εισαγωγή γίνεται ασύγχρονα. Μόλις ξεκινήσει η διεργασία εισαγωγής, ένα εξωτερικό πρόγραμμα θα χειριστεί τις διεργασίες μία μία τη φορά. Η τρέχουσα υπηρεσία είναι:'
|
||||
wallabag_v1:
|
||||
description: Αυτός ο εισαγωγέας θα εισαγάγει όλα τα άρθρα σας από το wallabag v1. Στη σελίδα ρυθμίσεών σας, πατήστε «JSON export» στο τμήμα «Export your wallabag data». Θα έχετε ένα αρχείο «wallabag-export-1-xxxx-xx-xx.json».
|
||||
how_to: Παρακαλούμε επιλέξτε το εξαγόμενο από το wallabag v1 και πατήστε το παρακάτω κουμπί για να το ανεβάσετε και να το εισαγάγετε.
|
||||
page_title: Εισαγωγή > Wallabag v1
|
||||
pocket:
|
||||
config_missing:
|
||||
user_message: Ο διαχειριστής του διακομιστή σας πρέπει να ορίσει ένα κλειδί API για το Pocket.
|
||||
admin_message: Πρέπει να ορίσετε %keyurls%ένα pocket_consumer_key%keyurle%.
|
||||
description: Η εισαγωγή από το Pocket δεν έχει ρυθμιστεί.
|
||||
authorize_message: Μπορείτε να εισαγάγετε τα δεδομένα σας από τον λογαριασμό σας στο Pocket. Πρέπει απλώς να πατήσετε το παρακάτω κουμπί και να επαληθεύσετε την εφαρμογή για να γίνει σύνδεση με το getpocket.com.
|
||||
connect_to_pocket: Σύνδεση στο Pocket και εισαγωγή δεδομένων
|
||||
description: Αυτός ο εισαγωγέας θα εισαγάγει όλα τα δεδομένα σας από το Pocket. Το Pocket δεν μας επιτρέπει να ανακτήσουμε περιεχόμενο από την υπηρεσία τους, οπότε το wallabag θα πρέπει να ξαναπιάσει κάθε άρθρο για να ανακτήσει το περιεχόμενό του.
|
||||
page_title: Εισαγωγή > Pocket
|
||||
readability:
|
||||
how_to: Παρακαλούμε επιλέξτε το εξαγόμενο από το Readability και πατήστε στο παρακάτω κουμπί για να το ανεβάσετε και να το εισαγάγετε.
|
||||
description: Αυτός ο εισαγωγέας θα εισαγάγει όλα τα άρθρα σας από το Readability. Στη σελίδα εργαλείων σας (https://www.readability.com/tools/), πατήστε «Export your data» στο τμήμα «Data Export». Θα λάβετε ένα email για να κατεβάσετε ένα json (το οποίο αρχείο δεν καταλήγει με .json).
|
||||
page_title: Εισαγωγή > Readability
|
||||
elcurator:
|
||||
description: Αυτός ο εισαγωγέας θα εισαγάγει όλα τα άρθρα σας από το elCurator. Μεταβείτε στις ρυθμίσεις στον λογαριασμό σας στο elCurator και μετά, κάνετε εξαγωγή του περιεχομένου σας. Θα έχετε ένα αρχείο JSON.
|
||||
page_title: Εισαγωγή > elCurator
|
||||
wallabag_v2:
|
||||
description: Αυτός ο εισαγωγέας θα εισαγάγει όλα τα άρθρα σας από το wallabag v2. Μεταβείτε στο «Όλα τα άρθρα σας», μετά, στην πλευρική μπάρα εξαγωγής, πατήστε στο «JSON». Θα έχετε ένα αρχείο « All articles.json».
|
||||
page_title: Εισαγωγή > Wallabag v2
|
||||
form:
|
||||
save_label: Μεταφόρτωση αρχείου
|
||||
file_label: Αρχείο
|
||||
mark_as_read_label: Σήμανση όλων των εισαγμένων καταχωρίσεων ως αναγνωσμένων
|
||||
mark_as_read_title: Σήμανση όλων ως αναγνωσμένων;
|
||||
action:
|
||||
import_contents: Εισαγωγή περιεχομένων
|
||||
page_description: Καλώς ήρθατε στον εισαγωγέα του wallabag. Παρακαλούμε επιλέξτε την υπηρεσία από την οποία θέλετε να μετακινηθείτε.
|
||||
page_title: Εισαγωγή
|
||||
export:
|
||||
unknown: Άγνωστο
|
||||
footer_template: <div style="text-align:center;"><p>Παράχθηκε από το wallabag με %method%</p><p>Παρακαλούμε καταχωρίστε <a href="https://github.com/wallabag/wallabag/issues">ένα σφάλμα</a> αν έχετε πρόβλημα κατά την προβολή αυτού του E-Book στη συσκευή σας.</p></div>
|
||||
tag:
|
||||
new:
|
||||
placeholder: Μπορείτε να προσθέσετε περισσότερες ετικέτες, χωρισμένες με ένα κόμμα.
|
||||
add: Προσθήκη
|
||||
list:
|
||||
untagged: Καταχωρίσεις χωρίς ετικέτες
|
||||
no_untagged_entries: Δεν υπάρχουν καταχωρίσεις χωρίς ετικέτες.
|
||||
see_untagged_entries: Δείτε τις καταχωρίσεις χωρίς ετικέτες
|
||||
number_on_the_page: '{0} Δεν υπάρχουν ετικέτες.|{1} Υπάρχει μία ετικέτα.|]1,Inf[ Υπάρχουν %count% ετικέτες.'
|
||||
page_title: Ετικέτες
|
||||
quickstart:
|
||||
support:
|
||||
gitter: Στο Gitter
|
||||
email: Με email
|
||||
github: Στο GitHub
|
||||
description: Αν χρειάζεστε βοήθεια, είμαστε εδώ για εσάς.
|
||||
title: Υποστήριξη
|
||||
docs:
|
||||
all_docs: Και τόσα άλλα άρθρα!
|
||||
fetching_errors: Τι μπορώ να κάνω αν ένα άρθρο αντιμετωπίζει σφάλματα κατά το πιάσιμο του περιεχομένου του;
|
||||
search_filters: Μάθετε πώς μπορείτε να αναζητήσετε ένα άρθρο χρησιμοποιώντας τη μηχανή αναζήτησης και τα φίλτρα
|
||||
export: Μετατρέψτε τα άρθρα σας σε ePUB ή PDF
|
||||
annotate: Σχολιάστε το άρθρο σας
|
||||
description: Υπάρχουν πάρα πολλές λειτουργίες στο wallabag. Μη διστάσετε να διαβάσετε το εγχειρίδιο για να τις γνωρίσετε και να μάθετε πώς να τις χρησιμοποιείτε.
|
||||
title: Πλήρης τεκμηρίωση
|
||||
developer:
|
||||
use_docker: Χρησιμοποιήστε Docker για να εγκαταστήσετε το wallabag
|
||||
create_application: Δημιουργήστε τη δική σας εφαρμογή ως τρίτος
|
||||
description: 'Λάβαμε επίσης υπόψη τους προγραμματιστές: Docker, API, μεταφράσεις, κλπ.'
|
||||
title: Προγραμματιστές
|
||||
migrate:
|
||||
instapaper: Μετακίνηση από το Instapaper
|
||||
readability: Μετακίνηση από το Readability
|
||||
wallabag_v2: Μετακίνηση από το wallabag v2
|
||||
wallabag_v1: Μετακίνηση από το wallabag v1
|
||||
pocket: Μετακίνηση από το Pocket
|
||||
description: Χρησιμοποιείτε άλλη υπηρεσία; Θα σας βοηθήσουμε να ανακτήσετε τα δεδομένα σας στο wallabag.
|
||||
title: Κάντε μετακίνηση από μια υπάρχουσα υπηρεσία
|
||||
first_steps:
|
||||
unread_articles: Και ταξινομήστε το!
|
||||
new_article: Αποθηκεύστε το πρώτο σας άρθρο
|
||||
description: Τώρα που το wallabag είναι σωστά ρυθμισμένο, είναι ώρα να αρχειοθετήσετε το διαδίκτυο. Μπορείτε να κάνετε κλικ στο σήμα + πάνω δεξιά για να προσθέσετε έναν σύνδεσμο.
|
||||
title: Πρώτα βήματα
|
||||
admin:
|
||||
import: Ρύθμιση εισαγωγών
|
||||
export: Ρύθμιση εξαγωγών
|
||||
sharing: Ενεργοποίηση κάποιων παραμέτρων σχετικά με την κοινοποίηση άρθρων
|
||||
analytics: Ρύθμιση στατιστικών αναλύσεων
|
||||
new_user: Δημιουργία ενός νέου χρήστη
|
||||
description: 'Ως διαχειριστής, έχετε προνόμια στο wallabag. Μπορείτε να κάνετε τα εξής:'
|
||||
title: Διαχείριση
|
||||
configure:
|
||||
tagging_rules: Γράψτε κανόνες για να σημάνετε αυτόματα με ετικέτες τα άρθρα σας
|
||||
feed: Ενεργοποίηση τροφοδοτήσεων
|
||||
language: Αλλαγή γλώσσας και σχεδιασμού
|
||||
description: Προκειμένου να έχετε μια εφαρμογή που σας ταιριάζει, ρίξτε μια ματιά στις ρυθμίσεις του wallabag.
|
||||
title: Ρυθμίστε την εφαρμογή
|
||||
intro:
|
||||
paragraph_2: Ακολουθήστε μας!
|
||||
paragraph_1: Θα σας συνοδεύσουμε στην επίσκεψή σας στο wallabag και θα σας δείξουμε κάποιες λειτουργίες που μπορεί να σας ενδιαφέρουν.
|
||||
title: Καλώς ήρθατε στο wallabag!
|
||||
more: Περισσότερα…
|
||||
page_title: Γρήγορη εκκίνηση
|
||||
howto:
|
||||
shortcuts:
|
||||
open_article: Προβολή της επιλεγμένης καταχώρισης
|
||||
arrows_navigation: Πλοήγηση στα άρθρα
|
||||
hide_form: Απόκρυψη της τρέχουσας φόρμας (αναζήτηση ή νέος σύνδεσμος)
|
||||
add_link: Προσθήκη νέου συνδέσμου
|
||||
material_title: Διαθέσιμες συντομεύσεις μόνο με το θέμα Material
|
||||
delete: Διαγραφή της καταχώρισης
|
||||
toggle_archive: Εναλλαγή κατάστασης αναγνωσμένου για την καταχώριση
|
||||
toggle_favorite: Εναλλαγή κατάστασης αγαπημένου για την καταχώριση
|
||||
open_original: Άνοιγμα πρωτότυπου URL της καταχώρισης
|
||||
article_title: Διαθέσιμες συντομεύσεις στην προβολή καταχώρισης
|
||||
search: Προβολή της φόρμας αναζήτησης
|
||||
list_title: Διαθέσιμες συντομεύσεις στις σελίδες της λίστας
|
||||
go_logout: Αποσύνδεση
|
||||
go_howto: Μετάβαση στη βοήθεια (αυτή η σελίδα!)
|
||||
go_developers: Μετάβαση στους προγραμματιστές
|
||||
go_import: Μετάβαση στην εισαγωγή
|
||||
go_config: Μετάβαση στις ρυθμίσεις
|
||||
go_tags: Μετάβαση στις ετικέτες
|
||||
go_all: Μετάβαση σε όλες τις καταχωρίσεις
|
||||
go_archive: Μετάβαση στο αρχείο
|
||||
go_starred: Μετάβαση στα αγαπημένα
|
||||
go_unread: Μετάβαση στα μη αναγνωσμένα
|
||||
all_pages_title: Οι συντομεύσεις είναι διαθέσιμες σε όλες τις σελίδες
|
||||
action: Δράση
|
||||
shortcut: Συντόμευση
|
||||
page_description: Ορίστε οι διαθέσιμες συντομεύσεις στο wallabag.
|
||||
bookmarklet:
|
||||
description: 'Σύρετε και ρίξτε αυτόν τον σύνδεσμο στην μπάρα σελιδοδεικτών σας:'
|
||||
mobile_apps:
|
||||
windows: στο Microsoft Store
|
||||
ios: στο iTunes Store
|
||||
android:
|
||||
via_google_play: μέσω Google Play
|
||||
via_f_droid: μέσω F-Droid
|
||||
browser_addons:
|
||||
opera: Πρόσθετο Opera
|
||||
chrome: Πρόσθετο Chrome
|
||||
firefox: Πρόσθετο Firefox
|
||||
form:
|
||||
description: Χάρη σε αυτήν τη φόρμα
|
||||
top_menu:
|
||||
bookmarklet: Bookmarklet
|
||||
mobile_apps: Εφαρμογές κινητών
|
||||
browser_addons: Πρόσθετα περιηγητή
|
||||
page_description: 'Υπάρχουν διάφοροι τρόποι αποθήκευσης ενός άρθρου:'
|
||||
tab_menu:
|
||||
shortcuts: Χρήση συντομεύσεων
|
||||
add_link: Προσθήκη συνδέσμου
|
||||
page_title: Βοήθεια
|
||||
entry:
|
||||
metadata:
|
||||
published_on: Δημοσιεύτηκε την
|
||||
added_on: Προστέθηκε την
|
||||
address: Διεύθυνση
|
||||
reading_time_minutes_short: '%readingTime% λεπτά'
|
||||
reading_time: Εκτιμώμενος χρόνος ανάγνωσης
|
||||
confirm:
|
||||
delete_tag: Είστε σίγουροι ότι θέλετε να αφαιρέσετε αυτήν την ετικέτα από αυτό το άρθρο;
|
||||
delete: Είστε σίγουροι ότι θέλετε να διαγράψετε αυτό το άρθρο;
|
||||
public:
|
||||
shared_by_wallabag: Αυτό το άρθρο κοινοποιήθηκε από %username% με <a href='%wallabag_instance%'>wallabag</a>
|
||||
edit:
|
||||
save_label: Αποθήκευση
|
||||
origin_url_label: URL προέλευσης (απ' όπου βρήκατε την καταχώριση)
|
||||
url_label: URL
|
||||
title_label: Τίτλος
|
||||
page_title: Επεξεργασία μιας καταχώρισης
|
||||
search:
|
||||
placeholder: Τι ψάχνετε;
|
||||
new:
|
||||
form_new:
|
||||
url_label: URL
|
||||
placeholder: http://website.com
|
||||
page_title: Αποθήκευση νέας καταχώρισης
|
||||
view:
|
||||
provided_by: Παρεχόμενο από
|
||||
published_by: Δημοσιευμένο από
|
||||
published_at: Ημερομηνία δημοσίευσης
|
||||
created_at: Ημερομηνία δημιουργίας
|
||||
annotations_on_the_entry: '{0} Καθόλου σχολιασμοί|{1} Ένας σχολιασμός|]1,Inf[ %count% σχολιασμοί'
|
||||
original_article: πρωτότυπο
|
||||
edit_title: Επεξεργασία τίτλου
|
||||
left_menu:
|
||||
problem:
|
||||
description: Εμφανίζεται λάθος αυτό το άρθρο;
|
||||
label: Υπάρχει πρόβλημα;
|
||||
theme_toggle_auto: Αυτόματο
|
||||
theme_toggle_dark: Σκοτεινό
|
||||
theme_toggle_light: Ανοιχτό
|
||||
theme_toggle: Εναλλαγή θέματος
|
||||
print: Εκτύπωση
|
||||
export: Εξαγωγή
|
||||
delete_public_link: διαγραφή δημόσιου συνδέσμου
|
||||
public_link: δημόσιος σύνδεσμος
|
||||
share_email_label: Email
|
||||
share_content: Κοινοποίηση
|
||||
add_a_tag: Προσθήκη μιας ετικέτας
|
||||
delete: Διαγραφή
|
||||
re_fetch_content: Πιάσιμο περιεχομένου ξανά
|
||||
view_original_article: Πρωτότυπο άρθρο
|
||||
set_as_starred: Εναλλαγή σήμανσης ως αγαπημένου
|
||||
set_as_unread: Σήμανση ως μη αναγνωσμένου
|
||||
set_as_read: Σήμανση ως αναγνωσμένου
|
||||
back_to_homepage: Επιστροφή
|
||||
back_to_top: Επιστροφή προς τα πάνω
|
||||
filters:
|
||||
action:
|
||||
filter: Φιλτράρισμα
|
||||
clear: Καθάρισμα
|
||||
created_at:
|
||||
to: σε
|
||||
from: από
|
||||
label: Ημερομηνία δημιουργίας
|
||||
domain_label: Όνομα ιστοσελίδας
|
||||
reading_time:
|
||||
to: σε
|
||||
from: από
|
||||
label: Χρόνος ανάγνωσης σε λεπτά
|
||||
http_status_label: Κατάσταση HTTP
|
||||
language_label: Γλώσσα
|
||||
is_public_help: Δημόσιος σύνδεσμος
|
||||
is_public_label: Έχει έναν δημόσιο σύνδεσμο
|
||||
preview_picture_help: Προεπισκόπηση εικόνας
|
||||
preview_picture_label: Έχει μια εικόνα προεπισκόπησης
|
||||
unread_label: Μη αναγνωσμένα
|
||||
starred_label: Αγαπημένα
|
||||
archived_label: Αρχειοθετημένα
|
||||
status_label: Κατάσταση
|
||||
title: Φίλτρα
|
||||
list:
|
||||
export_title: Εξαγωγή
|
||||
delete: Διαγραφή
|
||||
toogle_as_star: Εναλλαγή σήμανσης ως αγαπημένου
|
||||
toogle_as_read: Εναλλαγή σήμανσης ως αναγνωσμένου
|
||||
original_article: πρωτότυπο
|
||||
reading_time_less_one_minute_short: '< 1 λεπτό'
|
||||
reading_time_minutes_short: '%readingTime% λεπτά'
|
||||
number_of_tags: '{1}και μία άλλη ετικέτα|]1,Inf[και %count% άλλες ετικέτες'
|
||||
reading_time_less_one_minute: 'εκτιμώμενος χρόνος ανάγνωσης: < 1 λεπτό'
|
||||
reading_time_minutes: 'εκτιμώμενος χρόνος ανάγνωσης: %readingTime% λεπτά'
|
||||
reading_time: εκτιμώμενος χρόνος ανάγνωσης
|
||||
number_on_the_page: '{0} Δεν υπάρχουν καταχωρίσεις.|{1} Υπάρχει μία καταχώριση.|]1,Inf[ Υπάρχουν %count% καταχωρίσεις.'
|
||||
page_titles:
|
||||
all: Όλες οι καταχωρίσεις
|
||||
untagged: Καταχωρίσεις χωρίς ετικέτες
|
||||
filtered_search: 'Φιλτράρισμα με αναζήτηση:'
|
||||
filtered_tags: 'Φιλτράρισμα με ετικέτες:'
|
||||
filtered: Φιλτραρισμένες καταχωρίσεις
|
||||
archived: Αρχειοθετημένες καταχωρίσεις
|
||||
starred: Αγαπημένες καταχωρίσες
|
||||
unread: Μη αναγνωσμένες καταχωρίσεις
|
||||
default_title: Τίτλος της καταχώρισης
|
||||
config:
|
||||
otp:
|
||||
app:
|
||||
qrcode_label: Κωδικός QR
|
||||
enable: Ενεργοποίηση
|
||||
cancel: Ακύρωση
|
||||
two_factor_code_description_5: 'Αν δεν μπορείτε να δείτε τον κωδικό QR ή δεν μπορείτε να τον σκανάρετε, χρησιμοποιήστε το ακόλουθο κλειδί στην εφαρμογή σας:'
|
||||
two_factor_code_description_4: 'Δοκιμάστε έναν κωδικό OTP από την εφαρμογή σας:'
|
||||
two_factor_code_description_3: 'Επίσης, αποθηκεύστε αυτούς τους κωδικούς ανάγκης σε ένα ασφαλές μέρος, μπορείτε να τους χρησιμοποιήσετε σε περίπτωση που δεν έχετε πρόσβαση στην εφαρμογή OTP:'
|
||||
two_factor_code_description_2: 'Μπορείτε να σκανάρετε αυτόν τον κωδικό QR με την εφαρμογή σας:'
|
||||
two_factor_code_description_1: Μόλις ενεργοποιήσατε την επαλήθευση διπλού παράγοντα OTP, ανοίξτε την εφαρμογή OTP και χρησιμοποιήστε τον κωδικό για να αποκτήσετε έναν κωδικό μοναδικής χρήσης. Θα εξαφανιστεί μετά από ανανέωση της σελίδας.
|
||||
page_title: Επαλήθευση διπλού παράγοντα
|
||||
form_ignore_origin_rules:
|
||||
faq:
|
||||
operator_description:
|
||||
matches: 'Ελέγχει αν το <i>υποκείμενο</i> αντιστοιχεί σε μια <i>αναζήτηση</i> (δεν επηρεάζεται από κεφαλαία ή πεζά γράμματα).<br />Παράδειγμα: <code>_all ~ "https?://rss.example.com/foobar/.*"</code>'
|
||||
equal_to: Ίσο με…
|
||||
label: Τελεστής
|
||||
variable_description:
|
||||
_all: Πλήρης διεύθυνση, κυρίως για την αντιπαραβολή προτύπων
|
||||
host: Ξενιστής
|
||||
label: Μεταβλητή
|
||||
meaning: Σημασία
|
||||
variables_available_description: 'Οι εξής μεταβλητές και τελεστές μπορούν να χρησιμοποιηθούν για τη δημιουργία κανόνων αγνόησε-προέλευση:'
|
||||
variables_available_title: Τι μεταβλητές και τελεστές μπορώ να χρησιμοποιήσω για να γράψω κανόνες;
|
||||
how_to_use_them_description: Ας υποθέσουμε ότι θέλετε να αγνοήσετε την προέλευση μιας καταχώρισης που προέρχεται από το «<i>rss.example.com</i>» (<i>γνωρίζοντας ότι, μετά την ανακατεύθυνση, η πραγματική διεύθυνση είναι example.com</i>).<br />Σε αυτήν την περίπτωση, θα πρέπει να βάλετε «host = "rss.example.com"» στο πεδίο <i>Κανόνας</i>.
|
||||
how_to_use_them_title: Πώς τους χρησιμοποιώ;
|
||||
ignore_origin_rules_definition_description: Χρησιμοποιούνται από το wallabag για να αγνοήσει αυτόματα μια διεύθυνση προέλευσης μετά την ανακατεύθυνση.<br />Αν προκύψει ανακατεύθυνση κατά το πιάσιμο μιας νέας καταχώρισης, όλοι οι κανόνες αγνόησε-προέλευση (<i>καθορισμένοι από τον χρήστη και τον διακομιστή</i>) θα χρησιμοποιηθούν για να αγνοηθεί η διεύθυνση προέλευσης.
|
||||
ignore_origin_rules_definition_title: Τι σημαίνουν οι κανόνες αγνόησε-προέλευση;
|
||||
title: Συχνές ερωτήσεις
|
||||
tab_menu:
|
||||
ignore_origin: Κανόνες αγνόησε-προέλευση
|
||||
reset: Επαναφορά περιοχής
|
||||
new_user: Προσθήκη χρήστη
|
||||
rules: Κανόνες ετικετών
|
||||
password: Κωδικός
|
||||
user_info: Πληροφορίες χρήστη
|
||||
feed: Τροφοδοτήσεις
|
||||
settings: Ρυθμίσεις
|
||||
form_rules:
|
||||
faq:
|
||||
operator_description:
|
||||
notmatches: 'Ελέγχει αν το <i>υποκείμενο</i> δεν αντιστοιχεί σε μια <i>αναζήτηση</i> (δεν επηρεάζεται από κεφαλαία ή πεζά γράμματα).<br />Παράδειγμα: <code>title notmatches "ποδόσφαιρο"</code>'
|
||||
matches: 'Ελέγχει αν το <i>υποκείμενο</i> αντιστοιχεί σε μια <i>αναζήτηση</i> (δεν επηρεάζεται από κεφαλαία ή πεζά γράμματα).<br />Παράδειγμα: <code>title matches "ποδόσφαιρο"</code>'
|
||||
and: Ένας κανόνας ΚΑΙ άλλος
|
||||
or: Ένας κανόνας Ή άλλος
|
||||
not_equal_to: Όχι ίσο με…
|
||||
equal_to: Ίσο με…
|
||||
strictly_greater_than: Αυστηρά μεγαλύτερο από…
|
||||
greater_than: Μεγαλύτερο από…
|
||||
strictly_less_than: Αυστηρά λιγότερο από…
|
||||
less_than: Λιγότερο από…
|
||||
label: Τελεστής
|
||||
variable_description:
|
||||
domainName: Το όνομα ιστοσελίδας της καταχώρισης
|
||||
readingTime: Ο εκτιμώμενος χρόνος ανάγνωσης της καταχώρισης, σε λεπτά
|
||||
mimetype: Ο τύπος πολυμέσου της καταχώρισης
|
||||
language: Η γλώσσα της καταχώρισης
|
||||
content: Το περιεχόμενο της καταχώρισης
|
||||
isStarred: Αν η καταχώριση έχει σημανθεί ως αγαπημένη ή όχι
|
||||
isArchived: Αν η καταχώριση είναι αρχειοθετημένη ή όχι
|
||||
url: URL της καταχώρισης
|
||||
title: Τίτλος της καταχώρισης
|
||||
label: Μεταβλητή
|
||||
meaning: Σημασία
|
||||
variables_available_title: Τι μεταβλητές και τελεστές μπορώ να χρησιμοποιήσω για να γράφω κανόνες;
|
||||
variables_available_description: 'Οι εξής μεταβλητές και τελεστές μπορούν να χρησιμοποιηθούν για τη δημιουργία κανόνων σήμανσης ετικετών:'
|
||||
how_to_use_them_description: 'Ας υποθέσουμε ότι θέλετε να σημάνετε νέες καταχωρίσεις ως «<i>γρήγορη ανάγνωση</i>» όταν ο χρόνος ανάγνωσης είναι κάτω από 3 λεπτά.<br />Σε αυτήν την περίπτωση, θα πρέπει να γράψετε «readingTime <= 3» στο πεδίο <i>Κανόνας</i> και «<i>γρήγορη ανάγνωση</i>» στο πεδίο <i>Ετικέτες</i>.<br />Πολλαπλές ετικέτες μπορούν να προστεθούν ταυτόχρονα χωρίζοντάς τες με ένα κόμμα: «<i>γρήγορη ανάγνωση, να το διαβάσω</i>»<br />Πολύπλοκοι κανόνες μπορούν να γραφούν χρησιμοποιώντας προκαθορισμένους τελεστές: αν «<i>readingTime >= 5 AND domainName = "github.com"</i>» τότε σήμανση ετικέτας ως «<i>αργή ανάγνωση, GitHub </i>»'
|
||||
how_to_use_them_title: Πώς τους χρησιμοποιώ;
|
||||
tagging_rules_definition_description: Είναι κανόνες που χρησιμοποιούνται από το wallabag για την αυτόματη σήμανση νέων καταχωρίσεων με ετικέτες.<br />Κάθε φορά που προστίθεται μια νέα καταχώριση, όλοι οι κανόνες σήμανσης ετικετών θα χρησιμοποιηθούν για την προσθήκη των ετικετών που έχετε ορίσει, γλυτώνοντάς σας από τον κόπο να ταξινομείτε τις καταχωρίσεις σας χειροκίνητα.
|
||||
tagging_rules_definition_title: Τι είναι οι κανόνες σήμανσης ετικετών;
|
||||
title: Συχνές ερωτήσεις
|
||||
card:
|
||||
new_tagging_rule: Δημιουργία κανόνα σήμανσης ετικετών
|
||||
export_tagging_rules_detail: Αυτό θα κάνει λήψη ενός αρχείου JSON που θα μπορείτε να χρησιμοποιήσετε για την εισαγωγή κανόνων σήμανσης ετικετών αλλού ή την αποθήκευσή τους ως αντιγράφου ασφαλείας.
|
||||
export_tagging_rules: Εξαγωγή κανόνων σήμανσης ετικετών
|
||||
import_tagging_rules_detail: Πρέπει να επιλέξετε το αρχείο JSON που εξαγάγατε προηγουμένως.
|
||||
import_tagging_rules: Εισαγωγή κανόνων σήμανσης ετικετών
|
||||
export: Εξαγωγή
|
||||
import_submit: Εισαγωγή
|
||||
file_label: Αρχέιο JSON
|
||||
tags_label: Ετικέτες
|
||||
rule_label: Κανόνας
|
||||
edit_rule_label: επεξεργασία
|
||||
delete_rule_label: διαγραφή
|
||||
then_tag_as_label: τότε σήμανση ετικέτας ως
|
||||
if_label: αν
|
||||
form_password:
|
||||
repeat_new_password_label: Επαναλάβετε τον νέο κωδικό
|
||||
new_password_label: Νέος κωδικός
|
||||
old_password_label: Τρέχων κωδικός
|
||||
description: Μπορείτε να αλλάξετε τον κωδικό σας εδώ. Ο καινούριος κωδικός σας πρέπει να έχει τουλάχιστον 8 χαρακτήρες.
|
||||
reset:
|
||||
confirm: Είστε πραγματικά σίγουρος; (ΕΙΝΑΙ ΜΗ ΑΝΑΣΤΡΕΨΙΜΟ)
|
||||
archived: Διαγραφή ΟΛΩΝ των αρχειοθετημένων καταχωρίσεων
|
||||
entries: Διαγραφή ΟΛΩΝ των καταχωρίσεων
|
||||
tags: Διαγραφή ΟΛΩΝ των ετικετών
|
||||
annotations: Διαγραφή ΟΛΩΝ των σχολιασμών
|
||||
description: Πατώντας τα παρακάτω κουμπιά θα έχετε τη δυνατότητα να διαγράψετε κάποιες πληροφορίες από τον λογαριασμό σας. Έχετε υπόψη σας ότι αυτές οι δράσεις είναι ΜΗ ΑΝΑΣΤΡΕΨΙΜΕΣ.
|
||||
title: Επαναφορά περιοχής (προσοχή!)
|
||||
form_user:
|
||||
delete:
|
||||
button: Διαγραφή του λογαριασμού μου
|
||||
confirm: Είστε πραγματικά σίγουρος; (ΕΙΝΑΙ ΜΗ ΑΝΑΣΤΡΕΨΙΜΟ)
|
||||
description: Αν διαγράψετε τον λογαριασμό σας, ΟΛΑ τα άρθρα σας, ΟΛΕΣ οι ετικέτες σας, ΟΛΟΙ οι σχολιασμοί και ο λογαριασμός σας θα διαγραφούν ΜΟΝΙΜΑ (είναι ΜΗ ΑΝΑΣΤΡΕΨΙΜΟ). Θα αποσυνδεθείτε.
|
||||
title: Διαγραφή του λογαριασμού μου (προσοχή!)
|
||||
two_factor:
|
||||
action_app: Χρήση εφαρμογής OTP
|
||||
action_email: Χρήση email
|
||||
state_disabled: Απενεργοποιημένο
|
||||
state_enabled: Ενεργοποιημένο
|
||||
table_action: Δράση
|
||||
table_state: Κατάσταση
|
||||
table_method: Μέθοδος
|
||||
googleTwoFactor_label: Με χρήση μιας εφαρμογής OTP (ανοίξτε την εφαρμογή, όπως το Google Authenticator, το Authy ή το FreeOTP, για να αποκτήσετε έναν κωδικό μοναδικής χρήσης)
|
||||
emailTwoFactor_label: Με χρήση email (λήψη κωδικού με email)
|
||||
email_label: Email
|
||||
name_label: Όνομα
|
||||
login_label: Σύνδεση (δεν μπορεί να αλλάξει)
|
||||
two_factor_description: Με την ενεργοποίηση της επαλήθευσης διπλού παράγοντα θα μπορείτε να λαμβάνετε ένα email με έναν κωδικό σε κάθε μη έμπιστη σύνδεση.
|
||||
form_feed:
|
||||
feed_limit: Αριθμός αντικείμενων στην τροφοδότηση
|
||||
feed_link:
|
||||
all: Όλα
|
||||
archive: Αρχειοθετημένα
|
||||
starred: Αγαπημένα
|
||||
unread: Μη αναγνωσμένα
|
||||
feed_links: Σύνδεσμοι τροφοδότησης
|
||||
token_revoke: Διαγραφή του συμβόλου
|
||||
token_reset: Επαναδημιουργήστε το σύμβολό σας
|
||||
token_create: Δημιουργήστε το σύμβολό σας
|
||||
no_token: Δεν δημιουργήθηκε κανένα σύμβολο
|
||||
token_label: Σύμβολο τροφοδότησης
|
||||
description: Οι τροφοδοτήσεις Atom που παρέχονται από το wallabag σάς επιτρέπουν να διαβάσετε τα αποθηκευμένα άρθρα σας με τον αγαπημένο σας αναγνώστη Atom. Για να το χρησιμοποιήσετε, πρέπει να δημιουργήσετε πρώτα ένα σύμβολο.
|
||||
form_settings:
|
||||
help_pocket_consumer_key: Απαιτείται για την εισαγωγή από το Pocket. Μπορείτε να το δημιουργήσετε στον λογαριασμό σας στο Pocket.
|
||||
help_language: Μπορείτε να αλλάξετε τη γλώσσα της διεπαφής του wallabag.
|
||||
help_reading_speed: Το wallabag υπολογίζει τον χρόνο ανάγνωσής σας για κάθε άρθρο. Μπορείτε να ορίσετε εδώ, χάρη σε αυτή τη λίστα, αν είστε γρήγορος ή αργός αναγνώστης. Το wallabag θα επανυπολογίσει τον χρόνο ανάγνωσης για κάθε άρθρο.
|
||||
help_items_per_page: Μπορείτε να αλλάξετε τον αριθμό των άρθρων που προβάλλονται σε κάθε σελίδα.
|
||||
help_theme: Το wallabag μπορεί να προσαρμοστεί. Εδώ μπορείτε να επιλέξετε το θέμα που προτιμάτε.
|
||||
android_instruction: Πατήστε εδώ για να γεμίσετε από πριν την εφαρμογή Android
|
||||
android_configuration: Ρύθμιση της εφαρμογής Android
|
||||
pocket_consumer_key_label: Κλειδί επαλήθευσης Pocket για την εισαγωγή περιεχομένου
|
||||
action_mark_as_read:
|
||||
redirect_current_page: Διατήρηση της τρέχουσας σελίδας
|
||||
redirect_homepage: Μετάβαση στην αρχική
|
||||
label: Τι να γίνει αφού αφαιρεθεί ή σημανθεί ως αγαπημένο ή αναγνωσμένο ένα άρθρο;
|
||||
reading_speed:
|
||||
400_word: Διαβάζω περίπου 400 λέξεις ανά λεπτό
|
||||
300_word: Διαβάζω περίπου 300 λέξεις ανά λεπτό
|
||||
200_word: Διαβάζω περίπου 200 λέξεις ανά λεπτό
|
||||
100_word: Διαβάζω περίπου 100 λέξεις ανά λεπτό
|
||||
help_message: 'Μπορείτε να χρησιμοποιήσετε εργαλεία στο διαδίκτυο για να υπολογίσετε την ταχύτητα ανάγνωσής σας:'
|
||||
label: Ταχύτητα ανάγνωσης
|
||||
language_label: Γλώσσα
|
||||
items_per_page_label: Αντικείμενα ανά σελίδα
|
||||
theme_label: Θέμα
|
||||
form:
|
||||
save: Αποθήκευση
|
||||
page_title: Ρυθμίσεις
|
||||
menu:
|
||||
left:
|
||||
ignore_origin_instance_rules: Γενικοί κανόνες αγνόησε-προέλευση
|
||||
theme_toggle_auto: Αυτόματο θέμα
|
||||
theme_toggle_dark: Σκοτεινό θέμα
|
||||
theme_toggle_light: Ανοιχτό θέμα
|
||||
quickstart: Γρήγορη εκκίνηση
|
||||
site_credentials: Πιστοποιητικά ιστοσελίδων
|
||||
users_management: Διαχείριση χρηστών
|
||||
back_to_unread: Επιστροφή στα μη αναγνωσμένα άρθρα
|
||||
save_link: Αποθήκευση συνδέσμου
|
||||
search: Αναζήτηση
|
||||
about: Σχετικά
|
||||
logout: Αποσύνδεση
|
||||
developer: Διαχείριση πελατών API
|
||||
howto: Βοήθεια
|
||||
import: Εισαγωγή
|
||||
internal_settings: Εσωτερικές ρυθμίσεις
|
||||
tags: Ετικέτες
|
||||
config: Ρυθμίσεις
|
||||
all_articles: Όλες οι καταχωρίσεις
|
||||
archive: Αρχειοθετημένα
|
||||
starred: Αγαπημένα
|
||||
unread: Μη αναγνωσμένα
|
||||
search_form:
|
||||
input_label: Εισαγωγή της αναζήτησής σας εδώ
|
||||
top:
|
||||
account: Ο λογαριασμός μου
|
||||
random_entry: Μετάβαση σε τυχαία καταχώριση από αυτή τη λίστα
|
||||
export: Εξαγωγή
|
||||
filter_entries: Φιλτράρισμα καταχωρίσεων
|
||||
search: Αναζήτηση
|
||||
add_new_entry: Προσθήκη νέας καταχώρισης
|
||||
user:
|
||||
search:
|
||||
placeholder: Φιλτράρισμα ανά όνομα χρήστη ή email
|
||||
form:
|
||||
back_to_list: Επιστροφή στη λίστα
|
||||
delete_confirm: Είστε σίγουρος;
|
||||
delete: Διαγραφή
|
||||
save: Αποθήκευση
|
||||
twofactor_google_label: Επαλήθευση διπλού παράγοντα με εφαρμογή OTP
|
||||
twofactor_email_label: Επαλήθευση διπλού παράγοντα με email
|
||||
last_login_label: Τελευταία σύνδεση
|
||||
enabled_label: Ενεργοποιημένο
|
||||
email_label: Email
|
||||
plain_password_label: ????
|
||||
repeat_new_password_label: Επανάληψη νέου κωδικού
|
||||
password_label: Κωδικός
|
||||
name_label: Όνομα
|
||||
username_label: Όνομα χρήστη
|
||||
list:
|
||||
create_new_one: Δημιουργία νέου χρήστη
|
||||
no: Όχι
|
||||
yes: Ναι
|
||||
edit_action: Επεξεργασία
|
||||
actions: Δράσεις
|
||||
description: Εδώ μπορείτε να διαχειριστείτε όλους τους χρήστες (δημιουργία, επεξεργασία και διαγραφή)
|
||||
edit_user: Επεξεργασία υπάρχοντος χρήστη
|
||||
new_user: Δημιουργία νέου χρήστη
|
||||
page_title: Διαχείριση χρηστών
|
||||
security:
|
||||
resetting:
|
||||
description: Εισάγετε τη διεύθυνση email σας παρακάτω και θα σας στείλουμε οδηγίες επαναφοράς του κωδικού.
|
||||
register:
|
||||
go_to_account: Μεταβείτε στον λογαριασμό σας
|
||||
page_title: Δημιουργία λογαριασμού
|
||||
login:
|
||||
cancel: Ακύρωση
|
||||
password: Κωδικός
|
||||
username: Όνομα χρήστη
|
||||
register: Εγγραφή
|
||||
submit: Σύνδεση
|
||||
forgot_password: Ξεχάσατε τον κωδικό σας;
|
||||
keep_logged_in: Διατήρηση σύνδεσης
|
||||
page_title: Καλώς ήρθατε στο wallabag!
|
||||
footer:
|
||||
stats: Από την %user_creation% διαβάσατε %nb_archives% άρθρα. Αυτό είναι περίπου %per_day% την ημέρα!
|
||||
wallabag:
|
||||
about: Σχετικά
|
||||
powered_by: λειτουργεί με
|
||||
social: Κοινωνικά δίκτυα
|
||||
elsewhere: Πάρτε το wallabag μαζί σας
|
||||
@ -209,8 +209,10 @@ config:
|
||||
two_factor_code_description_2: 'You can scan that QR Code with your app:'
|
||||
two_factor_code_description_3: 'Also, save these backup codes in a safe place, you can use them in case you lose access to your OTP app:'
|
||||
two_factor_code_description_4: 'Test an OTP code from your configured app:'
|
||||
two_factor_code_description_5: "If you can't see the QR Code or can't scan it, enter the following secret in your app:"
|
||||
cancel: Cancel
|
||||
enable: Enable
|
||||
qrcode_label: QR code
|
||||
entry:
|
||||
default_title: Title of the entry
|
||||
page_titles:
|
||||
@ -555,7 +557,7 @@ developer:
|
||||
page_title: API clients management > How to create my first application
|
||||
description:
|
||||
paragraph_1: The following commands make use of the <a href="https://github.com/jkbrzt/httpie">HTTPie library</a>. Make sure it is installed on your system before using it.
|
||||
paragraph_2: You need a token to communicate between your 3rd application and wallabag API.
|
||||
paragraph_2: You need a token to communicate between your third-party application and wallabag API.
|
||||
paragraph_3: To create this token, you need <a href="%link%">to create a new client</a>.
|
||||
paragraph_4: 'Now, create your token (replace client_id, client_secret, username and password with the good values):'
|
||||
paragraph_5: 'The API will return a response like this:'
|
||||
|
||||
@ -122,6 +122,7 @@ config:
|
||||
button: Eliminar mi cuenta
|
||||
help_twoFactorAuthentication: Si habilita la autenticación de dos factores (2FA), cada vez que desee iniciar sesión en wallabag, recibirá un código por correo electrónico.
|
||||
twoFactorAuthentication_label: Autenticación de dos factores
|
||||
login_label: Login (no puede ser cambiado)
|
||||
reset:
|
||||
title: Reiniciar mi cuenta (zona peligrosa)
|
||||
description: Pulsando los botones de abajo puedes eliminar alguna información de tu cuenta. Ten en cuenta que estas acciones son IRREVERSIBLES.
|
||||
|
||||
@ -0,0 +1 @@
|
||||
{}
|
||||
@ -209,8 +209,10 @@ config:
|
||||
two_factor_code_description_2: 'Vous pouvez scanner le code QR avec votre application :'
|
||||
two_factor_code_description_3: 'N’oubliez pas de sauvegarder ces codes de secours dans un endroit sûr, vous pourrez les utiliser si vous ne pouvez plus accéder à votre application A2F :'
|
||||
two_factor_code_description_4: 'Testez un code généré par votre application A2F :'
|
||||
two_factor_code_description_5: 'Si vous ne voyez pas le code QR ou ne pouvez pas le scanner, saisissez la clé suivante dans votre application :'
|
||||
cancel: Annuler
|
||||
enable: Activer
|
||||
qrcode_label: Code QR
|
||||
entry:
|
||||
default_title: Titre de l’article
|
||||
page_titles:
|
||||
@ -400,7 +402,7 @@ quickstart:
|
||||
more: Et plus encore…
|
||||
intro:
|
||||
title: Bienvenue sur wallabag !
|
||||
paragraph_1: Nous allons vous accompagner pour vous faire faire le tour de la maison et vous présenter quelques fonctionnalités qui pourraient vous intéresser pour vous approprier cet outil.
|
||||
paragraph_1: Nous allons vous accompagner pour vous faire le tour de la maison et vous présenter quelques fonctionnalités qui pourraient vous intéresser pour vous approprier cet outil.
|
||||
paragraph_2: Suivez-nous !
|
||||
configure:
|
||||
title: Configurez l’application
|
||||
|
||||
701
src/Wallabag/CoreBundle/Resources/translations/messages.gl.yml
Normal file
701
src/Wallabag/CoreBundle/Resources/translations/messages.gl.yml
Normal file
@ -0,0 +1,701 @@
|
||||
howto:
|
||||
shortcuts:
|
||||
list_title: Atallos dispoñibles nas páxinas con listaxes
|
||||
go_logout: Desconectar
|
||||
go_howto: Ir ós titoriais (esta páxina!)
|
||||
go_developers: Ir a desenvolvedoras
|
||||
go_import: Ir a importar
|
||||
go_config: Ir ós axustes
|
||||
go_tags: Ir ás etiquetas
|
||||
go_all: Ir a Todas as entradas
|
||||
go_archive: Ir ó arquivo
|
||||
go_starred: Ir ós que teñen estrela
|
||||
go_unread: Ir a non lidos
|
||||
all_pages_title: Atallos dispoñibles en tódalas páxinas
|
||||
action: Acción
|
||||
shortcut: Atallo
|
||||
page_description: Aquí están os atallos dispoñibles en wallabag.
|
||||
open_article: Mostrar a entrada seleccionada
|
||||
arrows_navigation: Navegar polos artigos
|
||||
hide_form: Agochar o formulario actual (busca ou nova ligazón)
|
||||
add_link: Engadir nova ligazón
|
||||
material_title: Atallos dispoñibles só para o decorado Material
|
||||
delete: Eliminar o artigo
|
||||
toggle_archive: Marcar como lido o artigo
|
||||
toggle_favorite: Marcar con estrela o artigo
|
||||
open_original: Abrir URL orixinal do artigo
|
||||
article_title: Atallos dispoñibles na vista dos artigos
|
||||
search: Mostrar o formulario de busca
|
||||
bookmarklet:
|
||||
description: 'Arrastra e solta esta ligazón na túa barra de marcadores:'
|
||||
mobile_apps:
|
||||
windows: na Microsoft Store
|
||||
ios: na iTunes Store
|
||||
android:
|
||||
via_f_droid: vía F-Droid
|
||||
via_google_play: vía Google Play
|
||||
browser_addons:
|
||||
opera: Engadido para Opera
|
||||
chrome: Engadido para Chrome
|
||||
firefox: Engadido para Firefox
|
||||
form:
|
||||
description: Grazas a este formulario
|
||||
top_menu:
|
||||
bookmarklet: Marcador activo
|
||||
mobile_apps: Apps móbiles
|
||||
browser_addons: Engadidos do navegador
|
||||
page_description: 'Hai varios xeitos de gardar un artigo:'
|
||||
tab_menu:
|
||||
shortcuts: Usar atallos
|
||||
add_link: Engadir unha ligazón
|
||||
page_title: Titorial
|
||||
about:
|
||||
third_party:
|
||||
license: Licenza
|
||||
package: Paquete
|
||||
description: 'Aquí tes unha listaxe das bibliotecas de terceiros que utiliza wallabag (coa súa licenza):'
|
||||
contributors:
|
||||
description: Grazas ás colaboradoras na aplicación web de wallabag
|
||||
helping:
|
||||
by_paypal: vía Paypal
|
||||
by_contributing: 'colaborando co proxecto:'
|
||||
description: 'wallabag é libre e de código aberto. Podes axudarnos:'
|
||||
by_contributing_2: un tema resume tódalas nosas necesidades
|
||||
getting_help:
|
||||
support: <a href="https://github.com/wallabag/wallabag/issues">en GitHub</a>
|
||||
bug_reports: Informes de fallos
|
||||
documentation: Documentación
|
||||
who_behind_wallabag:
|
||||
version: Versión
|
||||
license: Licenza
|
||||
project_website: Sitio web do proxecto
|
||||
many_contributors: E moitas outras colaboradoras ♥ <a href="https://github.com/wallabag/wallabag/graphs/contributors">en GitHub</a>
|
||||
website: sitio web
|
||||
developped_by: Desenvolto por
|
||||
top_menu:
|
||||
third_party: Bibliotecas de terceiros
|
||||
contributors: Colaboradoras
|
||||
helping: Axudar a wallabag
|
||||
getting_help: Obter axuda
|
||||
who_behind_wallabag: Quen está detrás de wallabag
|
||||
page_title: Acerca de
|
||||
entry:
|
||||
metadata:
|
||||
published_on: Publicado o
|
||||
added_on: Engadido o
|
||||
address: Enderezo
|
||||
reading_time_minutes_short: '%readingTime% min'
|
||||
reading_time: Tempo de lectura estimado
|
||||
confirm:
|
||||
delete_tag: Tes a certeza de querer eliminar esa etiqueta do artigo?
|
||||
delete: Tes a certeza de querer eliminar ese artigo?
|
||||
public:
|
||||
shared_by_wallabag: Este artigo foi compartido por %username% con <a href='%wallabag_instance%'>wallabag</a>
|
||||
edit:
|
||||
save_label: Gardar
|
||||
origin_url_label: Url de orixe (o lugar onde atopaches a entrada)
|
||||
url_label: Url
|
||||
title_label: Título
|
||||
page_title: Editar unha entrada
|
||||
search:
|
||||
placeholder: Que estás a buscar?
|
||||
new:
|
||||
form_new:
|
||||
url_label: Url
|
||||
placeholder: http://website.com
|
||||
page_title: Gardar nova entrada
|
||||
view:
|
||||
provided_by: Proporcionado por
|
||||
published_by: Publicado por
|
||||
published_at: Data de publicación
|
||||
created_at: Data de creación
|
||||
annotations_on_the_entry: '{0} Sen notas|{1} Unha nota|]1,Inf[ %count% notas'
|
||||
original_article: orixinal
|
||||
edit_title: Editar título
|
||||
left_menu:
|
||||
problem:
|
||||
description: Non se mostra correctamente o artigo?
|
||||
label: Problemas?
|
||||
theme_toggle_auto: Automático
|
||||
theme_toggle_dark: Escuro
|
||||
theme_toggle_light: Claro
|
||||
theme_toggle: Cambiar decorado
|
||||
print: Imprimir
|
||||
export: Exportar
|
||||
delete_public_link: eliminar ligazón pública
|
||||
public_link: ligazón pública
|
||||
share_email_label: Email
|
||||
share_content: Compartir
|
||||
add_a_tag: Engadir etiqueta
|
||||
delete: Eliminar
|
||||
re_fetch_content: Volver a obter contido
|
||||
view_original_article: Artigo orixinal
|
||||
set_as_starred: Poñer estrela
|
||||
set_as_unread: Marcar como non lido
|
||||
set_as_read: Marcar como lido
|
||||
back_to_homepage: Atrás
|
||||
back_to_top: Ir arriba
|
||||
filters:
|
||||
action:
|
||||
filter: Filtrar
|
||||
clear: Baleirar
|
||||
reading_time:
|
||||
to: ata
|
||||
from: desde
|
||||
label: Tempo de lectura en minutos
|
||||
created_at:
|
||||
to: ata
|
||||
from: desde
|
||||
label: Data de creación
|
||||
domain_label: Nome de dominio
|
||||
http_status_label: Estado HTTP
|
||||
language_label: Idioma
|
||||
is_public_help: Ligazón pública
|
||||
is_public_label: Ten unha ligazón pública
|
||||
preview_picture_help: Imaxe de vista previa
|
||||
preview_picture_label: Ten imaxe de vista previa
|
||||
unread_label: Sen ler
|
||||
starred_label: Con estrela
|
||||
archived_label: Arquivado
|
||||
status_label: Estado
|
||||
title: Filtros
|
||||
list:
|
||||
export_title: Exportar
|
||||
delete: Eliminar
|
||||
toogle_as_star: Marcar cunha estrela
|
||||
toogle_as_read: Marcar como lido
|
||||
original_article: orixinal
|
||||
reading_time_less_one_minute_short: '< 1 min'
|
||||
reading_time_minutes_short: '%readingTime% min.'
|
||||
number_of_tags: '{1} e outra etiqueta|]1,Inf[e %count% outras etiquetas'
|
||||
reading_time_less_one_minute: 'tempo estimado de lectura: < 1 min'
|
||||
reading_time_minutes: 'tempo estimado de lectura: %readingTime% min'
|
||||
reading_time: tempo estimado de lectura
|
||||
number_on_the_page: '{0} Non hai entradas.|{1} Só hai unha entrada.|]1,Inf[ Hai %count% entradas.'
|
||||
page_titles:
|
||||
all: Todas as entradas
|
||||
untagged: Entradas sen etiqueta
|
||||
filtered_search: 'Filtrado por busca:'
|
||||
filtered_tags: 'Filtrado por etiquetas:'
|
||||
filtered: Artigos filtrados
|
||||
archived: Artigos arquivados
|
||||
starred: Artigos con estrela
|
||||
unread: Artigos sen ler
|
||||
default_title: Título da entrada
|
||||
config:
|
||||
form_ignore_origin_rules:
|
||||
faq:
|
||||
operator_description:
|
||||
matches: 'Comproba que o <i>obxecto</i> concorda coa <i>busca</i> (non diferencia maiúsculas).<br />Exemplo: <code>_all ~ "https?://rss.example.com/foobar/.*"</code>'
|
||||
equal_to: Igual a…
|
||||
label: Operador
|
||||
variable_description:
|
||||
_all: Enderezo completo, básicamente para patróns de concordancia
|
||||
host: Servidor do enderezo
|
||||
label: Variable
|
||||
meaning: Significado
|
||||
variables_available_description: 'Podes usar as seguintes variables e operadores para crear regras que ignoran a orixe:'
|
||||
variables_available_title: Que variables e operadores podo utilizar para as regras?
|
||||
how_to_use_them_description: Asumamos que queres ignorar a orixe dunha entrada procedente de « <i>rss.exemplo.com</i> » (<i>sabendo que tras a redirección o enderezo é exemplo.com</i>).<br />Neste caso, deberías escribir « host = "rss.exemplo.com" » no campo da <i>Regra</i> .
|
||||
how_to_use_them_title: Como se usan?
|
||||
ignore_origin_rules_definition_description: Utilízase para que wallabag ignore automáticamente un enderezo de orixe tras a redirección.<br />Se hai unha redirección mentras se obtén a nova entrada, utilizaranse as regras que ignoran a orixe (<i>definidas pola usuaria na instancia</i>) para ignorar o enderezo de orixe.
|
||||
ignore_origin_rules_definition_title: Qué significa "ignorar regras de orixe"?
|
||||
title: PMF
|
||||
form_rules:
|
||||
faq:
|
||||
how_to_use_them_description: 'Demos por feito que queres etiquetar as novas entradas con « <i>lectura rápida</i> » cando o tempo de lectura non supera os 3 minutos.<br />Neste caso, tes que poñer « TempodeLectura <= 3 » no campo da <i>Regra</i> e « <i>lectura rápida</i> » no campo da <i>Etiqueta</i> .<br />Podes engadir varias etiquetas ó mesmo tempo separándoas cunha vírgula: « <i>lectura rápida, teño que ler</i> »<br />Pódense establecer regras complexas usando os operadores predefinidos: se o « <i>readingTime >= 5 AND domainName = "github.com"</i> » entón etiquetar como « <i>lectura longa, GitHub </i> »'
|
||||
operator_description:
|
||||
notmatches: 'Comproba que o <i>obxecto</i> non contén a <i>busca</i> (non dif. maiúsculas).<br />Exemplo: <code>título non contén "saúde"</code>'
|
||||
matches: 'Comproba que un <i>obxecto</i> concorda coa <i>busca</i> (dif. maius.-minus.).<br />Exemplo: <code>título contén "saúde"</code>'
|
||||
and: Unha regra E outra
|
||||
or: Unha regra OU outra
|
||||
not_equal_to: Diferente de…
|
||||
equal_to: Igual a…
|
||||
strictly_greater_than: Estrictamente maior que…
|
||||
greater_than: Maior de…
|
||||
strictly_less_than: Estrictamente menor que…
|
||||
less_than: Menor que…
|
||||
label: Operador
|
||||
variable_description:
|
||||
domainName: O nome de dominio da entrada
|
||||
readingTime: O tempo estimado de lectura para a entrada, en minutos
|
||||
mimetype: O tipo de multimedia da entrada
|
||||
language: O idioma da entrada
|
||||
content: O contido da entrada
|
||||
isStarred: Se a entrada ten estrela ou non
|
||||
isArchived: Se a entrada está arquivada ou non
|
||||
url: URL da entrada
|
||||
title: Título da entrada
|
||||
label: Variable
|
||||
meaning: Significado
|
||||
variables_available_description: 'Podes usar as seguintes variables e operadores para crear regras de etiquetado:'
|
||||
variables_available_title: Que variables e operadores se poden usar nas regras?
|
||||
how_to_use_them_title: Como se utilizan?
|
||||
tagging_rules_definition_description: Son regras utilizadas por wallabag para etiquetar automáticamente novas entradas.<br />Cada vez que se engade un elemento usaranse tódalas regras de etiquetados configuradas, aforrándoche o traballo de clasificar manualmente as túas entradas.
|
||||
tagging_rules_definition_title: Que significa "regras de etiquetado"?
|
||||
title: PMF
|
||||
export: Exportar
|
||||
import_submit: Importar
|
||||
file_label: Ficheiro JSON
|
||||
card:
|
||||
export_tagging_rules_detail: Vas descargar un ficheiro JSON que podes usar para importar as regras de etiquetado noutro lugar ou facer copia de apoio.
|
||||
export_tagging_rules: Exportar regras de etiquetado
|
||||
import_tagging_rules_detail: Tes que escoller un ficheiro JSON que exportaras anteriormente.
|
||||
import_tagging_rules: Importar regras de etiquetado
|
||||
new_tagging_rule: Crear regra de etiquetado
|
||||
tags_label: Etiquetas
|
||||
rule_label: Regra
|
||||
edit_rule_label: editar
|
||||
delete_rule_label: eliminar
|
||||
then_tag_as_label: após etiquetar como
|
||||
if_label: se
|
||||
otp:
|
||||
app:
|
||||
enable: Activar
|
||||
cancel: Cancelar
|
||||
two_factor_code_description_5: 'Se non podes ver o Código QR ou non podes escanealo, escribe a chave seguinte na túa app:'
|
||||
two_factor_code_description_4: 'Comproba un dos códigos OTP da app que utilizas:'
|
||||
two_factor_code_description_3: 'Igualmente, garda unha copia destos códigos nun lugar seguro, podes usalos en caso de perder o acceso á app OTP:'
|
||||
two_factor_code_description_2: 'Podes escanear o Código QR coa túa app:'
|
||||
two_factor_code_description_1: Activaches o segundo factor de autenticación OTP, abre a túa app OTP e usa o código para obter un contrasinal dun só uso. Desaparecerá tras a recarga da páxina.
|
||||
qrcode_label: Código QR
|
||||
page_title: Autenticación con dous factores
|
||||
form_settings:
|
||||
android_instruction: Toca aquí para precompletar a aap Android
|
||||
help_pocket_consumer_key: Requerido para importación en Pocket. Podes creala na túa conta Pocket.
|
||||
help_language: Podes cambiar o idioma da interface de wallabag.
|
||||
help_reading_speed: wallabag calcula o tempo de lectura de cada artigo. Podes definir aquí, grazas a esta lista, se es lectora rápida ou lenta. wallabag volverá a calcular a velocidade de lectura para cada artigo.
|
||||
help_items_per_page: Podes cambiar o número de artigos mostrados en cada páxina.
|
||||
help_theme: wallabag é personalizable. Podes escoller o teu decorado preferido.
|
||||
android_configuration: Configurar a app Android
|
||||
pocket_consumer_key_label: Consumer Key para importar contidos de Pocket
|
||||
action_mark_as_read:
|
||||
redirect_current_page: Permanecer na páxina actual
|
||||
redirect_homepage: Ir á páxina de inicio
|
||||
label: Que facer tras eliminar, por unha estrela ou marcar como lido un artigo?
|
||||
reading_speed:
|
||||
400_word: Leo ~400 palabras por minuto
|
||||
300_word: Leo ~300 palabras por minuto
|
||||
200_word: Leo ~200 palabras por minuto
|
||||
100_word: Leo ~100 palabras por minuto
|
||||
help_message: 'Podes usar ferramentas en liña para estimar a túa velocidade de lectura:'
|
||||
label: Velocidade de lectura
|
||||
language_label: Idioma
|
||||
items_per_page_label: Elementos por páxina
|
||||
theme_label: Decorado
|
||||
form_password:
|
||||
repeat_new_password_label: Repite o novo contrasinal
|
||||
new_password_label: Novo contrasinal
|
||||
old_password_label: Contrasinal actual
|
||||
description: Aquí podes cambiar o contrasinal. O novo contrasinal ten que ter ao menos 8 caracteres.
|
||||
reset:
|
||||
confirm: Seguro que queres facelo? (ESTO NON TEN VOLTA)
|
||||
archived: Eliminar TODAS as entradas arquivadas
|
||||
entries: Eliminar TODAS as entradas
|
||||
tags: Eliminar TODAS as etiquetas
|
||||
annotations: Eliminar TODAS as notas
|
||||
description: Premendo nos botóns poderás eliminar algunha información relativa á túa conta. Ten tino co que fas, xa que será IRREVERSIBLE.
|
||||
title: Área de restablecemento (Perigo!)
|
||||
form_user:
|
||||
delete:
|
||||
button: Eliminar a miña conta
|
||||
confirm: Seguro que desexas facelo? (NON TEN VOLTA)
|
||||
description: Se eliminas a conta, TÓDOLOS teus artigos, TÓDALAS etiquetas e TÓDALAS notas da túa conta serán eliminadas PERMANENTEMENTE (non hai volta atrás!). Após, serás desconectada.
|
||||
title: Elimina a miña conta (a.k.a. Zona Perigosa)
|
||||
two_factor:
|
||||
action_app: Usar App OTP
|
||||
action_email: Usar email
|
||||
state_disabled: Desactivado
|
||||
state_enabled: Activado
|
||||
table_action: Acción
|
||||
table_state: Estado
|
||||
table_method: Método
|
||||
googleTwoFactor_label: Usando app OTP (usa unha app como andOTP, FreeOTP, Authy ou Google Authenticator, para obter o código único)
|
||||
emailTwoFactor_label: Utilizando email (recibirás código por email)
|
||||
login_label: Conexión (non se pode cambiar
|
||||
email_label: Email
|
||||
name_label: Nome
|
||||
two_factor_description: Se activas o segundo factor de autenticación recibirás un email cun código en cada nova conexión que aínda non verificases.
|
||||
form_feed:
|
||||
feed_limit: Número de elementos na fonte
|
||||
feed_link:
|
||||
all: Todo
|
||||
archive: Arquivado
|
||||
starred: Con estrela
|
||||
unread: Sen ler
|
||||
feed_links: Ligazóns da fonte
|
||||
token_revoke: Revogar o token
|
||||
token_reset: Volver a crear o token
|
||||
token_create: Crea o token
|
||||
no_token: Sen token
|
||||
token_label: Token da fonte
|
||||
description: As fontes Atom proporcionadas por wallabag permítenche ler no teu lector Atom favorito os artigos que gardaches. Primeiro tes que crear un token.
|
||||
form:
|
||||
save: Gardar
|
||||
tab_menu:
|
||||
reset: Restablecer área
|
||||
ignore_origin: Ignorar regras de orixe
|
||||
new_user: Engadir usuaria
|
||||
rules: Regras de etiquetado
|
||||
password: Contrasinal
|
||||
user_info: Información da usuaria
|
||||
feed: Fontes
|
||||
settings: Axustes
|
||||
page_title: Configuración
|
||||
footer:
|
||||
stats: Desde %user_creation% leches %nb_archives% artigos. Que ven sendo %per_day% ó día!
|
||||
wallabag:
|
||||
about: Acerca de
|
||||
powered_by: grazas a
|
||||
social: Social
|
||||
elsewhere: Leva wallabag contigo
|
||||
menu:
|
||||
search_form:
|
||||
input_label: Escribe aquí a túa busca
|
||||
top:
|
||||
account: A miña conta
|
||||
random_entry: Ir a unha entrada ó chou desa listaxe
|
||||
export: Exportar
|
||||
filter_entries: Filtrar entradas
|
||||
search: Buscar
|
||||
add_new_entry: Engadir nova entrada
|
||||
left:
|
||||
theme_toggle_auto: Decorado automático
|
||||
theme_toggle_dark: Decorado escuro
|
||||
theme_toggle_light: Decorado claro
|
||||
quickstart: Inicio rápido
|
||||
ignore_origin_instance_rules: Ignorar globalmente as regras de orixe
|
||||
site_credentials: Credenciais da web
|
||||
users_management: Xestión de usuarias
|
||||
back_to_unread: Volver ós artigos non lidos
|
||||
save_link: Gardar ligazón
|
||||
search: Buscar
|
||||
about: Acerca de
|
||||
logout: Desconectar
|
||||
developer: Xestión dos clientes API
|
||||
howto: Titoriais
|
||||
import: Importar
|
||||
internal_settings: Axustes internos
|
||||
tags: Etiquetas
|
||||
config: Axustes
|
||||
all_articles: Todos
|
||||
archive: Arquivo
|
||||
starred: Con estrela
|
||||
unread: Sen ler
|
||||
security:
|
||||
register:
|
||||
go_to_account: Vai á túa conta
|
||||
page_title: Crear unha conta
|
||||
resetting:
|
||||
description: Escribe o enderezo de email e enviarémosche as instruccións para restablecer o contrasinal.
|
||||
login:
|
||||
cancel: Cancelar
|
||||
password: Contrasinal
|
||||
username: Nome de usuaria
|
||||
register: Abre unha conta
|
||||
submit: Conectar
|
||||
forgot_password: Esqueceches o contrasinal?
|
||||
keep_logged_in: Manterme conectada
|
||||
page_title: Benvida a wallabag!
|
||||
import:
|
||||
wallabag_v2:
|
||||
page_title: Importar > Wallabag v2
|
||||
description: Este importador vai importar tódolos teus artigos de wallabag v2. Vai a Todos os artigos, e após, na barra lateral de exportación, preme en "JSON". Obterás un ficheiro "JSON".
|
||||
wallabag_v1:
|
||||
how_to: Selecciona o ficheiro de wallabag e preme no botón inferior para subilo e importalo.
|
||||
description: Este importador traerá todos os teus artigos desde wallabag v1. Na páxina de configuración, preme en "Exportar JSON" na sección "Exportar datos wallabag". Obterás un ficheiro "wallabag-export-1-xxxx-xx-xx.json".
|
||||
page_title: Importar > Wallabag v1
|
||||
pocket:
|
||||
connect_to_pocket: Conectar con Pocket e importar datos
|
||||
authorize_message: Podes importar os teus datos desde a túa conta Pocket. Só tes que premer no botón inferior e autorizar á aplicación para que se conecte a getpocket.com.
|
||||
config_missing:
|
||||
user_message: A administración do servidor ten que definir unha API Key para Pocket.
|
||||
admin_message: Tes que establecer %keyurls%a pocket_consumer_key%keyurle%.
|
||||
description: A importación desde Pocket non está configurado.
|
||||
description: Este importador traerá todos os datos desde Pocket. Pocket non permite que traiamos os datos desde o seu servizo, así que os contidos de cada artigo teñen que ser obtidos por wallabag.
|
||||
page_title: Importar > Pocket
|
||||
form:
|
||||
save_label: Subir ficheiro
|
||||
file_label: Ficheiro
|
||||
mark_as_read_label: Marcar todas as entradas importadas como lidas
|
||||
mark_as_read_title: Marcar todo como lido?
|
||||
action:
|
||||
import_contents: Importar contidos
|
||||
page_description: Benvida ó importador de wallabag. Elixe o servizo que utilizabas e desde o que queres migrar.
|
||||
page_title: Importar
|
||||
pinboard:
|
||||
page_title: Importar > Pinboard
|
||||
how_to: Elixe o ficheiro de exportación Pinboard e preme no botón inferior para subilo e importalo.
|
||||
description: Este importador traerá tódolos teus artigos de Pinboard. Na páxina de copia de apoio (https://pinboard.in/settings/backup), preme en "JSON" na sección "Marcadores". Baixarás un ficheiro JSON (como "pinboard_export").
|
||||
instapaper:
|
||||
how_to: Elixe o ficheiro de exportación de Instapaper e preme no botón inferior para subilo e importalo.
|
||||
description: Este importador vai traer tódolos teus artigos de Instapaper. Na páxina dos axustes (https://www.instapaper.com/user), preme en "Descargar ficheiro .CSV) na sección "Exportar". Descargarás un ficheiro CSV (de tipo "instapaper-export.csv").
|
||||
page_title: Importar > Instapaper
|
||||
chrome:
|
||||
how_to: Escolle o ficheiro de copia de apoio dos marcadores e preme no botón inferior para importalo. O proceso podería tomar moito tempo xa que hai que obter tódolos artigos.
|
||||
description: 'Este importador traerá tódolos marcadores de Chrome. A localización do ficheiro depende do teu sistema operativo: <ul><li>En Linux, vai ó directorio <code>~/.config/chromium/Default/</code> </li><li>En Windows, debería estar en <code>%LOCALAPPDATA%\Google\Chrome\User Data\Default</code></li><li>En OS X, debería estar en <code>~/Library/Application Support/Google/Chrome/Default/Bookmarks</code></li></ul>Unha vez alí, copia o ficheiro <code>Marcadores</code> onde ti queiras.<em><br>Ten en conta que se usas Chromium no lugar de Chrome terás que correxir a ruta de xeito acorde.</em></p>'
|
||||
page_title: Importar > Chrome
|
||||
firefox:
|
||||
how_to: Escolle o ficheiro de copia de apoio e preme no botón inferior para importalo. O proceso podería demorarse xa que hai que obter todos os artigos.
|
||||
description: Este importador traerá tódolos teus marcadores de Firefox. Simplemente vai a marcadores (Ctrl+Shift+O), após en "Importación e copias", escolle "Copia...". Obeterás un ficheiro JSON.
|
||||
page_title: Importar > Firefox
|
||||
worker:
|
||||
download_images_warning: Activaches a descarga de imaxes para os teus artigos. Combinado coa importación clásica pódelle levar moito tempo rematar (incluso fallar). <strong>Recomendámosche encarecidamente</strong> que actives a sincronización asíncrona para evitar erros.
|
||||
enabled: 'A importación faise de xeito asíncrono. Unha vez se inicia a tarefa de importación, un servizo externo ocuparase delas dunha en unha. O servizo actual é:'
|
||||
readability:
|
||||
how_to: Escolle o teu ficheiro de Readability e preme no botón inferior para subilo e importalo.
|
||||
description: Este importador vai traer todos os teus artigos Readability. Nas ferramentas (https://www.readability.com/tools/), preme en "Exporta os teus datos" na sección "Exportar Datos". Obterás un email para descargar un json (que en realidade non remata en .json).
|
||||
page_title: Importar > Readability
|
||||
elcurator:
|
||||
description: Este importador traerá todos os teus ficheiros de elCurator. Vai ós axustes na túa conta elCurator e após exporta o teu contido. Obterás un ficheiro JSON.
|
||||
page_title: Importar > elCurator
|
||||
export:
|
||||
unknown: Descoñecido
|
||||
footer_template: <div style="text-align:center;"><p>Producido por wallabag con %method%</p><p>Abre <a href="https://github.com/wallabag/wallabag/issues">un issue</a> se tes problemas para visualizar este E-Book no teu dispositivo.</p></div>
|
||||
tag:
|
||||
new:
|
||||
placeholder: Podes engadir varias etiquetas, separadas por vírgulas.
|
||||
add: Engadir
|
||||
list:
|
||||
untagged: Entradas sen etiqueta
|
||||
no_untagged_entries: Non hai entradas sen etiqueta.
|
||||
see_untagged_entries: Ver artigos non etiquetados
|
||||
number_on_the_page: '{0} Non hai etiquetas.|{1} Hai unha etiqueta.|]1,Inf[ Hai %count% etiquetas.'
|
||||
page_title: Etiquetas
|
||||
quickstart:
|
||||
support:
|
||||
gitter: En Gitter
|
||||
email: Por email
|
||||
github: En GitHub
|
||||
description: Se precisas axuda, aquí estamos para ti.
|
||||
title: Axuda
|
||||
docs:
|
||||
all_docs: E outros moitos artigos!
|
||||
fetching_errors: Que podo facer se hai algún fallo na obtención do artigo?
|
||||
search_filters: Aprende como podes atopar un artigo a través da busca e filtros
|
||||
export: Converte os artigos en ePUB ou PDF
|
||||
annotate: Fai anotacións no artigo
|
||||
description: Wallabag ten moitas características. Non dubides e le o manual para coñecelas e aprender a utilizalas.
|
||||
title: Documentación completa
|
||||
developer:
|
||||
use_docker: Usa Docker para instalar wallabag
|
||||
create_application: Crea a túa aplicación de terceiros
|
||||
description: 'Tamén pensamos nas desenvolvedoras: Docker, API, traducións, etc.'
|
||||
title: Desenvolvedoras
|
||||
migrate:
|
||||
instapaper: Migrar desde Instapaper
|
||||
readability: Migrar desde Readability
|
||||
wallabag_v2: Migrar desde wallabag v2
|
||||
wallabag_v1: Migrar desde wallabag v1
|
||||
pocket: Migrar desde Pocket
|
||||
description: Estás a usar algún outro servizo? Axudarémosche a traer os teus datos a wallabag.
|
||||
title: Migrar desde un servizo existente
|
||||
first_steps:
|
||||
unread_articles: E clasifícao!
|
||||
new_article: Garda o teu primeiro artigo
|
||||
description: Agora wallabag está ben configurado, xa podes arquivar a web. Podes premer no signo + arriba á dereita para engadir unha ligazón.
|
||||
title: Primeiros pasos
|
||||
admin:
|
||||
import: Configurar importación
|
||||
export: Configurar exportación
|
||||
sharing: Activar parámetros para compartir artigos
|
||||
analytics: Configurar estatísticas
|
||||
new_user: Crear unha nova usuaria
|
||||
description: 'Como administradora, tes certos privilexios en wallabag. Podes:'
|
||||
title: Administración
|
||||
configure:
|
||||
tagging_rules: Establece regras para etiquetar automáticamente os artigos
|
||||
feed: Activar fontes
|
||||
language: Cambiar o idioma e deseño
|
||||
description: Para poder adaptar a aplicación ás túas preferencias, entra nos axustes de wallabag.
|
||||
title: Configurar a aplicación
|
||||
intro:
|
||||
paragraph_2: Síguenos!
|
||||
paragraph_1: Acompañámoste nesta visita a wallabag e mostrámosche algunhas características que poderían resultarche interesantes.
|
||||
title: Benvida a wallabag!
|
||||
more: Máis…
|
||||
page_title: Inicio rápido
|
||||
developer:
|
||||
existing_clients:
|
||||
field_grant_types: Tipos de acceso permitidos
|
||||
no_client: Sen clientes.
|
||||
field_uris: Redirixir URIs
|
||||
field_secret: Segreda do cliente
|
||||
field_id: ID do cliente
|
||||
title: Clientes existentes
|
||||
howto:
|
||||
back: Atrás
|
||||
description:
|
||||
paragraph_8: Se queres ver tódolos accesos á API, mira a <a href="%link%">nosa documentación da API</a>.
|
||||
paragraph_7: Esta chamada devolverá todas as entradas do teu usuario.
|
||||
paragraph_6: 'O access_token é útil para chamar ao punto de acceso da API. Por exemplo:'
|
||||
paragraph_5: 'A API responderá con algo semellante a:'
|
||||
paragraph_4: 'Agora, crea o token (substitúe client_id, client_secret, username e password cos valores axeitados):'
|
||||
paragraph_3: Para crear este token, tes que <a href="%link%">crear un novo cliente</a>.
|
||||
paragraph_2: Precisas un token para comunicarte entre a túa app de terceiros e a API de wallabag.
|
||||
paragraph_1: As seguintes ordes fan uso da <a href="https://github.com/jkbrzt/httpie">biblioteca HTTPie</a>. Comproba que está instalada no teu sistema antes de utilizala.
|
||||
page_title: Xestión de clientes API > Como crear a miña primeira aplicación
|
||||
client_parameter:
|
||||
read_howto: Ler o titorial "Crear a miña primeira aplicación"
|
||||
back: Atrás
|
||||
field_secret: Segreda do cliente
|
||||
field_id: ID do cliente
|
||||
field_name: Nome do cliente
|
||||
page_description: Aquí están os parámetros do cliente.
|
||||
page_title: Xestión de clientes API > Parámetros do cliente
|
||||
client:
|
||||
copy_to_clipboard: Copiar
|
||||
action_back: Atrás
|
||||
form:
|
||||
save_label: Crear un novo cliente
|
||||
redirect_uris_label: URIs de redirección (optativo)
|
||||
name_label: Nome do cliente
|
||||
page_description: Vas crear un novo cliene. Completa o campo inferior para a URI de redirección da túa aplicación.
|
||||
page_title: Xestión de clientes API > Novo cliente
|
||||
remove:
|
||||
action: Eliminar o cliente %name%
|
||||
warn_message_2: Se o eliminas, cada app configurada con ese cliente non poderá acceder ao teu wallabag.
|
||||
warn_message_1: Podes eliminar o cliente %name%. Esta acción non se pode desfacer!
|
||||
clients:
|
||||
create_new: Crear un novo cliente
|
||||
title: Clientes
|
||||
list_methods: Listaxe dos métodos API
|
||||
full_documentation: Ver a documentación completa da API
|
||||
how_to_first_app: Como crear a miña primeira aplicación
|
||||
documentation: Documentación
|
||||
welcome_message: Benvida á API wallabag
|
||||
page_title: Xestión dos clientes API
|
||||
flashes:
|
||||
ignore_origin_instance_rule:
|
||||
notice:
|
||||
deleted: Eliminada regra para ignorar orixe
|
||||
updated: Actualizada regra para ignorar orixe
|
||||
added: Engadida regra para ignorar orixe
|
||||
site_credential:
|
||||
notice:
|
||||
deleted: Eliminada credencial de sitio de "%host%"
|
||||
updated: Actualizada credencial de sitio para "%host%"
|
||||
added: Engadida credencial de sitio para "%host%"
|
||||
user:
|
||||
notice:
|
||||
deleted: Eliminada a usuaria "%username%"
|
||||
updated: Actualizada a usuaria "%username%"
|
||||
added: Engadida a usuaria "%username%"
|
||||
developer:
|
||||
notice:
|
||||
client_deleted: Eliminado o cliente %name%
|
||||
client_created: Creouse o novo cliente %name%.
|
||||
import:
|
||||
error:
|
||||
rabbit_enabled_not_installed: RabbitMQ está activado para xestionar a importación asíncrona pero semella que <u>non podemos conectar con el</u>. Comproba a configuración de RabbitMQ.
|
||||
redis_enabled_not_installed: Redis está activado para xestionar importacións asíncronas pero semella que <u>non podemos conectar co servizo</u>. Comproba a configuración de Redis.
|
||||
notice:
|
||||
summary_with_queue: 'Resumo da importación: %queued% en cola.'
|
||||
summary: 'Resumo da importación: %imported% importados, %skipped% anteriormente engadidos.'
|
||||
failed_on_file: Fallou o proceso de importación. Verifica o ficheiro de importación.
|
||||
failed: Fallou a importación, inténtao outra vez.
|
||||
tag:
|
||||
notice:
|
||||
tag_renamed: Etiqueta renomeada
|
||||
tag_added: Etiqueta engadida
|
||||
entry:
|
||||
notice:
|
||||
no_random_entry: Non se atopan artigos con este criterio
|
||||
entry_deleted: Entrada eliminada
|
||||
entry_unstarred: Entrada sen estrela
|
||||
entry_starred: Entrada marcada con estrela
|
||||
entry_unarchived: Entrada desarquivada
|
||||
entry_archived: Entrada arquivada
|
||||
entry_reloaded_failed: Entrada recargada pero fallou a obtención do contido
|
||||
entry_reloaded: Entrada recargada
|
||||
entry_updated: Entrada actualizada
|
||||
entry_saved_failed: A entrada gardouse pero fallou a obtención do contido
|
||||
entry_saved: Entrada gardada
|
||||
entry_already_saved: Xa gardaches esta entrada o %date%
|
||||
config:
|
||||
notice:
|
||||
ignore_origin_rules_updated: Actualizada a regra para ignorar orixe
|
||||
ignore_origin_rules_deleted: Eliminada a regra para ignorar orixe
|
||||
tagging_rules_not_imported: Erro ao importar as regras de etiquetado
|
||||
tagging_rules_imported: Importadas as regras de etiquetado
|
||||
otp_disabled: Desactivado o segundo factor de autenticación
|
||||
otp_enabled: Activado o segundo factor de autenticación
|
||||
archived_reset: Eliminadas as entradas arquivadas
|
||||
entries_reset: Restablecemento das entradas
|
||||
tags_reset: Restablecemento das etiquetas
|
||||
annotations_reset: Restablecemento das anotacións
|
||||
feed_token_revoked: Revogado o token da fonte
|
||||
feed_token_updated: Actualizado o token da fonte
|
||||
feed_updated: Actualizada a información da fonte
|
||||
tagging_rules_deleted: Regra de etiquetado eliminada
|
||||
tagging_rules_updated: Regras de etiquetado actualizadas
|
||||
user_updated: Información actualizada
|
||||
password_not_updated_demo: No modo demostración non podes cambiar o contrasinal da usuaria.
|
||||
password_updated: Contrasinal actualizado
|
||||
config_saved: Gardouse o axuste.
|
||||
error:
|
||||
page_title: Houbo un fallo
|
||||
ignore_origin_instance_rule:
|
||||
form:
|
||||
back_to_list: Volver á lista
|
||||
delete_confirm: Tes a certeza?
|
||||
delete: Eliminar
|
||||
save: Gardar
|
||||
rule_label: Regra
|
||||
list:
|
||||
create_new_one: Crear unha nova regra global para ignorar orixe
|
||||
no: Non
|
||||
yes: Si
|
||||
edit_action: Editar
|
||||
actions: Acccións
|
||||
description: Aquí podes xestionar as regras globais sobre a orixe utilizadas para ignorar algúns patróns do url de orixe.
|
||||
edit_ignore_origin_instance_rule: Editar regra de orixe existente
|
||||
new_ignore_origin_instance_rule: Crear unha regra para ignorar regras de orixe
|
||||
page_title: Ignorar globalmente regras de orixe
|
||||
site_credential:
|
||||
form:
|
||||
back_to_list: Volver á lista
|
||||
delete_confirm: Tes a certeza?
|
||||
delete: Eliminar
|
||||
save: Gardar
|
||||
password_label: Contrasinal
|
||||
host_label: Servidor (subdominio.exemplo.org, .exemplo.org, etc.)
|
||||
username_label: Conectar
|
||||
list:
|
||||
create_new_one: Crear unha nova credencial
|
||||
no: Non
|
||||
yes: Si
|
||||
edit_action: Editar
|
||||
actions: Accións
|
||||
description: Aquí podes xestionar tódalas credenciais para sitios que as requiran (crear, editar e eliminar), como un valado de pagamento, autenticación, etc.
|
||||
edit_site_credential: Editar unha credencial existente
|
||||
new_site_credential: Crear unha credencial
|
||||
page_title: Xestión das credenciais do sitio
|
||||
user:
|
||||
search:
|
||||
placeholder: Filtrar por nome de usuaria ou email
|
||||
form:
|
||||
back_to_list: Volver á lista
|
||||
delete_confirm: Tes a certeza?
|
||||
delete: Eliminar
|
||||
save: Gardar
|
||||
twofactor_google_label: Segundo factor de autenticación por app OTP
|
||||
twofactor_email_label: Segundo factor de autenticación por email
|
||||
last_login_label: Última conexión
|
||||
enabled_label: Activado
|
||||
email_label: Email
|
||||
plain_password_label: ????
|
||||
repeat_new_password_label: Repetir o novo contrasinal
|
||||
password_label: Contrasinal
|
||||
name_label: Nome
|
||||
username_label: Nome de usuaria
|
||||
list:
|
||||
create_new_one: Crear nova usuaria
|
||||
no: Non
|
||||
yes: Si
|
||||
edit_action: Editar
|
||||
actions: Accións
|
||||
description: Aquí podes xestionar tódalas usuarias (crear, editar e eliminar)
|
||||
edit_user: Editar usuaria existente
|
||||
new_user: Crear unha nova usuaria
|
||||
page_title: Xestión de usuarias
|
||||
@ -271,6 +271,8 @@ config:
|
||||
two_factor_code_description_2: 'QR kod možeš skenirati pomoću tvog programa:'
|
||||
enable: Aktiviraj
|
||||
cancel: Odustani
|
||||
two_factor_code_description_5: 'Ako ne vidiš QR kod ili ako ga ne možeš skenirati, upiši sljedeću tajnu u tvoj program:'
|
||||
qrcode_label: QR kod
|
||||
page_title: Dvofaktorska autentifikacija
|
||||
form_ignore_origin_rules:
|
||||
faq:
|
||||
|
||||
@ -208,6 +208,8 @@ config:
|
||||
cancel: キャンセル
|
||||
two_factor_code_description_4: '設定したアプリのOTPコードをテストします:'
|
||||
two_factor_code_description_3: 'また、このバックアップコードを安全な場所に保管してください。OTPアプリへアクセスできなくなった場合に使用することができます。:'
|
||||
qrcode_label: QR コード
|
||||
two_factor_code_description_5: 'QRコードが表示されないか、スキャンできない場合は、次のシークレットをアプリに入力してください:'
|
||||
page_title: 二要素認証
|
||||
form_ignore_origin_rules:
|
||||
faq:
|
||||
@ -540,7 +542,7 @@ developer:
|
||||
field_uris: リダイレクト URI
|
||||
field_grant_types: 許可の種類
|
||||
no_client: まだクライアントはありません。
|
||||
field_secret: Client secret
|
||||
field_secret: クライアントシークレット
|
||||
field_id: Client ID
|
||||
remove:
|
||||
warn_message_1: クライアント %name% を削除することができます。この操作は不可逆的です !
|
||||
@ -560,13 +562,13 @@ developer:
|
||||
field_name: クライアント名
|
||||
read_howto: '"最初のアプリケーションを作成する" 方法をお読みください'
|
||||
back: 戻る
|
||||
field_secret: Client secret
|
||||
field_secret: クライアントシークレット
|
||||
field_id: Client ID
|
||||
page_title: APIクライアント管理 > クライアントのパラメーター
|
||||
howto:
|
||||
description:
|
||||
paragraph_2: あなたの第三者アプリケーションと wallabag API 間の通信にトークンが必要です。
|
||||
paragraph_4: '今から、トークンを作成します (クライアント_ID、クライアントの秘密、ユーザー名、パスワードを適切な値に置き換えてください):'
|
||||
paragraph_4: '今から、トークンを作成します (クライアント_ID、クライアントシークレット、ユーザー名、パスワードを適切な値に置き換えてください):'
|
||||
paragraph_5: 'API はこのようなレスポンスを返します:'
|
||||
paragraph_6: 'アクセストークンは API エンドポイントの呼び出しを行う際に便利です。例えば:'
|
||||
paragraph_7: この呼び出しは、ユーザーのすべての記事が返されます。
|
||||
|
||||
@ -7,7 +7,7 @@ security:
|
||||
submit: Logg inn
|
||||
forgot_password: Glemt passordet ditt?
|
||||
keep_logged_in: Hold meg innlogget
|
||||
page_title: Velkomen til wallabag.
|
||||
page_title: Velkomen til wallabag!
|
||||
register:
|
||||
page_title: Opprett en konto
|
||||
go_to_account: Gå til din konto
|
||||
@ -78,7 +78,7 @@ config:
|
||||
redirect_homepage: Til hjemmesiden
|
||||
redirect_current_page: Til nåværende side
|
||||
label: Foretagende etter fjerning, stjernemerking eller markering av artikkel som lest?
|
||||
help_reading_speed: wallabag beregner lesetid for hver artikkel. Du kan definere om du er en rask eller treg leser her. wallabag regner ut igjen lesetid for hver artikkel
|
||||
help_reading_speed: wallabag beregner lesetid for hver artikkel. Du kan definere om du er en rask eller treg leser her. wallabag regner ut igjen lesetid for hver artikkel.
|
||||
pocket_consumer_key_label: Brukernøkkel for Pocket brukt til import av innhold
|
||||
help_pocket_consumer_key: Kreves for Pocket-import. Kan opprettes i din Pocket-konto.
|
||||
help_language: Du kan endre språk for wallabag-grensesnittet.
|
||||
@ -387,7 +387,7 @@ tag:
|
||||
page_title: Etiketter
|
||||
quickstart:
|
||||
docs:
|
||||
all_docs: I tillegg til så mange andre artikler.
|
||||
all_docs: I tillegg til så mange andre artikler!
|
||||
export: Konverter dine artikler til ePUB eller PDF
|
||||
title: Full dokumentasjon
|
||||
migrate:
|
||||
@ -423,8 +423,8 @@ quickstart:
|
||||
first_steps:
|
||||
new_article: Lagre din første artikkel
|
||||
intro:
|
||||
paragraph_2: Følg oss.
|
||||
title: Velkommen til wallabag.
|
||||
paragraph_2: Følg oss!
|
||||
title: Velkommen til wallabag!
|
||||
more: Mer …
|
||||
page_title: Hurtigstart
|
||||
howto:
|
||||
|
||||
@ -19,8 +19,8 @@ config:
|
||||
help_reading_speed: wallabag berekend een leestijd voor ieder artikel. U kan hier aangeven of u een snelle of langzame lezer bent waardoor wallabag een accurate tijd kan berekenen per artikel.
|
||||
help_items_per_page: U kan de hoeveelheid getoonde artikelen per pagina aanpassen.
|
||||
help_theme: wallabag is aanpasbaar. U can uw gewenste thema hier selecteren.
|
||||
android_instruction: Tik hier om uw Android-applicatie vooraf in te vullen
|
||||
android_configuration: Configureer uw android applicatie
|
||||
android_instruction: Tik hier om uw Android-appvooraf in te vullen
|
||||
android_configuration: Configureer uw Android applicatie
|
||||
pocket_consumer_key_label: Consumer key voor Pocket om inhoud te importeren
|
||||
form:
|
||||
save: Opslaan
|
||||
@ -100,7 +100,7 @@ config:
|
||||
variables_available_description: 'De volgende variabelen en operatoren kunnen gebruikt worden om label regels te maken:'
|
||||
variables_available_title: Welke variabelen en operatoren kan ik gebruiken om regels te schrijven?
|
||||
how_to_use_them_title: Hoe gebruik is ze?
|
||||
tagging_rules_definition_title: Wat betekend « label regels »?
|
||||
tagging_rules_definition_title: Wat betekend "label regels"?
|
||||
title: FAQ
|
||||
how_to_use_them_description: 'Laten we aannemen dat u nieuwe vermeldingen wilt labelen als « <i>korte lezing</i> » wanneer de leestijd minder dan 3 minuten bedraagt.<br />In dat geval moet u « readingTime <= 3 » in het <i>Regelveld</i> en « <i>korte lezing</i> » in het <i>Labels</i> veld.<br />Meerdere labels kunnen tegelijkertijd worden toegevoegd door ze te scheiden met een komma:« <i>korte lezing, belangrijk</i> »<br />Complexe regels kunnen worden geschreven met behulp van vooraf gedefinieerde operators: if « <i>readingTime >= 5 AND domainName = "github.com"</i> » label dan als« <i>lange lezing, GitHub </i> »'
|
||||
tags_label: Labels
|
||||
@ -142,7 +142,7 @@ config:
|
||||
page_title: Twee-factor authenticatie
|
||||
form_ignore_origin_rules:
|
||||
faq:
|
||||
ignore_origin_rules_definition_title: Wat betekend « Negeer oorsprong regels »?
|
||||
ignore_origin_rules_definition_title: Wat betekent “negeer oorsprong regels”?
|
||||
operator_description:
|
||||
matches: 'Test of een <i>onderwerp</i> overeenkomt met een <i>zoekopdracht</i> (niet hoofdlettergevoelig). <br />Voorbeeld: <code>_all ~ "https?: //rss.example.com/ foobar /.* "</code>'
|
||||
equal_to: Gelijk aan…
|
||||
@ -209,6 +209,9 @@ menu:
|
||||
unread: Ongelezen
|
||||
ignore_origin_instance_rules: Globaal negeer-oorsprongsregels
|
||||
quickstart: Snelstart
|
||||
theme_toggle_auto: Thema automatisch
|
||||
theme_toggle_dark: Donker thema
|
||||
theme_toggle_light: Licht thema
|
||||
security:
|
||||
login:
|
||||
password: Wachtwoord
|
||||
@ -216,7 +219,7 @@ security:
|
||||
username: Gebruikersnaam
|
||||
register: Registreer
|
||||
page_title: Welkom bij wallabag!
|
||||
submit: Login
|
||||
submit: Aanmelden
|
||||
forgot_password: Wachtwoord vergeten?
|
||||
keep_logged_in: Houdt mij ingelogd
|
||||
register:
|
||||
@ -622,6 +625,10 @@ entry:
|
||||
set_as_read: Markeer als gelezen
|
||||
back_to_homepage: Terug
|
||||
back_to_top: Terug naar boven
|
||||
theme_toggle_auto: Automatisch
|
||||
theme_toggle_dark: Donker
|
||||
theme_toggle_light: Licht
|
||||
theme_toggle: Schakel tussen thema's
|
||||
metadata:
|
||||
added_on: Toegevoegd op
|
||||
address: Adres
|
||||
|
||||
@ -32,11 +32,17 @@ menu:
|
||||
back_to_unread: Tornar als articles pas legits
|
||||
users_management: Gestion dels utilizaires
|
||||
site_credentials: Identificants del site
|
||||
theme_toggle_auto: Tèma automatic
|
||||
theme_toggle_dark: Tèma escur
|
||||
theme_toggle_light: Tèma clar
|
||||
quickstart: Primièrs passes
|
||||
top:
|
||||
add_new_entry: Enregistrar un novèl article
|
||||
search: Cercar
|
||||
filter_entries: Filtrar los articles
|
||||
export: Exportar
|
||||
account: Mon compte
|
||||
random_entry: Anar a un article aleatòri d’aquesta lista
|
||||
search_form:
|
||||
input_label: Picatz vòstre mot-clau a cercar aquí
|
||||
footer:
|
||||
@ -55,6 +61,7 @@ config:
|
||||
password: Senhal
|
||||
rules: Règlas d'etiquetas automaticas
|
||||
new_user: Crear un compte
|
||||
feed: Flux
|
||||
form:
|
||||
save: Enregistrar
|
||||
form_settings:
|
||||
@ -127,7 +134,7 @@ config:
|
||||
faq:
|
||||
title: FAQ
|
||||
tagging_rules_definition_title: Qué significa las règlas d'etiquetas automaticas ?
|
||||
tagging_rules_definition_description: Son de règlas utilizadas per wallabad per classar automaticament vòstres novèls articles.<br />Cada còp qu'un novèl article es apondut, totas las règlas d'etiquetas automaticas seràn utilizadas per ajustar d'etiquetas qu'avètz configuradas, en vos esparnhant l'esfòrç de classificar vòstres articles manualament.
|
||||
tagging_rules_definition_description: Son de règlas utilizadas per wallabag per classar automaticament vòstres novèls articles.<br />Cada còp qu'un novèl article es apondut, totas las règlas d'etiquetas automaticas seràn utilizadas per ajustar d'etiquetas qu'avètz configuradas, en vos esparnhant l'esfòrç de classificar vòstres articles manualament.
|
||||
how_to_use_them_title: Cossí las utilizar ?
|
||||
how_to_use_them_description: Imaginem que volètz atribuir als novèls article l'etiqueta « <i>lectura corta</i> » quand lo temps per legir es inferior a 3 minutas.<br />Dins aquel cas, deuriatz metre « readingTime <= 3 » dins lo camp <i>Règla</i> e « <i>lectura corta</i> » dins lo camp <i>Etiqueta</i>.<br />Mai d'una etiquetas pòdon èsser apondudas simultanèament ne las separant amb de virgulas : « <i>lectura corta, per ligir</i> »<br />De règlas complèxas pòdon èsser creadas n'emplegant d'operators predefinits : se « <i>readingTime >= 5 AND domainName = "github.com"</i> » alara atribuir las etiquetas « <i>lectura longa, github </i> »
|
||||
variables_available_title: Quinas variablas e operators pòdi utilizar per escriure de règlas ?
|
||||
@ -156,6 +163,16 @@ config:
|
||||
and: Una règla E l'autra
|
||||
matches: Teste se un <i>subjècte</i> correspond a una <i>recèrca</i> (non sensibla a la cassa).<br />Exemple : <code>title matches \"football\"</code>
|
||||
notmatches: Teste se <i>subjècte</i> correspond pas a una <i>recèrca</i> (sensibla a la cassa).<br />Example : <code>title notmatches "football"</code>
|
||||
export: Exportar
|
||||
import_submit: Importar
|
||||
file_label: Fichièr JSON
|
||||
form_ignore_origin_rules:
|
||||
faq:
|
||||
meaning: Significacion
|
||||
how_to_use_them_title: Cossí las utilizar ?
|
||||
title: FAQ
|
||||
form_feed:
|
||||
token_label: Geton flux
|
||||
entry:
|
||||
default_title: Títol de l'article
|
||||
page_titles:
|
||||
@ -471,6 +488,7 @@ developer:
|
||||
redirect_uris_label: URLs de redireccion
|
||||
save_label: Crear un novèl client
|
||||
action_back: Retorn
|
||||
copy_to_clipboard: Copiar
|
||||
client_parameter:
|
||||
page_title: Gestion dels clients API > Los paramètres de vòstre client
|
||||
page_description: Vaquí los paramètres de vòstre client.
|
||||
@ -593,3 +611,15 @@ flashes:
|
||||
added: Identificant per "%host%" ajustat
|
||||
updated: Identificant per "%host%" mes a jorn
|
||||
deleted: Identificant per "%host%" suprimit
|
||||
ignore_origin_instance_rule:
|
||||
form:
|
||||
back_to_list: Tornar a la lista
|
||||
delete_confirm: O volètz vertadièrament ?
|
||||
delete: Suprimir
|
||||
save: Salvagardar
|
||||
rule_label: Règla
|
||||
list:
|
||||
no: Non
|
||||
yes: Òc
|
||||
edit_action: Modificar
|
||||
actions: Accions
|
||||
|
||||
@ -3,7 +3,7 @@ security:
|
||||
page_title: Witaj w wallabag!
|
||||
keep_logged_in: Zapamiętaj mnie
|
||||
forgot_password: Zapomniałeś hasła?
|
||||
submit: Loguj
|
||||
submit: Zaloguj się
|
||||
register: Zarejestruj
|
||||
username: Nazwa użytkownika
|
||||
password: Hasło
|
||||
@ -34,6 +34,9 @@ menu:
|
||||
site_credentials: Poświadczenia strony
|
||||
quickstart: Szybki start
|
||||
ignore_origin_instance_rules: Ignoruj globalne zasady pochodzenia
|
||||
theme_toggle_auto: Automatyczny motyw
|
||||
theme_toggle_dark: Ciemny motyw
|
||||
theme_toggle_light: Jasny motyw
|
||||
top:
|
||||
add_new_entry: Dodaj nowy wpis
|
||||
search: Szukaj
|
||||
@ -182,6 +185,7 @@ config:
|
||||
new_tagging_rule: Utwórz zasadę oznaczania tagami
|
||||
import_submit: Importuj
|
||||
file_label: Plik JSON
|
||||
export: Eksportuj
|
||||
form_feed:
|
||||
description: Lista artykułów Atom pozwala czytać zapisane artykuły w twoim ulubionym programie. Musisz najpierw wygenerować token Atom’a.
|
||||
feed_limit: Liczba artykułów w aktualnościach
|
||||
@ -196,6 +200,9 @@ config:
|
||||
token_create: Stwórz swój token
|
||||
no_token: Brak token’a
|
||||
token_label: Token listy
|
||||
form_ignore_origin_rules:
|
||||
faq:
|
||||
title: FAQ
|
||||
entry:
|
||||
default_title: Tytuł wpisu
|
||||
page_titles:
|
||||
@ -213,7 +220,7 @@ entry:
|
||||
reading_time_minutes: 'szacunkowy czas czytania: %readingTime% min'
|
||||
reading_time_less_one_minute: 'szacunkowy czas czytania: < 1 min'
|
||||
number_of_tags: '{1} i inny tag|]1,Inf[i %count% innych tagów'
|
||||
reading_time_minutes_short: '%czasCzytania% min'
|
||||
reading_time_minutes_short: '%readingTime% min'
|
||||
reading_time_less_one_minute_short: '< 1 min'
|
||||
original_article: oryginał
|
||||
toogle_as_read: Oznacz jako przeczytane
|
||||
@ -291,7 +298,7 @@ entry:
|
||||
delete_tag: Czy jesteś pewien, że chcesz usunąć ten tag, z tego artykułu?
|
||||
metadata:
|
||||
reading_time: Szacowany czas czytania
|
||||
reading_time_minutes_short: '%czasCzytania% min'
|
||||
reading_time_minutes_short: '%readingTime% min'
|
||||
address: Adres
|
||||
added_on: Dodano
|
||||
about:
|
||||
|
||||
@ -2,11 +2,11 @@ security:
|
||||
login:
|
||||
page_title: 'Bem vindo ao wallabag!'
|
||||
keep_logged_in: 'Mantenha-me autenticado'
|
||||
forgot_password: 'Esqueceu a senha?'
|
||||
forgot_password: 'Esqueceu a sua palavra-passe?'
|
||||
submit: 'Login'
|
||||
register: 'Registe-se'
|
||||
username: 'Nome de utilizador'
|
||||
password: 'Senha'
|
||||
password: 'Palavra-passe'
|
||||
cancel: 'Cancelar'
|
||||
resetting:
|
||||
description: 'Digite o seu endereço de e-mail abaixo e enviaremos instruções para resetar a sua palavra-passe.'
|
||||
@ -50,7 +50,7 @@ config:
|
||||
settings: 'Configurações'
|
||||
rss: 'RSS'
|
||||
user_info: 'Informação do Utilizador'
|
||||
password: 'Senha'
|
||||
password: 'Palavra-passe'
|
||||
rules: 'Regras de tags'
|
||||
new_user: 'Adicionar um utilizador'
|
||||
form:
|
||||
@ -85,9 +85,9 @@ config:
|
||||
email_label: 'E-mail'
|
||||
twoFactorAuthentication_label: 'Autenticação de dois passos'
|
||||
form_password:
|
||||
old_password_label: 'Senha atual'
|
||||
new_password_label: 'Nova senha'
|
||||
repeat_new_password_label: 'Repita a nova senha'
|
||||
old_password_label: 'Palavra-passe atual'
|
||||
new_password_label: 'Nova palavra-passe'
|
||||
repeat_new_password_label: 'Repita a nova palavra-passe'
|
||||
form_rules:
|
||||
if_label: 'if'
|
||||
then_tag_as_label: 'então coloque a tag'
|
||||
@ -417,8 +417,8 @@ user:
|
||||
form:
|
||||
username_label: 'Nome de Utilizador'
|
||||
name_label: 'Nome'
|
||||
password_label: 'Senha'
|
||||
repeat_new_password_label: 'Repita a nova senha'
|
||||
password_label: 'Palavra-passe'
|
||||
repeat_new_password_label: 'Repita a nova palavra-passe'
|
||||
plain_password_label: '????'
|
||||
email_label: 'E-mail'
|
||||
enabled_label: 'Ativado'
|
||||
|
||||
@ -34,6 +34,9 @@ menu:
|
||||
site_credentials: Site bilgileri
|
||||
quickstart: Hızlı başlangıç
|
||||
ignore_origin_instance_rules: Genel orijinal kaynağı yok say kuralları
|
||||
theme_toggle_auto: Otomatik tema
|
||||
theme_toggle_dark: Koyu renk tema
|
||||
theme_toggle_light: Açık renk tema
|
||||
top:
|
||||
add_new_entry: Yeni bir makale ekle
|
||||
search: Ara
|
||||
@ -160,7 +163,7 @@ config:
|
||||
and: Bir kural ve diğeri
|
||||
matches: '<i>konu</i>nun <i>arama</i> kriterine (büyük küçük harf duyarsız) eşleştiğini test eder.<br />Örnek: <code>title matches "futbol"</code>'
|
||||
notmatches: '<i>konu</i>nun <i>arama</i> kriterine (büyük küçük harf duyarsız) eşleşmediğini test eder.<br />Örnek: <code>title nonmatches "futbol"</code>'
|
||||
tagging_rules_definition_description: Bunlar Wallabag'in yeni makaleleri otomatik olarak etiketleyebilmesi için tanımlanmış kurallardır.<br />Her yeni makale eklendiğinde, ayarladığınız tüm etiket kuralları kullanılarak makaleniz etiketlenecektir. Bu sayede her bir makaleyi tek tek etiketlemekle uğraşmanız gerekmeyecek.
|
||||
tagging_rules_definition_description: Bunlar wallabag'in yeni makaleleri otomatik olarak etiketleyebilmesi için tanımlanmış kurallardır.<br />Her yeni makale eklendiğinde, ayarladığınız tüm etiket kuralları kullanılarak makaleniz etiketlenecektir. Bu sayede her bir makaleyi tek tek etiketlemekle uğraşmanız gerekmeyecek.
|
||||
how_to_use_them_description: 'Örneğin, 3 dakikadan kısa okuma süresi olan yeni makaleleri « <i>kısa okumalar</i>» etiketi ile etiketlemek istiyorsunuz diyelim.<br />Bu durumda, <i>Kural</i> alanına « readingTime < = 3 » değeri, ve de <i>Etiketler</i> alanına da <i>kısa okumalar</i> değerini girmelisiniz.<br /> Eğer birden fazla etiket tanımlamak istiyorsanız arasına virgül koyabilirsiniz: « <i>kısa okumalar, mutlaka oku</i> »<br />Daha kompleks kurallar önden tanımlanmış operatörlerle girilebilir: Eğer « <i> readingTime > = AND domainName = "github.com"</i> » ise, o zaman « <i>uzun okumalar, GitHub</i> » gibi girebilirsiniz'
|
||||
if_label: eğer
|
||||
then_tag_as_label: ise, şu şekilde etiketle
|
||||
@ -191,6 +194,8 @@ config:
|
||||
two_factor_code_description_4: 'Yapılandırılmış uygulamanızdan bir OTP kodunu test edin:'
|
||||
two_factor_code_description_3: 'Ayrıca, bu yedek kodları güvenli bir yere kaydedin, OTP uygulamanıza erişiminizi kaybetmeniz durumunda kullanabilirsiniz:'
|
||||
two_factor_code_description_2: 'Bu QR Kodunu uygulamanızla tarayabilirsiniz:'
|
||||
two_factor_code_description_5: 'Eğer QR Kodu göremiyor veya tarayamıyorsanız, bu kodu uygulamanıza girin:'
|
||||
qrcode_label: Kare kod
|
||||
page_title: İki aşamalı kimlik doğrulama
|
||||
form_ignore_origin_rules:
|
||||
faq:
|
||||
@ -283,6 +288,10 @@ entry:
|
||||
public_link: herkese açık bağlantı
|
||||
delete_public_link: herkese açık bağlantıyı sil
|
||||
print: Yazdır
|
||||
theme_toggle_auto: Otomatik
|
||||
theme_toggle_dark: Koyu renk
|
||||
theme_toggle_light: Açık renk
|
||||
theme_toggle: Tema değiştir
|
||||
edit_title: Başlığı düzenle
|
||||
original_article: orijinal
|
||||
created_at: Oluşturulma tarihi
|
||||
|
||||
@ -196,6 +196,8 @@ config:
|
||||
two_factor_code_description_4: '从你配置好的应用中测试 OTP 码:'
|
||||
cancel: "取消"
|
||||
enable: "启用"
|
||||
two_factor_code_description_5: 如果你看不到二维码或无法扫描它,请在你的应用程序中输入下列双因素认证代码:
|
||||
qrcode_label: 二维码
|
||||
form_rss:
|
||||
rss_limit: RSS源中的条目数
|
||||
rss_link:
|
||||
@ -574,7 +576,7 @@ developer:
|
||||
page_title: 'API 客户端管理 > 如何创建我的第一个应用程序'
|
||||
description:
|
||||
paragraph_1: '以下命令使用了 <a href="https://github.com/jkbrzt/httpie">HTTPie 库</a>。 使用前请确保你已经在系统中安装了它。'
|
||||
paragraph_2: '你需要一个 token 来在你的第三方应用程序和 wallabag API 之间通讯。'
|
||||
paragraph_2: '你需要一个 token 在你的第三方应用程序和 wallabag API 之间通讯。'
|
||||
paragraph_3: '为了创建这个 token,你需要 <a href="%link%">创建一个新的客户端</a>。'
|
||||
paragraph_4: '现在,创建你的 token(将以下 client_id,client_secret,username and password 替换为有效值):'
|
||||
paragraph_5: 'API 将会返回一个类似下面这样的 response:'
|
||||
|
||||
@ -0,0 +1 @@
|
||||
{}
|
||||
@ -0,0 +1 @@
|
||||
{}
|
||||
@ -1,5 +1,5 @@
|
||||
validator:
|
||||
password_must_match: Die Kennwort-Felder müssen übereinstimmen.
|
||||
password_must_match: Die Kennwörter müssen übereinstimmen.
|
||||
password_too_short: Ihr Passwort muss mindestens 8 Zeichen lang sein.
|
||||
password_wrong_value: Falsches aktuelles Passwort angegeben.
|
||||
item_per_page_too_high: Dies wird die Anwendung möglicherweise beenden
|
||||
|
||||
@ -0,0 +1,7 @@
|
||||
validator:
|
||||
quote_length_too_high: Η παράθεση είναι υπερβολικά μεγάλη. Πρέπει να έχει το περισσότερο {{ limit }} χαρακτήρες.
|
||||
rss_limit_too_high: Αυτό θα τερματίσει σίγουρα την εφαρμογή
|
||||
item_per_page_too_high: Αυτό θα τερματίσει σίγουρα την εφαρμογή
|
||||
password_wrong_value: Έγινε εισαγωγή λάθος κωδικού.
|
||||
password_too_short: Ο κωδικός σας πρέπει να έχει τουλάχιστον 8 χαρακτήρες.
|
||||
password_must_match: Οι κωδικοί πρέπει να ταιριάζουν.
|
||||
@ -1,5 +1,5 @@
|
||||
validator:
|
||||
password_must_match: The password fields must match.
|
||||
password_must_match: The passwords must match.
|
||||
password_too_short: Your password must by at least 8 characters.
|
||||
password_wrong_value: Wrong current password supplied.
|
||||
item_per_page_too_high: This will certainly kill the app
|
||||
|
||||
@ -0,0 +1 @@
|
||||
{}
|
||||
@ -0,0 +1,7 @@
|
||||
validator:
|
||||
quote_length_too_high: A cita é demasiado longa. Debería ter {{ limit }} caracteres ou menos.
|
||||
rss_limit_too_high: Esto certarmente estragará a app
|
||||
item_per_page_too_high: Esto certamente estragará a app
|
||||
password_wrong_value: O contrasinal escrito non é o actual.
|
||||
password_too_short: O contrasinal debe ter 8 caracteres como mínimo.
|
||||
password_must_match: Os contrasinais deben concordar.
|
||||
@ -5,3 +5,4 @@ validator:
|
||||
item_per_page_too_high: "Aquò li agradarà pas a l'aplicacion"
|
||||
feed_limit_too_high: "Aquò li agradarà pas a l'aplicacion"
|
||||
quote_length_too_high: 'Aquesta citacion es tròpa longa. Cal que faga {{ limit }} caractèrs o mens.'
|
||||
rss_limit_too_high: Aquò matarà segurament l’aplicacion
|
||||
|
||||
@ -37,7 +37,7 @@
|
||||
{{ form_widget(form.config.reading_speed) }}
|
||||
<p>
|
||||
{{ 'config.form_settings.reading_speed.help_message'|trans }}
|
||||
<a href="http://www.myreadspeed.com/calculate/">myreadspeed</a>
|
||||
<a href="https://wallabag.github.io/myreadspeed/">myreadspeed</a>
|
||||
</p>
|
||||
</div>
|
||||
<a href="#" title="{{ 'config.form_settings.help_reading_speed'|trans }}">
|
||||
@ -84,7 +84,7 @@
|
||||
<h3>{{ 'config.form_settings.android_configuration'|trans }}</h3>
|
||||
<a href="wallabag://{{ app.user.username }}@{{ wallabag_url }}">{{ 'config.form_settings.android_instruction' | trans }}</a>
|
||||
<br/>
|
||||
<img id="androidQrcode" />
|
||||
<img id="androidQrcode" alt="{{ 'config.otp.app.qrcode_label' | trans }}" />
|
||||
<script>
|
||||
document.getElementById('androidQrcode').src = jrQrcode.getQrBase64('wallabag://{{ app.user.username }}@{{ wallabag_url }}');
|
||||
</script>
|
||||
|
||||
@ -13,7 +13,7 @@
|
||||
<p>
|
||||
<img id="2faQrcode" class="hide-on-med-and-down" />
|
||||
<script>
|
||||
document.getElementById('2faQrcode').src = jrQrcode.getQrBase64('{{ qr_code }}');
|
||||
document.getElementById('2faQrcode').src = jrQrcode.getQrBase64('{{ qr_code|raw }}');
|
||||
</script>
|
||||
</p>
|
||||
</li>
|
||||
|
||||
@ -58,7 +58,7 @@
|
||||
{{ form_label(form.config.reading_speed) }}
|
||||
<p>
|
||||
{{ 'config.form_settings.reading_speed.help_message'|trans }}
|
||||
<a href="http://www.myreadspeed.com/calculate/">myreadspeed</a>
|
||||
<a href="https://wallabag.github.io/myreadspeed/">myreadspeed</a>
|
||||
</p>
|
||||
</div>
|
||||
<div class="input-field col s1">
|
||||
@ -110,7 +110,7 @@
|
||||
<div class="input-field col s12">
|
||||
<h5>{{ 'config.form_settings.android_configuration'|trans }}</h5>
|
||||
<a href="wallabag://{{ app.user.username }}@{{ wallabag_url }}" class="waves-effect waves-light btn hide-on-large-only">{{ 'config.form_settings.android_instruction' | trans }}</a>
|
||||
<img id="androidQrcode" class="hide-on-med-and-down" />
|
||||
<img id="androidQrcode" class="hide-on-med-and-down" alt="{{ 'config.otp.app.qrcode_label' | trans }}" />
|
||||
</div>
|
||||
<script>
|
||||
document.getElementById('androidQrcode').src = jrQrcode.getQrBase64('wallabag://{{ app.user.username }}@{{ wallabag_url }}');
|
||||
|
||||
@ -17,14 +17,18 @@
|
||||
<p>
|
||||
<img id="2faQrcode" class="hide-on-med-and-down" />
|
||||
<script>
|
||||
document.getElementById('2faQrcode').src = jrQrcode.getQrBase64('{{ qr_code }}');
|
||||
document.getElementById('2faQrcode').src = jrQrcode.getQrBase64('{{ qr_code|raw }}');
|
||||
</script>
|
||||
</p>
|
||||
|
||||
<p>
|
||||
{{ 'config.otp.app.two_factor_code_description_5'|trans }} <pre>{{ secret }}</pre>
|
||||
</p>
|
||||
</li>
|
||||
<li>
|
||||
<p>{{ 'config.otp.app.two_factor_code_description_3'|trans }}</p>
|
||||
|
||||
<p><strong>{{ backupCodes|join("\n")|nl2br }}</strong></p>
|
||||
<p><pre>{{ backupCodes|join("\n") }}</pre></p>
|
||||
</li>
|
||||
<li>
|
||||
<p>{{ 'config.otp.app.two_factor_code_description_4'|trans }}</p>
|
||||
|
||||
@ -3,7 +3,7 @@
|
||||
<div class="card-fullimage">
|
||||
<ul class="card-entry-labels">
|
||||
{% for tag in entry.tags | slice(0, 3) %}
|
||||
<li><a href="{{ path('tag_entries', {'slug': tag.slug}) }}">{{ tag.label }}</a></li>
|
||||
<li title="{{ tag.label }}"><a href="{{ path('tag_entries', {'slug': tag.slug}) }}">{{ tag.label }}</a></li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
<a href="{{ path('view', { 'id': entry.id }) }}">
|
||||
|
||||
@ -3,7 +3,7 @@
|
||||
<div class="card-image waves-effect waves-block waves-light">
|
||||
<ul class="card-entry-labels">
|
||||
{% for tag in entry.tags | slice(0, 3) %}
|
||||
<li><a href="{{ path('tag_entries', {'slug': tag.slug}) }}">{{ tag.label }}</a></li>
|
||||
<li title="{{ tag.label }}"><a href="{{ path('tag_entries', {'slug': tag.slug}) }}">{{ tag.label }}</a></li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
<a href="{{ path('view', { 'id': entry.id }) }}">
|
||||
@ -26,7 +26,7 @@
|
||||
|
||||
<ul class="card-entry-labels-hidden">
|
||||
{% for tag in entry.tags %}
|
||||
<li><a href="{{ path('tag_entries', {'slug': tag.slug}) }}">{{ tag.label }}</a></li>
|
||||
<li title="{{ tag.label }}"><a href="{{ path('tag_entries', {'slug': tag.slug}) }}">{{ tag.label }}</a></li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
{% if tags is iterable and tags is not empty %}
|
||||
<ul class="tags{{ listClass|default("")}}">
|
||||
{% for tag in tags %}
|
||||
<li class="chip">
|
||||
<li class="chip" title="{{ tag.label }}">
|
||||
<a href="{{ path('tag_entries', {'slug': tag.slug}) }}">{{ tag.label }}</a>
|
||||
{% if withRemove is defined and withRemove == true %}
|
||||
<a href="{{ path('remove_tag', { 'entry': entryId, 'tag': tag.id }) }}" onclick="return confirm('{{ 'entry.confirm.delete_tag'|trans|escape('js') }}')">
|
||||
|
||||
@ -158,10 +158,11 @@ class WallabagExtension extends AbstractExtension implements GlobalsInterface
|
||||
$nbDays = (int) $interval->format('%a') ?: 1;
|
||||
|
||||
// force setlocale for date translation
|
||||
setlocale(LC_TIME, strtolower($user->getConfig()->getLanguage()) . '_' . strtoupper(strtolower($user->getConfig()->getLanguage())));
|
||||
$locale = strtolower($user->getConfig()->getLanguage()) . '_' . strtoupper(strtolower($user->getConfig()->getLanguage()));
|
||||
$intlDateFormatter = new \IntlDateFormatter($locale, \IntlDateFormatter::LONG, \IntlDateFormatter::NONE);
|
||||
|
||||
return $this->translator->trans('footer.stats', [
|
||||
'%user_creation%' => strftime('%e %B %Y', $user->getCreatedAt()->getTimestamp()),
|
||||
'%user_creation%' => $intlDateFormatter->format($user->getCreatedAt()),
|
||||
'%nb_archives%' => $nbArchives,
|
||||
'%per_day%' => round($nbArchives / $nbDays, 2),
|
||||
]);
|
||||
|
||||
@ -246,7 +246,7 @@ class PocketImport extends AbstractImport
|
||||
{
|
||||
$data = json_decode((string) $response->getBody(), true);
|
||||
|
||||
if (JSON_ERROR_NONE !== json_last_error()) {
|
||||
if (\JSON_ERROR_NONE !== json_last_error()) {
|
||||
throw new \InvalidArgumentException('Unable to parse JSON data: ' . json_last_error_msg());
|
||||
}
|
||||
|
||||
|
||||
@ -12,7 +12,7 @@
|
||||
<div class="card-panel red white-text">
|
||||
{{ 'import.pocket.config_missing.description'|trans }}
|
||||
|
||||
{{ 'import.pocket.config_missing.admin_message'|trans({'%keyurls%': '<a href="' ~ path('config') ~ '">', '%keyurle%':'</a>'})|raw }}
|
||||
{{ 'import.pocket.config_missing.admin_message'|trans({'%keyurls%': '<a href="' ~ path('config') ~ '" class="white-text"><strong>', '%keyurle%':'</strong></a>'})|raw }}
|
||||
</div>
|
||||
{% endif %}
|
||||
|
||||
|
||||
@ -0,0 +1 @@
|
||||
{}
|
||||
@ -0,0 +1 @@
|
||||
{}
|
||||
@ -0,0 +1,10 @@
|
||||
auth_code:
|
||||
mailer:
|
||||
body:
|
||||
signature: Η ομάδα του wallabag
|
||||
support: 'Αν αντιμετωπίζετε κάποιο πρόβλημα, μην διστάσετε να επικοινωνήσετε μαζί μας:'
|
||||
second_para: 'Ορίστε ο κωδικός:'
|
||||
first_para: Εφόσον απαιτείται επαλήθευση διπλού παράγοντα για τη σύνδεσή σας στον λογαριασμό σας στο wallabag και συνδέεστε από νέα συσκευή, σας στέλνουμε έναν κωδικό για να επαληθεύσετε τη σύνδεσή σας.
|
||||
hello: Γεια %user%,
|
||||
subject: κωδικός επαλήθευσης wallabag
|
||||
on: ενεργοποιημένο
|
||||
@ -0,0 +1 @@
|
||||
{}
|
||||
@ -0,0 +1,10 @@
|
||||
auth_code:
|
||||
mailer:
|
||||
body:
|
||||
signature: O equipo de wallabag
|
||||
support: 'Non dubides en contactarnos se tes atopas problemas:'
|
||||
second_para: 'Aquí tes o código:'
|
||||
first_para: Como activaches o segundo factor de autenticación para a túa conta, e un novo dispositivo utilizouno, enviamosche un código para validar esta conexión.
|
||||
hello: Ola %user%,
|
||||
subject: código de autenticación de wallabag
|
||||
on: on
|
||||
@ -832,7 +832,7 @@ class EntryRestControllerTest extends WallabagApiTestCase
|
||||
|
||||
$this->client->request('GET', '/api/entries/' . $entry->getId() . '/tags');
|
||||
|
||||
$this->assertSame(json_encode($tags, JSON_HEX_QUOT), $this->client->getResponse()->getContent());
|
||||
$this->assertSame(json_encode($tags, \JSON_HEX_QUOT), $this->client->getResponse()->getContent());
|
||||
}
|
||||
|
||||
public function testPostTagsOnEntry()
|
||||
|
||||
@ -205,10 +205,10 @@ class EntryControllerTest extends WallabagCoreTestCase
|
||||
|
||||
$this->assertInstanceOf('Wallabag\CoreBundle\Entity\Entry', $content);
|
||||
$authors = $content->getPublishedBy();
|
||||
$this->assertSame('2017-04-05 19:26:13', $content->getPublishedAt()->format('Y-m-d H:i:s'));
|
||||
$this->assertSame('2017-04-05', $content->getPublishedAt()->format('Y-m-d'));
|
||||
$this->assertSame('fr', $content->getLanguage());
|
||||
$this->assertSame('Raphaël Balenieri', $authors[0]);
|
||||
$this->assertSame('Frédéric Autran', $authors[1]);
|
||||
$this->assertContains('Balenieri', $authors[0]);
|
||||
$this->assertContains('Autran', $authors[1]);
|
||||
}
|
||||
|
||||
public function testPostNewOkUrlExist()
|
||||
@ -857,7 +857,7 @@ class EntryControllerTest extends WallabagCoreTestCase
|
||||
|
||||
$crawler = $client->submit($form, $data);
|
||||
|
||||
$this->assertCount(5, $crawler->filter('li.entry'));
|
||||
$this->assertCount(4, $crawler->filter('li.entry'));
|
||||
|
||||
$data = [
|
||||
'entry_filter[createdAt][left_date]' => $today->format('Y-m-d'),
|
||||
@ -866,7 +866,7 @@ class EntryControllerTest extends WallabagCoreTestCase
|
||||
|
||||
$crawler = $client->submit($form, $data);
|
||||
|
||||
$this->assertCount(5, $crawler->filter('li.entry'));
|
||||
$this->assertCount(4, $crawler->filter('li.entry'));
|
||||
|
||||
$data = [
|
||||
'entry_filter[createdAt][left_date]' => '1970-01-01',
|
||||
@ -919,7 +919,7 @@ class EntryControllerTest extends WallabagCoreTestCase
|
||||
];
|
||||
|
||||
$crawler = $client->submit($form, $data);
|
||||
$this->assertCount(5, $crawler->filter('li.entry'));
|
||||
$this->assertCount(4, $crawler->filter('li.entry'));
|
||||
|
||||
$crawler = $client->request('GET', '/unread/list');
|
||||
$form = $crawler->filter('button[id=submit-filter]')->form();
|
||||
@ -928,7 +928,7 @@ class EntryControllerTest extends WallabagCoreTestCase
|
||||
];
|
||||
|
||||
$crawler = $client->submit($form, $data);
|
||||
$this->assertCount(5, $crawler->filter('li.entry'));
|
||||
$this->assertCount(4, $crawler->filter('li.entry'));
|
||||
|
||||
$form = $crawler->filter('button[id=submit-filter]')->form();
|
||||
$data = [
|
||||
@ -948,6 +948,7 @@ class EntryControllerTest extends WallabagCoreTestCase
|
||||
$form = $crawler->filter('button[id=submit-filter]')->form();
|
||||
$form['entry_filter[isArchived]']->tick();
|
||||
$form['entry_filter[isStarred]']->untick();
|
||||
$form['entry_filter[isUnread]']->untick();
|
||||
|
||||
$crawler = $client->submit($form);
|
||||
$this->assertCount(1, $crawler->filter('li.entry'));
|
||||
@ -960,6 +961,30 @@ class EntryControllerTest extends WallabagCoreTestCase
|
||||
$this->assertCount(1, $crawler->filter('li.entry'));
|
||||
}
|
||||
|
||||
public function testFilterPreselectedStatus()
|
||||
{
|
||||
$this->logInAs('admin');
|
||||
$client = $this->getClient();
|
||||
|
||||
$crawler = $client->request('GET', '/unread/list');
|
||||
$form = $crawler->filter('button[id=submit-filter]')->form();
|
||||
$this->assertTrue($form['entry_filter[isUnread]']->hasValue());
|
||||
$this->assertFalse($form['entry_filter[isArchived]']->hasValue());
|
||||
$this->assertFalse($form['entry_filter[isStarred]']->hasValue());
|
||||
|
||||
$crawler = $client->request('GET', '/starred/list');
|
||||
$form = $crawler->filter('button[id=submit-filter]')->form();
|
||||
$this->assertFalse($form['entry_filter[isUnread]']->hasValue());
|
||||
$this->assertFalse($form['entry_filter[isArchived]']->hasValue());
|
||||
$this->assertTrue($form['entry_filter[isStarred]']->hasValue());
|
||||
|
||||
$crawler = $client->request('GET', '/all/list');
|
||||
$form = $crawler->filter('button[id=submit-filter]')->form();
|
||||
$this->assertFalse($form['entry_filter[isUnread]']->hasValue());
|
||||
$this->assertFalse($form['entry_filter[isArchived]']->hasValue());
|
||||
$this->assertFalse($form['entry_filter[isStarred]']->hasValue());
|
||||
}
|
||||
|
||||
public function testFilterOnIsPublic()
|
||||
{
|
||||
$this->logInAs('admin');
|
||||
@ -1362,7 +1387,7 @@ class EntryControllerTest extends WallabagCoreTestCase
|
||||
{
|
||||
return [
|
||||
'ru' => [
|
||||
'https://www.pravda.ru/world/09-06-2017/1337283-qatar-0/',
|
||||
'https://www.vtimes.io/2020/12/14/ubiistvo-kotorogo-ne-bilo-a1981',
|
||||
'ru',
|
||||
],
|
||||
'fr' => [
|
||||
@ -1434,7 +1459,7 @@ class EntryControllerTest extends WallabagCoreTestCase
|
||||
*/
|
||||
public function testRestrictedArticle()
|
||||
{
|
||||
$url = 'https://www.monde-diplomatique.fr/2017/05/BONNET/57475';
|
||||
$url = 'https://www.monde-diplomatique.fr/2017/05/BONNET/57476';
|
||||
$this->logInAs('admin');
|
||||
$client = $this->getClient();
|
||||
$em = $client->getContainer()->get('doctrine.orm.entity_manager');
|
||||
@ -1476,7 +1501,7 @@ class EntryControllerTest extends WallabagCoreTestCase
|
||||
->findByUrlAndUserId($url, $this->getLoggedInUserId());
|
||||
|
||||
$this->assertInstanceOf('Wallabag\CoreBundle\Entity\Entry', $content);
|
||||
$this->assertSame('Crimes et réformes aux Philippines', $content->getTitle());
|
||||
$this->assertSame('Quand Manille manœuvre', $content->getTitle());
|
||||
|
||||
$client->getContainer()->get('craue_config')->set('restricted_access', 0);
|
||||
}
|
||||
|
||||
@ -139,6 +139,37 @@ class RuleBasedTaggerTest extends TestCase
|
||||
$this->assertCount(1, $records);
|
||||
}
|
||||
|
||||
public function testWithMixedCaseTag()
|
||||
{
|
||||
$taggingRule = $this->getTaggingRule('rule as string', ['Foo']);
|
||||
$user = $this->getUser([$taggingRule]);
|
||||
$entry = new Entry($user);
|
||||
$tag = new Tag();
|
||||
|
||||
$this->rulerz
|
||||
->expects($this->once())
|
||||
->method('satisfies')
|
||||
->with($entry, 'rule as string')
|
||||
->willReturn(true);
|
||||
|
||||
$this->tagRepository
|
||||
->expects($this->once())
|
||||
// the method `findOneByLabel` doesn't exist, EntityRepository will then call `_call` method
|
||||
// to magically call the `findOneBy` with ['label' => 'foo']
|
||||
->method('__call')
|
||||
->with('findOneByLabel', ['foo'])
|
||||
->willReturn($tag);
|
||||
|
||||
$this->tagger->tag($entry);
|
||||
|
||||
$this->assertFalse($entry->getTags()->isEmpty());
|
||||
|
||||
$tags = $entry->getTags();
|
||||
$this->assertSame($tag, $tags[0]);
|
||||
$records = $this->handler->getRecords();
|
||||
$this->assertCount(1, $records);
|
||||
}
|
||||
|
||||
public function testSameTagWithDifferentfMatchingRules()
|
||||
{
|
||||
$taggingRule = $this->getTaggingRule('bla bla', ['hey']);
|
||||
|
||||
BIN
web/img/appicon/apple-touch-icon-512.png
Normal file
BIN
web/img/appicon/apple-touch-icon-512.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 27 KiB |
@ -1,44 +1,46 @@
|
||||
{
|
||||
"name": "wallabag",
|
||||
"short_name": "wallabag",
|
||||
"name": "Save and classify articles. Read them later. Freely.",
|
||||
"description": "Save and classify articles. Read them later. Freely.",
|
||||
"start_url": ".",
|
||||
"icons": [
|
||||
{
|
||||
"src": "wallassets/themes/_global/img/appicon/apple-touch-icon-57.png",
|
||||
"src": "img/appicon/apple-touch-icon-57.png",
|
||||
"type": "image/png",
|
||||
"sizes": "57x57"
|
||||
},
|
||||
{
|
||||
"src": "wallassets/themes/_global/img/appicon/apple-touch-icon-72.png",
|
||||
"src": "img/appicon/apple-touch-icon-72.png",
|
||||
"type": "image/png",
|
||||
"sizes": "72x72"
|
||||
},
|
||||
{
|
||||
"src": "wallassets/themes/_global/img/appicon/apple-touch-icon-76.png",
|
||||
"src": "img/appicon/apple-touch-icon-76.png",
|
||||
"type": "image/png",
|
||||
"sizes": "76x76"
|
||||
},
|
||||
{
|
||||
"src": "wallassets/themes/_global/img/appicon/apple-touch-icon-114.png",
|
||||
"src": "img/appicon/apple-touch-icon-114.png",
|
||||
"type": "image/png",
|
||||
"sizes": "114x114"
|
||||
},
|
||||
{
|
||||
"src": "wallassets/themes/_global/img/appicon/apple-touch-icon-120.png",
|
||||
"src": "img/appicon/apple-touch-icon-120.png",
|
||||
"type": "image/png",
|
||||
"sizes": "120x120"
|
||||
},
|
||||
{
|
||||
"src": "wallassets/themes/_global/img/appicon/apple-touch-icon-144.png",
|
||||
"src": "img/appicon/apple-touch-icon-144.png",
|
||||
"type": "image/png",
|
||||
"sizes": "144x144"
|
||||
},
|
||||
{
|
||||
"src": "wallassets/themes/_global/img/appicon/apple-touch-icon-152.png",
|
||||
"src": "img/appicon/apple-touch-icon-152.png",
|
||||
"type": "image/png",
|
||||
"sizes": "152x152"
|
||||
},
|
||||
{
|
||||
"src": "wallassets/themes/_global/img/appicon/apple-touch-icon-512.png",
|
||||
"src": "img/appicon/apple-touch-icon-512.png",
|
||||
"type": "image/png",
|
||||
"sizes": "512x512"
|
||||
}
|
||||
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user