Compare commits

...

70 Commits

Author SHA1 Message Date
maTh 6258e6b95c
Merge branch 'edge' into better-security-headers 2024-05-16 23:13:12 +02:00
Karim 08d6328975
Add new contributor to CREDITS.md (#6468)
* Add new contributor to CREDITS.md

* Add new contributor to CREDITS.md

---------

Co-authored-by: krm_shrrftdnv <Karim.Sharafutdinov@easycomm.ru>
2024-05-16 13:08:20 +02:00
Karim f193a910dc
[i18n] Russian translation (#6467)
* added russian translation

* Fix tests

* Missing ignore

---------

Co-authored-by: krm_shrrftdnv <Karim.Sharafutdinov@easycomm.ru>
Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
2024-05-16 09:08:15 +02:00
Shane Redman 8e3bfa1a47
Docs: fix minor typo in 09_AccessControl.md (#6465) (#6466)
chose -> choose
2024-05-15 21:38:39 +02:00
András Marczinkó c54f4fe771
Improved the Hungarian translation (#6464)
* Improved the Hungarian translation

* Update conf.php
2024-05-15 21:38:21 +02:00
Alexandre Alapetite bb1a6cafb6
Changelog
+minor forgotten i18n comments
2024-05-15 09:48:09 +02:00
Alexandre Alapetite 2ed91026fc
Correct casing for GitHub (#6460) 2024-05-15 08:58:10 +02:00
Alexandre Alapetite 2d17c020b6
PHPStan 1.11 + minor update dev dependencies (#6459)
* PHPStan 1.11 + minor update dev dependencies
https://github.com/phpstan/phpstan/releases/tag/1.11.0

* Comment style
2024-05-15 08:57:58 +02:00
Alexandre Alapetite f958eaef2f
Changelog 2024-05-14 12:25:31 +02:00
Alexandre Alapetite 4f57a46075
Auto-update 5038 (#6279)
* Auto-update 5038
https://github.com/FreshRSS/FreshRSS/pull/5038

* PostgreSQL

* Draft for MySQL

* More draft MySQL

* Finalise

* A bit more robust
2024-05-13 12:44:35 +02:00
Alexandre Alapetite e0cc121c7a
Fix SQLite imports produced before FreshRSS 1.20.0 (#6450)
fix https://github.com/FreshRSS/FreshRSS/issues/6088
2024-05-12 17:10:43 +02:00
maTh 0940025980
Fix: click on feed title (#6452) 2024-05-12 17:10:20 +02:00
maTh 3b953d759b
Improved: side navigation headlines (#6445)
* frss.css

* delete border-bottom from dark, origine, pafat

* margin/padding bottom deleted

* better CSS

* Nord theme: similar padding for feed navigation bar (#6429)
2024-05-11 23:42:34 +02:00
maTh b4eca4ba03
Fixed: clickable link block (#6444)
* <span><a> => only <a>

* update frss.css

* update themes
2024-05-11 23:41:21 +02:00
Alexandre Alapetite fa731db286
Fix OPML import CURLOPT_PROXYTYPE (#6439)
fix https://github.com/FreshRSS/FreshRSS/issues/6438
2024-05-08 21:01:49 +02:00
Alexandre Alapetite ea2bcf3a5d
Fix individual OMPL feed export (#6435)
fix https://github.com/FreshRSS/FreshRSS/issues/6433
2024-05-07 23:04:17 +02:00
Alexandre Alapetite fd7157e40c
CSS selector trim (#6428)
fix https://github.com/FreshRSS/FreshRSS/pull/6426#issuecomment-2091159868
2024-05-02 20:36:08 +02:00
Alexandre Alapetite 44625eed25
Fix CSS selector encoding (#6426)
fix https://github.com/FreshRSS/FreshRSS/issues/6229
fix https://github.com/FreshRSS/FreshRSS/issues/6266#issuecomment-2090432818
2024-05-02 19:49:18 +02:00
Alexandre Alapetite 0e6f56bb4c
Fix CSS selector preview (#6423)
fix https://github.com/FreshRSS/FreshRSS/issues/6266

Co-authored-by: maTh <1645099+math-GH@users.noreply.github.com>
2024-05-02 14:13:15 +02:00
Alexandre Alapetite 617f9a7fa6
Fix user query filter display (#6421)
* Fix user query filter display
fix https://github.com/FreshRSS/FreshRSS/issues/6360

* Fix tests
2024-05-02 10:28:07 +02:00
Alexandre Alapetite cd8fc428cb
Allow manual refresh of disabled feeds (#6408)
fix https://github.com/FreshRSS/FreshRSS/issues/6407
2024-05-01 23:15:49 +02:00
dependabot[bot] c9307e4324
Bump sass from 1.75.0 to 1.76.0 (#6418)
Bumps [sass](https://github.com/sass/dart-sass) from 1.75.0 to 1.76.0.
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.75.0...1.76.0)

---
updated-dependencies:
- dependency-name: sass
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-01 21:10:18 +02:00
dependabot[bot] 5a8adf5f23
Bump @stylistic/stylelint-plugin from 2.1.1 to 2.1.2 (#6420)
Bumps [@stylistic/stylelint-plugin](https://github.com/stylelint-stylistic/stylelint-stylistic) from 2.1.1 to 2.1.2.
- [Release notes](https://github.com/stylelint-stylistic/stylelint-stylistic/releases)
- [Changelog](https://github.com/stylelint-stylistic/stylelint-stylistic/blob/main/CHANGELOG.md)
- [Commits](https://github.com/stylelint-stylistic/stylelint-stylistic/compare/v2.1.1...v2.1.2)

---
updated-dependencies:
- dependency-name: "@stylistic/stylelint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-01 21:10:02 +02:00
dependabot[bot] da9789d293
Bump markdownlint-cli from 0.39.0 to 0.40.0 (#6419)
Bumps [markdownlint-cli](https://github.com/igorshubovych/markdownlint-cli) from 0.39.0 to 0.40.0.
- [Release notes](https://github.com/igorshubovych/markdownlint-cli/releases)
- [Commits](https://github.com/igorshubovych/markdownlint-cli/compare/v0.39.0...v0.40.0)

---
updated-dependencies:
- dependency-name: markdownlint-cli
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-01 21:01:17 +02:00
dependabot[bot] 47f941101c
Bump stylelint from 16.3.1 to 16.4.0 in the stylelint group (#6416)
Bumps the stylelint group with 1 update: [stylelint](https://github.com/stylelint/stylelint).


Updates `stylelint` from 16.3.1 to 16.4.0
- [Release notes](https://github.com/stylelint/stylelint/releases)
- [Changelog](https://github.com/stylelint/stylelint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/stylelint/stylelint/compare/16.3.1...16.4.0)

---
updated-dependencies:
- dependency-name: stylelint
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: stylelint
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-01 21:00:55 +02:00
dependabot[bot] ed6e90c67e
Bump phpstan/phpstan-strict-rules from 1.5.3 to 1.5.5 (#6415)
Bumps [phpstan/phpstan-strict-rules](https://github.com/phpstan/phpstan-strict-rules) from 1.5.3 to 1.5.5.
- [Release notes](https://github.com/phpstan/phpstan-strict-rules/releases)
- [Commits](https://github.com/phpstan/phpstan-strict-rules/compare/1.5.3...1.5.5)

---
updated-dependencies:
- dependency-name: phpstan/phpstan-strict-rules
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-01 21:00:38 +02:00
dependabot[bot] eddb10bba9
Bump squizlabs/php_codesniffer from 3.9.1 to 3.9.2 (#6414)
Bumps [squizlabs/php_codesniffer](https://github.com/PHPCSStandards/PHP_CodeSniffer) from 3.9.1 to 3.9.2.
- [Release notes](https://github.com/PHPCSStandards/PHP_CodeSniffer/releases)
- [Changelog](https://github.com/PHPCSStandards/PHP_CodeSniffer/blob/master/CHANGELOG.md)
- [Commits](https://github.com/PHPCSStandards/PHP_CodeSniffer/compare/3.9.1...3.9.2)

---
updated-dependencies:
- dependency-name: squizlabs/php_codesniffer
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-01 21:00:21 +02:00
dependabot[bot] a580d4e4b2
Bump phpstan/phpstan from 1.10.66 to 1.10.67 (#6413)
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 1.10.66 to 1.10.67.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Changelog](https://github.com/phpstan/phpstan/blob/1.11.x/CHANGELOG.md)
- [Commits](https://github.com/phpstan/phpstan/compare/1.10.66...1.10.67)

---
updated-dependencies:
- dependency-name: phpstan/phpstan
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-01 21:00:04 +02:00
Alexandre Alapetite ffe68dcb97
Docker: Traefik 3.0 (#6401)
https://github.com/traefik/traefik/releases/tag/v3.0.0
https://doc.traefik.io/traefik/v3.0/migration/v2-to-v3/
2024-05-01 14:01:58 +02:00
maTh cd66ca54ca
Docs: hidden configs (#6402)
* Create 17_configs_not_ui.md

* reorganize admin overview page. Added the link to the new doc

* Update 17_configs_not_ui.md

* Update 17_configs_not_ui.md

* Update 17_configs_not_ui.md

* fix typo
2024-05-01 14:01:40 +02:00
maTh 40ac02544e
Remove test string aside_feed.phtml (#6403) 2024-04-30 19:03:08 +02:00
maTh d4ac7ea26b
Delete date opacity while hovering (#6390)
* opacity 0.3 -> 0.5

* delete opacity while hovering
2024-04-30 09:44:47 +02:00
Alexandre Alapetite 329fd4bcf6
CLI database backup and restore (#6387)
* CLI database backup and restore
Can also be used to migrate from one database to another (e.g. MySQL to PostgreSQL) or to ease upgrade to a major PostgreSQL version (e.g. 15 to 16).

* +x

* Fix some cases

* Update to docker-compose-v2

* More documentation
2024-04-30 08:31:13 +02:00
Alexandre Alapetite 173555795a
ZIP tempnam (#6392)
fix https://github.com/FreshRSS/FreshRSS/issues/6388
2024-04-27 22:44:33 +02:00
Alexandre Alapetite 5ca0b893b9
Fix updated entry filters (#6334)
fix https://github.com/FreshRSS/FreshRSS/issues/6331
2024-04-26 13:29:37 +02:00
maTh d656896a95
Fix date issue in mobile view (#6385)
* font-size: 0.7rem; in frss.css

* fix date issue in mobile view

* better CSS for date in header and footer

* RTL

* padding in mobile view
2024-04-26 13:11:38 +02:00
maTh c47b785235
Fix: left side border of search bar input (#6376) 2024-04-25 08:48:04 +02:00
maTh aac3b21a8b
Fix: overflow expanding title in entry header (#6373)
* change HTML structure

* CSS
2024-04-25 08:45:59 +02:00
FromTheMoon 7b92266855
Update Hungarian translation (#6377) 2024-04-25 08:41:30 +02:00
maTh 154a36700c
Refactoring: Rename dotpath into dotnotation (#6369)
* KIND_JSON_DOTPATH -> KIND_JSON_DOTNOTATION

* TYPE_JSON_DOTPATH => TYPE_JSON_DOTNOTATION

* json_dotpath => json_dotnotation

* dotPathsForStandardJsonFeed => dotNotationForStandardJsonFeed

* TYPE_JSON_DOTNOTATION = 'JSON+DotPath' => 'JSON+DotNotation'

* documentation: OPML.md

* convertJsonToRss()

* $dotpaths => $dotnotations

* FreshRSS_Feed_Exception

* comment

* Compatibility TYPE_JSON_DOTPATH

---------

Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
2024-04-25 08:28:42 +02:00
Alexandre Alapetite 5e66adcc51
Remove noise parameters in query URL (#6371)
* Remove noise parameters in query URL
Remove undeeded `name` and `rid` parameters from saved user query

* Fix logic
2024-04-23 10:59:09 +02:00
Alexandre Alapetite 90fbb524ce
Windows: release SQLite (#6285)
* Windows: release SQLite
fix https://github.com/FreshRSS/FreshRSS/issues/6275

* Do not use sharedPdo for deleting user

* Case of same user

* Help PHPStan
2024-04-21 16:25:37 +02:00
Tibor Repček b37404cce7
Slovakian (SK) gen.php (#6366)
* Update gen.php

Related to the issue #6356

* Update app/i18n/sk/gen.php

---------

Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
2024-04-21 00:50:10 +02:00
maTh f0d9134478
Json dotpath i18n (#6368)
* Update update.phtml

* Update add.phtml
2024-04-21 00:46:32 +02:00
Tibor Repček a51fb891b5
Slovakian (SK) index.php (#6367)
Related to the issue #6356
2024-04-21 00:45:16 +02:00
Tibor Repček c0fdefcfeb
Slovakian (SK) feedback.php (#6365)
Related to the issue #6356
2024-04-21 00:44:52 +02:00
Tibor Repček 048b36a11b
Slovakian (SK) conf.php (#6364)
Related to the issue #6356
2024-04-21 00:44:15 +02:00
Tibor Repček bbb9834f92
Slovakian (SK) admin.php (#6363)
Related to the issue #6356
2024-04-21 00:43:50 +02:00
Tibor Repček b1c3022a91
Slovakian (SK) sub.php (#6362)
Related to the issue #6356
2024-04-21 00:43:25 +02:00
-Shiken- 339fcfda10
update zh-tw translation for new strings (#6350)
* Update new stings of zhTW translation

 Update new strings of [i18n] Translation Chinese Taiwan (正體中文 zh-tw)

* Update conf.php of zh-tw

* Update feedback.php of zh-tw

* Update gen.php of zh-TW

* Update index.php of zh-TW

* Update install.php of zh-TW

* Update sub.php of zh-tw

not finished yet

* Update sub.php

correction line 152

---------

Co-authored-by: maTh <1645099+math-GH@users.noreply.github.com>
2024-04-21 00:42:03 +02:00
Bartosz Taudul b4d7649504
Update Polish translation. (#6358) 2024-04-21 00:41:30 +02:00
May 2f74ebafa8
[i18n] Added Czech translation (#6344)
* Add Czech tranlation for admin

* Add more translations

* add translations for sub.php

* 2nd check and remove TODO comment from translated strings

* fix

* Update sub.php

* update sub.php

---------

Co-authored-by: maTh <1645099+math-GH@users.noreply.github.com>
2024-04-21 00:40:56 +02:00
yzqzss 5c33e5191a
i18n: update zh-cn translation (#6336)
* i18n: update zh-cn translation

* minor edit

* fix translations syntax

* fix translations syntax: use tab

* better translation

* clarify how Content-Type header auto-set works

* fix a mistranslation discovered by comparing #6335

Co-authored-by: <nanhualyq@gmail.com>

---------

Co-authored-by: maTh <1645099+math-GH@users.noreply.github.com>
2024-04-20 00:03:57 +02:00
maTh 81f6bbf64e
Improve: input width in user query config slider (#6357) 2024-04-20 00:01:34 +02:00
Pedro Paulo 68744f0106
Add new contributor to CREDITS.md (#6354)
* Add new contributor to CREDITS.md

* Update CREDITS.md
2024-04-20 00:00:22 +02:00
FabioL 1308dd6b82
Update of italian translation (#6329)
* Updated italian translations

* Minor fixes

* Workaround bug with `array (`

* Added credits for translations

* Alphabetic order

* Revert lost line

* Update of italian translation

* Unicode ’

* Update app/i18n/it/sub.php

Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>

---------

Co-authored-by: loviuz <loviuz@mailbox.org>
Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
2024-04-19 23:58:57 +02:00
Cilga Iscan Tercanli f6f7764ba7
Update TR translation #6325 (#6328)
* Update TR translation

* Fix typo

* fix conf.php

* fix sub.php

* Update sub.php

* Update feedback.php

* Update app/i18n/tr/admin.php

---------

Co-authored-by: math-gh <1645099+math-GH@users.noreply.github.com>
Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
2024-04-19 13:57:57 +02:00
Pedro Paulo dcd3b80a90
Update PT-BR translation (#6345)
* trans: update pt-br translation

* Apply suggestions from code review

* Update app/i18n/pt-br/sub.php
2024-04-19 12:54:31 +02:00
Frans de Jonge a5f87e0671
[i18n] Update Dutch translation for 1.24 (#6343)
Closes #6341.
2024-04-19 12:53:48 +02:00
Sungjoon Moon e1834f61a6
i18n: Update Korean translation (#6342) 2024-04-19 12:52:59 +02:00
zu 7ccbdef935
Update of Japanese translation (#6337)
* Japanese translation of admin.php

* Japanese translation of other files

* Correction by suggestion
2024-04-19 12:52:03 +02:00
zu bc7c680438
[zukizukizuki]Add CREDITS.md (#6339) 2024-04-19 12:51:40 +02:00
maTh 5a14ff3135
i18n: de (#6313)
* Update admin.php

* Update conf.php

* Update conf.php

* Update feedback.php

* Update index.php

* Update conf.php

* Update sub.php

* Update sub.php

* Update sub.php
2024-04-19 12:44:01 +02:00
maTh 3261b7bafb
i18n improved: dotted path -> dot-notation (#6317)
* dotted path -> dot-notation

* dot-notation -> dot notation

* rename json_dotpath => json_dotnotation

* Update app/i18n/fr/sub.php

Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>

* Update app/i18n/fr/sub.php

Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>

* Update app/i18n/fr/sub.php

Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>

* Update app/i18n/nl/sub.php

Co-authored-by: Frans de Jonge <fransdejonge@gmail.com>

* Update app/i18n/nl/sub.php

Co-authored-by: Frans de Jonge <fransdejonge@gmail.com>

* Update app/i18n/nl/sub.php

Co-authored-by: Frans de Jonge <fransdejonge@gmail.com>

* Update app/i18n/nl/sub.php

Co-authored-by: Frans de Jonge <fransdejonge@gmail.com>

* Rename corresponding class

---------

Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
Co-authored-by: Frans de Jonge <fransdejonge@gmail.com>
2024-04-18 14:00:17 +02:00
maTh 0ffcf41f93
Fix: API mangement section in profile page (#6314) 2024-04-17 08:28:20 +02:00
maTh 22172fd5bc
Download feed configs as opml: button (#6312)
* button in feed configs

* i18n

* naming download file: added .opml

* .opml.xml

* i18n fr

* Fix i18n en-GB

---------

Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
2024-04-16 15:52:59 +02:00
maTh bf68205ae3
Improved: Reading view: author (#6289)
* move the margin from themes to frss.css + delete font-size

* same source code as normal view for author information
2024-04-15 23:14:34 +02:00
Alexandre Alapetite b22d9279bd
Update @stylistic/stylelint-plugin (#6307)
fix https://github.com/FreshRSS/FreshRSS/issues/6281
2024-04-15 15:50:00 +02:00
maTh 6901ff1e70
improved: Gap between header and first image (#6299) 2024-04-14 23:49:26 +02:00
maTh 2846fdba6f
Fix Clipboard sharing (#6301) 2024-04-14 23:48:13 +02:00
213 changed files with 2845 additions and 2583 deletions

View File

@ -3,7 +3,7 @@
"plugins": [
"stylelint-order",
"stylelint-scss",
"stylelint-stylistic"
"@stylistic/stylelint-plugin"
],
"rules": {
"at-rule-empty-line-before": [
@ -11,27 +11,27 @@
"ignoreAtRules": [ "after-comment", "else" ]
}
],
"stylistic/at-rule-name-space-after": [
"@stylistic/at-rule-name-space-after": [
"always", {
"ignoreAtRules": [ "after-comment" ]
}
],
"stylistic/block-closing-brace-newline-after": [
"@stylistic/block-closing-brace-newline-after": [
"always", {
"ignoreAtRules": [ "if", "else" ]
}
],
"stylistic/block-closing-brace-newline-before": "always-multi-line",
"stylistic/block-opening-brace-newline-after": "always-multi-line",
"stylistic/block-opening-brace-space-before": "always",
"stylistic/color-hex-case": "lower",
"@stylistic/block-closing-brace-newline-before": "always-multi-line",
"@stylistic/block-opening-brace-newline-after": "always-multi-line",
"@stylistic/block-opening-brace-space-before": "always",
"@stylistic/color-hex-case": "lower",
"color-hex-length": "short",
"color-no-invalid-hex": true,
"stylistic/declaration-colon-space-after": "always",
"stylistic/declaration-colon-space-before": "never",
"stylistic/indentation": "tab",
"@stylistic/declaration-colon-space-after": "always",
"@stylistic/declaration-colon-space-before": "never",
"@stylistic/indentation": "tab",
"no-descending-specificity": null,
"stylistic/no-eol-whitespace": true,
"@stylistic/no-eol-whitespace": true,
"property-no-vendor-prefix": true,
"rule-empty-line-before": [
"always", {

View File

@ -1,6 +1,106 @@
# FreshRSS changelog
## 2024-XX-XX FreshRSS 1.23.2-dev
## 2024-05-XX FreshRSS 1.23.2-dev
* Features
* New *shareable user query* mechanism to share list of articles by HTML, RSS, OPML [#6052](https://github.com/FreshRSS/FreshRSS/pull/6052)
* Deprecates RSS sharing with master token
* New JSON scraping mode to consume JSON data [#5662](https://github.com/FreshRSS/FreshRSS/pull/5662), [#6317](https://github.com/FreshRSS/FreshRSS/pull/6317), [#6369](https://github.com/FreshRSS/FreshRSS/pull/6369)
* New support for JSON Feeds [#5662](https://github.com/FreshRSS/FreshRSS/pull/5662)
* New support for HTTP POST [#5662](https://github.com/FreshRSS/FreshRSS/pull/5662)
* New options to automatically add labels to incoming articles [#5954](https://github.com/FreshRSS/FreshRSS/pull/5954)
* New button to download a feed configuration as OPML [#6312](https://github.com/FreshRSS/FreshRSS/pull/6312)
* Web scraping support more encodings such as EUC-JP [#6112](https://github.com/FreshRSS/FreshRSS/pull/6112)
* Web scraping support password-protected queries (refactor some cURL options and use `CURLOPT_USERPWD`) [#6177](https://github.com/FreshRSS/FreshRSS/pull/6177)
* Web scraping HTTP GET allow UTF-8 even when charset is far from top [#6271](https://github.com/FreshRSS/FreshRSS/pull/6271)
* Allow manual refresh of disabled feeds [#6408](https://github.com/FreshRSS/FreshRSS/pull/6408)
* Allow multiple authors on enclosures [#6272](https://github.com/FreshRSS/FreshRSS/pull/6272)
* New system option in `data/config.php` for number of feeds to refresh in parallel from UI [#6124](https://github.com/FreshRSS/FreshRSS/pull/6124)
* CLI
* New CLI for [database backup & restore](https://freshrss.github.io/FreshRSS/en/admins/05_Backup.html#creating-a-database-backup) [#6387](https://github.com/FreshRSS/FreshRSS/pull/6387)
* Can also be used to [migrate from one database to another](https://freshrss.github.io/FreshRSS/en/admins/05_Backup.html#migrate-database), or to upgrade SQLite schema
* `./cli/db-backup.php ; ./cli/db-restore.php`
* Improve CLI parameters [#6028](https://github.com/FreshRSS/FreshRSS/pull/6028), [#6036](https://github.com/FreshRSS/FreshRSS/pull/6036),
[#6099](https://github.com/FreshRSS/FreshRSS/pull/6099), [#6214](https://github.com/FreshRSS/FreshRSS/pull/6214)
* Fix i18n `cli/manipulate.translation.php` ignore behaviour [#6041](https://github.com/FreshRSS/FreshRSS/pull/6041)
* API
* New compatible app [Read You](https://github.com/Ashinch/ReadYou) [#4633](https://github.com/FreshRSS/FreshRSS/pull/4633), [#6050](https://github.com/FreshRSS/FreshRSS/pull/6050)
* Reduce API memory consumption [#6137](https://github.com/FreshRSS/FreshRSS/pull/6137)
* Allow negative feed IDs for future special cases [#6010](https://github.com/FreshRSS/FreshRSS/pull/6010)
* Only return `OK` for requests without query parameters [#6238](https://github.com/FreshRSS/FreshRSS/pull/6238)
* Bug fixing
* Better account for some edge cases for cron and automatic labels during feed refresh [#6117](https://github.com/FreshRSS/FreshRSS/pull/6117)
* Better support for thumbnails in RSS feeds [#5972](https://github.com/FreshRSS/FreshRSS/pull/5972)
* Auto-update PostgreSQL or MariaDB / MySQL databases for column details changes since FreshRSS 1.21.0 [#6279](https://github.com/FreshRSS/FreshRSS/pull/6279)
* For SQLite, DB update require running `./cli/db-backup.php ; ./cli/db-restore.php --force-overwrite`
* Fix SQLite import of exports produced before FreshRSS 1.20.0 [#6450](https://github.com/FreshRSS/FreshRSS/pull/6450)
* Fix SQLite release handle to fix deleting users on Microsoft Windows [#6285](https://github.com/FreshRSS/FreshRSS/pull/6285)
* Fix to allow admins to create user even when there are Terms Of Service [#6269](https://github.com/FreshRSS/FreshRSS/pull/6269)
* Fix updating the *uncategorized* category deletes the title [#6073](https://github.com/FreshRSS/FreshRSS/pull/6073)
* Fix disable master authentication token [#6185](https://github.com/FreshRSS/FreshRSS/pull/6185)
* Fix CSS selector preview [#6423](https://github.com/FreshRSS/FreshRSS/pull/6423)
* Fix CSS selector encoding [#6426](https://github.com/FreshRSS/FreshRSS/pull/6426)
* Fix export of CSS selector in OPML of individual feeds [#6435](https://github.com/FreshRSS/FreshRSS/pull/6435)
* Fix OPML import of `CURLOPT_PROXYTYPE` [#6439](https://github.com/FreshRSS/FreshRSS/pull/6439)
* Fix favicon with protocol-relative URLs have duplicate slashes [#6068](https://github.com/FreshRSS/FreshRSS/pull/6068)
* Fix feed TTL+muted logic [#6115](https://github.com/FreshRSS/FreshRSS/pull/6115)
* Fix apply *mark as read* to updated articles too [#6334](https://github.com/FreshRSS/FreshRSS/pull/6334)
* Fix ZIP export on systems with custom temp folder [#6392](https://github.com/FreshRSS/FreshRSS/pull/6392)
* Fix number of posts per page during paging [#6268](https://github.com/FreshRSS/FreshRSS/pull/6268)
* Fix clipboard sharing UI [#6301](https://github.com/FreshRSS/FreshRSS/pull/6301)
* Fix shortcut for clipboard sharing [#6277](https://github.com/FreshRSS/FreshRSS/pull/6277)
* Fix user-query filter display [#6421](https://github.com/FreshRSS/FreshRSS/pull/6421)
* SimplePie
* Fix absolutize URL for several cases [#6270](https://github.com/FreshRSS/FreshRSS/pull/6270), [simplepie/#861](https://github.com/simplepie/simplepie/pull/861)
* Security
* Replace `iframe` `allow` attribute [#6274](https://github.com/FreshRSS/FreshRSS/pull/6274)
* Deployment
* Disable unused PHP modules in our Debian-based Docker image [#5994](https://github.com/FreshRSS/FreshRSS/pull/5994)
* UI
* No warning for muted feeds [#6114](https://github.com/FreshRSS/FreshRSS/pull/6114)
* Various UI and style improvements [#6055](https://github.com/FreshRSS/FreshRSS/pull/6055), [#6074](https://github.com/FreshRSS/FreshRSS/pull/6074),
[#6241](https://github.com/FreshRSS/FreshRSS/pull/6241), [#6242](https://github.com/FreshRSS/FreshRSS/pull/6242), [#6289](https://github.com/FreshRSS/FreshRSS/pull/6289),
[#6299](https://github.com/FreshRSS/FreshRSS/pull/6299), [#6314](https://github.com/FreshRSS/FreshRSS/pull/6314), [#6357](https://github.com/FreshRSS/FreshRSS/pull/6357),
[#6373](https://github.com/FreshRSS/FreshRSS/pull/6373), [#6376](https://github.com/FreshRSS/FreshRSS/pull/6376), [#6385](https://github.com/FreshRSS/FreshRSS/pull/6385),
[#6390](https://github.com/FreshRSS/FreshRSS/pull/6390), [#6444](https://github.com/FreshRSS/FreshRSS/pull/6444), [#6445](https://github.com/FreshRSS/FreshRSS/pull/6445)
* Improve theme *Origine compact* [#6197](https://github.com/FreshRSS/FreshRSS/pull/6197)
* i18n
* Improve Brazilian Portuguese [#6067](https://github.com/FreshRSS/FreshRSS/pull/6067)
* Improve Czech [#6344](https://github.com/FreshRSS/FreshRSS/pull/6344)
* Improve Dutch [#6343](https://github.com/FreshRSS/FreshRSS/pull/6343)
* Improve German [#6313](https://github.com/FreshRSS/FreshRSS/pull/6313)
* Improve Hungarian [#6005](https://github.com/FreshRSS/FreshRSS/pull/6005), [#6377](https://github.com/FreshRSS/FreshRSS/pull/6377)
* Improve Italian [#6018](https://github.com/FreshRSS/FreshRSS/pull/6018), [#6060](https://github.com/FreshRSS/FreshRSS/pull/6060), [#6329](https://github.com/FreshRSS/FreshRSS/pull/6329)
* Improve Japanese [#6108](https://github.com/FreshRSS/FreshRSS/pull/6108), [#6294](https://github.com/FreshRSS/FreshRSS/pull/6294)
* Improve Korean [#6342](https://github.com/FreshRSS/FreshRSS/pull/6342)
* Improve Polish [#6358](https://github.com/FreshRSS/FreshRSS/pull/6358)
* Improve Portuguese [#6345](https://github.com/FreshRSS/FreshRSS/pull/6345)
* Improve Simplified Chinese [#6336](https://github.com/FreshRSS/FreshRSS/pull/6336)
* Improve Slovakian [#6356](https://github.com/FreshRSS/FreshRSS/issues/6356)
* Improve Traditional Chinese [#6350](https://github.com/FreshRSS/FreshRSS/pull/6350)
* Improve Turkish [#6328](https://github.com/FreshRSS/FreshRSS/pull/6328)
* Misc. [#6460](https://github.com/FreshRSS/FreshRSS/pull/6460)
* Extensions
* Sanitize parsing list of extensions names and version number [#6016](https://github.com/FreshRSS/FreshRSS/pull/6016),
[#6155](https://github.com/FreshRSS/FreshRSS/pull/6155), [Extensions#214](https://github.com/FreshRSS/Extensions/pull/214), [#6186](https://github.com/FreshRSS/FreshRSS/pull/6186)
* Apply filter actions such as *mark as read* after the *entry_before_insert* hook for extensions [#6091](https://github.com/FreshRSS/FreshRSS/pull/6091)
* New developer command to test all third-party extensions [Extensions#228](https://github.com/FreshRSS/Extensions/pull/228), [#6273](https://github.com/FreshRSS/FreshRSS/pull/6273)
* `composer run-script phpstan-third-party`
* New function `Minz_Extension::amendCsp()` for extensions to modify HTTP headers for Content Security Policy [#6246](https://github.com/FreshRSS/FreshRSS/pull/6246)
* New property `FreshRSS_Entry::isUpdated()` for extensions to know whether an entry is new or updated [#6334](https://github.com/FreshRSS/FreshRSS/pull/6334)
* Compatibility
* Restore PHP 7.4 compatibility for automated tests [#6038](https://github.com/FreshRSS/FreshRSS/pull/6038), [#6039](https://github.com/FreshRSS/FreshRSS/pull/6039)
* Fix PHP 8.2+ compatibility for e-mails [#6130](https://github.com/FreshRSS/FreshRSS/pull/6130)
* Use PHP 8.3+ `#[\Override]` [#6273](https://github.com/FreshRSS/FreshRSS/pull/6273)
* Misc.
* Improve PHPStan [#6037](https://github.com/FreshRSS/FreshRSS/pull/6037), [#6459](https://github.com/FreshRSS/FreshRSS/pull/6459)
* Update *PHPMailer* [#6022](https://github.com/FreshRSS/FreshRSS/pull/6022)
* Remove noisy `name` parameters in user-query URL [#6371](https://github.com/FreshRSS/FreshRSS/pull/6371)
* Code improvements [#6046](https://github.com/FreshRSS/FreshRSS/pull/6046), [#6075](https://github.com/FreshRSS/FreshRSS/pull/6075),
[#6132](https://github.com/FreshRSS/FreshRSS/pull/6132)
* Add Dependabot for GitHub Actions [#6164](https://github.com/FreshRSS/FreshRSS/pull/6164)
* Allow <kbd>Ctrl</kbd>+<kbd>C</kbd> for `make start` [#6239](https://github.com/FreshRSS/FreshRSS/pull/6239)
* Update dev dependencies [#6023](https://github.com/FreshRSS/FreshRSS/pull/6023), [#6265](https://github.com/FreshRSS/FreshRSS/pull/6265)
## 2023-12-30 FreshRSS 1.23.1
@ -15,7 +115,7 @@
* Deployment
* Exclude more folders with `.dockerignore` [#5996](https://github.com/FreshRSS/FreshRSS/pull/5996)
* i18n
* Improve simplified Chinese [#5977](https://github.com/FreshRSS/FreshRSS/pull/5977)
* Improve Simplified Chinese [#5977](https://github.com/FreshRSS/FreshRSS/pull/5977)
* Improve Hungarian [#6000](https://github.com/FreshRSS/FreshRSS/pull/6000)
@ -324,10 +424,10 @@
* i18n
* Improve Chinese [#4853](https://github.com/FreshRSS/FreshRSS/pull/4853), [#4856](https://github.com/FreshRSS/FreshRSS/pull/4856)
* SimplePie
* No URL Decode for enclosure links [#768](https://github.com/simplepie/simplepie/pull/768)
* Fix case of multiple RSS2.0 enclosures [#769](https://github.com/simplepie/simplepie/pull/769)
* Sanitize thumbnail URL [#770](https://github.com/simplepie/simplepie/pull/770)
* Use single constant for default HTTP Accept header [#784](https://github.com/simplepie/simplepie/pull/784)
* No URL Decode for enclosure links [simplepie#768](https://github.com/simplepie/simplepie/pull/768)
* Fix case of multiple RSS2.0 enclosures [simplepie#769](https://github.com/simplepie/simplepie/pull/769)
* Sanitize thumbnail URL [simplepie#770](https://github.com/simplepie/simplepie/pull/770)
* Use single constant for default HTTP Accept header [simplepie#784](https://github.com/simplepie/simplepie/pull/784)
* Misc.
* Increase max feed URL length and drop unicity in database [#5038](https://github.com/FreshRSS/FreshRSS/pull/5038)
* New support of [Development Containers](https://containers.dev) / [GitHub Codespaces](https://github.com/features/codespaces) to ease development [#4859](https://github.com/FreshRSS/FreshRSS/pull/4859)

View File

@ -112,6 +112,7 @@ People are sorted by name so please keep this order.
* [Julien-Pierre Avérous](https://github.com/javerous): [contributions](https://github.com/FreshRSS/FreshRSS/pulls?q=is:pr+author:javerous), [Web](https://www.sourcemac.com/)
* [Justin Tracey](https://github.com/jtracey): [contributions](https://github.com/FreshRSS/FreshRSS/pulls?q=is:pr+author:jtracey), [Web](https://unsuspicious.click)
* [Kaibin Yang](https://github.com/SkyYkb): [contributions](https://github.com/FreshRSS/FreshRSS/pulls?q=is:pr+author:SkyYkb), [Web](https://kaibinyang.com/)
* [Karim Sharafutdinov](https://github.com/krm-shrftdnv): [contributions](https://github.com/FreshRSS/FreshRSS/pulls?q=is:pr+author:krm-shrftdnv)
* [Kasimir Cash](https://github.com/KasimirCash): [contributions](https://github.com/FreshRSS/FreshRSS/pulls?q=is:pr+author:KasimirCash)
* [Kevin Papst](https://github.com/kevinpapst): [contributions](https://github.com/FreshRSS/FreshRSS/pulls?q=is:pr+author:kevinpapst), [Web](http://www.kevinpapst.de/)
* [Kiblyn11](https://github.com/Kiblyn11): [contributions](https://github.com/FreshRSS/FreshRSS/pulls?q=is:pr+author:Kiblyn11)
@ -178,6 +179,7 @@ People are sorted by name so please keep this order.
* [Patrick Crandol](https://github.com/pattems): [contributions](https://github.com/FreshRSS/FreshRSS/pulls?q=is:pr+author:pattems)
* [Paulius Šukys](https://github.com/psukys): [contributions](https://github.com/FreshRSS/FreshRSS/pulls?q=is:pr+author:psukys), [Web](http://sukys.eu)
* [Paweł Kalemba](https://github.com/pkalemba): [contributions](https://github.com/FreshRSS/FreshRSS/pulls?q=is:pr+author:pkalemba)
* [PedroPMS](https://github.com/PedroPMS): [contributions](https://github.com/FreshRSS/FreshRSS/pulls?q=is:pr+author:PedroPMS)
* [perrinjerome](https://github.com/perrinjerome): [contributions](https://github.com/FreshRSS/FreshRSS/pulls?q=is:pr+author:perrinjerome)
* [Peter Stoinov](https://github.com/stoinov): [contributions](https://github.com/FreshRSS/FreshRSS/pulls?q=is:pr+author:stoinov), [Web](https://stoinov.com)
* [Petra Lamborn](https://github.com/petraoleum): [contributions](https://github.com/FreshRSS/FreshRSS/pulls?q=is:pr+author:petraoleum), [Web](https://petras.space)
@ -247,3 +249,4 @@ People are sorted by name so please keep this order.
* [yzqzss|一座桥在水上](https://github.com/yzqzss): [contributions](https://github.com/FreshRSS/FreshRSS/pulls?q=is:pr+author:yzqzss), [Web](https://blog.othing.xyz/)
* [Zhaofeng Li](https://github.com/zhaofengli): [contributions](https://github.com/FreshRSS/FreshRSS/pulls?q=is:pr+author:zhaofengli), [Web](https://zhaofeng.li/)
* [Zhiyuan Zheng](https://github.com/zhzy0077): [contributions](https://github.com/FreshRSS/FreshRSS/pulls?q=is:pr+author:zhzy0077)
* [zukizukizuki](https://github.com/zukizukizuki): [contributions](https://github.com/FreshRSS/FreshRSS/pulls?q=is:pr+author:zukizukizuki), [Web](https://zukkie.link/)

View File

@ -21,7 +21,7 @@ Example for Linux Debian / Ubuntu:
```sh
# Install default Docker Compose and automatically the corresponding version of Docker
apt install docker-compose
apt install docker-compose-v2
```
## Quick run
@ -194,6 +194,8 @@ docker run -d --restart unless-stopped --log-opt max-size=10m \
In the FreshRSS setup, you will then specify the name of the container (`freshrss-db`) as the host for the database.
See also the section [Docker Compose with PostgreSQL](#docker-compose-with-postgresql) below.
### [MySQL](https://hub.docker.com/_/mysql/) or [MariaDB](https://hub.docker.com/_/mariadb)
```sh
@ -285,13 +287,13 @@ See [`docker-compose.yml`](./freshrss/docker-compose.yml)
```sh
cd ./FreshRSS/Docker/freshrss/
# Update
docker-compose pull
docker compose pull
# Run
docker-compose -f docker-compose.yml -f docker-compose-local.yml up -d --remove-orphans
docker compose -f docker-compose.yml -f docker-compose-local.yml up -d --remove-orphans
# Logs
docker-compose logs -f --timestamps
docker compose logs -f --timestamps
# Stop
docker-compose down --remove-orphans
docker compose down --remove-orphans
```
Detailed (partial) example of Docker Compose for FreshRSS:
@ -378,13 +380,15 @@ See [`docker-compose-db.yml`](./freshrss/docker-compose-db.yml)
```sh
cd ./FreshRSS/Docker/freshrss/
# Update
docker-compose -f docker-compose.yml -f docker-compose-db.yml pull
docker compose -f docker-compose.yml -f docker-compose-db.yml pull
# Run
docker-compose -f docker-compose.yml -f docker-compose-db.yml -f docker-compose-local.yml up -d --remove-orphans
docker compose -f docker-compose.yml -f docker-compose-db.yml -f docker-compose-local.yml up -d --remove-orphans
# Logs
docker-compose -f docker-compose.yml -f docker-compose-db.yml logs -f --timestamps
docker compose -f docker-compose.yml -f docker-compose-db.yml logs -f --timestamps
```
See also the section [Migrate database](#migrate-database) below to upgrade to a major PostgreSQL version with Docker Compose.
### Docker Compose for development
Use the local (git) FreshRSS source code instead of the one inside the Docker container,
@ -396,11 +400,11 @@ See [`docker-compose-development.yml`](./freshrss/docker-compose-development.yml
cd ./FreshRSS/Docker/freshrss/
# Update
git pull --ff-only --prune
docker-compose pull
docker compose pull
# Run
docker-compose -f docker-compose-development.yml -f docker-compose.yml -f docker-compose-local.yml up --remove-orphans
docker compose -f docker-compose-development.yml -f docker-compose.yml -f docker-compose-local.yml up --remove-orphans
# Stop with [Control]+[C] and purge
docker-compose down --remove-orphans --volumes
docker compose down --remove-orphans --volumes
```
> You can combine it with `-f docker-compose-db.yml` to spin a PostgreSQL database.
@ -446,13 +450,13 @@ See [`docker-compose-proxy.yml`](./freshrss/docker-compose-proxy.yml)
```sh
cd ./FreshRSS/Docker/freshrss/
# Update
docker-compose -f docker-compose.yml -f docker-compose-proxy.yml pull
docker compose -f docker-compose.yml -f docker-compose-proxy.yml pull
# Run
docker-compose -f docker-compose.yml -f docker-compose-proxy.yml up -d --remove-orphans
docker compose -f docker-compose.yml -f docker-compose-proxy.yml up -d --remove-orphans
# Logs
docker-compose -f docker-compose.yml -f docker-compose-proxy.yml logs -f --timestamps
docker compose -f docker-compose.yml -f docker-compose-proxy.yml logs -f --timestamps
# Stop
docker-compose -f docker-compose.yml -f docker-compose-proxy.yml down --remove-orphans
docker compose -f docker-compose.yml -f docker-compose-proxy.yml down --remove-orphans
```
> You can combine it with `-f docker-compose-db.yml` to spin a PostgreSQL database.
@ -650,3 +654,46 @@ docker run -d --restart unless-stopped --log-opt max-size=10m \
--name freshrss_cron freshrss/freshrss:alpine \
crond -f -d 6
```
## Migrate database
Our [CLI](../cli/README.md) offers commands to back-up and migrate user databases,
with `cli/db-backup.php` and `cli/db-restore.php` in particular.
Here is an example (assuming our [Docker Compose example](#docker-compose-with-postgresql))
intended for migrating to a newer major version of PostgreSQL,
but which can also be used to migrate between other databases (e.g. MySQL to PostgreSQL).
```sh
# Stop FreshRSS container (Web server + cron) during maintenance
docker compose down freshrss
# Optional additional pre-upgrade back-up using PostgreSQL own mechanism
docker compose -f docker-compose-db.yml \
exec freshrss-db pg_dump -U freshrss freshrss | gzip -9 > freshrss-postgres-backup.sql.gz
# ------↑ Name of your PostgreSQL Docker container
# -----------------------------↑ Name of your PostgreSQL user for FreshRSS
# --------------------------------------↑ Name of your PostgreSQL database for FreshRSS
# Back-up all users respective tables to SQLite files
docker compose -f docker-compose.yml -f docker-compose-db.yml \
run --rm freshrss cli/db-backup.php
# Remove old database (PostgreSQL) container and its data volume
docker compose -f docker-compose-db.yml \
down --volumes freshrss-db
# Edit your Compose file to use new database (e.g. newest postgres:xx)
nano docker-compose-db.yml
# Start new database (PostgreSQL) container and its new empty data volume
docker compose -f docker-compose.yml -f docker-compose-db.yml \
up -d freshrss-db
# Restore all users respective tables from SQLite files
docker compose -f docker-compose.yml -f docker-compose-db.yml \
run --rm freshrss cli/db-restore.php --delete-backup
# Restart a new FreshRSS container after maintenance
docker compose -f docker-compose.yml -f docker-compose-db.yml up -d freshrss
```

View File

@ -7,7 +7,7 @@ volumes:
services:
traefik:
image: traefik:2.11
image: traefik:3.0
container_name: traefik
restart: unless-stopped
logging:

View File

@ -374,7 +374,6 @@ class FreshRSS_configure_Controller extends FreshRSS_ActionController {
if ('' === $name) {
$name = _t('conf.query.number', $id + 1);
}
$queryParams['name'] = $name;
if (!empty($params['get']) && is_string($params['get'])) {
$queryParams['get'] = htmlspecialchars_decode($params['get'], ENT_QUOTES);
}
@ -399,6 +398,7 @@ class FreshRSS_configure_Controller extends FreshRSS_ActionController {
$queryParams['shareOpml'] = (bool)$params['shareOpml'];
}
$queryParams['url'] = Minz_Url::display(['params' => $queryParams]);
$queryParams['name'] = $name;
$queries = FreshRSS_Context::userConf()->queries;
$queries[$id] = (new FreshRSS_UserQuery($queryParams, FreshRSS_Context::categories(), FreshRSS_Context::labels()))->toArray();
@ -442,6 +442,7 @@ class FreshRSS_configure_Controller extends FreshRSS_ActionController {
$queries[$key] = (new FreshRSS_UserQuery($query, FreshRSS_Context::categories(), FreshRSS_Context::labels()))->toArray();
}
$params = $_GET;
unset($params['name']);
unset($params['rid']);
$params['url'] = Minz_Url::display(['params' => $params]);
$params['name'] = _t('conf.query.number', count($queries) + 1);

View File

@ -259,7 +259,7 @@ class FreshRSS_feed_Controller extends FreshRSS_ActionController {
if (!empty($xPathSettings)) {
$attributes['xpath'] = $xPathSettings;
}
} elseif ($feed_kind === FreshRSS_Feed::KIND_JSON_DOTPATH) {
} elseif ($feed_kind === FreshRSS_Feed::KIND_JSON_DOTNOTATION) {
$jsonSettings = [];
if (Minz_Request::paramString('jsonFeedTitle') !== '') {
$jsonSettings['feedTitle'] = Minz_Request::paramString('jsonFeedTitle', true);
@ -295,7 +295,7 @@ class FreshRSS_feed_Controller extends FreshRSS_ActionController {
$jsonSettings['itemUid'] = Minz_Request::paramString('jsonItemUid', true);
}
if (!empty($jsonSettings)) {
$attributes['json_dotpath'] = $jsonSettings;
$attributes['json_dotnotation'] = $jsonSettings;
}
}
@ -455,8 +455,8 @@ class FreshRSS_feed_Controller extends FreshRSS_ActionController {
continue; //When PubSubHubbub is used, do not pull refresh so often
}
if ($feed->mute()) {
continue; //Feed refresh is disabled
if ($feed->mute() && $feed_id === null) {
continue; // If the feed is disabled, only allow refresh if manually requested for that specific feed
}
$mtime = $feed->cacheModifiedTime() ?: 0;
$ttl = $feed->ttl();
@ -497,10 +497,10 @@ class FreshRSS_feed_Controller extends FreshRSS_ActionController {
if ($simplePie === null) {
throw new FreshRSS_Feed_Exception('XML+XPath parsing failed for [' . $feed->url(false) . ']');
}
} elseif ($feed->kind() === FreshRSS_Feed::KIND_JSON_DOTPATH) {
} elseif ($feed->kind() === FreshRSS_Feed::KIND_JSON_DOTNOTATION) {
$simplePie = $feed->loadJson();
if ($simplePie === null) {
throw new FreshRSS_Feed_Exception('JSON dotpath parsing failed for [' . $feed->url(false) . ']');
throw new FreshRSS_Feed_Exception('JSON dot notation parsing failed for [' . $feed->url(false) . ']');
}
} elseif ($feed->kind() === FreshRSS_Feed::KIND_JSONFEED) {
$simplePie = $feed->loadJson();
@ -573,6 +573,7 @@ class FreshRSS_feed_Controller extends FreshRSS_ActionController {
$existingHash = $existingHashForGuids[$entry->guid()];
if (strcasecmp($existingHash, $entry->hash()) !== 0) {
//This entry already exists but has been updated
$entry->_isUpdated(true);
//Minz_Log::debug('Entry with GUID `' . $entry->guid() . '` updated in feed ' . $feed->url(false) .
//', old hash ' . $existingHash . ', new hash ' . $entry->hash());
$entry->_isFavorite(null); // Do not change favourite state
@ -587,6 +588,11 @@ class FreshRSS_feed_Controller extends FreshRSS_ActionController {
continue;
}
$entry->applyFilterActions($titlesAsRead);
if ($readWhenSameTitleInFeed > 0) {
$titlesAsRead[$entry->title()] = true;
}
if (!$entry->isRead()) {
$needFeedCacheRefresh = true; //Maybe
$nbMarkedUnread++;
@ -601,6 +607,7 @@ class FreshRSS_feed_Controller extends FreshRSS_ActionController {
$entryDAO->updateEntry($entry->toArray());
}
} else {
$entry->_isUpdated(false);
$id = uTimeString();
$entry->_id($id);
@ -1114,7 +1121,7 @@ class FreshRSS_feed_Controller extends FreshRSS_ActionController {
$feed_id = Minz_Request::paramInt('id');
$content_selector = Minz_Request::paramString('selector');
if (!$content_selector) {
if ($content_selector === '') {
$this->view->fatalError = _t('feedback.sub.feed.selector_preview.selector_empty');
return;
}
@ -1136,11 +1143,12 @@ class FreshRSS_feed_Controller extends FreshRSS_ActionController {
//Get feed.
$feed = $entry->feed();
if ($feed === null) {
$this->view->fatalError = _t('feedback.sub.feed.selector_preview.no_feed');
return;
}
$feed->_pathEntries($content_selector);
$feed->_attribute('path_entries_filter', Minz_Request::paramString('selector_filter', true));
//Fetch & select content.
try {

View File

@ -202,7 +202,7 @@ class FreshRSS_index_Controller extends FreshRSS_ActionController {
$type = (string)$get[0];
$id = (int)$get[1];
$this->view->excludeMutedFeeds = true;
$this->view->excludeMutedFeeds = $type !== 'f'; // Exclude muted feeds except when we focus on a feed
switch ($type) {
case 'a':

View File

@ -238,7 +238,7 @@ class FreshRSS_subscription_Controller extends FreshRSS_ActionController {
$xPathSettings['itemUid'] = Minz_Request::paramString('xPathItemUid', true);
if (!empty($xPathSettings))
$feed->_attribute('xpath', $xPathSettings);
} elseif ($feed->kind() === FreshRSS_Feed::KIND_JSON_DOTPATH) {
} elseif ($feed->kind() === FreshRSS_Feed::KIND_JSON_DOTNOTATION) {
$jsonSettings = [];
if (Minz_Request::paramString('jsonFeedTitle') !== '') {
$jsonSettings['feedTitle'] = Minz_Request::paramString('jsonFeedTitle', true);
@ -274,7 +274,7 @@ class FreshRSS_subscription_Controller extends FreshRSS_ActionController {
$jsonSettings['itemUid'] = Minz_Request::paramString('jsonItemUid', true);
}
if (!empty($jsonSettings)) {
$feed->_attribute('json_dotpath', $jsonSettings);
$feed->_attribute('json_dotnotation', $jsonSettings);
}
}

View File

@ -267,7 +267,7 @@ class FreshRSS_update_Controller extends FreshRSS_ActionController {
$res = !self::hasGitUpdate();
} else {
require(UPDATE_FILENAME);
// @phpstan-ignore-next-line
// @phpstan-ignore function.notFound
$res = do_post_update();
}
@ -290,12 +290,12 @@ class FreshRSS_update_Controller extends FreshRSS_ActionController {
} else {
require(UPDATE_FILENAME);
if (Minz_Request::isPost()) {
// @phpstan-ignore-next-line
// @phpstan-ignore function.notFound
save_info_update();
}
// @phpstan-ignore-next-line
// @phpstan-ignore function.notFound
if (!need_info_update()) {
// @phpstan-ignore-next-line
// @phpstan-ignore function.notFound
$res = apply_update();
} else {
return;

View File

@ -389,8 +389,10 @@ class FreshRSS_user_Controller extends FreshRSS_ActionController {
$ok &= is_dir($user_data);
if ($ok) {
FreshRSS_fever_Util::deleteKey($username);
Minz_ModelPdo::$usesSharedPdo = false;
$oldUserDAO = FreshRSS_Factory::createUserDao($username);
$ok &= $oldUserDAO->deleteUser();
Minz_ModelPdo::$usesSharedPdo = true;
$ok &= recursive_unlink($user_data);
$filenames = glob(PSHB_PATH . '/feeds/*/' . $username . '.txt');
if (!empty($filenames)) {

View File

@ -50,7 +50,6 @@ class FreshRSS_BooleanSearch {
$all_matches = [];
if (preg_match_all('/\bsearch:(?P<delim>[\'"])(?P<search>.*)(?P=delim)/U', $input, $matchesFound)) {
$all_matches[] = $matchesFound;
}
if (preg_match_all('/\bsearch:(?P<search>[^\s"]*)/', $input, $matchesFound)) {
$all_matches[] = $matchesFound;

View File

@ -389,7 +389,8 @@ final class FreshRSS_Context {
if (empty(self::$categories)) {
$catDAO = FreshRSS_Factory::createCategoryDao();
self::$categories = $catDAO->listCategories(true);
$details = $type === 'f'; // Load additional feed details in the case of feed view
self::$categories = $catDAO->listCategories(true, $details);
}
switch($type) {

View File

@ -48,6 +48,18 @@ class FreshRSS_DatabaseDAO extends Minz_ModelPdo {
}
}
public function exits(): bool {
$sql = 'SELECT * FROM `_entry` LIMIT 1';
$stm = $this->pdo->query($sql);
if ($stm !== false) {
$res = $stm->fetchAll(PDO::FETCH_COLUMN, 0);
if ($res !== false) {
return true;
}
}
return false;
}
public function tablesAreCorrect(): bool {
$res = $this->fetchAssoc('SHOW TABLES');
if ($res == null) {
@ -220,8 +232,29 @@ SQL;
$catDAO->resetDefaultCategoryName();
include_once(APP_PATH . '/SQL/install.sql.' . $this->pdo->dbType() . '.php');
if (!empty($GLOBALS['SQL_UPDATE_MINOR']) && $this->pdo->exec($GLOBALS['SQL_UPDATE_MINOR']) === false) {
Minz_Log::error('SQL error ' . __METHOD__ . json_encode($this->pdo->errorInfo()));
if (!empty($GLOBALS['SQL_UPDATE_MINOR'])) {
$sql = $GLOBALS['SQL_UPDATE_MINOR'];
$isMariaDB = false;
if ($this->pdo->dbType() === 'mysql') {
$dbVersion = $this->fetchValue('SELECT version()') ?? '';
$isMariaDB = stripos($dbVersion, 'MariaDB') !== false; // MariaDB includes its name in version, but not MySQL
if (!$isMariaDB) {
// MySQL does not support `DROP INDEX IF EXISTS` yet https://dev.mysql.com/doc/refman/8.3/en/drop-index.html
// but MariaDB does https://mariadb.com/kb/en/drop-index/
$sql = str_replace('DROP INDEX IF EXISTS', 'DROP INDEX', $sql);
}
}
if ($this->pdo->exec($sql) === false) {
$info = $this->pdo->errorInfo();
if ($this->pdo->dbType() === 'mysql' &&
!$isMariaDB && !empty($info[2]) && (stripos($info[2], "Can't DROP ") !== false)) {
// Too bad for MySQL, but ignore error
return;
}
Minz_Log::error('SQL error ' . __METHOD__ . json_encode($this->pdo->errorInfo()));
}
}
}
@ -242,6 +275,7 @@ SQL;
}
$error = '';
$databaseDAO = FreshRSS_Factory::createDatabaseDAO();
$userDAO = FreshRSS_Factory::createUserDao();
$catDAO = FreshRSS_Factory::createCategoryDao();
$feedDAO = FreshRSS_Factory::createFeedDao();
@ -259,15 +293,18 @@ SQL;
$error = 'Error: SQLite import file is not readable: ' . $filename;
} elseif ($clearFirst) {
$userDAO->deleteUser();
$userDAO = FreshRSS_Factory::createUserDao();
if ($this->pdo->dbType() === 'sqlite') {
//We cannot just delete the .sqlite file otherwise PDO gets buggy.
//SQLite is the only one with database-level optimization, instead of at table level.
$this->optimize();
}
} else {
$nbEntries = $entryDAO->countUnreadRead();
if (!empty($nbEntries['all'])) {
$error = 'Error: Destination database already contains some entries!';
if ($databaseDAO->exits()) {
$nbEntries = $entryDAO->countUnreadRead();
if (isset($nbEntries['all']) && $nbEntries['all'] > 0) {
$error = 'Error: Destination database already contains some entries!';
}
}
}
break;
@ -283,6 +320,7 @@ SQL;
try {
$sqlite = new Minz_PdoSqlite('sqlite:' . $filename);
$sqlite->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_SILENT);
} catch (Exception $e) {
$error = 'Error while initialising SQLite copy: ' . $e->getMessage();
return self::stdError($error);

View File

@ -24,6 +24,7 @@ class FreshRSS_Entry extends Minz_Model {
private string $hash = '';
private ?bool $is_read;
private ?bool $is_favorite;
private bool $is_updated = false;
private int $feedId;
private ?FreshRSS_Feed $feed;
/** @var array<string> */
@ -394,6 +395,18 @@ HTML;
return $this->is_favorite;
}
/**
* Returns whether the entry has been modified since it was inserted in database.
* @returns bool `true` if the entry already existed (and has been modified), `false` if the entry is new (or unmodified).
*/
public function isUpdated(): ?bool {
return $this->is_updated;
}
public function _isUpdated(bool $value): void {
$this->is_updated = $value;
}
public function feed(): ?FreshRSS_Feed {
if ($this->feed === null) {
$feedDAO = FreshRSS_Factory::createFeedDao();
@ -735,11 +748,14 @@ HTML;
}
$content = '';
$nodes = $xpath->query((new Gt\CssXPath\Translator($feed->pathEntries()))->asXPath());
$cssSelector = htmlspecialchars_decode($feed->pathEntries(), ENT_QUOTES);
$cssSelector = trim($cssSelector, ', ');
$nodes = $xpath->query((new Gt\CssXPath\Translator($cssSelector))->asXPath());
if ($nodes != false) {
$path_entries_filter = $feed->attributeString('path_entries_filter');
$path_entries_filter = $feed->attributeString('path_entries_filter') ?? '';
$path_entries_filter = trim($path_entries_filter, ', ');
foreach ($nodes as $node) {
if ($path_entries_filter != null) {
if ($path_entries_filter !== '') {
$filterednodes = $xpath->query((new Gt\CssXPath\Translator($path_entries_filter))->asXPath(), $node) ?: [];
foreach ($filterednodes as $filterednode) {
if ($filterednode->parentNode === null) {

View File

@ -31,7 +31,7 @@ class FreshRSS_Feed extends Minz_Model {
public const KIND_JSON_XPATH = 20;
public const KIND_JSONFEED = 25;
public const KIND_JSON_DOTPATH = 30;
public const KIND_JSON_DOTNOTATION = 30;
public const PRIORITY_IMPORTANT = 20;
public const PRIORITY_MAIN_STREAM = 10;
@ -349,8 +349,8 @@ class FreshRSS_Feed extends Minz_Model {
public function load(bool $loadDetails = false, bool $noCache = false): ?SimplePie {
if ($this->url != '') {
/**
* @phpstan-ignore-next-line
* @throws Minz_FileNotExistException
* @phpstan-ignore if.alwaysFalse
*/
if (CACHE_PATH == '') {
throw new Minz_FileNotExistException(
@ -621,7 +621,7 @@ class FreshRSS_Feed extends Minz_Model {
}
/** @return array<string,string> */
private function dotPathsForStandardJsonFeed(): array {
private function dotNotationForStandardJsonFeed(): array {
return [
'feedTitle' => 'title',
'item' => 'items',
@ -662,11 +662,11 @@ class FreshRSS_Feed extends Minz_Model {
return null;
}
/** @var array<string,string> $json_dotpath */
$json_dotpath = $this->attributeArray('json_dotpath') ?? [];
$dotPaths = $this->kind() === FreshRSS_Feed::KIND_JSONFEED ? $this->dotPathsForStandardJsonFeed() : $json_dotpath;
/** @var array<string,string> $json_dotnotation */
$json_dotnotation = $this->attributeArray('json_dotnotation') ?? [];
$dotnotations = $this->kind() === FreshRSS_Feed::KIND_JSONFEED ? $this->dotNotationForStandardJsonFeed() : $json_dotnotation;
$feedContent = FreshRSS_dotpath_Util::convertJsonToRss($jf, $feedSourceUrl, $dotPaths, $this->name());
$feedContent = FreshRSS_dotNotation_Util::convertJsonToRss($jf, $feedSourceUrl, $dotnotations, $this->name());
if ($feedContent == null) {
return null;
}

View File

@ -304,13 +304,19 @@ SELECT id, url, kind, category, name, website, description, `lastUpdate`,
FROM `_feed`
SQL;
$stm = $this->pdo->query($sql);
if ($stm === false) {
return;
}
while ($row = $stm->fetch(PDO::FETCH_ASSOC)) {
/** @var array{'id':int,'url':string,'kind':int,'category':int,'name':string,'website':string,'description':string,'lastUpdate':int,'priority'?:int,
* 'pathEntries'?:string,'httpAuth':string,'error':int|bool,'ttl'?:int,'attributes'?:string} $row */
yield $row;
if ($stm !== false) {
while ($row = $stm->fetch(PDO::FETCH_ASSOC)) {
/** @var array{'id':int,'url':string,'kind':int,'category':int,'name':string,'website':string,'description':string,'lastUpdate':int,'priority'?:int,
* 'pathEntries'?:string,'httpAuth':string,'error':int|bool,'ttl'?:int,'attributes'?:string} $row */
yield $row;
}
} else {
$info = $this->pdo->errorInfo();
if ($this->autoUpdateDb($info)) {
yield from $this->selectAll();
} else {
Minz_Log::error(__method__ . ' error: ' . json_encode($info));
}
}
}

View File

@ -135,10 +135,16 @@ trait FreshRSS_FilterActionsTrait {
}
break;
case 'star':
$entry->_isFavorite(true);
if (!$entry->isUpdated()) {
// Do not apply to updated articles, to avoid overruling a user manual action
$entry->_isFavorite(true);
}
break;
case 'label':
$applyLabel = true;
if (!$entry->isUpdated()) {
// Do not apply to updated articles, to avoid overruling a user manual action
$applyLabel = true;
}
break;
}
}

View File

@ -383,6 +383,7 @@ SQL;
}
$sql .= ' AND et.id_entry IN (' . str_repeat('?,', count($entries) - 1). '?)';
if (is_array($entries[0])) {
/** @var array<array<string,string>> $entries */
foreach ($entries as $entry) {
if (!empty($entry['id'])) {
$values[] = $entry['id'];
@ -394,6 +395,7 @@ SQL;
$values[] = $entry->id();
}
} else {
/** @var array<numeric-string> $entries */
foreach ($entries as $entry) {
$values[] = $entry;
}

View File

@ -32,6 +32,7 @@ class FreshRSS_UserDAO extends Minz_ModelPdo {
$ok = $this->pdo->exec($GLOBALS['SQL_DROP_TABLES']) !== false;
if ($ok) {
$this->close();
return true;
} else {
$info = $this->pdo->errorInfo();

View File

@ -48,6 +48,8 @@ class FreshRSS_UserQuery {
$this->labels = $labels;
if (isset($query['get'])) {
$this->parseGet($query['get']);
} else {
$this->get_type = 'all';
}
if (isset($query['name'])) {
$this->name = trim($query['name']);
@ -107,7 +109,9 @@ class FreshRSS_UserQuery {
*/
private function parseGet(string $get): void {
$this->get = $get;
if (preg_match('/(?P<type>[acfistT])(_(?P<id>\d+))?/', $get, $matches)) {
if ($this->get === '') {
$this->get_type = 'all';
} elseif (preg_match('/(?P<type>[acfistT])(_(?P<id>\d+))?/', $get, $matches)) {
$id = intval($matches['id'] ?? '0');
switch ($matches['type']) {
case 'a':
@ -155,22 +159,22 @@ class FreshRSS_UserQuery {
/**
* Check if the user query has parameters.
* If the type is 'all', it is considered equal to no parameters
*/
public function hasParameters(): bool {
if ($this->get_type === 'all') {
return false;
if ($this->get_type !== 'all') {
return true;
}
if ($this->hasSearch()) {
return true;
}
if ($this->state) {
if (!in_array($this->state, [
0,
FreshRSS_Entry::STATE_READ | FreshRSS_Entry::STATE_NOT_READ,
FreshRSS_Entry::STATE_READ | FreshRSS_Entry::STATE_NOT_READ | FreshRSS_Entry::STATE_FAVORITE | FreshRSS_Entry::STATE_NOT_FAVORITE
], true)) {
return true;
}
if ($this->order) {
return true;
}
if ($this->get) {
if ($this->order !== '' && $this->order !== FreshRSS_Context::userConf()->sort_order) {
return true;
}
return false;

View File

@ -115,6 +115,7 @@ SQL;
$GLOBALS['SQL_UPDATE_MINOR'] = <<<'SQL'
ALTER TABLE `_feed`
MODIFY COLUMN `website` TEXT CHARACTER SET latin1 COLLATE latin1_bin,
MODIFY COLUMN `lastUpdate` BIGINT DEFAULT 0,
MODIFY COLUMN `pathEntries` VARCHAR(4096),
MODIFY COLUMN `httpAuth` VARCHAR(1024) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL;
@ -136,4 +137,7 @@ ALTER TABLE `_entrytmp`
MODIFY COLUMN `tags` VARCHAR(2048);
ALTER TABLE `_tag`
MODIFY COLUMN `name` VARCHAR(191) NOT NULL;
ALTER TABLE `_feed`
DROP INDEX IF EXISTS `url`, -- IF EXISTS works with MariaDB but not with MySQL, so needs PHP workaround
MODIFY COLUMN `url` VARCHAR(32768) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL;
SQL;

View File

@ -106,7 +106,10 @@ $GLOBALS['SQL_UPDATE_MINOR'] = <<<'SQL'
ALTER TABLE `_category`
ALTER COLUMN "name" SET DATA TYPE VARCHAR(191);
ALTER TABLE `_feed`
DROP CONSTRAINT IF EXISTS `_feed_url_key`,
ALTER COLUMN "url" SET DATA TYPE VARCHAR(32768),
ALTER COLUMN "name" SET DATA TYPE VARCHAR(191),
ALTER COLUMN "website" SET DATA TYPE VARCHAR(32768),
ALTER COLUMN "lastUpdate" SET DATA TYPE BIGINT,
ALTER COLUMN "pathEntries" SET DATA TYPE VARCHAR(4096),
ALTER COLUMN "httpAuth" SET DATA TYPE VARCHAR(1024);

View File

@ -20,7 +20,8 @@ class FreshRSS_Export_Service {
public const TYPE_HTML_XPATH = 'HTML+XPath';
public const TYPE_XML_XPATH = 'XML+XPath';
public const TYPE_RSS_ATOM = 'rss';
public const TYPE_JSON_DOTPATH = 'JSON+DotPath';
public const TYPE_JSON_DOTPATH = 'JSON+DotPath'; // Legacy 1.24.0-dev
public const TYPE_JSON_DOTNOTATION = 'JSON+DotNotation';
public const TYPE_JSONFEED = 'JSONFeed';
/**
@ -153,7 +154,7 @@ class FreshRSS_Export_Service {
$zip_filename = 'freshrss_' . $this->username . '_' . $day . '_export.zip';
// From https://stackoverflow.com/questions/1061710/php-zip-files-on-the-fly
$zip_file = tempnam('/tmp', 'zip');
$zip_file = tempnam(TMP_PATH, 'zip');
if ($zip_file == false) {
return [$zip_filename, false];
}

View File

@ -161,8 +161,9 @@ class FreshRSS_Import_Service {
case strtolower(FreshRSS_Export_Service::TYPE_XML_XPATH):
$feed->_kind(FreshRSS_Feed::KIND_XML_XPATH);
break;
case strtolower(FreshRSS_Export_Service::TYPE_JSON_DOTNOTATION):
case strtolower(FreshRSS_Export_Service::TYPE_JSON_DOTPATH):
$feed->_kind(FreshRSS_Feed::KIND_JSON_DOTPATH);
$feed->_kind(FreshRSS_Feed::KIND_JSON_DOTNOTATION);
break;
case strtolower(FreshRSS_Export_Service::TYPE_JSONFEED):
$feed->_kind(FreshRSS_Feed::KIND_JSONFEED);
@ -254,7 +255,7 @@ class FreshRSS_Import_Service {
$jsonSettings['itemUid'] = $feed_elt['frss:jsonItemUid'];
}
if (!empty($jsonSettings)) {
$feed->_attribute('json_dotpath', $jsonSettings);
$feed->_attribute('json_dotnotation', $jsonSettings);
}
$curl_params = [];
@ -283,7 +284,7 @@ class FreshRSS_Import_Service {
$curl_params[CURLOPT_PROXY] = $feed_elt['frss:CURLOPT_PROXY'];
}
if (isset($feed_elt['frss:CURLOPT_PROXYTYPE'])) {
$curl_params[CURLOPT_PROXYTYPE] = $feed_elt['frss:CURLOPT_PROXYTYPE'];
$curl_params[CURLOPT_PROXYTYPE] = (int)$feed_elt['frss:CURLOPT_PROXYTYPE'];
}
if (isset($feed_elt['frss:CURLOPT_USERAGENT'])) {
$curl_params[CURLOPT_USERAGENT] = $feed_elt['frss:CURLOPT_USERAGENT'];

View File

@ -1,6 +1,7 @@
<?php
declare(strict_types=1);
final class FreshRSS_dotpath_Util
final class FreshRSS_dotNotation_Util
{
/**
@ -96,11 +97,11 @@ final class FreshRSS_dotpath_Util
*
* @param array<string> $jf json feed
* @param string $feedSourceUrl the source URL for the feed
* @param array<string,string> $dotPaths dot paths to map JSON into RSS
* @param string $defaultRssTitle Default title of the RSS feed, if not already provided in dotPath `feedTitle`
* @param array<string,string> $dotNotation dot notation to map JSON into RSS
* @param string $defaultRssTitle Default title of the RSS feed, if not already provided in dotNotation `feedTitle`
*/
public static function convertJsonToRss(array $jf, string $feedSourceUrl, array $dotPaths, string $defaultRssTitle = ''): ?string {
if (!isset($dotPaths['item']) || $dotPaths['item'] === '') {
public static function convertJsonToRss(array $jf, string $feedSourceUrl, array $dotNotation, string $defaultRssTitle = ''): ?string {
if (!isset($dotNotation['item']) || $dotNotation['item'] === '') {
return null; //no definition of item path, but we can't scrape anything without knowing this
}
@ -111,40 +112,40 @@ final class FreshRSS_dotpath_Util
$view->html_url = $view->rss_url;
$view->entries = [];
$view->rss_title = isset($dotPaths['feedTitle'])
? (htmlspecialchars(FreshRSS_dotpath_Util::getString($jf, $dotPaths['feedTitle']) ?? '', ENT_COMPAT, 'UTF-8') ?: $defaultRssTitle)
$view->rss_title = isset($dotNotation['feedTitle'])
? (htmlspecialchars(FreshRSS_dotNotation_Util::getString($jf, $dotNotation['feedTitle']) ?? '', ENT_COMPAT, 'UTF-8') ?: $defaultRssTitle)
: $defaultRssTitle;
$jsonItems = FreshRSS_dotpath_Util::get($jf, $dotPaths['item']);
$jsonItems = FreshRSS_dotNotation_Util::get($jf, $dotNotation['item']);
if (!is_array($jsonItems) || count($jsonItems) === 0) {
return null;
}
foreach ($jsonItems as $jsonItem) {
$rssItem = [];
$rssItem['link'] = isset($dotPaths['itemUri']) ? FreshRSS_dotpath_Util::getString($jsonItem, $dotPaths['itemUri']) ?? '' : '';
$rssItem['link'] = isset($dotNotation['itemUri']) ? FreshRSS_dotNotation_Util::getString($jsonItem, $dotNotation['itemUri']) ?? '' : '';
if (empty($rssItem['link'])) {
continue;
}
$rssItem['title'] = isset($dotPaths['itemTitle']) ? FreshRSS_dotpath_Util::getString($jsonItem, $dotPaths['itemTitle']) ?? '' : '';
$rssItem['author'] = isset($dotPaths['itemAuthor']) ? FreshRSS_dotpath_Util::getString($jsonItem, $dotPaths['itemAuthor']) ?? '' : '';
$rssItem['timestamp'] = isset($dotPaths['itemTimestamp']) ? FreshRSS_dotpath_Util::getString($jsonItem, $dotPaths['itemTimestamp']) ?? '' : '';
$rssItem['title'] = isset($dotNotation['itemTitle']) ? FreshRSS_dotNotation_Util::getString($jsonItem, $dotNotation['itemTitle']) ?? '' : '';
$rssItem['author'] = isset($dotNotation['itemAuthor']) ? FreshRSS_dotNotation_Util::getString($jsonItem, $dotNotation['itemAuthor']) ?? '' : '';
$rssItem['timestamp'] = isset($dotNotation['itemTimestamp']) ? FreshRSS_dotNotation_Util::getString($jsonItem, $dotNotation['itemTimestamp']) ?? '' : '';
//get simple content, but if a path for HTML content has been provided, replace the simple content with HTML content
$rssItem['content'] = isset($dotPaths['itemContent']) ? FreshRSS_dotpath_Util::getString($jsonItem, $dotPaths['itemContent']) ?? '' : '';
$rssItem['content'] = isset($dotPaths['itemContentHTML'])
? FreshRSS_dotpath_Util::getString($jsonItem, $dotPaths['itemContentHTML']) ?? ''
$rssItem['content'] = isset($dotNotation['itemContent']) ? FreshRSS_dotNotation_Util::getString($jsonItem, $dotNotation['itemContent']) ?? '' : '';
$rssItem['content'] = isset($dotNotation['itemContentHTML'])
? FreshRSS_dotNotation_Util::getString($jsonItem, $dotNotation['itemContentHTML']) ?? ''
: $rssItem['content'];
if (isset($dotPaths['itemTimeFormat']) && is_string($dotPaths['itemTimeFormat'])) {
$dateTime = DateTime::createFromFormat($dotPaths['itemTimeFormat'], $rssItem['timestamp']);
if (isset($dotNotation['itemTimeFormat']) && is_string($dotNotation['itemTimeFormat'])) {
$dateTime = DateTime::createFromFormat($dotNotation['itemTimeFormat'], $rssItem['timestamp']);
if ($dateTime != false) {
$rssItem['timestamp'] = $dateTime->format(DateTime::ATOM);
}
}
if (isset($dotPaths['itemCategories'])) {
$jsonItemCategories = FreshRSS_dotpath_Util::get($jsonItem, $dotPaths['itemCategories']);
if (isset($dotNotation['itemCategories'])) {
$jsonItemCategories = FreshRSS_dotNotation_Util::get($jsonItem, $dotNotation['itemCategories']);
if (is_string($jsonItemCategories) && $jsonItemCategories !== '') {
$rssItem['tags'] = [$jsonItemCategories];
} elseif (is_array($jsonItemCategories) && count($jsonItemCategories) > 0) {
@ -157,31 +158,31 @@ final class FreshRSS_dotpath_Util
}
}
$rssItem['thumbnail'] = isset($dotPaths['itemThumbnail']) ? FreshRSS_dotpath_Util::getString($jsonItem, $dotPaths['itemThumbnail']) ?? '' : '';
$rssItem['thumbnail'] = isset($dotNotation['itemThumbnail']) ? FreshRSS_dotNotation_Util::getString($jsonItem, $dotNotation['itemThumbnail']) ?? '' : '';
//Enclosures?
if (isset($dotPaths['itemAttachment'])) {
$jsonItemAttachments = FreshRSS_dotpath_Util::get($jsonItem, $dotPaths['itemAttachment']);
if (isset($dotNotation['itemAttachment'])) {
$jsonItemAttachments = FreshRSS_dotNotation_Util::get($jsonItem, $dotNotation['itemAttachment']);
if (is_array($jsonItemAttachments) && count($jsonItemAttachments) > 0) {
$rssItem['attachments'] = [];
foreach ($jsonItemAttachments as $attachment) {
$rssAttachment = [];
$rssAttachment['url'] = isset($dotPaths['itemAttachmentUrl'])
? FreshRSS_dotpath_Util::getString($attachment, $dotPaths['itemAttachmentUrl'])
$rssAttachment['url'] = isset($dotNotation['itemAttachmentUrl'])
? FreshRSS_dotNotation_Util::getString($attachment, $dotNotation['itemAttachmentUrl'])
: '';
$rssAttachment['type'] = isset($dotPaths['itemAttachmentType'])
? FreshRSS_dotpath_Util::getString($attachment, $dotPaths['itemAttachmentType'])
$rssAttachment['type'] = isset($dotNotation['itemAttachmentType'])
? FreshRSS_dotNotation_Util::getString($attachment, $dotNotation['itemAttachmentType'])
: '';
$rssAttachment['length'] = isset($dotPaths['itemAttachmentLength'])
? FreshRSS_dotpath_Util::get($attachment, $dotPaths['itemAttachmentLength'])
$rssAttachment['length'] = isset($dotNotation['itemAttachmentLength'])
? FreshRSS_dotNotation_Util::get($attachment, $dotNotation['itemAttachmentLength'])
: '';
$rssItem['attachments'][] = $rssAttachment;
}
}
}
if (isset($dotPaths['itemUid'])) {
$rssItem['guid'] = FreshRSS_dotpath_Util::getString($jsonItem, $dotPaths['itemUid']);
if (isset($dotNotation['itemUid'])) {
$rssItem['guid'] = FreshRSS_dotNotation_Util::getString($jsonItem, $dotNotation['itemUid']);
}
if (empty($rssItem['guid'])) {

View File

@ -19,8 +19,8 @@ return array(
'http' => 'HTTP (pro pokročilé uživatele s HTTPS)',
'none' => 'Žádný (nebezpečné)',
'title' => 'Ověřování',
'token' => 'Master authentication token', // TODO
'token_help' => 'Allows access to all RSS outputs of the user as well as refreshing feeds without authentication:', // TODO
'token' => 'Hlavní ověřovací token',
'token_help' => 'Umožňuje přístup ke všem výstupům RSS uživatele i obnovování kanálů bez ověřování:',
'type' => 'Metoda ověřování',
'unsafe_autologin' => 'Povolit nebezpečné automatické přihlášení pomocí formátu: ',
),
@ -160,8 +160,8 @@ return array(
'_' => 'Nastavení systému',
'auto-update-url' => 'Adresa URL serveru pro automatické aktualizace',
'base-url' => array(
'_' => 'Base URL', // TODO
'recommendation' => 'Automatic recommendation: <kbd>%s</kbd>', // TODO
'_' => 'Základní adresa URL',
'recommendation' => 'Automatické doporučení: <kbd>%s</kbd>',
),
'cookie-duration' => array(
'help' => 'v sekundách',
@ -187,33 +187,33 @@ return array(
),
'title' => 'Registrační formulář uživatele',
),
'sensitive-parameter' => 'Sensitive parameter. Edit manually in <kbd>./data/config.php</kbd>', // TODO
'sensitive-parameter' => 'Citlivý parametr. Upravte ručně v souboru <kbd>./data/config.php</kbd>',
'tos' => array(
'disabled' => 'is not given', // TODO
'enabled' => '<a href="./?a=tos">is enabled</a>', // TODO
'help' => 'How to <a href="https://freshrss.github.io/FreshRSS/en/admins/12_User_management.html#enable-terms-of-service-tos" target="_blank">enable the Terms of Service</a>', // TODO
'disabled' => 'není uveden',
'enabled' => '<a href="./?a=tos">je povolen</a>',
'help' => 'Jak povolit <a href="https://freshrss.github.io/FreshRSS/en/admins/12_User_management.html#enable-terms-of-service-tos" target="_blank">podmínky poskytování služby</a>',
),
'websub' => array(
'help' => 'About <a href="https://freshrss.github.io/FreshRSS/en/users/WebSub.html" target="_blank">WebSub</a>', // TODO
'help' => 'O <a href="https://freshrss.github.io/FreshRSS/en/users/WebSub.html" target="_blank">WebSub</a>',
),
),
'update' => array(
'_' => 'Aktualizace systému',
'apply' => 'Použít',
'changelog' => 'Changelog', // TODO
'changelog' => 'Seznam změn',
'check' => 'Zkontrolovat aktualizace',
'copiedFromURL' => 'update.php copied from %s to ./data', // TODO
'copiedFromURL' => 'update.php zkopírováno z %s do ./data',
'current_version' => 'Vaše aktuální verze',
'last' => 'Poslední kontrola',
'loading' => 'Updating…', // TODO
'loading' => 'Aktualizuje se...',
'none' => 'Žádné nové aktualizace',
'releaseChannel' => array(
'_' => 'Release channel', // TODO
'edge' => 'Rolling release (“edge”)', // TODO
'latest' => 'Stable release (“latest”)', // TODO
'_' => 'Kanál pro vydání',
'edge' => 'Vydání "Rolling" / Nepřetržitě aktualizované vydání (“edge”)',
'latest' => 'Stabilní vydání (“latest”)',
),
'title' => 'Aktualizovat systém',
'viaGit' => 'Update via git and Github.com started', // TODO
'viaGit' => 'Aktualizace přes git a GitHub.com začala',
),
'user' => array(
'admin' => 'Administrátor',

View File

@ -33,9 +33,9 @@ return array(
'display' => array(
'_' => 'Zobrazení',
'darkMode' => array(
'_' => 'Automatic dark mode (beta)', // TODO
'auto' => 'Auto', // TODO
'no' => 'No', // TODO
'_' => 'Automatický tmavý režim (beta)',
'auto' => 'Automatický',
'no' => 'Ne',
),
'icon' => array(
'bottom_line' => 'Spodní řádek',
@ -56,8 +56,8 @@ return array(
'theme' => array(
'_' => 'Motiv',
'deprecated' => array(
'_' => 'Deprecated', // TODO
'description' => 'This theme is no longer supported and will be not available anymore in a <a href="https://freshrss.github.io/FreshRSS/en/users/05_Configuration.html#theme" target="_blank">future release of FreshRSS</a>', // TODO
'_' => 'Zastaralý',
'description' => 'Tento motiv již není podporován a v <a href="https://freshrss.github.io/FreshRSS/en/users/05_Configuration.html#theme" target="_blank">budoucí verzi FreshRSS</a> již nebude dostupný.',
),
),
'theme_not_available' => 'Motiv „%s“ již není dostupný. Zvolte jiný motiv, prosím.',
@ -68,14 +68,14 @@ return array(
'portrait' => 'Na výšku',
'square' => 'Čtverec',
),
'timezone' => 'Time zone', // TODO
'timezone' => 'Časové pásmo',
'title' => 'Zobrazení',
'website' => array(
'full' => 'Icon and name', // TODO
'icon' => 'Icon only', // TODO
'label' => 'Website', // TODO
'name' => 'Name only', // TODO
'none' => 'None', // TODO
'full' => 'Ikona a název',
'icon' => 'Pouze ikona',
'label' => 'Webová stránka',
'name' => 'Pouze název',
'none' => 'Žádné',
),
'width' => array(
'content' => 'Šířka obsahu',
@ -120,20 +120,20 @@ return array(
'feeds' => 'Zobrazit podle kanálu',
'order' => 'Seřadit podle data',
'search' => 'Výraz',
'shareOpml' => 'Enable sharing by OPML of corresponding categories and feeds', // TODO
'shareRss' => 'Enable sharing by HTML &amp; RSS', // TODO
'shareOpml' => 'Povolit sdílení příslušných kategorií a kanálů pomocí OPML',
'shareRss' => 'Povolit sdílení pomocí HTML &amp; RSS',
'state' => 'Stav',
'tags' => 'Zobrazit podle štítku',
'type' => 'Typ',
),
'get_all' => 'Zobrazit všechny články',
'get_all_labels' => 'Display articles with any label', // TODO
'get_all_labels' => 'Zobrazit články s libovolným štítkem',
'get_category' => 'Zobrazit kategorii „%s“',
'get_favorite' => 'Zobrazit oblíbené články',
'get_feed' => 'Zobrazit kanál „%s“',
'get_important' => 'Display articles from important feeds', // TODO
'get_label' => 'Display articles with “%s” label', // TODO
'help' => 'See the <a href="https://freshrss.github.io/FreshRSS/en/users/user_queries.html" target="_blank">documentation for user queries and resharing by HTML / RSS / OPML</a>.', // TODO
'get_important' => 'Zobrazit články z důležitých kanálů',
'get_label' => 'Zobrazit články se štítkem “%s”',
'help' => 'Viz <a href="https://freshrss.github.io/FreshRSS/en/users/user_queries.html" target="_blank">dokumentace pro uživatelské dotazy a další sdílení pomocí HTML / RSS / OPML</a>.',
'name' => 'Název',
'no_filter' => 'Žádný filtr',
'number' => 'Dotaz č. %d',
@ -141,11 +141,11 @@ return array(
'order_desc' => 'Zobrazit nejdříve nejnovější články',
'search' => 'Hledat „%s“',
'share' => array(
'_' => 'Share this query by link', // TODO
'help' => 'Give this link if you want to share this query with anyone', // TODO
'html' => 'Shareable link to the HTML page', // TODO
'opml' => 'Shareable link to the OPML list of feeds', // TODO
'rss' => 'Shareable link to the RSS feed', // TODO
'_' => 'Sdílet tento dotaz pomocí odkazu',
'help' => 'Pokud chcete tento dotaz s někým sdílet, uveďte tento odkaz.',
'html' => 'Odkaz na stránku HTML, který lze sdílet',
'opml' => 'Odkaz na seznam kanálů OPML, který lze sdílet',
'rss' => 'Odkaz na kanál RSS, který lze sdílet',
),
'state_0' => 'Zobrazit všechny články',
'state_1' => 'Zobrazit přečtené články',
@ -217,9 +217,9 @@ return array(
'read' => array(
'article_open_on_website' => 'když je článek otevřen na své původní webové stránce',
'article_viewed' => 'když je článek zobrazen',
'focus' => 'when focused (except for important feeds)', // TODO
'focus' => 'při zaměření (kromě důležitých kanálů)',
'keep_max_n_unread' => 'Maximální počet článků, které ponechat jako nepřečtené',
'scroll' => 'během posouvání (except for important feeds)', // DIRTY
'scroll' => 'během posouvání (kromě důležitých kanálů)', // DIRTY
'upon_gone' => 'když se již nenachází v upstreamu zpráv.',
'upon_reception' => 'po obdržení článku',
'when' => 'Označit článek jako přečtený…',

View File

@ -116,10 +116,10 @@ return array(
),
'tag' => array(
'created' => 'Štítek „%s“ byl vytvořen.',
'error' => 'Label could not be updated!', // TODO
'error' => 'Štítek se nepodařilo aktualizovat!',
'name_exists' => 'Název štítku již existuje.',
'renamed' => 'Štítek „%s“ byl přejmenován na „%s“.',
'updated' => 'Label has been updated.', // TODO
'updated' => 'Štítek byl aktualizován.',
),
'update' => array(
'can_apply' => 'FreshRSS bude nyní aktualizováno na <strong>verzi %s</strong>.',

View File

@ -134,7 +134,7 @@ return array(
'request_failed' => 'Požadavek selhal, to může být způsobeno problémy s připojení k internetu.',
'title_new_articles' => 'FreshRSS: nové články!',
),
'labels_empty' => 'No labels', // TODO
'labels_empty' => 'Žádné štítky',
'new_article' => 'Jsou dostupné nové články, klikněte pro obnovení stránky.',
'should_be_activated' => 'JavaScript musí být povolen',
),
@ -178,7 +178,7 @@ return array(
'queries' => 'Uživatelské dotazy',
'reading' => 'Čtení',
'search' => 'Hledat slova nebo #štítky',
'search_help' => 'See documentation for advanced <a href="https://freshrss.github.io/FreshRSS/en/users/10_filter.html#with-the-search-field" target="_blank">search parameters</a>', // TODO
'search_help' => 'Podívejte se na dokumentaci pro pokročilé parametry <a href="https://freshrss.github.io/FreshRSS/en/users/10_filter.html#with-the-search-field" target="_blank">parametry vyhledávání</a>',
'sharing' => 'Sdílení',
'shortcuts' => 'Zkratky',
'stats' => 'Statistika',
@ -203,7 +203,7 @@ return array(
'clipboard' => 'Schránka',
'diaspora' => 'Diaspora*', // IGNORE
'email' => 'E-mail',
'email-webmail-firefox-fix' => 'Email (webmail - fix for Firefox)', // TODO
'email-webmail-firefox-fix' => 'E-mail (webmail - oprava pro Firefox)',
'facebook' => 'Facebook', // IGNORE
'gnusocial' => 'GNU social', // IGNORE
'jdh' => 'Journal du hacker', // IGNORE

View File

@ -17,9 +17,9 @@ return array(
'bugs_reports' => 'Hlášení chyb',
'credits' => 'Poděkování',
'credits_content' => 'Některé designové prvky pocházejí z <a href="http://twitter.github.io/bootstrap/">Bootstrap</a>, FreshRSS ale tuto platformu nevyužívá. <a href="https://gitlab.gnome.org/Archive/gnome-icon-theme-symbolic">Ikony</a> pocházejí z <a href="https://www.gnome.org/">projektu GNOME</a>. Písmo <em>Open Sans</em> vytvořil <a href="https://fonts.google.com/specimen/Open+Sans">Steve Matteson</a>. FreshRSS je založeno na PHP framework <a href="https://framagit.org/marienfressinaud/MINZ">Minz</a>.',
'documentation' => 'Documentation', // TODO
'documentation' => 'Dokumentace',
'freshrss_description' => 'FreshRSS je čtečka kanálů RSS určená k provozu na vlastním serveru. Je to nenáročný a jednoduchý, zároveň ale mocný a konfigurovatelný nástroj.',
'github' => '<a href="https://github.com/FreshRSS/FreshRSS/issues">na Github</a>',
'github' => '<a href="https://github.com/FreshRSS/FreshRSS/issues">na GitHub</a>',
'license' => 'Licence',
'project_website' => 'Webová stránka projektu',
'title' => 'O aplikaci',
@ -45,7 +45,7 @@ return array(
'bookmark_query' => 'Uložit aktuální dotaz do záložek',
'favorites' => 'Oblíbené (%s)',
'global_view' => 'Zobrazení přehledu',
'important' => 'Important feeds', // TODO
'important' => 'Důležité kanály',
'main_stream' => 'Hlavní kanál',
'mark_all_read' => 'Označit vše jako přečtené',
'mark_cat_read' => 'Označit kategorii jako přečtenou',

View File

@ -66,9 +66,14 @@ return array(
'description' => 'Popis',
'empty' => 'Tento kanál je prázdný. Ověřte prosím, zda je stále udržován.',
'error' => 'Vyskytl se problém s kanálem. Ověřte prosím, že je vždy dostupný, pak ho aktualizujte.',
'export-as-opml' => array(
'download' => 'Stáhnout',
'help' => 'Soubor XML',
'label' => 'Exportovat jako OPML',
),
'filteractions' => array(
'_' => 'Akce filtrování',
'help' => 'Zapište jeden filtr hledání na řádek. Operators <a href="https://freshrss.github.io/FreshRSS/en/users/10_filter.html#with-the-search-field" target="_blank">see documentation</a>.', // DIRTY
'help' => 'Zapište jeden filtr hledání na řádek. Operátoři <a href="https://freshrss.github.io/FreshRSS/en/users/10_filter.html#with-the-search-field" target="_blank">viz dokumentace</a>.',
),
'information' => 'Informace',
'keep_min' => 'Minimální počet článků pro ponechání',
@ -99,8 +104,8 @@ return array(
'help' => 'Příklad: <code>descendant::img/@src</code>',
),
'item_timeFormat' => array(
'_' => 'Custom date/time format', // TODO
'help' => 'Optional. A format supported by <a href="https://php.net/datetime.createfromformat" target="_blank"><code>DateTime::createFromFormat()</code></a> such as <code>d-m-Y H:i:s</code>', // TODO
'_' => 'Vlastní formát data a času',
'help' => 'Volitelně. Formát podporovaný funkcí <a href="https://php.net/datetime.createfromformat" target="_blank"><code>DateTime::createFromFormat()</code></a> jako např.: <code>d-m-Y H:i:s</code>',
),
'item_timestamp' => array(
'_' => 'datum položky',
@ -121,47 +126,47 @@ return array(
'relative' => 'XPath (vzhledem k položce) pro:',
'xpath' => 'XPath pro:',
),
'json_dotpath' => array(
'_' => 'JSON (Dotted paths)', // TODO
'json_dotnotation' => array(
'_' => 'JSON s tečkovým zápisem (dot notation)',
'feed_title' => array(
'_' => 'feed title', // TODO
'help' => 'Example: <code>meta.title</code> or a static string: <code>"My custom feed"</code>', // TODO
'_' => 'název kanálu',
'help' => 'Příklad: <code>meta.title</code> nebo statický řetězec: <code>"Můj vlastní kanál"</code>',
),
'help' => 'A JSON dotted path uses dots between objects and brackets for arrays (e.g. <code>data.items[0].title</code>)', // TODO
'help' => 'JSON s tečkovým zápisem používá tečky mezi objekty a závorky pro pole. (e.g. <code>data.items[0].title</code>)',
'item' => array(
'_' => 'finding news <strong>items</strong><br /><small>(most important)</small>', // TODO
'help' => 'JSON path to the array containing the items, e.g. <code>newsItems</code>', // TODO
'_' => 'vyhledávání nových <strong>položek</strong><br /><small>(nejdůležitější)</small>',
'help' => 'JSON cesta k poli obsahujícímu položky, např.: <code>newsItems</code>',
),
'item_author' => 'item author', // TODO
'item_categories' => 'item tags', // TODO
'item_author' => 'autor položky',
'item_categories' => 'štítky položky',
'item_content' => array(
'_' => 'item content', // TODO
'help' => 'Key under which the content is found, e.g. <code>content</code>', // TODO
'_' => 'obsah položky',
'help' => 'Klíč, pod kterým se obsah nachází, např.: <code>content</code>',
),
'item_thumbnail' => array(
'_' => 'item thumbnail', // TODO
'help' => 'Example: <code>image</code>', // TODO
'_' => 'náhled položky',
'help' => 'Příklad: <code>image</code>',
),
'item_timeFormat' => array(
'_' => 'Custom date/time format', // TODO
'help' => 'Optional. A format supported by <a href="https://php.net/datetime.createfromformat" target="_blank"><code>DateTime::createFromFormat()</code></a> such as <code>d-m-Y H:i:s</code>', // TODO
'_' => 'Vlastní formát data a času',
'help' => 'Volitelně. Formát podporovaný funkcí <a href="https://php.net/datetime.createfromformat" target="_blank"><code>DateTime::createFromFormat()</code></a> jako např.: <code>d-m-Y H:i:s</code>',
),
'item_timestamp' => array(
'_' => 'item date', // TODO
'help' => 'The result will be parsed by <a href="https://php.net/strtotime" target="_blank"><code>strtotime()</code></a>', // TODO
'_' => 'datum položky',
'help' => 'Výsledek bude analyzován pomocí <a href="https://php.net/strtotime" target="_blank"><code>strtotime()</code></a>',
),
'item_title' => 'item title', // TODO
'item_uid' => 'item unique ID', // TODO
'item_title' => 'název položky',
'item_uid' => 'unikátní ID položky',
'item_uri' => array(
'_' => 'item link (URL)', // TODO
'help' => 'Example: <code>permalink</code>', // TODO
'_' => 'odkaz na položku (adresa URL)',
'help' => 'Příklad: <code>permalink</code>',
),
'json' => 'Dotted Path for:', // TODO
'relative' => 'Dotted Path (relative to item) for:', // TODO
'json' => 'tečkový zápis pro:',
'relative' => 'cesta s tečkovým zápisem (relativní k položce) pro:',
),
'jsonfeed' => 'JSON Feed', // TODO
'jsonfeed' => 'Zdroj JSON',
'rss' => 'RSS / Atom (výchozí)',
'xml_xpath' => 'XML + XPath', // TODO
'xml_xpath' => 'XML + XPath', // IGNORE
),
'maintenance' => array(
'clear_cache' => 'Vymazat mezipaměť',
@ -173,10 +178,10 @@ return array(
'max_http_redir' => 'Maximální počet přesměrování HTTP',
'max_http_redir_help' => 'Nastavte na 0 nebo nechte prázdné pro zakázání, -1 pro neomezené přesměrování.',
'method' => array(
'_' => 'HTTP Method', // TODO
'_' => 'Metoda HTTP',
),
'method_help' => 'The POST payload has automatic support for <code>application/x-www-form-urlencoded</code> and <code>application/json</code>', // TODO
'method_postparams' => 'Payload for POST', // TODO
'method_help' => 'Payload metody POST má automatickou podporu pro <code>application/x-www-form-urlencoded</code> a <code>application/json</code>',
'method_postparams' => 'Payload pro metodu POST',
'moved_category_deleted' => 'Když odstraníte kategorii, její kanály jsou automaticky přesunuty do <em>%s</em>.',
'mute' => 'ztlumit',
'no_selected' => 'Nejsou vybrány žádné kanály.',
@ -185,11 +190,11 @@ return array(
'_' => 'Viditelnost',
'archived' => 'Nezobrazovat (archivováno)',
'category' => 'Zobrazit v jeho kategorii',
'important' => 'Show in important feeds', // TODO
'important' => 'Zobrazit v důležitých kanálech',
'main_stream' => 'Zobrazit ve hlavním kanálu',
),
'proxy' => 'Nastavete proxy pro načítání tohoto kanálu',
'proxy_help' => 'Vyberte protokol (např.: SOCKS5) a zadejte adresu proxy (např.: <kbd>127.0.0.1:1080</kbd> or <kbd>username:password@127.0.0.1:1080</kbd>)', // DIRTY
'proxy_help' => 'Vyberte protokol (např.: SOCKS5) a zadejte adresu proxy (např.: <kbd>127.0.0.1:1080</kbd> nebo <kbd>username:password@127.0.0.1:1080</kbd>)',
'selector_preview' => array(
'show_raw' => 'Zobrazit zdrojový kód',
'show_rendered' => 'Zobrazit obsah',
@ -240,7 +245,7 @@ return array(
'subscription_tools' => 'Nástroje odběrů',
),
'tag' => array(
'auto_label' => 'Add this label to new articles', // TODO
'auto_label' => 'Přidat tento štítek k novým článkům',
'name' => 'Název',
'new_name' => 'Nový název',
'old_name' => 'Starý název',

View File

@ -19,8 +19,8 @@ return array(
'http' => 'HTTP (HTTPS für erfahrene Benutzer)',
'none' => 'Keine (gefährlich)',
'title' => 'Authentifizierung',
'token' => 'Master authentication token', // TODO
'token_help' => 'Allows access to all RSS outputs of the user as well as refreshing feeds without authentication:', // TODO
'token' => 'Master-Authentifizierungs-Token',
'token_help' => 'Zugriff auf alle vom Nutzer erstellten RSS-Feeds freigeben (inkl. Aktualisierung ohne Authenthentifizierung):',
'type' => 'Authentifizierungsmethode',
'unsafe_autologin' => 'Erlaube unsicheres automatisches Anmelden mit folgendem Format: ',
),
@ -160,8 +160,8 @@ return array(
'_' => 'Systemeinstellungen',
'auto-update-url' => 'Auto-Update URL',
'base-url' => array(
'_' => 'Base URL', // TODO
'recommendation' => 'Automatic recommendation: <kbd>%s</kbd>', // TODO
'_' => 'Base URL', // IGNORE
'recommendation' => 'Automatische Empfehlung: <kbd>%s</kbd>',
),
'cookie-duration' => array(
'help' => 'in Sekunden',
@ -187,14 +187,14 @@ return array(
),
'title' => 'Benutzer-Registrierungsformular',
),
'sensitive-parameter' => 'Sensitive parameter. Edit manually in <kbd>./data/config.php</kbd>', // TODO
'sensitive-parameter' => 'Sensitive Einstellung. Manuell in <kbd>./data/config.php</kbd> anpassbar.',
'tos' => array(
'disabled' => 'sind nicht aktiviert',
'enabled' => '<a href="./?a=tos">sind aktiv</a>',
'help' => 'So werden die <a href="https://freshrss.github.io/FreshRSS/en/admins/12_User_management.html#enable-terms-of-service-tos" target="_blank">Nutzungsbedingungen aktiviert</a>',
),
'websub' => array(
'help' => 'About <a href="https://freshrss.github.io/FreshRSS/en/users/WebSub.html" target="_blank">WebSub</a>', // TODO
'help' => 'Über <a href="https://freshrss.github.io/FreshRSS/en/users/WebSub.html" target="_blank">WebSub</a>',
),
),
'update' => array(
@ -213,7 +213,7 @@ return array(
'latest' => 'Stabile Version (“latest”)',
),
'title' => 'System aktualisieren',
'viaGit' => 'Update über git und Github.com gestartet',
'viaGit' => 'Update über git und GitHub.com gestartet',
),
'user' => array(
'admin' => 'Administrator', // IGNORE

View File

@ -106,7 +106,7 @@ return array(
'warn' => 'Dieser Account und alle damit bezogenen Daten werden gelöscht.',
),
'email' => 'E-Mail-Adresse',
'password_api' => 'Passwort-API<br /><small>(z.B. für mobile Anwendungen)</small>',
'password_api' => 'API-Passwort<br /><small>(z.B. für mobile Anwendungen)</small>',
'password_form' => 'Passwort<br /><small>(für die Anmeldemethode per Webformular)</small>',
'password_format' => 'mindestens 7 Zeichen',
'title' => 'Profil',
@ -120,20 +120,20 @@ return array(
'feeds' => 'Nach Feed filtern',
'order' => 'Nach Datum sortieren',
'search' => 'Suchbegriff',
'shareOpml' => 'Enable sharing by OPML of corresponding categories and feeds', // TODO
'shareRss' => 'Enable sharing by HTML &amp; RSS', // TODO
'shareOpml' => 'Teilen via OPML mit zugehörigen Kategorien und Feeds aktivieren',
'shareRss' => 'Teilen via HTML &amp; RSS aktivieren',
'state' => 'Eigenschaft',
'tags' => 'Nach Labels filtern',
'type' => 'Filter-Typ',
),
'get_all' => 'Alle Artikel anzeigen',
'get_all_labels' => 'Display articles with any label', // TODO
'get_all_labels' => 'Alle Artikle mit beliebigem Label anzeigen',
'get_category' => 'Kategorie „%s“ anzeigen',
'get_favorite' => 'Lieblingsartikel anzeigen',
'get_favorite' => 'Favoriten-Artikel anzeigen',
'get_feed' => 'Feed „%s“ anzeigen',
'get_important' => 'Display articles from important feeds', // TODO
'get_label' => 'Display articles with “%s” label', // TODO
'help' => 'See the <a href="https://freshrss.github.io/FreshRSS/en/users/user_queries.html" target="_blank">documentation for user queries and resharing by HTML / RSS / OPML</a>.', // TODO
'get_important' => 'Alle Artikel von den "Wichtige Feeds" anzeigen',
'get_label' => 'Artikel mit dem Label “%s” anzeigen',
'help' => 'Siehe die <a href="https://freshrss.github.io/FreshRSS/en/users/user_queries.html" target="_blank">Dokumentation für Benutzerabfragen und Teilen via HTML / RSS / OPML</a>.',
'name' => 'Name', // IGNORE
'no_filter' => 'Kein Filter',
'number' => 'Abfrage Nr. %d',
@ -141,11 +141,11 @@ return array(
'order_desc' => 'Neueste Artikel zuerst anzeigen',
'search' => 'Suche nach „%s“',
'share' => array(
'_' => 'Share this query by link', // TODO
'help' => 'Give this link if you want to share this query with anyone', // TODO
'html' => 'Shareable link to the HTML page', // TODO
'opml' => 'Shareable link to the OPML list of feeds', // TODO
'rss' => 'Shareable link to the RSS feed', // TODO
'_' => 'Diese Benutzerabfrage per Link teilen',
'help' => 'Diesen Link verteilen, um in mit Jedem zu teilen',
'html' => 'Verteilbarer Link zur HTML-Seite',
'opml' => 'Verteilbarer Link zur OPML Liste der Feeds',
'rss' => 'Verteilbarer Link zum RSS-Feed',
),
'state_0' => 'Alle Artikel anzeigen',
'state_1' => 'Gelesene Artikel anzeigen',
@ -217,9 +217,9 @@ return array(
'read' => array(
'article_open_on_website' => 'wenn der Artikel auf der Original-Webseite geöffnet wird',
'article_viewed' => 'wenn der Artikel angesehen wird',
'focus' => 'when focused (except for important feeds)', // TODO
'focus' => 'wenn angewählt (außer für "Wichtige Feeds")',
'keep_max_n_unread' => 'Max. Anzahl von ungelesenen Artikeln',
'scroll' => 'beim Scrollen bzw. Überspringen (except for important feeds)', // DIRTY
'scroll' => 'beim Scrollen bzw. Überspringen (außer für "Wichtige Feeds")',
'upon_gone' => 'wenn der Artikel nicht mehr im Feed enthalten ist',
'upon_reception' => 'beim Empfang des Artikels',
'when' => 'Artikel als gelesen markieren…',

View File

@ -61,7 +61,7 @@ return array(
'feeds_imported_with_errors' => 'Ihre Feeds sind importiert worden, aber es traten einige Fehler auf. Wenn Sie alle Dateien importiert haben, können Sie <i>Feeds aktualisieren</i> klicken.',
'file_cannot_be_uploaded' => 'Die Datei kann nicht hochgeladen werden!',
'no_zip_extension' => 'Die ZIP-Erweiterung ist auf Ihrem Server nicht vorhanden.',
'zip_error' => 'Ein Fehler trat während des ZIP-Imports auf.', // DIRTY
'zip_error' => 'Ein Fehler trat während des ZIP-Imports auf.',
),
'profile' => array(
'error' => 'Ihr Profil kann nicht geändert werden',
@ -115,11 +115,11 @@ return array(
'purge_completed' => 'Bereinigung abgeschlossen (%d Artikel gelöscht)',
),
'tag' => array(
'created' => 'Label „%s“ wurde erstellt.',
'error' => 'Label could not be updated!', // TODO
'created' => 'Das Label „%s“ wurde erstellt.',
'error' => 'Das Label konnte nicht angepasst werden!',
'name_exists' => 'Label-Name existiert bereits.',
'renamed' => 'Das Label „%s“ wurde umbenannt in „%s“.',
'updated' => 'Label has been updated.', // TODO
'updated' => 'Das Label wurde angepasst.',
),
'update' => array(
'can_apply' => 'FreshRSS wird nun auf die <strong>Version %s</strong> aktualisiert.',

View File

@ -19,7 +19,7 @@ return array(
'credits_content' => 'Einige Designelemente stammen von <a href="http://twitter.github.io/bootstrap/">Bootstrap</a>, obwohl FreshRSS dieses Framework nicht nutzt. <a href="https://gitlab.gnome.org/Archive/gnome-icon-theme-symbolic">Icons</a> stammen vom <a href="https://www.gnome.org/">GNOME project</a>. <em>Open Sans</em> Font wurde von <a href="https://fonts.google.com/specimen/Open+Sans">Steve Matteson</a> erstellt. FreshRSS basiert auf <a href="https://framagit.org/marienfressinaud/MINZ">Minz</a>, einem PHP-Framework.',
'documentation' => 'Handbuch',
'freshrss_description' => 'FreshRSS ist ein RSS-Feedsaggregator zum selbst hosten. Er ist leicht und einfach zu handhaben und gleichzeitig ein leistungsstarkes und konfigurierbares Werkzeug.',
'github' => '<a href="https://github.com/FreshRSS/FreshRSS/issues">auf Github</a>',
'github' => '<a href="https://github.com/FreshRSS/FreshRSS/issues">auf GitHub</a>',
'license' => 'Lizenz',
'project_website' => 'Projekt-Website',
'title' => 'Über',
@ -45,7 +45,7 @@ return array(
'bookmark_query' => 'Aktuelle Abfrage speichern',
'favorites' => 'Favoriten (%s)',
'global_view' => 'Globale Ansicht',
'important' => 'Important feeds', // TODO
'important' => 'Wichtige Feeds',
'main_stream' => 'Haupt-Feeds',
'mark_all_read' => 'Alle als gelesen markieren',
'mark_cat_read' => 'Kategorie als gelesen markieren',

View File

@ -66,6 +66,11 @@ return array(
'description' => 'Beschreibung',
'empty' => 'Dieser Feed ist leer. Bitte stellen Sie sicher, dass er noch gepflegt wird.',
'error' => 'Dieser Feed ist auf ein Problem gestoßen. Bitte stellen Sie sicher, dass er immer lesbar ist und aktualisieren Sie ihn dann.',
'export-as-opml' => array(
'download' => 'Download', // IGNORE
'help' => 'XML Datei',
'label' => 'Export als OPML',
),
'filteractions' => array(
'_' => 'Filteraktionen',
'help' => 'Ein Suchfilter pro Zeile. Operatoren <a href="https://freshrss.github.io/FreshRSS/en/users/10_filter.html#with-the-search-field" target="_blank">siehe Dokumentation</a>.',
@ -121,45 +126,45 @@ return array(
'relative' => 'XPath (relativ zum Artikel) für:',
'xpath' => 'XPath für:',
),
'json_dotpath' => array(
'_' => 'JSON (Dotted paths)', // TODO
'json_dotnotation' => array(
'_' => 'JSON (Punktnotation)',
'feed_title' => array(
'_' => 'feed title', // TODO
'help' => 'Example: <code>meta.title</code> or a static string: <code>"My custom feed"</code>', // TODO
'_' => 'Feed Name',
'help' => 'Beispiel: <code>meta.title</code> oder ein statischer String: <code>"Mein Feed"</code>',
),
'help' => 'A JSON dotted path uses dots between objects and brackets for arrays (e.g. <code>data.items[0].title</code>)', // TODO
'help' => 'JSON punktnotiert nutzt Punkte zwischen den Objekten und eckige Klammern für Arrays (e.g. <code>data.items[0].title</code>)',
'item' => array(
'_' => 'finding news <strong>items</strong><br /><small>(most important)</small>', // TODO
'help' => 'JSON path to the array containing the items, e.g. <code>newsItems</code>', // TODO
'_' => 'News <strong>Items</strong> finden<br /><small>(sehr wichtig)</small>',
'help' => 'JSON-Pfad zum Array, das die Items enthält, z.B. <code>newsItems</code>',
),
'item_author' => 'item author', // TODO
'item_categories' => 'item tags', // TODO
'item_author' => 'Item Autor',
'item_categories' => 'Item Hashtags',
'item_content' => array(
'_' => 'item content', // TODO
'help' => 'Key under which the content is found, e.g. <code>content</code>', // TODO
'_' => 'Item Inhalt',
'help' => 'Schlüsslwort unter dem der Inhalt gefunden wird, z.B. <code>content</code>',
),
'item_thumbnail' => array(
'_' => 'item thumbnail', // TODO
'help' => 'Example: <code>image</code>', // TODO
'_' => 'Item Vorschaubild',
'help' => 'Beispiel: <code>image</code>',
),
'item_timeFormat' => array(
'_' => 'Custom date/time format', // TODO
'help' => 'Optional. A format supported by <a href="https://php.net/datetime.createfromformat" target="_blank"><code>DateTime::createFromFormat()</code></a> such as <code>d-m-Y H:i:s</code>', // TODO
'_' => 'Benutzerdefiniertes Datum/Zeit-Format',
'help' => 'Optional. Format, das von <a href="https://php.net/datetime.createfromformat" target="_blank"><code>DateTime::createFromFormat()</code></a> unterstützt wird, wie z.B. <code>d-m-Y H:i:s</code>',
),
'item_timestamp' => array(
'_' => 'item date', // TODO
'help' => 'The result will be parsed by <a href="https://php.net/strtotime" target="_blank"><code>strtotime()</code></a>', // TODO
'_' => 'Item Datum',
'help' => 'Das Ergebnis wird von <a href="https://php.net/strtotime" target="_blank"><code>strtotime()</code></a> geparst.',
),
'item_title' => 'item title', // TODO
'item_uid' => 'item unique ID', // TODO
'item_title' => 'Item Titel',
'item_uid' => 'Item einmalige ID',
'item_uri' => array(
'_' => 'item link (URL)', // TODO
'help' => 'Example: <code>permalink</code>', // TODO
'_' => 'Item Link (URL)',
'help' => 'Beispiel: <code>permalink</code>',
),
'json' => 'Dotted Path for:', // TODO
'relative' => 'Dotted Path (relative to item) for:', // TODO
'json' => 'Punktnotation für:',
'relative' => 'Punktnotierter Pfad (relativ zum Item) für:',
),
'jsonfeed' => 'JSON Feed', // TODO
'jsonfeed' => 'JSON Feed', // IGNORE
'rss' => 'RSS / Atom (Standard)',
'xml_xpath' => 'XML + XPath', // IGNORE
),
@ -173,10 +178,10 @@ return array(
'max_http_redir' => 'Max HTTP Umleitungen',
'max_http_redir_help' => '0 oder leeres Feld = deaktiviert; -1 für unendlich viele Umleitungen',
'method' => array(
'_' => 'HTTP Method', // TODO
'_' => 'HTTP Methode',
),
'method_help' => 'The POST payload has automatic support for <code>application/x-www-form-urlencoded</code> and <code>application/json</code>', // TODO
'method_postparams' => 'Payload for POST', // TODO
'method_help' => 'Der POST-Payload unterstützt automatisch <code>application/x-www-form-urlencoded</code> und <code>application/json</code>',
'method_postparams' => 'Payload für POST',
'moved_category_deleted' => 'Wenn Sie eine Kategorie entfernen, werden deren Feeds automatisch in die Kategorie <em>%s</em> eingefügt.',
'mute' => 'Stumm schalten',
'no_selected' => 'Kein Feed ausgewählt.',
@ -185,7 +190,7 @@ return array(
'_' => 'Sichtbarkeit',
'archived' => 'Nicht anzeigen (archiviert)',
'category' => 'Zeige in eigener Kategorie',
'important' => 'Show in important feeds', // TODO
'important' => 'Zeige in "Wichtige Feeds"',
'main_stream' => 'In Haupt-Feeds zeigen',
),
'proxy' => 'Verwende einen Proxy, um den Feed abzuholen',
@ -240,7 +245,7 @@ return array(
'subscription_tools' => 'Abonnement-Tools',
),
'tag' => array(
'auto_label' => 'Add this label to new articles', // TODO
'auto_label' => 'Dieses Label zu neuen Artikeln hinzufügen',
'name' => 'Name', // IGNORE
'new_name' => 'Neuer Name',
'old_name' => 'Alter Name',

View File

@ -213,7 +213,7 @@ return array(
'latest' => 'Stable release (“latest”)', // TODO
),
'title' => 'Ενημέρωση συστήματος',
'viaGit' => 'Update via git and Github.com started', // TODO
'viaGit' => 'Update via git and GitHub.com started', // TODO
),
'user' => array(
'admin' => 'Διαχειριστής',

View File

@ -19,7 +19,7 @@ return array(
'credits_content' => 'Some design elements come from <a href="http://twitter.github.io/bootstrap/">Bootstrap</a> although FreshRSS doesnt use this framework. <a href="https://gitlab.gnome.org/Archive/gnome-icon-theme-symbolic">Icons</a> come from the <a href="https://www.gnome.org/">GNOME project</a>. <em>Open Sans</em> font police has been created by <a href="https://fonts.google.com/specimen/Open+Sans">Steve Matteson</a>. FreshRSS is based on <a href="https://framagit.org/marienfressinaud/MINZ">Minz</a>, a PHP framework.', // TODO
'documentation' => 'Documentation', // TODO
'freshrss_description' => 'FreshRSS is a self-hostable RSS aggregator and reader. It allows you to read and follow several news websites at a glance without the need to browse from one website to another. FreshRSS is lightweight, configurable, and easy to use.', // TODO
'github' => '<a href="https://github.com/FreshRSS/FreshRSS/issues">on Github</a>', // TODO
'github' => '<a href="https://github.com/FreshRSS/FreshRSS/issues">on GitHub</a>', // TODO
'license' => 'License', // TODO
'project_website' => 'Project website', // TODO
'title' => 'About', // TODO

View File

@ -66,6 +66,11 @@ return array(
'description' => 'Description', // TODO
'empty' => 'This feed is empty. Please verify that it is still maintained.', // TODO
'error' => 'This feed has encountered a problem. Please verify that it is always reachable then update it.', // TODO
'export-as-opml' => array(
'download' => 'Download', // TODO
'help' => 'XML file', // TODO
'label' => 'Export as OPML', // TODO
),
'filteractions' => array(
'_' => 'Filter actions', // TODO
'help' => 'Write one search filter per line. Operators <a href="https://freshrss.github.io/FreshRSS/en/users/10_filter.html#with-the-search-field" target="_blank">see documentation</a>.', // TODO
@ -121,13 +126,13 @@ return array(
'relative' => 'XPath (relative to item) for:', // TODO
'xpath' => 'XPath for:', // TODO
),
'json_dotpath' => array(
'_' => 'JSON (Dotted paths)', // TODO
'json_dotnotation' => array(
'_' => 'JSON (dot notation)', // TODO
'feed_title' => array(
'_' => 'feed title', // TODO
'help' => 'Example: <code>meta.title</code> or a static string: <code>"My custom feed"</code>', // TODO
),
'help' => 'A JSON dotted path uses dots between objects and brackets for arrays (e.g. <code>data.items[0].title</code>)', // TODO
'help' => 'A JSON dot notated uses dots between objects and brackets for arrays (e.g. <code>data.items[0].title</code>)', // TODO
'item' => array(
'_' => 'finding news <strong>items</strong><br /><small>(most important)</small>', // TODO
'help' => 'JSON path to the array containing the items, e.g. <code>newsItems</code>', // TODO
@ -156,8 +161,8 @@ return array(
'_' => 'item link (URL)', // TODO
'help' => 'Example: <code>permalink</code>', // TODO
),
'json' => 'Dotted Path for:', // TODO
'relative' => 'Dotted Path (relative to item) for:', // TODO
'json' => 'dot notation for:', // TODO
'relative' => 'dot notated path (relative to item) for:', // TODO
),
'jsonfeed' => 'JSON Feed', // TODO
'rss' => 'RSS / Atom (default)', // TODO

View File

@ -213,7 +213,7 @@ return array(
'latest' => 'Stable release (“latest”)', // IGNORE
),
'title' => 'Update system', // IGNORE
'viaGit' => 'Update via git and Github.com started', // IGNORE
'viaGit' => 'Update via git and GitHub.com started', // IGNORE
),
'user' => array(
'admin' => 'Administrator', // IGNORE

View File

@ -19,7 +19,7 @@ return array(
'credits_content' => 'Some design elements come from <a href="http://twitter.github.io/bootstrap/">Bootstrap</a> although FreshRSS doesnt use this framework. <a href="https://gitlab.gnome.org/Archive/gnome-icon-theme-symbolic">Icons</a> come from the <a href="https://www.gnome.org/">GNOME project</a>. <em>Open Sans</em> font police has been created by <a href="https://fonts.google.com/specimen/Open+Sans">Steve Matteson</a>. FreshRSS is based on <a href="https://framagit.org/marienfressinaud/MINZ">Minz</a>, a PHP framework.', // IGNORE
'documentation' => 'Documentation', // IGNORE
'freshrss_description' => 'FreshRSS is a self-hostable RSS aggregator and reader. It allows you to read and follow several news websites at a glance without the need to browse from one website to another. FreshRSS is lightweight, configurable, and easy to use.', // IGNORE
'github' => '<a href="https://github.com/FreshRSS/FreshRSS/issues">on Github</a>', // IGNORE
'github' => '<a href="https://github.com/FreshRSS/FreshRSS/issues">on GitHub</a>', // IGNORE
'license' => 'License', // IGNORE
'project_website' => 'Project website', // IGNORE
'title' => 'About', // IGNORE

View File

@ -66,6 +66,11 @@ return array(
'description' => 'Description', // IGNORE
'empty' => 'This feed is empty. Please verify that it is still maintained.', // IGNORE
'error' => 'This feed has encountered a problem. Please verify that it is always reachable then update it.', // IGNORE
'export-as-opml' => array(
'download' => 'Download', // IGNORE
'help' => 'XML file', // IGNORE
'label' => 'Export as OPML', // IGNORE
),
'filteractions' => array(
'_' => 'Filter actions', // IGNORE
'help' => 'Write one search filter per line. Operators <a href="https://freshrss.github.io/FreshRSS/en/users/10_filter.html#with-the-search-field" target="_blank">see documentation</a>.', // IGNORE
@ -121,13 +126,13 @@ return array(
'relative' => 'XPath (relative to item) for:', // IGNORE
'xpath' => 'XPath for:', // IGNORE
),
'json_dotpath' => array(
'_' => 'JSON (Dotted paths)', // IGNORE
'json_dotnotation' => array(
'_' => 'JSON (dot notation)', // IGNORE
'feed_title' => array(
'_' => 'feed title', // IGNORE
'help' => 'Example: <code>meta.title</code> or a static string: <code>"My custom feed"</code>', // IGNORE
),
'help' => 'A JSON dotted path uses dots between objects and brackets for arrays (e.g. <code>data.items[0].title</code>)', // IGNORE
'help' => 'A JSON dot notated uses dots between objects and brackets for arrays (e.g. <code>data.items[0].title</code>)', // IGNORE
'item' => array(
'_' => 'finding news <strong>items</strong><br /><small>(most important)</small>', // IGNORE
'help' => 'JSON path to the array containing the items, e.g. <code>newsItems</code>', // IGNORE
@ -156,8 +161,8 @@ return array(
'_' => 'item link (URL)', // IGNORE
'help' => 'Example: <code>permalink</code>', // IGNORE
),
'json' => 'Dotted Path for:', // IGNORE
'relative' => 'Dotted Path (relative to item) for:', // IGNORE
'json' => 'dot notation for:', // IGNORE
'relative' => 'dot notated path (relative to item) for:', // IGNORE
),
'jsonfeed' => 'JSON Feed', // IGNORE
'rss' => 'RSS / Atom (default)', // IGNORE

View File

@ -194,7 +194,7 @@ return array(
'help' => 'How to <a href="https://freshrss.github.io/FreshRSS/en/admins/12_User_management.html#enable-terms-of-service-tos" target="_blank">enable the Terms of Service</a>',
),
'websub' => array(
'help' => 'About <a href="https://freshrss.github.io/FreshRSS/en/users/WebSub.html" target="_blank">WebSub</a>', // TODO
'help' => 'About <a href="https://freshrss.github.io/FreshRSS/en/users/WebSub.html" target="_blank">WebSub</a>',
),
),
'update' => array(
@ -213,7 +213,7 @@ return array(
'latest' => 'Stable release (“latest”)',
),
'title' => 'Update FreshRSS',
'viaGit' => 'Update via git and Github.com started',
'viaGit' => 'Update via git and GitHub.com started',
),
'user' => array(
'admin' => 'Administrator',

View File

@ -19,7 +19,7 @@ return array(
'credits_content' => 'Some design elements come from <a href="http://twitter.github.io/bootstrap/">Bootstrap</a> although FreshRSS doesnt use this framework. <a href="https://gitlab.gnome.org/Archive/gnome-icon-theme-symbolic">Icons</a> come from the <a href="https://www.gnome.org/">GNOME project</a>. <em>Open Sans</em> font police has been created by <a href="https://fonts.google.com/specimen/Open+Sans">Steve Matteson</a>. FreshRSS is based on <a href="https://framagit.org/marienfressinaud/MINZ">Minz</a>, a PHP framework.',
'documentation' => 'Documentation',
'freshrss_description' => 'FreshRSS is a self-hostable RSS aggregator and reader. It allows you to read and follow several news websites at a glance without the need to browse from one website to another. FreshRSS is lightweight, configurable, and easy to use.',
'github' => '<a href="https://github.com/FreshRSS/FreshRSS/issues">on Github</a>',
'github' => '<a href="https://github.com/FreshRSS/FreshRSS/issues">on GitHub</a>',
'license' => 'License',
'project_website' => 'Project website',
'title' => 'About',

View File

@ -66,6 +66,11 @@ return array(
'description' => 'Description',
'empty' => 'This feed is empty. Please verify that it is still maintained.',
'error' => 'This feed has encountered a problem. Please verify that it is always reachable then update it.',
'export-as-opml' => array(
'download' => 'Download',
'help' => 'XML file',
'label' => 'Export as OPML',
),
'filteractions' => array(
'_' => 'Filter actions',
'help' => 'Write one search filter per line. Operators <a href="https://freshrss.github.io/FreshRSS/en/users/10_filter.html#with-the-search-field" target="_blank">see documentation</a>.',
@ -121,13 +126,13 @@ return array(
'relative' => 'XPath (relative to item) for:',
'xpath' => 'XPath for:',
),
'json_dotpath' => array(
'_' => 'JSON (Dotted paths)',
'json_dotnotation' => array(
'_' => 'JSON (dot notation)',
'feed_title' => array(
'_' => 'feed title',
'help' => 'Example: <code>meta.title</code> or a static string: <code>"My custom feed"</code>',
),
'help' => 'A JSON dotted path uses dots between objects and brackets for arrays (e.g. <code>data.items[0].title</code>)',
'help' => 'A JSON dot notated uses dots between objects and brackets for arrays (e.g. <code>data.items[0].title</code>)',
'item' => array(
'_' => 'finding news <strong>items</strong><br /><small>(most important)</small>',
'help' => 'JSON path to the array containing the items, e.g. <code>newsItems</code>',
@ -156,8 +161,8 @@ return array(
'_' => 'item link (URL)',
'help' => 'Example: <code>permalink</code>',
),
'json' => 'Dotted Path for:',
'relative' => 'Dotted Path (relative to item) for:',
'json' => 'dot notation for:',
'relative' => 'dot notated path (relative to item) for:',
),
'jsonfeed' => 'JSON Feed',
'rss' => 'RSS / Atom (default)',

View File

@ -213,7 +213,7 @@ return array(
'latest' => 'Stable release (“latest”)', // TODO
),
'title' => 'Actualizar sistema',
'viaGit' => 'Update via git and Github.com started', // TODO
'viaGit' => 'Update via git and GitHub.com started', // TODO
),
'user' => array(
'admin' => 'Administrador',

View File

@ -19,7 +19,7 @@ return array(
'credits_content' => 'Aunque FreshRSS no usa ese entorno, algunos elementos del diseño están obtenidos de <a href="http://twitter.github.io/bootstrap/">Bootstrap</a>. Los <a href="https://gitlab.gnome.org/Archive/gnome-icon-theme-symbolic">Iconos</a> han sido obtenidos del <a href="https://www.gnome.org/">proyecto GNOME</a>. La fuente <em>Open Sans</em> es una creación de <a href="https://fonts.google.com/specimen/Open+Sans">Steve Matteson</a>. FreshRSS usa el entorno PHP <a href="https://framagit.org/marienfressinaud/MINZ">Minz</a>.',
'documentation' => 'Documentacion',
'freshrss_description' => 'FreshRSS es un agregador de fuentes RSS de alojamiento privado. Es una herramienta potente, pero ligera y fácil de usar y configurar.',
'github' => '<a href="https://github.com/FreshRSS/FreshRSS/issues">en Github</a>',
'github' => '<a href="https://github.com/FreshRSS/FreshRSS/issues">en GitHub</a>',
'license' => 'Licencia',
'project_website' => 'Web del proyecto',
'title' => 'Acerca de',

View File

@ -66,6 +66,11 @@ return array(
'description' => 'Descripción',
'empty' => 'La fuente está vacía. Por favor, verifica que siga activa.',
'error' => 'Hay un problema con esta fuente. Por favor, veritica que esté disponible y prueba de nuevo.',
'export-as-opml' => array(
'download' => 'Download', // TODO
'help' => 'XML file', // TODO
'label' => 'Export as OPML', // TODO
),
'filteractions' => array(
'_' => 'Filtrar acciones',
'help' => 'Escribir un filtro de búsqueda por línea. Operators <a href="https://freshrss.github.io/FreshRSS/en/users/10_filter.html#with-the-search-field" target="_blank">see documentation</a>.', // DIRTY
@ -121,13 +126,13 @@ return array(
'relative' => 'XPath (relativo al elemento) para:',
'xpath' => 'XPath para:',
),
'json_dotpath' => array(
'_' => 'JSON (Dotted paths)', // TODO
'json_dotnotation' => array(
'_' => 'JSON (dot notation)', // TODO
'feed_title' => array(
'_' => 'feed title', // TODO
'help' => 'Example: <code>meta.title</code> or a static string: <code>"My custom feed"</code>', // TODO
),
'help' => 'A JSON dotted path uses dots between objects and brackets for arrays (e.g. <code>data.items[0].title</code>)', // TODO
'help' => 'A JSON dot notated uses dots between objects and brackets for arrays (e.g. <code>data.items[0].title</code>)', // TODO
'item' => array(
'_' => 'finding news <strong>items</strong><br /><small>(most important)</small>', // TODO
'help' => 'JSON path to the array containing the items, e.g. <code>newsItems</code>', // TODO
@ -156,8 +161,8 @@ return array(
'_' => 'item link (URL)', // TODO
'help' => 'Example: <code>permalink</code>', // TODO
),
'json' => 'Dotted Path for:', // TODO
'relative' => 'Dotted Path (relative to item) for:', // TODO
'json' => 'dot notation for:', // TODO
'relative' => 'dot notated path (relative to item) for:', // TODO
),
'jsonfeed' => 'JSON Feed', // TODO
'rss' => 'RSS / Atom (por defecto)',

View File

@ -213,7 +213,7 @@ return array(
'latest' => ' انتشار پایدار ("آخرین")',
),
'title' => ' FreshRSS را به روز کنید',
'viaGit' => ' به روز رسانی از طریق git و Github.com شروع شد',
'viaGit' => ' به روز رسانی از طریق git و GitHub.com شروع شد',
),
'user' => array(
'admin' => ' مدیر',

View File

@ -19,7 +19,7 @@ return array(
'credits_content' => ' برخی از عناصر طراحی از <a href="http://twitter.github.io/bootstrap/">Bootstrap</a> می آیند',
'documentation' => ' اسناد و مدارک',
'freshrss_description' => ' FreshRSS یک جمع کننده و خواننده RSS خود میزبان است. این به شما امکان می دهد بدون نیاز به مرور از یک وب سایت به وب سایت دیگر',
'github' => ' <a href="https://github.com/FreshRSS/FreshRSS/issues">در Github</a>',
'github' => ' <a href="https://github.com/FreshRSS/FreshRSS/issues">در GitHub</a>',
'license' => ' مجوز',
'project_website' => ' وب سایت پروژه',
'title' => ' در مورد',

View File

@ -66,6 +66,11 @@ return array(
'description' => ' توضیحات',
'empty' => ' این فید خالی است. لطفاً بررسی کنید که هنوز نگهداری می شود.',
'error' => ' این فید با مشکل مواجه شده است. لطفاً بررسی کنید که همیشه در دسترس است و سپس آن را به روز کنید.',
'export-as-opml' => array(
'download' => 'Download', // TODO
'help' => 'XML file', // TODO
'label' => 'Export as OPML', // TODO
),
'filteractions' => array(
'_' => ' اعمال فیلتر',
'help' => ' در هر خط یک فیلتر جستجو بنویسید. اپراتورها <a href="https://freshrss.github.io/FreshRSS/en/users/10_filter.html#with-the-search-field" target="_blank">مستندات را ببینید</a>.',
@ -121,13 +126,13 @@ return array(
'relative' => 'XPath (نسبت به مورد) برای:',
'xpath' => ' XPath برای:',
),
'json_dotpath' => array(
'_' => 'JSON (Dotted paths)', // TODO
'json_dotnotation' => array(
'_' => 'JSON (dot notation)', // TODO
'feed_title' => array(
'_' => 'feed title', // TODO
'help' => 'Example: <code>meta.title</code> or a static string: <code>"My custom feed"</code>', // TODO
),
'help' => 'A JSON dotted path uses dots between objects and brackets for arrays (e.g. <code>data.items[0].title</code>)', // TODO
'help' => 'A JSON dot notated uses dots between objects and brackets for arrays (e.g. <code>data.items[0].title</code>)', // TODO
'item' => array(
'_' => 'finding news <strong>items</strong><br /><small>(most important)</small>', // TODO
'help' => 'JSON path to the array containing the items, e.g. <code>newsItems</code>', // TODO
@ -156,8 +161,8 @@ return array(
'_' => 'item link (URL)', // TODO
'help' => 'Example: <code>permalink</code>', // TODO
),
'json' => 'Dotted Path for:', // TODO
'relative' => 'Dotted Path (relative to item) for:', // TODO
'json' => 'dot notation for:', // TODO
'relative' => 'dot notated path (relative to item) for:', // TODO
),
'jsonfeed' => 'JSON Feed', // TODO
'rss' => ' RSS / Atom (پیش‌فرض)',

View File

@ -213,7 +213,7 @@ return array(
'latest' => 'Publication stable (“latest”)',
),
'title' => 'Système de mise à jour',
'viaGit' => 'Mise à jour via git et Github.com démarrée',
'viaGit' => 'Mise à jour via git et GitHub.com démarrée',
),
'user' => array(
'admin' => 'Administrateur',

View File

@ -19,7 +19,7 @@ return array(
'credits_content' => 'Des éléments de design sont issus du <a href="http://twitter.github.io/bootstrap/">projet Bootstrap</a> bien que FreshRSS nutilise pas ce framework. Les <a href="https://gitlab.gnome.org/Archive/gnome-icon-theme-symbolic">icônes</a> sont issues du <a href="https://www.gnome.org/">projet GNOME</a>. La police <em>Open Sans</em> utilisée a été créée par <a href="https://fonts.google.com/specimen/Open+Sans">Steve Matteson</a>. FreshRSS repose sur <a href="https://framagit.org/marienfressinaud/MINZ">Minz</a>, un framework PHP.',
'documentation' => 'Documentation', // IGNORE
'freshrss_description' => 'FreshRSS est un agrégateur de flux RSS à auto-héberger. Il se veut léger et facile à prendre en main tout en étant un outil puissant et paramétrable.',
'github' => '<a href="https://github.com/FreshRSS/FreshRSS/issues">sur Github</a>',
'github' => '<a href="https://github.com/FreshRSS/FreshRSS/issues">sur GitHub</a>',
'license' => 'Licence',
'project_website' => 'Site du projet',
'title' => 'À propos',
@ -45,7 +45,7 @@ return array(
'bookmark_query' => 'Enregistrer la recherche courante',
'favorites' => 'Articles favoris (%s)',
'global_view' => 'Vue globale',
'important' => 'Flux importants', // DIRTY
'important' => 'Flux importants',
'main_stream' => 'Flux principaux',
'mark_all_read' => 'Tout marquer comme lu',
'mark_cat_read' => 'Marquer la catégorie comme lue',

View File

@ -66,6 +66,11 @@ return array(
'description' => 'Description', // IGNORE
'empty' => 'Ce flux est vide. Veuillez vérifier quil est toujours maintenu.',
'error' => 'Ce flux a rencontré un problème. Veuillez vérifier quil est toujours accessible puis actualisez-le.',
'export-as-opml' => array(
'download' => 'Télécharger',
'help' => 'Fichier XML',
'label' => 'Exporter en OPML',
),
'filteractions' => array(
'_' => 'Filtres daction',
'help' => 'Écrivez une recherche par ligne. Voir la <a href="https://freshrss.github.io/FreshRSS/fr/users/03_Main_view.html#gr%C3%A2ce-au-champ-de-recherche" target="_blank">documentation des opérateurs</a>.',
@ -121,13 +126,13 @@ return array(
'relative' => 'XPath (relatif à larticle) pour :',
'xpath' => 'XPath pour :',
),
'json_dotpath' => array(
'_' => 'JSON (Chemin)',
'json_dotnotation' => array(
'_' => 'JSON (notation point)',
'feed_title' => array(
'_' => 'titre de flux',
'help' => 'Exemple : <code>meta.title</code> ou un texte statique : <code>"Mon flux personnalisé"</code>',
),
'help' => 'Un chemin JSON utilise le point comme séparateur objet, et des crochets pour un tableau : (ex : <code>data.items[0].title</code>)',
'help' => 'La notation point pour JSON utilise le point comme séparateur objet, et des crochets pour un tableau : (ex : <code>data.items[0].title</code>)',
'item' => array(
'_' => 'trouver les <strong>articles</strong><br /><small>(cest le plus important)</small>',
'help' => 'Chemin vers le tableau contenant les articles, par exemple <code>newsItems</code>',
@ -156,8 +161,8 @@ return array(
'_' => 'lien (URL) de larticle',
'help' => 'Exemple : <code>permalink</code>',
),
'json' => 'Chemin JSON pour :',
'relative' => 'Chemin relatif à larticle pour :',
'json' => 'notation point pour :',
'relative' => 'notation point relative à larticle pour :',
),
'jsonfeed' => 'JSON Feed', // IGNORE
'rss' => 'RSS / Atom (par défaut)',

View File

@ -213,7 +213,7 @@ return array(
'latest' => 'Stable release (“latest”)', // TODO
),
'title' => 'מערכת העדכון',
'viaGit' => 'Update via git and Github.com started', // TODO
'viaGit' => 'Update via git and GitHub.com started', // TODO
),
'user' => array(
'admin' => 'Administrator', // TODO

View File

@ -66,6 +66,11 @@ return array(
'description' => 'תיאור',
'empty' => 'הזנה זו ריקה. אנא ודאו שהיא עדיין מתוחזקת.',
'error' => 'הזנה זו נתקלה בשגיאה, אנא ודאו שהיא תקינה ואז נסו שנית.',
'export-as-opml' => array(
'download' => 'Download', // TODO
'help' => 'XML file', // TODO
'label' => 'Export as OPML', // TODO
),
'filteractions' => array(
'_' => 'Filter actions', // TODO
'help' => 'Write one search filter per line. Operators <a href="https://freshrss.github.io/FreshRSS/en/users/10_filter.html#with-the-search-field" target="_blank">see documentation</a>.', // TODO
@ -121,13 +126,13 @@ return array(
'relative' => 'XPath (relative to item) for:', // TODO
'xpath' => 'XPath for:', // TODO
),
'json_dotpath' => array(
'_' => 'JSON (Dotted paths)', // TODO
'json_dotnotation' => array(
'_' => 'JSON (dot notation)', // TODO
'feed_title' => array(
'_' => 'feed title', // TODO
'help' => 'Example: <code>meta.title</code> or a static string: <code>"My custom feed"</code>', // TODO
),
'help' => 'A JSON dotted path uses dots between objects and brackets for arrays (e.g. <code>data.items[0].title</code>)', // TODO
'help' => 'A JSON dot notated uses dots between objects and brackets for arrays (e.g. <code>data.items[0].title</code>)', // TODO
'item' => array(
'_' => 'finding news <strong>items</strong><br /><small>(most important)</small>', // TODO
'help' => 'JSON path to the array containing the items, e.g. <code>newsItems</code>', // TODO
@ -156,8 +161,8 @@ return array(
'_' => 'item link (URL)', // TODO
'help' => 'Example: <code>permalink</code>', // TODO
),
'json' => 'Dotted Path for:', // TODO
'relative' => 'Dotted Path (relative to item) for:', // TODO
'json' => 'dot notation for:', // TODO
'relative' => 'dot notated path (relative to item) for:', // TODO
),
'jsonfeed' => 'JSON Feed', // TODO
'rss' => 'RSS / Atom (default)', // TODO

View File

@ -14,36 +14,36 @@ return array(
'auth' => array(
'allow_anonymous' => 'Névtelen felhasználók olvashatják az alapértelmezett felhasználó cikkeit (%s)',
'allow_anonymous_refresh' => 'Névtelen felhasználok frissíthetik a cikkeket',
'api_enabled' => ' <abbr>API</abbr> elérés engedélyezése <small>(mobil alkalmazás szükséges)</small>',
'api_enabled' => ' <abbr>API</abbr> elérés engedélyezése <small>(mobilalkalmazásokhoz szükséges)</small>',
'form' => 'Webes űrlap (hagyományos, JavaScript szükséges hozzá)',
'http' => 'HTTP (haladó felhasználóknak HTTPS-el)',
'none' => 'nincs (veszélyes)',
'title' => 'Hitelesítés',
'token' => 'Master authentication token', // TODO
'token_help' => 'Allows access to all RSS outputs of the user as well as refreshing feeds without authentication:', // TODO
'token' => 'Fő hitelesítési token',
'token_help' => 'Lehetővé teszi a hozzáférést a felhasználó összes RSS-kimenetéhez, valamint a hírfolyamok frissítéséhez hitelesítés nélkül:',
'type' => 'Hitelesítési módszer',
'unsafe_autologin' => 'Engedélyezze a nem biztonságos automata bejelentkezést a következő formátummal: ',
),
'check_install' => array(
'cache' => array(
'nok' => 'Ellenőrizd a <em>./data/cache</em> könyvtárat. HTTP szervernek írási jogosultságra van szüksége.',
'ok' => 'Jogosultságok a gyorsítótár könyvtáron rendben vannak.',
'nok' => 'Ellenőrizd a <em>./data/cache</em> könyvtárat. A HTTP szervernek írási jogosultságra van szüksége.',
'ok' => 'A jogosultságok a gyorsítótár könyvtáron rendben vannak.',
),
'categories' => array(
'nok' => 'Kategória tábla nincs helyesen konfigurálva.',
'ok' => 'Kategória tábla rendben van.',
'nok' => 'A kategória tábla nincs helyesen konfigurálva.',
'ok' => 'A kategória tábla rendben van.',
),
'connection' => array(
'nok' => 'Nem lehet kapcsolódni az adatbázishoz.',
'ok' => 'Kapcsolat az adatbázissal rendben van.',
'ok' => 'A kapcsolat az adatbázissal rendben van.',
),
'ctype' => array(
'nok' => 'Nem található a karakter típus ellenőrző könyvtár (php-ctype).',
'ok' => 'Karakter típus ellenőrző könyvtár rendben (ctype).',
'ok' => 'A karakter típus ellenőrző könyvtár rendben van (ctype).',
),
'curl' => array(
'nok' => 'Nem található a cURL könyvtár (php-curl csomag).',
'ok' => 'cURL könyvtár rendben van.',
'ok' => 'A cURL könyvtár rendben van.',
),
'data' => array(
'nok' => 'Ellenőrizd a <em>./data</em> könyvtár jogosultságait. A HTTP szervernek szüksége van írási jogosultságra.',
@ -55,25 +55,25 @@ return array(
'ok' => 'A DOM böngészésére való könyvtár telepítve van.',
),
'entries' => array(
'nok' => 'Belépési tábla nincs helyesen konfigurálva.',
'ok' => 'Belépési tábla rendben.',
'nok' => 'A belépési tábla nincs helyesen konfigurálva.',
'ok' => 'A belépési tábla rendben van.',
),
'favicons' => array(
'nok' => 'Ellenőrizd a <em>./data/favicons</em> könyvtár jogosultságait.A HTTP szervernek szüksége van írási jogosultságra.',
'ok' => 'A favicons könyvtár jogosultságai megfelelőek.',
),
'feeds' => array(
'nok' => 'Hírforrás tábla nincs megfelelően konfigurálva.',
'ok' => 'Hírforrás tábla ok.',
'nok' => 'A hírforrás tábla nincs megfelelően konfigurálva.',
'ok' => 'A hírforrás tábla ok.',
),
'fileinfo' => array(
'nok' => 'Fileinfo könyvtár nem található (fileinfo csomag).',
'ok' => 'Fileinfo könyvtár rendben van.',
'nok' => 'A PHP fileinfo könyvtár nem található (fileinfo csomag).',
'ok' => 'A fileinfo könyvtár rendben van.',
),
'files' => 'Fájl telepítés',
'json' => array(
'nok' => 'JSON nem található (php-json csomag).',
'ok' => 'JSON kiegészítő telepítve.',
'nok' => 'A JSON nem található (php-json csomag).',
'ok' => 'A JSON kiegészítő telepítve van.',
),
'mbstring' => array(
'nok' => 'Az ajánlott mbstring könyvtár nem található a Unicode kódoláshoz.',
@ -85,7 +85,7 @@ return array(
),
'pdo' => array(
'nok' => 'Nem található PDO vagy legalább egy támogató driver (pdo_mysql, pdo_sqlite, pdo_pgsql).',
'ok' => 'PDO telepítve és legalább egy támogatott driver (pdo_mysql, pdo_sqlite, pdo_pgsql).',
'ok' => 'A PDO telepítve és van legalább egy támogatott driver (pdo_mysql, pdo_sqlite, pdo_pgsql).',
),
'php' => array(
'_' => 'PHP telepítés',
@ -99,15 +99,15 @@ return array(
'title' => 'Telepítés ellenőrzése',
'tokens' => array(
'nok' => 'Ellenőrizd a <em>./data/tokens</em> könyvtár jogosultságait. A HTTP szervernek szüksége van írási jogosultságra.',
'ok' => 'Token könyvtár írási jogosultságai rendben.',
'ok' => 'A token könyvtár írási jogosultságai rendben vannak.',
),
'users' => array(
'nok' => 'Ellenőrizd a <em>./data/users</em> könyvtár írási jogosultságait. A HTTP szervernek szüksége van írási jogosultságra.',
'ok' => 'Users könyvtár írási jogosultságai rendben.',
'ok' => 'A users könyvtár írási jogosultságai rendben vannak.',
),
'zip' => array(
'nok' => 'Nem található ZIP kiegészítő (php-zip csomag).',
'ok' => 'ZIP kiegészítő telepítve.',
'ok' => 'A ZIP kiegészítő telepítve van.',
),
),
'extensions' => array(
@ -133,7 +133,7 @@ return array(
'_' => 'Statisztika',
'all_feeds' => 'Minden hírforrás',
'category' => 'Kategória',
'entry_count' => 'Újak száma',
'entry_count' => 'Bejegyzések száma',
'entry_per_category' => 'Bejegyzések kategóriánként',
'entry_per_day' => 'Bejegyzések naponta (utolsó 30 nap)',
'entry_per_day_of_week' => 'A hét napjain (átlag: %.2f bejegyzés)',
@ -146,7 +146,7 @@ return array(
'main' => 'Fő statisztika',
'main_stream' => 'Minden cikk',
'no_idle' => 'Nincsenek tétlen hírforrások!',
'number_entries' => '%d cikkek',
'number_entries' => '%d cikk',
'percent_of_total' => '% az összesből',
'repartition' => 'Cikkek eloszlása',
'status_favorites' => 'Kedvencek',
@ -158,14 +158,14 @@ return array(
),
'system' => array(
'_' => 'Rendszer konfiguráció',
'auto-update-url' => 'Szerver URL automata frissítése',
'auto-update-url' => 'Automatikus frissítés szerver URL',
'base-url' => array(
'_' => 'Alap URL',
'recommendation' => 'Automatikus ajánlás: <kbd>%s</kbd>',
),
'cookie-duration' => array(
'help' => 'másodpercekben',
'number' => 'Bejelentkezési sütik megtartási ideje',
'number' => 'Bejelentkezve maradás időtartam',
),
'force_email_validation' => 'Kötelező email cím visszaigazolás',
'instance-name' => 'Instance név',
@ -228,8 +228,8 @@ return array(
'language' => 'Nyelv',
'last_user_activity' => 'Utolsó felhasználói aktivitás',
'list' => 'Felhasználói lista',
'number' => ' %d fiók létrehozva',
'numbers' => ' %d fiók van létrehozva',
'number' => '%d fiók létrehozva',
'numbers' => '%d fiók van létrehozva',
'password_form' => 'Jelszó<br /><small>(a Webes űrlap belépési módszerhez)</small>',
'password_format' => 'Legalább 7 karakter',
'title' => 'Felhasználók kezelése',

View File

@ -42,7 +42,7 @@ return array(
'display_authors' => 'Szerzők',
'entry' => 'Cikk ikonok',
'publication_date' => 'Kiadás ideje',
'related_tags' => 'Cikk tag-ek',
'related_tags' => 'Cikk címkék',
'sharing' => 'Megosztás',
'summary' => 'Összegzés',
'top_line' => 'Felső sor',
@ -57,10 +57,10 @@ return array(
'_' => 'Téma',
'deprecated' => array(
'_' => 'Elavult',
'description' => 'Ez a téma már nem támogatott és nem lesz elérhető <a href="https://freshrss.github.io/FreshRSS/en/users/05_Configuration.html#theme" target="_blank">a FreshRSS következő verzióiban</a>',
'description' => 'Ez a téma már nem támogatott és nem lesz elérhető <a href="https://freshrss.github.io/FreshRSS/en/users/05_Configuration.html#theme" target="_blank">a FreshRSS következő verzióiban</a>',
),
),
'theme_not_available' => 'A%s” téma már nem elérhető. Válassz egy másik témát.',
'theme_not_available' => 'A(z) „%s” téma már nem elérhető. Válassz egy másik témát.',
'thumbnail' => array(
'label' => 'Miniatűr',
'landscape' => 'Fekvő',
@ -113,61 +113,61 @@ return array(
),
'query' => array(
'_' => 'Felhasználói lekérdezések',
'deprecated' => 'Ez a lekérdezés már nem érvényes.A hivatkozott kategória vagy hírforrás törölve lett.',
'deprecated' => 'Ez a lekérdezés már nem érvényes. A hivatkozott kategória vagy hírforrás törölve lett.',
'filter' => array(
'_' => 'Alkalmazott szűrő:',
'categories' => 'Rendezés kategória szerint',
'feeds' => 'Rendezés hírforrás szerint',
'order' => 'Rendezés dátum szerint',
'search' => 'Kifejezés',
'shareOpml' => 'Enable sharing by OPML of corresponding categories and feeds', // TODO
'shareRss' => 'Enable sharing by HTML &amp; RSS', // TODO
'shareOpml' => 'Engedélyezze a megfelelő kategóriák és hírcsatornák OPML-alapú megosztását',
'shareRss' => 'Engedélyezze a HTML &amp; RSS megosztást',
'state' => 'Státusz',
'tags' => 'Rendezés címke szerint',
'type' => 'Típus',
),
'get_all' => 'Minden cikk megjelenítése',
'get_all_labels' => 'Display articles with any label', // TODO
'get_category' => 'Listáz “%s” kategóriát',
'get_all_labels' => 'Cikkek megjelenítése bármilyen címkével',
'get_category' => '„%s” kategória megjelenítése',
'get_favorite' => 'Kedvenc cikkek megjelenítése',
'get_feed' => 'Listáz “%s” hírforrást',
'get_important' => 'Display articles from important feeds', // TODO
'get_label' => 'Display articles with “%s” label', // TODO
'help' => 'See the <a href="https://freshrss.github.io/FreshRSS/en/users/user_queries.html" target="_blank">documentation for user queries and resharing by HTML / RSS / OPML</a>.', // TODO
'get_feed' => '„%s” hírforrás megjelenítése',
'get_important' => 'Cikkek megjelenítése fontos hírforrásokból',
'get_label' => ' „%s” címkével rendelkező cikkek megjelenítése',
'help' => 'Lásd a <a href="https://freshrss.github.io/FreshRSS/en/users/user_queries.html" target="_blank"> dokumentációt a felhasználói lekérdezések és HTML/RSS/OPML megosztás témákban</a>.',
'name' => 'Név',
'no_filter' => 'Nincs szűrés',
'number' => 'Lekérdezés %d',
'number' => '%d lekérdezés',
'order_asc' => 'Régebbi cikkek előre',
'order_desc' => 'Újabb cikkek előre',
'search' => 'Keresse a “%s”',
'search' => 'Keresés erre „%s”',
'share' => array(
'_' => 'Share this query by link', // TODO
'help' => 'Give this link if you want to share this query with anyone', // TODO
'html' => 'Shareable link to the HTML page', // TODO
'opml' => 'Shareable link to the OPML list of feeds', // TODO
'rss' => 'Shareable link to the RSS feed', // TODO
'_' => 'Lekérdezés megosztása linkkel',
'help' => 'Ezt a linket küldd el hogy megoszd a lekérdezést bárkivel',
'html' => 'Megosztható link a HTML oldalhoz',
'opml' => 'Megosztható link az OPML hírforrás listához',
'rss' => 'Megosztható link az RSS hírforráshoz',
),
'state_0' => 'Minden cikk',
'state_1' => 'Olvasott cikkek',
'state_2' => 'Olvasatlan cikkek',
'state_3' => 'Minden cikk',
'state_4' => 'Kedvenc cikkek',
'state_5' => 'Kedvenc olvasott cikkek',
'state_6' => 'Kedvenc olvasatlan cikkek',
'state_7' => 'Kedvenc cikkek',
'state_8' => 'Nem kedvenc cikkek',
'state_9' => 'Nem kedvenc olvasott cikkek',
'state_10' => 'Nem kedvenc olvasatlan cikkek',
'state_11' => 'Nem kedvenc cikkek',
'state_12' => 'Minden cikk',
'state_13' => 'Olvasott cikkek',
'state_14' => 'Olvasatlan cikkek',
'state_15' => 'Minden cikk',
'state_0' => 'Minden cikk megjelenítése',
'state_1' => 'Olvasott cikkek megjelenítése',
'state_2' => 'Olvasatlan cikkek megjelenítése',
'state_3' => 'Minden cikk megjelenítése',
'state_4' => 'Kedvenc cikkek megjelenítése',
'state_5' => 'Kedvenc olvasott cikkek megjelenítése',
'state_6' => 'Kedvenc olvasatlan cikkek megjelenítése',
'state_7' => 'Kedvenc cikkek megjelenítése',
'state_8' => 'Nem kedvenc cikkek megjelenítése',
'state_9' => 'Nem kedvenc olvasott cikkek megjelenítése',
'state_10' => 'Nem kedvenc olvasatlan cikkek megjelenítése',
'state_11' => 'Nem kedvenc cikkek megjelenítése',
'state_12' => 'Minden cikk megjelenítése',
'state_13' => 'Olvasott cikkek megjelenítése',
'state_14' => 'Olvasatlan cikkek megjelenítése',
'state_15' => 'Minden cikk megjelenítése',
'title' => 'Felhasználói lekérdezések',
),
'reading' => array(
'_' => 'Olvasás',
'after_onread' => '“minden megjelölése olvasottként” után,',
'after_onread' => 'Utána „minden megjelölése olvasottként”,',
'always_show_favorites' => 'Minden cikk megjelenítése a kedvencekben alapértelmezetten',
'article' => array(
'authors_date' => array(
@ -178,7 +178,7 @@ return array(
'none' => 'Sehol',
),
'feed_name' => array(
'above_title' => 'Cím/Tag felett',
'above_title' => 'Cím/címke felett',
'none' => 'Sehol',
'with_authors' => 'A szerzők és dátum sorban',
),
@ -192,13 +192,13 @@ return array(
),
'tags_max' => array(
'_' => 'Címkék maximális száma',
'help' => '0 : minden címke mutatása összecsukás nélkül',
'help' => '0 esetén: minden címke mutatása összecsukás nélkül',
),
),
'articles_per_page' => 'Cikkek száma oldalanként',
'auto_load_more' => 'Még több cikk betöltése, ha a lap aljához ért',
'auto_remove_article' => 'Cikkek elrejtése elolvasás után',
'confirm_enabled' => 'Megerősítő jóváhagyás a "jelölje mindet olvasottként" végrehajtása előtt',
'confirm_enabled' => 'Megerősítő jóváhagyás a „jelölje mindet olvasottként” végrehajtása előtt',
'display_articles_unfolded' => 'Legyenek a cikkek kibontva alapértelmezésben',
'display_categories_unfolded' => 'Mely kategóriák legyenek kibontva',
'headline' => array(
@ -209,10 +209,10 @@ return array(
'misc' => 'Egyebek',
'view' => 'Nézet',
),
'hide_read_feeds' => 'Rejtse el a kategóriákat és hírforrásokat ahol nincs olvasatlan cikk (nem működik egyszerre a "Minden cikk megjelenítése" beállítással)',
'hide_read_feeds' => 'Rejtse el a kategóriákat és hírforrásokat ahol nincs olvasatlan cikk (nem működik egyszerre a „Minden cikk megjelenítése” beállítással)',
'img_with_lazyload' => 'Használjon <em>lazy load</em> módot a képek betöltésére',
'jump_next' => 'ugorjon a következő olvasatlan gyermekre (hírforrás vagy kategória)',
'mark_updated_article_unread' => 'Frissített cikkek jelölése olvasatlanként',
'jump_next' => 'ugorjon a következő olvasatlan testvérre (hírforrás vagy kategória)',
'mark_updated_article_unread' => 'Frissített cikkek megjelölése olvasatlanként',
'number_divided_when_reader' => 'Olvasó módban 2-vel osztható szám.',
'read' => array(
'article_open_on_website' => 'ha a cikk megnyitásra került az eredeti weblapon',
@ -222,27 +222,27 @@ return array(
'scroll' => 'görgetés közben (kivéve a fontos hírforrásokat)',
'upon_gone' => 'ha már nincs benne a hírforrásban',
'upon_reception' => 'a cikk beérkezésekor',
'when' => 'Jelölje a cikket olvasottként…',
'when' => 'Jelöljön meg egy cikket olvasottként…',
'when_same_title' => 'ha egy azonos című cikk már létezik a legújabb <i>n</i> számú cikk között',
),
'show' => array(
'_' => 'Megjelenített cikkek',
'active_category' => 'Aktív kategória',
'adaptive' => 'Adaptív',
'all_articles' => 'Mindegyik cikk',
'adaptive' => 'Megjelenítés beállítása',
'all_articles' => 'Mindegyik cikk megjelenítése',
'all_categories' => 'Mindegyik kategória',
'no_category' => 'Egyik sem',
'no_category' => 'Nincs kategória',
'remember_categories' => 'Emlékezzen a kibontott kategóriákra',
'unread' => 'Csak az olvasatlan cikkek',
),
'show_fav_unread_help' => 'A címkékre is vonatkozik',
'sides_close_article' => 'Cikk szövegrészén kívüli kattintás bezárja a cikket',
'sides_close_article' => 'A cikk szövegrészén kívüli kattintás bezárja a cikket',
'sort' => array(
'_' => 'Rendezési sorrend',
'newer_first' => 'Újabb elöl',
'older_first' => 'Régebbi elöl',
),
'sticky_post' => 'Cikk gördüljön felülre mikor megnyitásra kerül',
'sticky_post' => 'A cikk gördüljön felülre, amikor megnyitásra kerül',
'title' => 'Olvasás',
'view' => array(
'default' => 'Alapértelmezett nézet',
@ -265,7 +265,7 @@ return array(
'remove' => 'Megosztási mód eltávolítása',
'shaarli' => 'Shaarli', // IGNORE
'share_name' => 'Megosztás neve',
'share_url' => 'Használt megosztási URL',
'share_url' => 'URL megosztása a használathoz',
'title' => 'Sharing', // IGNORE
'twitter' => 'Twitter', // IGNORE
'wallabag' => 'wallabag', // IGNORE
@ -275,7 +275,7 @@ return array(
'article_action' => 'Cikk műveletek',
'auto_share' => 'Megosztás',
'auto_share_help' => 'Ha csak egy megosztási mód van, az lesz használva. Egyébként, a megosztási módok a számukkal elérhetőek.',
'close_dropdown' => 'Menü bezárása',
'close_dropdown' => 'Menük bezárása',
'collapse_article' => 'Összecsuk',
'first_article' => 'Első cikk megnyitása',
'focus_search' => 'Ugrás a keresődobozra',
@ -304,7 +304,7 @@ return array(
'title' => 'Gyorsgombok',
'toggle_media' => 'Média indítás/megállítás',
'user_filter' => 'Felhasználói lekérdezések elfogadása',
'user_filter_help' => 'H csak egy felhasználói lekérdezés van azt használja. Egyébként, a lekérdezések elérhetők a számuk szerint.',
'user_filter_help' => 'Ha csak egy felhasználói lekérdezés van, akkor az kerül felhasználásra. Ellenkező esetben a lekérdezések a számuk alapján érhetőek el.',
'views' => 'Nézetek',
),
'user' => array(

View File

@ -12,7 +12,7 @@
return array(
'access' => array(
'denied' => 'Nincs jogosultságod megnézni ezt a lapot',
'denied' => 'Nincs jogosultságod megnézni ezt az oldalt',
'not_found' => 'A kért oldal nem található',
),
'admin' => array(
@ -26,40 +26,40 @@ return array(
),
'auth' => array(
'login' => array(
'invalid' => 'Belépés érvénytelen',
'success' => 'Belépés sikeres',
'invalid' => 'Érvénytelen belépés',
'success' => 'Csatlakozott',
),
'logout' => array(
'success' => 'Kilépés sikeres',
'success' => 'Lecsatlakozott',
),
),
'conf' => array(
'error' => 'Hiba történt a konfiguráció mentése közben',
'query_created' => 'Lekérdezés “%s” létrehozása megtörtént.',
'query_created' => 'A(z) „%s” lekérdezés létrehozása megtörtént.',
'shortcuts_updated' => 'Gyorsgombok frissítve',
'updated' => 'Beállítások frissítve',
),
'extensions' => array(
'already_enabled' => '%s már be van kapcsolva',
'cannot_remove' => '%s nem távolítható el',
'already_enabled' => 'A(z) %s már be van kapcsolva',
'cannot_remove' => 'A(z) %s nem távolítható el',
'disable' => array(
'ko' => '%s nem kapcsolható ki. <a href="%s">nézd meg a FreshRSS log-okat</a> a részletekért.',
'ok' => '%s kikapcsolása sikeres',
'ko' => 'A(z) %s nem kapcsolható ki. <a href="%s">nézd meg a FreshRSS log-okat</a> a részletekért.',
'ok' => 'A(z) %s kikapcsolása sikeres',
),
'enable' => array(
'ko' => '%s nem kapcsolható be. <a href="%s">nézd meg a FreshRSS log-okat</a> a részletekért.',
'ok' => '%s bekapcsolása sikeres',
'ko' => 'A(z) %s nem kapcsolható be. <a href="%s">nézd meg a FreshRSS log-okat</a> a részletekért.',
'ok' => 'A(z) %s bekapcsolása sikeres',
),
'no_access' => 'Nincs hozzáférésed a %s',
'not_enabled' => '%s nincs bekapcsolva',
'not_found' => '%s nem létezik',
'removed' => '%s eltávolítva',
'no_access' => 'Nincs hozzáférésed ehhez: %s',
'not_enabled' => 'A(z) %s nincs bekapcsolva',
'not_found' => 'A(z) %s nem létezik',
'removed' => 'A(z) %s eltávolítva',
),
'import_export' => array(
'export_no_zip_extension' => 'A ZIP kiterjesztés nem létezik a szerveren. Exportáld a fájlokat egyesével.',
'feeds_imported' => 'A hírlisták importálása megtörtént és most frissítésre kerülnek / A hírlistáit importáltuk. Ha végzett az importálással, most rákattinthat a <i>Hírlisták frissítése</i> gombra.',
'feeds_imported_with_errors' => 'A hírlisták importálása megtörtént, de néhány hiba történt / A hírlistáit importáltuk, de néhány hiba történt. Ha végzett az importálással, most rákattinthat a <i>Hírlisták frissítése</i> gombra.',
'file_cannot_be_uploaded' => 'Fájl nem feltölthető!',
'file_cannot_be_uploaded' => 'A fájl nem feltölthető!',
'no_zip_extension' => 'A ZIP kiterjesztés nem létezik a szerveren.',
'zip_error' => 'Hiba történt a ZIP feldolgozása közben.',
),
@ -90,14 +90,14 @@ return array(
'actualized' => '<em>%s</em> frissítése megtörtént',
'actualizeds' => 'RSS hírforrások frissítése megtörtént',
'added' => 'RSS hírforrás <em>%s</em> hozzáadása megtörtént',
'already_subscribed' => 'Már fel vagy iratkozva a <em>%s</em> hírforrásra',
'already_subscribed' => 'Már fel vagy iratkozva a(z) <em>%s</em> hírforrásra',
'cache_cleared' => '<em>%s</em> gyorsítótára kiürítve',
'deleted' => 'Hírforrás törlése megtörtént',
'error' => 'Hírforrás frissítése nem lehetséges',
'internal_problem' => 'A hírforrást nem sikerült hozzáadni. <a href="%s">Nézd meg a FreshRSS logokat</a> a részletekért. Megpróbálhatod mindenképp hozzáadni, ha az <code>#force_feed</code> szöveget az URL után írod.',
'invalid_url' => 'URL <em>%s</em> érvénytelen',
'n_actualized' => '%d hírforrások frissítése kész',
'n_entries_deleted' => '%d cikkek törlése kész',
'n_entries_deleted' => '%d cikk törlése kész',
'no_refresh' => 'Nincs több frissíthető hírforrás',
'not_added' => '<em>%s</em> nem adható hozzá',
'not_found' => 'Hírforrás nem található',
@ -115,16 +115,16 @@ return array(
'purge_completed' => 'Törlés kész (%d cikkek törölve)',
),
'tag' => array(
'created' => 'Címke %s” létrehozva.',
'error' => 'Label could not be updated!', // TODO
'created' => 'Címke %s” létrehozva.',
'error' => 'Nem sikerült a címke frissítése!',
'name_exists' => 'Címke név már létezik.',
'renamed' => 'Címke “%s” átnevezve “%s”.',
'updated' => 'Label has been updated.', // TODO
'renamed' => 'Címke „%s” átnevezve „%s”.',
'updated' => 'Címke frissítése megtörtént.',
),
'update' => array(
'can_apply' => 'Egy FreshRSS frissítés elérhető : <strong>Verzió %s</strong>.',
'error' => 'A frissítési folyamat hibába ütközött: %s',
'file_is_nok' => 'Egy frissítés elérhető a FreshRSS-hez (<strong>Verzió %s</strong>), de ellenőrizd a jogosultságokat a <em>%s</em> könyvtáron. A HTTP szervernek szüksége van írási jogosultságra.',
'file_is_nok' => 'Egy frissítés elérhető a FreshRSS-hez (<strong>Verzió %s</strong>), de ellenőrizd a jogosultságokat a(z) <em>%s</em> könyvtáron. A HTTP szervernek szüksége van írási jogosultságra.',
'finished' => 'Frissítés kész!',
'none' => 'Nem áll rendelkezésre új frissítés',
'server_not_found' => 'Frissítési szerver nem található. [%s]',

View File

@ -27,7 +27,7 @@ return array(
'filter' => 'Szűrő',
'import' => 'Import', // IGNORE
'load_default_shortcuts' => 'Alapértelmezett gyorsgombok visszaállítása',
'manage' => 'Beállítás',
'manage' => 'Kezelés',
'mark_read' => 'Megjelölés olvasottként',
'open_url' => 'URL Megnyitása',
'promote' => 'Előléptet',
@ -129,7 +129,7 @@ return array(
'confirm_action' => 'Biztos vagy benne hogy végrehajtod ezt a műveletet? A művelet nem megszakítható!',
'confirm_action_feed_cat' => 'Biztos hogy végrehajtod ezt a műveletet? Minden kapcsolódó kedvenc és lekérdezés törölve lesz. Nem lehet megszakítani!',
'feedback' => array(
'body_new_articles' => ' %%d db új cikk olvasható a FreshRSS-ben.',
'body_new_articles' => '%%d db új cikk olvasható a FreshRSS-ben.',
'body_unread_articles' => '(olvasatlan: %%d)',
'request_failed' => 'Egy művelet nem sikerült, lehetséges hogy az internet kapcsolattal vannak problémák.',
'title_new_articles' => 'FreshRSS: új cikkek!',
@ -166,7 +166,7 @@ return array(
),
'menu' => array(
'about' => 'Névjegy',
'account' => 'Adatlap',
'account' => 'Fiók',
'admin' => 'Adminisztráció',
'archiving' => 'Archiválás',
'authentication' => 'Hitelesítés',
@ -242,7 +242,7 @@ return array(
),
'stream' => array(
'load_more' => 'Több cikk betöltése',
'mark_all_read' => 'Legyen mind olvasott',
'mark_all_read' => 'Minden megjelölése olvasottként',
'nothing_to_load' => 'Nincs több cikk',
),
);

View File

@ -16,7 +16,7 @@ return array(
'agpl3' => '<a href="https://www.gnu.org/licenses/agpl-3.0.html">AGPL 3</a>', // IGNORE
'bugs_reports' => 'Hiba jelentések',
'credits' => 'Credits', // IGNORE
'credits_content' => 'Néhány dizájn elem a <a href="http://twitter.github.io/bootstrap/">Bootstrap</a> segítségével működik, habár a FreshRSS nem használja ezt a framework-öt. Az <a href="https://gitlab.gnome.org/Archive/gnome-icon-theme-symbolic">Ikonok</a> a <a href="https://www.gnome.org/">GNOME projekt-ből származnak</a>. <em>Open Sans</em> betűtípust készítette <a href="https://fonts.google.com/specimen/Open+Sans">Steve Matteson</a>. FreshRSS a <a href="https://framagit.org/marienfressinaud/MINZ">Minz</a> PHP keretrendszeren alapul.',
'credits_content' => 'Néhány dizájn elem a <a href="http://twitter.github.io/bootstrap/">Bootstrap</a> segítségével működik, habár a FreshRSS nem használja ezt a framework-öt. Az <a href="https://gitlab.gnome.org/Archive/gnome-icon-theme-symbolic">Ikonok</a> a <a href="https://www.gnome.org/">GNOME projekt-ből származnak</a>. <em>Open Sans</em> betűtípust készítette <a href="https://fonts.google.com/specimen/Open+Sans">Steve Matteson</a>. A FreshRSS a <a href="https://framagit.org/marienfressinaud/MINZ">Minz</a> PHP keretrendszeren alapul.',
'documentation' => 'Dokumentáció',
'freshrss_description' => 'A FreshRSS egy saját magunk által host-olható RSS hírgyűjtő és olvasó. Lehetővé teszi hogy kövess és olvass sok híroldalt egy pillantás alatt anélkül hogy mindegyiket meglátogatnád egyesével. A FreshRSS könnyű, gyors, jól konfigurálható, és könnyen használható.',
'github' => '<a href="https://github.com/FreshRSS/FreshRSS/issues">GitHub-on</a>',
@ -47,7 +47,7 @@ return array(
'global_view' => 'Globális nézet',
'important' => 'Fontos hírforrások',
'main_stream' => 'Minden cikk',
'mark_all_read' => 'Legyen mind olvasott',
'mark_all_read' => 'Minden megjelölése olvasottként',
'mark_cat_read' => 'Kategória megjelölése olvasottként',
'mark_feed_read' => 'Hírforrás megjelölése olvasottként',
'mark_selection_unread' => 'Kijelöltek olvasatlanná tétele',
@ -58,7 +58,7 @@ return array(
'queries' => 'Felhasználói lekérdezések',
'read' => 'Olvasottak megjelenítése',
'reader_view' => 'Olvasó nézet',
'rss_view' => 'RSS hírforrás megnyitása',
'rss_view' => 'RSS hírforrás',
'search_short' => 'Keresés',
'starred' => 'Kedvencek megjelenítése',
'stats' => 'Statisztika',

View File

@ -20,7 +20,7 @@ return array(
),
'auth' => array(
'form' => 'Webes űrlap (hagyományos, JavaScript-et igényel)',
'http' => 'HTTP (haladó felhasználóknak HTTPSel)',
'http' => 'HTTP (haladó felhasználóknak HTTPS-el)',
'none' => 'Egyik sem (veszélyes)',
'password_form' => 'Jelszó<br /><small>(a Webes űrlap belépési módszerhez)</small>',
'password_format' => 'Legalább 7 karakter',
@ -41,9 +41,9 @@ return array(
),
'check' => array(
'_' => 'Ellenőrzés',
'already_installed' => 'FreshRSS már telepítve van!',
'already_installed' => 'Azt észleltük, hogy a FreshRSS már telepítve van!',
'cache' => array(
'nok' => 'Ellenőrizd a jogosultságokat a <em>%1$s</em> könyvtáron a <em>%2$s</em> felhasználónak. A HTTP szervernek szüksége van írási jogosultságra.',
'nok' => 'Ellenőrizd a jogosultságokat a(z) <em>%1$s</em> könyvtáron a(z) <em>%2$s</em> felhasználónak. A HTTP szervernek szüksége van írási jogosultságra.',
'ok' => 'A cache könyvtár jogosultságai rendben vannak.',
),
'ctype' => array(
@ -55,7 +55,7 @@ return array(
'ok' => 'A cURL könyvtár telepítve van.',
),
'data' => array(
'nok' => 'Ellenőrizd a <em>%1$s</em> könyvtáron a <em>%2$s</em> felhasználónak. A HTTP szervernek szüksége van írási jogosultságra.',
'nok' => 'Ellenőrizd a(z) <em>%1$s</em> könyvtáron a(z) <em>%2$s</em> felhasználónak. A HTTP szervernek szüksége van írási jogosultságra.',
'ok' => 'A data könyvtár jogosultságai rendben vannak.',
),
'dom' => array(
@ -63,16 +63,16 @@ return array(
'ok' => 'A DOM böngészésére való könyvtár telepítve van.',
),
'favicons' => array(
'nok' => 'Ellenőrizd a <em>%1$s</em> könyvtár jogosultságait a <em>%2$s</em> felhasználónak. A HTTP szervernek szüksége van írási jogosultságra.',
'nok' => 'Ellenőrizd a(z) <em>%1$s</em> könyvtár jogosultságait a(z) <em>%2$s</em> felhasználónak. A HTTP szervernek szüksége van írási jogosultságra.',
'ok' => 'A favicons könyvtár jogosultságai rendben vannak.',
),
'fileinfo' => array(
'nok' => 'PHP fileinfo könyvtár nem található (fileinfo csomag).',
'nok' => 'A PHP fileinfo könyvtár nem található (fileinfo csomag).',
'ok' => 'A fileinfo könyvtár telepítve van.',
),
'json' => array(
'nok' => 'Nem található a JSON elemző könyvtár (JSON parse).',
'ok' => 'A JSON parse könyvtár telepítve van.',
'nok' => 'Nem található a JSON elemző könyvtár.',
'ok' => 'A JSON elemző könyvtár telepítve van.',
),
'mbstring' => array(
'nok' => 'Az ajánlott mbstring könyvtár nem található a Unicode kódoláshoz',
@ -84,25 +84,25 @@ return array(
),
'pdo' => array(
'nok' => 'Nem található PDO vagy legalább egy támogató driver (pdo_mysql, pdo_sqlite, pdo_pgsql).',
'ok' => 'PDO telepítve és legalább egy támogatott driver (pdo_mysql, pdo_sqlite, pdo_pgsql).',
'ok' => 'A PDO telepítve és van legalább egy támogatott driver (pdo_mysql, pdo_sqlite, pdo_pgsql).',
),
'php' => array(
'nok' => 'A PHP verzió %s, de a FreshRSS számára szükséges verzió %s.',
'nok' => 'A PHP verzió %s, de a FreshRSS számára szükséges verzió %s.',
'ok' => 'A PHP verzió, %s, kompatibilis a FreshRSS-el.',
),
'reload' => 'Újra ellenőrzés',
'tmp' => array(
'nok' => 'Ellenőrizd a <em>%1$s</em> könyvtár jogosultságait a <em>%2$s</em> felhasználónak. A HTTP szervernek szüksége van írási jogosultságra.',
'ok' => 'Temp könyvtár jogosultságai rendben vannak.',
'nok' => 'Ellenőrizd a(z) <em>%1$s</em> könyvtár jogosultságait a(z) <em>%2$s</em> felhasználónak. A HTTP szervernek szüksége van írási jogosultságra.',
'ok' => 'A temp könyvtár jogosultságai rendben vannak.',
),
'unknown_process_username' => 'ismeretlen',
'users' => array(
'nok' => 'Ellenőrizd a <em>%1$s</em> könyvtár jogosultságait a <em>%2$s</em> felhasználónak. A HTTP szervernek szüksége van írási jogosultságra.',
'ok' => 'Users könyvtár jogosultságai rendben vannak.',
'nok' => 'Ellenőrizd a(z) <em>%1$s</em> könyvtár jogosultságait a(z) <em>%2$s</em> felhasználónak. A HTTP szervernek szüksége van írási jogosultságra.',
'ok' => 'A users könyvtár jogosultságai rendben vannak.',
),
'xml' => array(
'nok' => 'Nem található az XML elemző könyvtár (parse XML).',
'ok' => 'XML elemző könyvtár telepítve van.',
'nok' => 'Nem található az XML elemző könyvtár.',
'ok' => 'Az XML elemző könyvtár telepítve van.',
),
),
'conf' => array(

View File

@ -12,21 +12,21 @@
return array(
'api' => array(
'documentation' => 'Másold ki az URL-t hogy külső alkalmazásban használhasd.',
'documentation' => 'Másold ki az URL-t, hogy külső alkalmazásban használhasd.',
'title' => 'API', // IGNORE
),
'bookmarklet' => array(
'documentation' => 'Húzd ezt a gombot a könyvjelzőid közé vagy jobb gombbal add hozzá. Ezt a gombot megnyomva az éppen látogatott weblapra lehet feliratkozni a FreshRSS-ben.',
'documentation' => 'Húzza ezt a gombot a könyvjelzők eszköztárára, vagy kattintson rá jobb gombbal, és válassza a „Link hozzáadása a könyvjelzőkhöz” lehetőséget. Ezután kattintson a „Feliratkozás” gombra bármely oldalon, amelyre szeretne feliratkozni.',
'label' => 'Feliratkozás',
'title' => 'Feliratkozás gomb',
'title' => 'könyvjelző',
),
'category' => array(
'_' => 'Kategória',
'add' => 'Kategória hozzáadása',
'add' => 'Hozzáadás egy kategóriához',
'archiving' => 'Archiválás',
'dynamic_opml' => array(
'_' => 'Dinamikus OPML',
'help' => 'Adj meg egy URL-t <a href="http://opml.org/" target="_blank">OPML fájl</a> hogy automatikusan kitöltődjön ez a kategória hírforrásokkal',
'help' => 'Adj meg egy URL-t az <a href="http://opml.org/" target="_blank">OPML fájlhoz</a> hogy automatikusan kitöltődjön ez a kategória hírforrásokkal',
),
'empty' => 'Üres kategória',
'information' => 'Információ',
@ -50,7 +50,7 @@ return array(
),
'clear_cache' => 'Mindig törölje a cache-t',
'content_action' => array(
'_' => 'Tartalom művelet amikor cikk tartalma beszerzésre kerül',
'_' => 'Tartalom művelet, amikor cikk tartalma beszerzésre kerül',
'append' => 'Hozzáadás a létező tartalom után',
'prepend' => 'Hozzáadás a létező tartalom elé',
'replace' => 'Cserélje ki a létező tartalmat',
@ -66,6 +66,11 @@ return array(
'description' => 'Leírás',
'empty' => 'Ez a hírforrás üres. Ellenőrizd hogy van e tartalom rajta.',
'error' => 'Ez a hírforrás nem működik. Ellenőrizd az elérhetőségét és frissítsd.',
'export-as-opml' => array(
'download' => 'Letöltés',
'help' => 'XML fájl',
'label' => 'Exportálás OPML formátumban',
),
'filteractions' => array(
'_' => 'Szűrő műveletek',
'help' => 'Írj egy szűrőt soronként. Műveletek <a href="https://freshrss.github.io/FreshRSS/en/users/10_filter.html#with-the-search-field" target="_blank">a dokumentációban</a>.',
@ -80,7 +85,7 @@ return array(
'_' => 'hírforrás címe',
'help' => 'Példa: <code>//title</code> vagy statikus szöveg: <code>"Az egyedi hírforrásom"</code>',
),
'help' => '<dfn><a href="https://www.w3.org/TR/xpath-10/" target="_blank">XPath 1.0</a></dfn> egy szabványos lekérdezési nyelv haladó felhasználóknak, amit a FreshRSS támogat (Web scraping).',
'help' => '<dfn><a href="https://www.w3.org/TR/xpath-10/" target="_blank">XPath 1.0</a></dfn> egy szabványos lekérdezési nyelv haladó felhasználók számára, amelyet a FreshRSS támogat a webes lemásolás engedélyezéséhez.',
'item' => array(
'_' => 'hírek keresése <strong>elemek</strong><br /><small>(legfontosabb)</small>',
'help' => 'Példa: <code>//div[@class="news-item"]</code>',
@ -108,7 +113,7 @@ return array(
),
'item_title' => array(
'_' => 'elem cím',
'help' => 'Használja az <a href="https://developer.mozilla.org/docs/Web/XPath/Axes" target="_blank">XPath axis</a> <code>descendant::</code> mint <code>descendant::h2</code>',
'help' => 'Használja az <a href="https://developer.mozilla.org/docs/Web/XPath/Axes" target="_blank">XPath Axes</a> <code>descendant::</code> mint <code>descendant::h2</code>',
),
'item_uid' => array(
'_' => 'elem egyedi ID',
@ -121,45 +126,45 @@ return array(
'relative' => 'XPath (az elemhez viszonyítva) ehhez:',
'xpath' => 'XPath ehhez:',
),
'json_dotpath' => array(
'_' => 'JSON (Dotted paths)', // TODO
'json_dotnotation' => array(
'_' => 'JSON (pont jelölés)',
'feed_title' => array(
'_' => 'feed title', // TODO
'help' => 'Example: <code>meta.title</code> or a static string: <code>"My custom feed"</code>', // TODO
'_' => 'hírforrás címe',
'help' => 'Például: <code>meta.title</code> vagy egy statikus sztring: <code>"Az egyedi hírforrásom"</code>',
),
'help' => 'A JSON dotted path uses dots between objects and brackets for arrays (e.g. <code>data.items[0].title</code>)', // TODO
'help' => 'A JSON pontjelölés pontokat használ az objektumok között és zárójeleket a tömbökhöz (pl. <code>data.items[0].title</code>)',
'item' => array(
'_' => 'finding news <strong>items</strong><br /><small>(most important)</small>', // TODO
'help' => 'JSON path to the array containing the items, e.g. <code>newsItems</code>', // TODO
'_' => 'hírek keresése <strong>elemek</strong><br /><small>(legfontosabb)</small>',
'help' => 'JSON útvonal az elemeket tartalmazó tömbhöz, pl. <code>newsItems</code>',
),
'item_author' => 'item author', // TODO
'item_categories' => 'item tags', // TODO
'item_author' => 'elem szerző',
'item_categories' => 'elem címkék',
'item_content' => array(
'_' => 'item content', // TODO
'help' => 'Key under which the content is found, e.g. <code>content</code>', // TODO
'_' => 'elem tartalom',
'help' => 'Kulcs ami alatt a tartalom megtalálható, például <code>tartalom</code>',
),
'item_thumbnail' => array(
'_' => 'item thumbnail', // TODO
'help' => 'Example: <code>image</code>', // TODO
'_' => 'elem előnézeti kép',
'help' => 'Például: <code>image</code>',
),
'item_timeFormat' => array(
'_' => 'Custom date/time format', // TODO
'help' => 'Optional. A format supported by <a href="https://php.net/datetime.createfromformat" target="_blank"><code>DateTime::createFromFormat()</code></a> such as <code>d-m-Y H:i:s</code>', // TODO
'_' => 'Egyedi dátum/idő formátum',
'help' => 'Opcionális. Egy a <a href="https://php.net/datetime.createfromformat" target="_blank"><code>DateTime::createFromFormat()</code></a> funkció által támogatott formátum, például: <code>d-m-Y H:i:s</code>',
),
'item_timestamp' => array(
'_' => 'item date', // TODO
'help' => 'The result will be parsed by <a href="https://php.net/strtotime" target="_blank"><code>strtotime()</code></a>', // TODO
'_' => 'elem dátum',
'help' => 'Az eredményt az <a href="https://php.net/strtotime" target="_blank"><code>strtotime()</code></a> php függvény fogja értelmezni',
),
'item_title' => 'item title', // TODO
'item_uid' => 'item unique ID', // TODO
'item_title' => 'elem címe',
'item_uid' => 'elem egyedi azonosító ID',
'item_uri' => array(
'_' => 'item link (URL)', // TODO
'help' => 'Example: <code>permalink</code>', // TODO
'_' => 'elem link (URL)',
'help' => 'Például: <code>permalink</code>',
),
'json' => 'Dotted Path for:', // TODO
'relative' => 'Dotted Path (relative to item) for:', // TODO
'json' => 'pontjelölés ehhez:',
'relative' => 'pont jelölt útvonal (relatív az elemhez):',
),
'jsonfeed' => 'JSON Feed', // TODO
'jsonfeed' => 'JSON Hírforrás',
'rss' => 'RSS / Atom (alapértelmezett)',
'xml_xpath' => 'XML + XPath', // IGNORE
),
@ -173,10 +178,10 @@ return array(
'max_http_redir' => 'Max HTTP átirányítás',
'max_http_redir_help' => '0 vagy üresen hagyva kikapcsolt, -1 a végtelen átirányításhoz',
'method' => array(
'_' => 'HTTP Method', // TODO
'_' => 'HTTP Módszer',
),
'method_help' => 'The POST payload has automatic support for <code>application/x-www-form-urlencoded</code> and <code>application/json</code>', // TODO
'method_postparams' => 'Payload for POST', // TODO
'method_help' => 'A POST metódus hasznos adattartalma automatikusan támogatja az <code>application/x-www-form-urlencoded</code> és <code>application/json</code>',
'method_postparams' => 'POST metódus adattartalma',
'moved_category_deleted' => 'Ha kitörölsz egy kategóriát, az alá tartozó hírforrások automatikusan ide kerülnek <em>%s</em>.',
'mute' => 'némítás',
'no_selected' => 'Nincsen hírforrás kiválasztva.',
@ -221,8 +226,8 @@ return array(
'export_opml' => 'Hírforrások listájának exportálása (OPML)',
'export_starred' => 'Kedvencek exportálása',
'feed_list' => 'Cikkek %s listája',
'file_to_import' => 'Állomány importálása<br />(OPML, JSON vagy ZIP)',
'file_to_import_no_zip' => 'Állomány importálása<br />(OPML vagy JSON)',
'file_to_import' => 'Importálandó fájl<br />(OPML, JSON vagy ZIP)',
'file_to_import_no_zip' => 'Importálandó fájl<br />(OPML vagy JSON)',
'import' => 'Importálás',
'starred_list' => 'Kedvenc cikkek listája',
'title' => 'Importálás / exportálás',
@ -240,7 +245,7 @@ return array(
'subscription_tools' => 'Hírforrás eszközök',
),
'tag' => array(
'auto_label' => 'Add this label to new articles', // TODO
'auto_label' => 'Adja hozzá automatikusan ezt a címkét az új cikkekhez',
'name' => 'Név',
'new_name' => 'Új név',
'old_name' => 'Régi név',

View File

@ -13,12 +13,12 @@
return array(
'email' => array(
'feedback' => array(
'invalid' => 'Érvénytelen email cím.',
'required' => 'Email cím megadása kötelező.',
'invalid' => 'Ez az email cím érvénytelen.',
'required' => 'Egy email cím megadása kötelező.',
),
'validation' => array(
'change_email' => 'Megváltoztathatod az email címed <a href="%s">a profil lapon</a>.',
'email_sent_to' => 'Email-t küldtünk neked a <strong>%s</strong> címre. Kövesd a leírást hogy visszaigazolhasd a címedet.',
'change_email' => 'Megváltoztathatod az email címed <a href="%s">a profil oldalon</a>.',
'email_sent_to' => 'Email-t küldtünk neked a(z) <strong>%s</strong> címre. Kövesd a leírást hogy visszaigazolhasd a címedet.',
'feedback' => array(
'email_failed' => 'Nem tudtunk email-t küldeni neked egy szerver konfigurációs hiba miatt.',
'email_sent' => 'Egy email lett elküldve a címedre.',
@ -34,13 +34,13 @@ return array(
),
'mailer' => array(
'email_need_validation' => array(
'body' => 'Épp most regisztráltál a %s -re, de még vissza kell igazolnod az email címed. Ehhez csak kövesd a linket:',
'body' => 'Épp most regisztráltál a %s -re/ra, de még vissza kell igazolnod az email címed. Ehhez csak kövesd a linket:',
'title' => 'Vissza kell igazolnod a fiókod',
'welcome' => 'Üdv %s,',
),
),
'password' => array(
'invalid' => 'Érvénytelen jelszó.',
'invalid' => 'A jelszó érvénytelen.',
),
'tos' => array(
'feedback' => array(
@ -48,7 +48,7 @@ return array(
),
),
'username' => array(
'invalid' => 'Érvénytelen felhasználónév.',
'invalid' => 'Ez a felhasználónév érvénytelen.',
'taken' => 'Ez a felhasználónév, %s, már foglalt.',
),
);

View File

@ -213,7 +213,7 @@ return array(
'latest' => 'Stable release (“latest”)', // TODO
),
'title' => 'Perbarui Sistem',
'viaGit' => 'Update via git and Github.com started', // TODO
'viaGit' => 'Update via git and GitHub.com started', // TODO
),
'user' => array(
'admin' => 'Administrator', // TODO

View File

@ -19,7 +19,7 @@ return array(
'credits_content' => 'Some design elements come from <a href="http://twitter.github.io/bootstrap/">Bootstrap</a> although FreshRSS doesnt use this framework. <a href="https://gitlab.gnome.org/Archive/gnome-icon-theme-symbolic">Icons</a> come from the <a href="https://www.gnome.org/">GNOME project</a>. <em>Open Sans</em> font police has been created by <a href="https://fonts.google.com/specimen/Open+Sans">Steve Matteson</a>. FreshRSS is based on <a href="https://framagit.org/marienfressinaud/MINZ">Minz</a>, a PHP framework.', // TODO
'documentation' => 'Documentation', // TODO
'freshrss_description' => 'FreshRSS is a self-hostable RSS aggregator and reader. It allows you to read and follow several news websites at a glance without the need to browse from one website to another. FreshRSS is lightweight, configurable, and easy to use.', // TODO
'github' => '<a href="https://github.com/FreshRSS/FreshRSS/issues">on Github</a>', // TODO
'github' => '<a href="https://github.com/FreshRSS/FreshRSS/issues">on GitHub</a>', // TODO
'license' => 'License', // TODO
'project_website' => 'Project website', // TODO
'title' => 'About', // TODO

View File

@ -66,6 +66,11 @@ return array(
'description' => 'Description', // TODO
'empty' => 'This feed is empty. Please verify that it is still maintained.', // TODO
'error' => 'This feed has encountered a problem. Please verify that it is always reachable then update it.', // TODO
'export-as-opml' => array(
'download' => 'Download', // TODO
'help' => 'XML file', // TODO
'label' => 'Export as OPML', // TODO
),
'filteractions' => array(
'_' => 'Filter actions', // TODO
'help' => 'Write one search filter per line. Operators <a href="https://freshrss.github.io/FreshRSS/en/users/10_filter.html#with-the-search-field" target="_blank">see documentation</a>.', // TODO
@ -121,13 +126,13 @@ return array(
'relative' => 'XPath (relative to item) for:', // TODO
'xpath' => 'XPath for:', // TODO
),
'json_dotpath' => array(
'_' => 'JSON (Dotted paths)', // TODO
'json_dotnotation' => array(
'_' => 'JSON (dot notation)', // TODO
'feed_title' => array(
'_' => 'feed title', // TODO
'help' => 'Example: <code>meta.title</code> or a static string: <code>"My custom feed"</code>', // TODO
),
'help' => 'A JSON dotted path uses dots between objects and brackets for arrays (e.g. <code>data.items[0].title</code>)', // TODO
'help' => 'A JSON dot notated uses dots between objects and brackets for arrays (e.g. <code>data.items[0].title</code>)', // TODO
'item' => array(
'_' => 'finding news <strong>items</strong><br /><small>(most important)</small>', // TODO
'help' => 'JSON path to the array containing the items, e.g. <code>newsItems</code>', // TODO
@ -156,8 +161,8 @@ return array(
'_' => 'item link (URL)', // TODO
'help' => 'Example: <code>permalink</code>', // TODO
),
'json' => 'Dotted Path for:', // TODO
'relative' => 'Dotted Path (relative to item) for:', // TODO
'json' => 'dot notation for:', // TODO
'relative' => 'dot notated path (relative to item) for:', // TODO
),
'jsonfeed' => 'JSON Feed', // TODO
'rss' => 'RSS / Atom (default)', // TODO

View File

@ -19,8 +19,8 @@ return array(
'http' => 'HTTP (per gli utenti avanzati con HTTPS)',
'none' => 'Nessuno (pericoloso)',
'title' => 'Autenticazione',
'token' => 'Master authentication token', // TODO
'token_help' => 'Allows access to all RSS outputs of the user as well as refreshing feeds without authentication:', // TODO
'token' => 'Token di autenticazione principale',
'token_help' => 'Consente laccesso a tutti gli output RSS dellutente e di aggiornare i feed senza autenticazione:',
'type' => 'Metodo di autenticazione',
'unsafe_autologin' => 'Consenti accesso automatico non sicuro usando il formato: ',
),
@ -213,7 +213,7 @@ return array(
'latest' => 'Stabile (“latest”)',
),
'title' => 'Aggiorna sistema',
'viaGit' => 'Aggiornamento tramite git e Github.com avviato',
'viaGit' => 'Aggiornamento tramite git e GitHub.com avviato',
),
'user' => array(
'admin' => 'Amministratore',

View File

@ -120,20 +120,20 @@ return array(
'feeds' => 'Mostra per feed',
'order' => 'Ordina per data',
'search' => 'Espressione',
'shareOpml' => 'Enable sharing by OPML of corresponding categories and feeds', // TODO
'shareRss' => 'Enable sharing by HTML &amp; RSS', // TODO
'shareOpml' => 'Abilita la condivisione di OPML di categorie e feed corrispondenti',
'shareRss' => 'Abilita la condivisione di HTML &amp; RSS',
'state' => 'Stato',
'tags' => 'Mostra per tag', // DIRTY
'tags' => 'Tag',
'type' => 'Tipo',
),
'get_all' => 'Mostra tutti gli articoli',
'get_all_labels' => 'Display articles with any label', // TODO
'get_all_labels' => 'Mostra gli articoli con qualsiasi etichetta',
'get_category' => 'Mostra la categoria “%s” ',
'get_favorite' => 'Mostra articoli preferiti',
'get_feed' => 'Mostra feed “%s” ',
'get_important' => 'Display articles from important feeds', // TODO
'get_label' => 'Display articles with “%s” label', // TODO
'help' => 'See the <a href="https://freshrss.github.io/FreshRSS/en/users/user_queries.html" target="_blank">documentation for user queries and resharing by HTML / RSS / OPML</a>.', // TODO
'get_important' => 'Mostra articoli dai feed importanti',
'get_label' => 'Mostra articoli con letichetta “%s”',
'help' => 'Vedi la <a href="https://freshrss.github.io/FreshRSS/en/users/user_queries.html" target="_blank">documentazione per le query utente e ricondivisioine tramite HTML / RSS / OPML</a>.',
'name' => 'Nome',
'no_filter' => 'Nessun filtro',
'number' => 'Ricerca n°%d',
@ -141,11 +141,11 @@ return array(
'order_desc' => 'Mostra prima gli articoli più nuovi',
'search' => 'Cerca per “%s”',
'share' => array(
'_' => 'Share this query by link', // TODO
'help' => 'Give this link if you want to share this query with anyone', // TODO
'html' => 'Shareable link to the HTML page', // TODO
'opml' => 'Shareable link to the OPML list of feeds', // TODO
'rss' => 'Shareable link to the RSS feed', // TODO
'_' => 'Condividi questa query tramite un link',
'help' => 'Fornisci questo link se vuoi condividere questa query con altre persone',
'html' => 'Link condivisibile alla pagina HTML',
'opml' => 'Link condivisibile alla lista OPML dei feed',
'rss' => 'Link condivisibile al feed RSS',
),
'state_0' => 'Mostra tutti gli articoli',
'state_1' => 'Mostra gli articoli letti',
@ -209,7 +209,7 @@ return array(
'misc' => 'Varie',
'view' => 'Vista',
),
'hide_read_feeds' => 'Nascondi categorie e feeds con articoli già letti (non funziona se “Mostra tutti gli articoli” è selezionato)',
'hide_read_feeds' => 'Nascondi categorie e feed con articoli già letti (non funziona se “Mostra tutti gli articoli” è selezionato)',
'img_with_lazyload' => 'Usa la modalità “caricamento ritardato” per le immagini',
'jump_next' => 'Salta al successivo feed o categoria non letto',
'mark_updated_article_unread' => 'Segna articoli aggiornati come non letti',
@ -287,7 +287,7 @@ return array(
'mark_favorite' => 'Segna come preferito',
'mark_read' => 'Segna come letto',
'navigation' => 'Navigazione',
'navigation_help' => 'Con il tasto <kbd>⇧ Shift</kbd> i comandi di navigazione verranno applicati ai feeds.<br/>Con il tasto <kbd>Alt ⎇</kbd> i comandi di navigazione verranno applicati alle categorie.',
'navigation_help' => 'Con il tasto <kbd>⇧ Shift</kbd> i comandi di navigazione verranno applicati ai feed.<br/>Con il tasto <kbd>Alt ⎇</kbd> i comandi di navigazione verranno applicati alle categorie.',
'navigation_no_mod_help' => 'Le seguenti scorciatoie di navigazione non supportano i modificatori.',
'next_article' => 'Salta al contenuto successivo',
'next_unread_article' => 'Apri il prossimo articolo non letto',

View File

@ -57,11 +57,11 @@ return array(
),
'import_export' => array(
'export_no_zip_extension' => 'Estensione ZIP non presente sul server. Per favore esporta i files singolarmente.',
'feeds_imported' => 'I tuoi feed sono stati importati e saranno aggiornati / Your feeds have been imported. If you are done importing, you can now click the <i>Update feeds</i> button.', // DIRTY
'feeds_imported_with_errors' => 'I tuoi feeds sono stati importati ma si sono verificati alcuni errori / Your feeds have been imported, but some errors occurred. If you are done importing, you can now click the <i>Update feeds</i> button.', // DIRTY
'feeds_imported' => 'I tuoi feed sono stati importati e saranno aggiornati. Se hai completato limportazione, puoi cliccare sul pulsante <i>Aggiorna feed</i>.',
'feeds_imported_with_errors' => 'I tuoi feed sono stati importati ma si sono verificati alcuni errori. Se hai completato limportazione, puoi cliccare sul pulsante <i>Aggiorna feed</i>.',
'file_cannot_be_uploaded' => 'Il file non può essere caricato!',
'no_zip_extension' => 'Estensione ZIP non presente sul server.',
'zip_error' => 'Si è verificato un errore importando il file ZIP', // DIRTY
'zip_error' => 'Si è verificato un errore importando il file ZIP',
),
'profile' => array(
'error' => 'Il tuo profilo non può essere modificato',
@ -88,7 +88,7 @@ return array(
),
'feed' => array(
'actualized' => '<em>%s</em> aggiornato',
'actualizeds' => 'RSS feeds aggiornati',
'actualizeds' => 'Feed RSS aggiornati',
'added' => 'RSS feed <em>%s</em> aggiunti',
'already_subscribed' => 'Hai già sottoscritto <em>%s</em>',
'cache_cleared' => 'La cache di <em>%s</em> è stata svuotata',
@ -96,7 +96,7 @@ return array(
'error' => 'Feed non aggiornato',
'internal_problem' => 'Feed RSS non aggiunto. <a href="%s">Verifica i log</a> per dettagli. Puoi provare laggiunta forzata aggiungendo <code>#force_feed</code> allURL.',
'invalid_url' => 'URL <em>%s</em> non valido',
'n_actualized' => '%d feeds aggiornati',
'n_actualized' => '%d feed aggiornati',
'n_entries_deleted' => '%d articoli cancellati',
'no_refresh' => 'Nessun aggiornamento disponibile…',
'not_added' => '<em>%s</em> non può essere aggiunto',

View File

@ -19,7 +19,7 @@ return array(
'credits_content' => 'Alcuni elementi di design provengono da <a href="http://twitter.github.io/bootstrap/">Bootstrap</a> sebbene FreshRSS non usi questo framework. Le <a href="https://gitlab.gnome.org/Archive/gnome-icon-theme-symbolic">icone</a> provengono dal progetto <a href="https://www.gnome.org/">GNOME</a>. Il carattere <em>Open Sans</em> è stato creato da <a href="https://fonts.google.com/specimen/Open+Sans">Steve Matteson</a>. FreshRSS è basato su <a href="https://framagit.org/marienfressinaud/MINZ">Minz</a>, un framework PHP.',
'documentation' => 'Documentazione',
'freshrss_description' => 'FreshRSS è un aggregatore di feeds RSS da installare sul proprio host. Leggero e facile da mantenere pur essendo molto configurabile e potente.',
'github' => '<a href="https://github.com/FreshRSS/FreshRSS/issues">su Github</a>',
'github' => '<a href="https://github.com/FreshRSS/FreshRSS/issues">su GitHub</a>',
'license' => 'Licenza',
'project_website' => 'Sito del progetto',
'title' => 'Informazioni',

View File

@ -43,7 +43,7 @@ return array(
'archiving' => 'Archiviazione',
'auth' => array(
'configuration' => 'Autenticazione',
'help' => 'Accesso per feeds protetti',
'help' => 'Accesso per feed protetti',
'http' => 'Autenticazione HTTP',
'password' => 'Password HTTP',
'username' => 'Nome utente HTTP',
@ -57,7 +57,7 @@ return array(
),
'css_cookie' => 'Usa i cookie quando viene recuperato il contenuto di un articolo',
'css_cookie_help' => 'Esempio: <kbd>foo=bar; gdpr_consent=true; cookie=value</kbd>',
'css_help' => 'In caso di RSS feeds troncati (attenzione, richiede molto tempo!)',
'css_help' => 'In caso di feed RSS troncati (attenzione, richiede molto tempo!)',
'css_path' => 'Percorso del foglio di stile CSS del sito di origine',
'css_path_filter' => array(
'_' => 'Il selettore CSS degli elementi da rimuovere',
@ -66,9 +66,14 @@ return array(
'description' => 'Descrizione',
'empty' => 'Questo feed non contiene articoli. Per favore verifica il sito direttamente.',
'error' => 'Questo feed ha generato un errore. Per favore verifica se ancora disponibile.',
'export-as-opml' => array(
'download' => 'Scarica',
'help' => 'File XML',
'label' => 'Esporta come OPML',
),
'filteractions' => array(
'_' => 'Azioni di filtro',
'help' => 'Scrivi un filtro di ricerca per riga. Operators <a href="https://freshrss.github.io/FreshRSS/en/users/10_filter.html#with-the-search-field" target="_blank">see documentation</a>.', // DIRTY
'help' => 'Scrivi un filtro di ricerca per riga. Per li operatori <a href="https://freshrss.github.io/FreshRSS/en/users/10_filter.html#with-the-search-field" target="_blank">vedi la documentazione</a>.',
),
'information' => 'Informazioni',
'keep_min' => 'Numero minimo di articoli da mantenere',
@ -121,13 +126,13 @@ return array(
'relative' => 'XPath (relativo alloggetto) per:',
'xpath' => 'XPath per:',
),
'json_dotpath' => array(
'_' => 'JSON (path con i punti)',
'json_dotnotation' => array(
'_' => 'JSON (dot notation)', // TODO
'feed_title' => array(
'_' => 'titolo feed',
'help' => 'Esempio: <code>meta.title</code> o una stringa statica: <code>"Il mio feed personalizzato"</code>',
),
'help' => 'Un JSON con le path divise da punti usa dei punti fra gli oggetti e le parentesi per gli array. (es. <code>data.items[0].title</code>)',
'help' => 'A JSON dot notated uses dots between objects and brackets for arrays (e.g. <code>data.items[0].title</code>)', // TODO
'item' => array(
'_' => 'ricerca nuovi <strong>elementi</strong><br /><small>(più importante)</small>',
'help' => 'percorso JSON per larray contenente gli elementi, es. <code>newsItems</code>',
@ -156,8 +161,8 @@ return array(
'_' => 'link elemento (URL)',
'help' => 'Esempio: <code>permalink</code>',
),
'json' => 'Percorso con i punti per:',
'relative' => 'Percorso con i punti (relativo allelemento) per:',
'json' => 'dot notation for:', // TODO
'relative' => 'dot notated path (relative to item) for:', // TODO
),
'jsonfeed' => 'Feed JSON',
'rss' => 'RSS / Atom (predefinito)',
@ -189,7 +194,7 @@ return array(
'main_stream' => 'Mostra in homepage',
),
'proxy' => 'Imposta un proxy per recuperare questo feed',
'proxy_help' => 'Seleziona un protocollo (e.g: SOCKS5) ed inserisci lindirizzo del proxy (e.g: <kbd>127.0.0.1:1080</kbd> or <kbd>username:password@127.0.0.1:1080</kbd>)', // DIRTY
'proxy_help' => 'Seleziona un protocollo (e.g: SOCKS5) ed inserisci lindirizzo del proxy (es.: <kbd>127.0.0.1:1080</kbd> o <kbd>username:password@127.0.0.1:1080</kbd>)',
'selector_preview' => array(
'show_raw' => 'Mostra codice sorgente',
'show_rendered' => 'Mostra contenuto',
@ -232,7 +237,7 @@ return array(
'import_export' => 'Importa / esporta',
'label_management' => 'Gestione etichette',
'stats' => array(
'idle' => 'Feeds non aggiornati',
'idle' => 'Feed non aggiornati',
'main' => 'Statistiche principali',
'repartition' => 'Ripartizione articoli',
),
@ -253,7 +258,7 @@ return array(
'add_feed' => 'Aggiungi un feed',
'add_label' => 'Aggiungi unetichetta',
'delete_label' => 'Cancella unetichetta',
'feed_management' => 'Gestione RSS feeds',
'feed_management' => 'Gestione feed RSS',
'rename_label' => 'Rinomina unetichetta',
'subscription_tools' => 'Strumenti di sottoscrizione',
),

View File

@ -19,8 +19,8 @@ return array(
'http' => 'HTTP (上級者はHTTPSでも)',
'none' => 'なし (危険)',
'title' => '認証',
'token' => 'Master authentication token', // TODO
'token_help' => 'Allows access to all RSS outputs of the user as well as refreshing feeds without authentication:', // TODO
'token' => 'マスター認証用のトークン',
'token_help' => 'ユーザーのすべての RSS 出力へのアクセスと、認証なしのフィードの更新を許可します',
'type' => '認証メソッド',
'unsafe_autologin' => '危険な自動ログインを有効にします',
),
@ -160,8 +160,8 @@ return array(
'_' => 'システム設定',
'auto-update-url' => '自動アップグレードするサーバーのURL',
'base-url' => array(
'_' => 'Base URL', // TODO
'recommendation' => 'Automatic recommendation: <kbd>%s</kbd>', // TODO
'_' => 'ベースURL',
'recommendation' => '自動的に推薦: <kbd>%s</kbd>',
),
'cookie-duration' => array(
'help' => '秒',
@ -187,33 +187,33 @@ return array(
),
'title' => 'ユーザー登録',
),
'sensitive-parameter' => 'Sensitive parameter. Edit manually in <kbd>./data/config.php</kbd>', // TODO
'sensitive-parameter' => 'センシティブなパラメーターです。<kbd>./data/config.php</kbd> を手動で編集',
'tos' => array(
'disabled' => 'is not given', // TODO
'enabled' => '<a href="./?a=tos">is enabled</a>', // TODO
'help' => 'How to <a href="https://freshrss.github.io/FreshRSS/en/admins/12_User_management.html#enable-terms-of-service-tos" target="_blank">enable the Terms of Service</a>', // TODO
'disabled' => '無効化',
'enabled' => '<a href="./?a=tos">有効化</a>',
'help' => '<a href="https://freshrss.github.io/FreshRSS/en/admins/12_User_management.html#enable-terms-of-service-tos" target="_blank">利用規約を有効にする方法</a>',
),
'websub' => array(
'help' => 'About <a href="https://freshrss.github.io/FreshRSS/en/users/WebSub.html" target="_blank">WebSub</a>', // TODO
'help' => '<a href="https://freshrss.github.io/FreshRSS/en/users/WebSub.html" target="_blank">WebSubについて</a>',
),
),
'update' => array(
'_' => 'システムアップデート',
'apply' => '適用',
'changelog' => 'Changelog', // TODO
'changelog' => '変更履歴',
'check' => 'アップデートを確認する',
'copiedFromURL' => 'update.php copied from %s to ./data', // TODO
'copiedFromURL' => 'update.php が %s から ./data にコピーされました。',
'current_version' => '現在のバージョンは',
'last' => '最近の検証',
'loading' => 'Updating…', // TODO
'loading' => '更新中…',
'none' => '更新を適用できません',
'releaseChannel' => array(
'_' => 'Release channel', // TODO
'edge' => 'Rolling release (“edge”)', // TODO
'latest' => 'Stable release (“latest”)', // TODO
'_' => 'リリースチャンネル',
'edge' => 'ローリングリリース (“edge”)',
'latest' => '安定版リリース (“latest”)',
),
'title' => 'アップデートシステム',
'viaGit' => 'Update via git and Github.com started', // TODO
'viaGit' => 'gitとGitHub.comによるアップデートを開始',
),
'user' => array(
'admin' => '管理者',

View File

@ -33,9 +33,9 @@ return array(
'display' => array(
'_' => '表示',
'darkMode' => array(
'_' => 'Automatic dark mode (beta)', // TODO
'auto' => 'Auto', // TODO
'no' => 'No', // TODO
'_' => '自動ダークモード (beta)',
'auto' => '自動',
'no' => '無効',
),
'icon' => array(
'bottom_line' => '行の下部',
@ -56,8 +56,8 @@ return array(
'theme' => array(
'_' => 'テーマ',
'deprecated' => array(
'_' => 'Deprecated', // TODO
'description' => 'This theme is no longer supported and will be not available anymore in a <a href="https://freshrss.github.io/FreshRSS/en/users/05_Configuration.html#theme" target="_blank">future release of FreshRSS</a>', // TODO
'_' => '非推奨',
'description' => 'このテーマのサポートは終了しており、<a href="https://freshrss.github.io/FreshRSS/en/users/05_Configuration.html#theme" target="_blank">FreshRSS の将来のリリース</a>では利用できなくなります。',
),
),
'theme_not_available' => '“%s”テーマはご利用いただけません。他のテーマをお選びください。',
@ -68,14 +68,14 @@ return array(
'portrait' => 'ポートレート',
'square' => '四角',
),
'timezone' => 'Time zone', // TODO
'timezone' => 'タイムゾーン',
'title' => 'ディスプレイ',
'website' => array(
'full' => 'Icon and name', // TODO
'icon' => 'Icon only', // TODO
'label' => 'Website', // TODO
'name' => 'Name only', // TODO
'none' => 'None', // TODO
'full' => 'アイコンと名前',
'icon' => 'アイコンのみ',
'label' => 'ウェブサイト',
'name' => '名前のみ',
'none' => '無し',
),
'width' => array(
'content' => 'コンテンツ幅',
@ -120,20 +120,20 @@ return array(
'feeds' => 'フィードごとに表示する',
'order' => '日付ごとにソートする',
'search' => '式',
'shareOpml' => 'Enable sharing by OPML of corresponding categories and feeds', // TODO
'shareRss' => 'Enable sharing by HTML &amp; RSS', // TODO
'shareOpml' => '対応するカテゴリーとフィードのOPMLによる共有が可能',
'shareRss' => 'HTMLとRSSによる共有を有効にする',
'state' => '状態',
'tags' => 'タグごとに表示する',
'type' => 'タイプ',
),
'get_all' => 'すべての著者を表示する',
'get_all_labels' => 'Display articles with any label', // TODO
'get_all_labels' => '任意のラベルで記事を表示する',
'get_category' => '“%s”カテゴリを表示する',
'get_favorite' => 'お気に入りの著者を表示する',
'get_feed' => '“%s”フィードを表示する',
'get_important' => 'Display articles from important feeds', // TODO
'get_label' => 'Display articles with “%s” label', // TODO
'help' => 'See the <a href="https://freshrss.github.io/FreshRSS/en/users/user_queries.html" target="_blank">documentation for user queries and resharing by HTML / RSS / OPML</a>.', // TODO
'get_important' => '重要なフィードからの記事を表示する',
'get_label' => '“%s”ラベルの記事を表示する',
'help' => 'HTML/RSS/OPMLによるユーザー照会と再共有については <a href="https://freshrss.github.io/FreshRSS/en/users/user_queries.html" target="_blank">こちら</a>をご覧ください',
'name' => '名前',
'no_filter' => 'フィルターはありません',
'number' => 'クエリ n°%d',
@ -141,11 +141,11 @@ return array(
'order_desc' => '新しい著者を最初に表示する',
'search' => '“%s”で検索する',
'share' => array(
'_' => 'Share this query by link', // TODO
'help' => 'Give this link if you want to share this query with anyone', // TODO
'html' => 'Shareable link to the HTML page', // TODO
'opml' => 'Shareable link to the OPML list of feeds', // TODO
'rss' => 'Shareable link to the RSS feed', // TODO
'_' => 'このクエリをリンクで共有する',
'help' => 'このクエリを誰かと共有したい場合は、このリンクを貼ってください',
'html' => 'HTMLページへの共有可能なリンク',
'opml' => 'フィードのOPMLリストへの共有可能なリンク',
'rss' => 'RSSフィードへの共有可能なリンク',
),
'state_0' => 'すべての記事を表示する',
'state_1' => '既読の記事を表示する',
@ -217,7 +217,7 @@ return array(
'read' => array(
'article_open_on_website' => '記事を元のwebサイトで開いたとき',
'article_viewed' => '記事を読んだとき',
'focus' => 'when focused (except for important feeds)', // TODO
'focus' => 'フォーカス時(重要なフィードを除く)',
'keep_max_n_unread' => '未読の記事として残す最大数',
'scroll' => 'スクロールしているとき (except for important feeds)', // DIRTY
'upon_gone' => 'ニュースフィードの提供元がなくなったとき',

View File

@ -116,10 +116,10 @@ return array(
),
'tag' => array(
'created' => '“%s” タグが作成されました',
'error' => 'Label could not be updated!', // TODO
'error' => 'ラベルを更新できませんでした',
'name_exists' => 'このタグ名は既に存在します',
'renamed' => '“%s”タグは“%s”に改名されました',
'updated' => 'Label has been updated.', // TODO
'updated' => 'ラベルが更新されました',
),
'update' => array(
'can_apply' => 'FreshRSSは<strong>バージョン %s</strong>に更新されます。',

View File

@ -134,7 +134,7 @@ return array(
'request_failed' => 'おそらくインターネット接続に問題があるため、リクエストは失敗しました。',
'title_new_articles' => 'FreshRSS: 新規記事!',
),
'labels_empty' => 'No labels', // TODO
'labels_empty' => 'ラベルがありません',
'new_article' => '新しい記事があるのでクリックしてページをリフレッシュしてください。',
'should_be_activated' => 'JavaScriptは有効になっている必要があります。',
),
@ -178,7 +178,7 @@ return array(
'queries' => 'ユーザークエリ',
'reading' => 'リーディング',
'search' => '単語で検索するかハッシュタグで検索する',
'search_help' => 'See documentation for advanced <a href="https://freshrss.github.io/FreshRSS/en/users/10_filter.html#with-the-search-field" target="_blank">search parameters</a>', // TODO
'search_help' => '高度な検索パラメータについては <a href="https://freshrss.github.io/FreshRSS/en/users/10_filter.html#with-the-search-field" target="_blank">こちら</a>を参照してください',
'sharing' => '共有',
'shortcuts' => 'ショートカット',
'stats' => '統計',
@ -203,7 +203,7 @@ return array(
'clipboard' => 'クリップボード',
'diaspora' => 'Diaspora*', // IGNORE
'email' => 'Eメール',
'email-webmail-firefox-fix' => 'Email (webmail - fix for Firefox)', // TODO
'email-webmail-firefox-fix' => 'EメールFirefox用に修正',
'facebook' => 'Facebook', // IGNORE
'gnusocial' => 'GNU social', // IGNORE
'jdh' => 'Journal du hacker', // IGNORE

View File

@ -17,9 +17,9 @@ return array(
'bugs_reports' => 'バグレポート',
'credits' => 'クレジット',
'credits_content' => 'いくつかのデザイン要素は <a href="http://twitter.github.io/bootstrap/">Bootstrap</a>から来ています。しかしFreshRSSはこのフレームワークを使用していません。 <a href="https://gitlab.gnome.org/Archive/gnome-icon-theme-symbolic">アイコン</a> は <a href="https://www.gnome.org/">GNOME プロジェクトから作られています</a>。 <em>Open Sans</em> フォントは <a href="https://fonts.google.com/specimen/Open+Sans">Steve Matteson によって作成されました</a>。 FreshRSS は<a href="https://framagit.org/marienfressinaud/MINZ">Minz</a>,PHP フレームワークをもとにしています。',
'documentation' => 'Documentation', // TODO
'documentation' => '文書',
'freshrss_description' => 'FreshRSSは なセルフホストできるRSSフィード収集ツールです。強力なツールになっており、軽量で簡単に使え、豊富な設定が特徴です。',
'github' => '<a href="https://github.com/FreshRSS/FreshRSS/issues">Githubへお願いします</a>',
'github' => '<a href="https://github.com/FreshRSS/FreshRSS/issues">GitHubへお願いします</a>',
'license' => 'ライセンス',
'project_website' => 'プロジェクトのwebサイト',
'title' => 'FreshRSSについて',
@ -45,7 +45,7 @@ return array(
'bookmark_query' => '現在のブックマーククエリ',
'favorites' => 'お気に入り (%s)',
'global_view' => 'グローバルビュー',
'important' => 'Important feeds', // TODO
'important' => '重要なフィード',
'main_stream' => 'メイン',
'mark_all_read' => 'すべての記事に既読をつける',
'mark_cat_read' => 'カテゴリーに既読をつける',

View File

@ -66,6 +66,11 @@ return array(
'description' => '説明',
'empty' => 'このフィードは空です。サイトが運営されているかどうかを確認してみてください。',
'error' => 'このフィードに問題が発生しました。ここでアクセスできるかどうかを確認して更新してみてください。',
'export-as-opml' => array(
'download' => 'ダウンロード',
'help' => 'XMLファイル',
'label' => 'OPMLとしてエクスポート',
),
'filteractions' => array(
'_' => 'フィルターアクション',
'help' => '1行に1つの検索フィルターを設定してください Operators <a href="https://freshrss.github.io/FreshRSS/en/users/10_filter.html#with-the-search-field" target="_blank">see documentation</a>.', // DIRTY
@ -99,8 +104,8 @@ return array(
'help' => '例: <code>descendant::img/@src</code>',
),
'item_timeFormat' => array(
'_' => 'Custom date/time format', // TODO
'help' => 'Optional. A format supported by <a href="https://php.net/datetime.createfromformat" target="_blank"><code>DateTime::createFromFormat()</code></a> such as <code>d-m-Y H:i:s</code>', // TODO
'_' => 'カスタム日時フォーマット',
'help' => 'オプションです。<a href="https://php.net/datetime.createfromformat" target="_blank"><code>DateTime::createFromFormat()</code></a>でサポートされている、<code>d-m-Y H:i:s</code>のように使います',
),
'item_timestamp' => array(
'_' => '項目の日付',
@ -121,47 +126,47 @@ return array(
'relative' => 'XPath (関連する項目):',
'xpath' => 'XPathは:',
),
'json_dotpath' => array(
'_' => 'JSON (Dotted paths)', // TODO
'json_dotnotation' => array(
'_' => 'JSON(ドット記法)',
'feed_title' => array(
'_' => 'feed title', // TODO
'help' => 'Example: <code>meta.title</code> or a static string: <code>"My custom feed"</code>', // TODO
'_' => 'フィード名',
'help' => '例: <code>meta.title</code> または静的文字列: <code>"My custom feed"</code>',
),
'help' => 'A JSON dotted path uses dots between objects and brackets for arrays (e.g. <code>data.items[0].title</code>)', // TODO
'help' => 'JSONのドット表記は、オブジェクトの間にドットを使用し、配列には括弧を使用します。例: <code>data.items[0].title</code>',
'item' => array(
'_' => 'finding news <strong>items</strong><br /><small>(most important)</small>', // TODO
'help' => 'JSON path to the array containing the items, e.g. <code>newsItems</code>', // TODO
'_' => '<strong>ニュース</strong>を探す<br /><small>(最重要)</small>',
'help' => '項目を含む配列へのJSONパス。 例: <code>newsItems</code>',
),
'item_author' => 'item author', // TODO
'item_categories' => 'item tags', // TODO
'item_author' => 'アイテム作成者',
'item_categories' => 'アイテムタグ',
'item_content' => array(
'_' => 'item content', // TODO
'help' => 'Key under which the content is found, e.g. <code>content</code>', // TODO
'_' => '項目内容',
'help' => 'コンテンツが存在するキー。例: <code>content</code>',
),
'item_thumbnail' => array(
'_' => 'item thumbnail', // TODO
'help' => 'Example: <code>image</code>', // TODO
'_' => 'アイテムのサムネイル',
'help' => '例: <code>image</code>',
),
'item_timeFormat' => array(
'_' => 'Custom date/time format', // TODO
'help' => 'Optional. A format supported by <a href="https://php.net/datetime.createfromformat" target="_blank"><code>DateTime::createFromFormat()</code></a> such as <code>d-m-Y H:i:s</code>', // TODO
'_' => 'カスタム日時フォーマット',
'help' => 'オプションです。<a href="https://php.net/datetime.createfromformat" target="_blank"><code>DateTime::createFromFormat()</code></a>でサポートされている、<code>d-m-Y H:i:s</code>のように使います',
),
'item_timestamp' => array(
'_' => 'item date', // TODO
'help' => 'The result will be parsed by <a href="https://php.net/strtotime" target="_blank"><code>strtotime()</code></a>', // TODO
'_' => 'アイテム日付',
'help' => '結果は<a href="https://php.net/strtotime" target="_blank"><code>strtotime()</code></a>で解析される',
),
'item_title' => 'item title', // TODO
'item_uid' => 'item unique ID', // TODO
'item_title' => 'アイテム名',
'item_uid' => 'アイテム固有ID',
'item_uri' => array(
'_' => 'item link (URL)', // TODO
'help' => 'Example: <code>permalink</code>', // TODO
'_' => 'アイテムリンクURL',
'help' => ': <code>permalink</code>',
),
'json' => 'Dotted Path for:', // TODO
'relative' => 'Dotted Path (relative to item) for:', // TODO
'json' => ':のドット表記',
'relative' => ':のドット表記パス(アイテムからの相対パス)。',
),
'jsonfeed' => 'JSON Feed', // TODO
'jsonfeed' => 'JSONフィード',
'rss' => 'RSS / Atom (標準)',
'xml_xpath' => 'XML + XPath', // TODO
'xml_xpath' => 'XML + XPath', // IGNORE
),
'maintenance' => array(
'clear_cache' => 'キャッシュのクリア',
@ -173,10 +178,10 @@ return array(
'max_http_redir' => 'HTTPのリダイレクトの上限',
'max_http_redir_help' => '0を設定するか、空白のままにすると無効になり、-1を設定するとリダイレクト数が無制限になります。',
'method' => array(
'_' => 'HTTP Method', // TODO
'_' => 'HTTPメソッド',
),
'method_help' => 'The POST payload has automatic support for <code>application/x-www-form-urlencoded</code> and <code>application/json</code>', // TODO
'method_postparams' => 'Payload for POST', // TODO
'method_help' => 'POSTペイロードは <code>application/x-www-form-urlencoded</code> と <code>application/json</code> を自動的にサポートしています',
'method_postparams' => 'POST用ペイロード',
'moved_category_deleted' => 'カテゴリを削除したとき、フィードは自動的に<em>%s</em>下に分類されます。',
'mute' => 'ミュート',
'no_selected' => 'どのフィードも選択されていません',
@ -185,7 +190,7 @@ return array(
'_' => '表示する場所',
'archived' => '非表示にする(アーカイブ)',
'category' => 'カテゴリで表示する',
'important' => 'Show in important feeds', // TODO
'important' => '重要なフィードに表示する',
'main_stream' => 'メインストリームで表示する',
),
'proxy' => 'フィードを読み込み時にproxyを設定してください',
@ -240,7 +245,7 @@ return array(
'subscription_tools' => '購読ツール',
),
'tag' => array(
'auto_label' => 'Add this label to new articles', // TODO
'auto_label' => 'このラベルを新しい記事に追加する',
'name' => '名前',
'new_name' => '新しい名前',
'old_name' => '古い名前',

View File

@ -19,8 +19,8 @@ return array(
'http' => 'HTTP (HTTPS를 사용하는 고급 사용자용)',
'none' => '사용하지 않음 (위험)',
'title' => '인증',
'token' => 'Master authentication token', // TODO
'token_help' => 'Allows access to all RSS outputs of the user as well as refreshing feeds without authentication:', // TODO
'token' => '마스터 인증 토큰',
'token_help' => '인증 없이 사용자의 모든 RSS 내용과 피드 새로고침 권한을 허용합니다.:',
'type' => '인증',
'unsafe_autologin' => '다음과 같은 안전하지 않은 방식의 로그인을 허가합니다: ',
),
@ -160,8 +160,8 @@ return array(
'_' => '시스템 설정',
'auto-update-url' => '자동 업데이트 서버 URL',
'base-url' => array(
'_' => 'Base URL', // TODO
'recommendation' => 'Automatic recommendation: <kbd>%s</kbd>', // TODO
'_' => 'Base URL', // IGNORE
'recommendation' => '자동 추천: <kbd>%s</kbd>',
),
'cookie-duration' => array(
'help' => '초',
@ -187,33 +187,33 @@ return array(
),
'title' => '사용자 회원가입 양식',
),
'sensitive-parameter' => 'Sensitive parameter. Edit manually in <kbd>./data/config.php</kbd>', // TODO
'sensitive-parameter' => 'Sensitive parameter. <kbd>./data/config.php</kbd>에서 직접 수정', // DIRTY
'tos' => array(
'disabled' => 'is not given', // TODO
'enabled' => '<a href="./?a=tos">is enabled</a>', // TODO
'help' => 'How to <a href="https://freshrss.github.io/FreshRSS/en/admins/12_User_management.html#enable-terms-of-service-tos" target="_blank">enable the Terms of Service</a>', // TODO
'disabled' => '주어지지 않음',
'enabled' => '<a href="./?a=tos">활성화됨</a>',
'help' => '<a href="https://freshrss.github.io/FreshRSS/en/admins/12_User_management.html#enable-terms-of-service-tos" target="_blank">이용 약관 활성화</a> 하는 방법',
),
'websub' => array(
'help' => 'About <a href="https://freshrss.github.io/FreshRSS/en/users/WebSub.html" target="_blank">WebSub</a>', // TODO
'help' => '<a href="https://freshrss.github.io/FreshRSS/en/users/WebSub.html" target="_blank">WebSub</a> 살펴보기',
),
),
'update' => array(
'_' => '업데이트',
'apply' => '업데이트 적용하기',
'changelog' => 'Changelog', // TODO
'changelog' => '변경사항',
'check' => '새 업데이트 확인하기',
'copiedFromURL' => 'update.php copied from %s to ./data', // TODO
'copiedFromURL' => 'update.php가 %s 에서 ./data 으로 복사됨',
'current_version' => '현버전은 입니다',
'last' => '마지막 확인',
'loading' => 'Updating…', // TODO
'loading' => '업데이트 중…',
'none' => '적용 가능한 업데이트가 없습니다',
'releaseChannel' => array(
'_' => 'Release channel', // TODO
'edge' => 'Rolling release (“edge”)', // TODO
'latest' => 'Stable release (“latest”)', // TODO
'_' => '릴리즈 채널',
'edge' => '롤링 릴리즈 (“edge”)',
'latest' => '안정 릴리즈 (“latest”)',
),
'title' => '업데이트',
'viaGit' => 'Update via git and Github.com started', // TODO
'viaGit' => 'Git 및 GitHub.com을 통한 업데이트 시작 됨',
),
'user' => array(
'admin' => '관리자',

View File

@ -17,7 +17,7 @@ return array(
'help' => '더 자세한 옵션은 개별 피드 설정에 있습니다',
'keep_favourites' => '즐겨찾기 삭제 안 함',
'keep_labels' => '라벨 삭제 안 함',
'keep_max' => '보관할 글 최대 개수', // DIRTY
'keep_max' => '피드별 보관할 글 최대 개수',
'keep_min_by_feed' => '피드별 보관할 글 최소 개수',
'keep_period' => '보관할 글 최대 기간',
'keep_unreads' => '읽지 않은 글 삭제 안 함',
@ -33,9 +33,9 @@ return array(
'display' => array(
'_' => '표시',
'darkMode' => array(
'_' => 'Automatic dark mode (beta)', // TODO
'auto' => 'Auto', // TODO
'no' => 'No', // TODO
'_' => '자동 다크 모드 (베타)',
'auto' => '자동',
'no' => '끄기',
),
'icon' => array(
'bottom_line' => '하단',
@ -56,8 +56,8 @@ return array(
'theme' => array(
'_' => '테마',
'deprecated' => array(
'_' => 'Deprecated', // TODO
'description' => 'This theme is no longer supported and will be not available anymore in a <a href="https://freshrss.github.io/FreshRSS/en/users/05_Configuration.html#theme" target="_blank">future release of FreshRSS</a>', // TODO
'_' => '더 이상 사용되지 않음',
'description' => '이 테마는 더이상 지원되지 않으며 <a href="https://freshrss.github.io/FreshRSS/en/users/05_Configuration.html#theme" target="_blank">FreshRSS 이후 릴리즈</a>에서 사용할 수 없습니다.',
),
),
'theme_not_available' => '“%s” 테마는 더이상 사용할 수 없습니다. 다른 테마를 선택해 주세요.',
@ -68,14 +68,14 @@ return array(
'portrait' => '세로 방향',
'square' => '정사각형',
),
'timezone' => 'Time zone', // TODO
'timezone' => '시간대',
'title' => '표시',
'website' => array(
'full' => 'Icon and name', // TODO
'icon' => 'Icon only', // TODO
'label' => 'Website', // TODO
'name' => 'Name only', // TODO
'none' => 'None', // TODO
'full' => '아이콘 및 이름',
'icon' => '아이콘',
'label' => '웹사이트',
'name' => '이름',
'none' => '없음',
),
'width' => array(
'content' => '내용 표시 너비',
@ -120,20 +120,20 @@ return array(
'feeds' => '피드별로 표시',
'order' => '날짜순으로 정렬',
'search' => '정규 표현식',
'shareOpml' => 'Enable sharing by OPML of corresponding categories and feeds', // TODO
'shareRss' => 'Enable sharing by HTML &amp; RSS', // TODO
'shareOpml' => '해당 카테고리와 피드에 대한 OPML 공유 활성화',
'shareRss' => 'HTML 및 RSS 공유 활성화',
'state' => '상태',
'tags' => '태그별로 표시',
'type' => '유형',
),
'get_all' => '모든 글 표시',
'get_all_labels' => 'Display articles with any label', // TODO
'get_all_labels' => '라벨이 있는 글 표시',
'get_category' => '“%s” 카테고리 표시',
'get_favorite' => '즐겨찾기에 등록된 글 표시',
'get_feed' => '“%s” 피드 표시',
'get_important' => 'Display articles from important feeds', // TODO
'get_label' => 'Display articles with “%s” label', // TODO
'help' => 'See the <a href="https://freshrss.github.io/FreshRSS/en/users/user_queries.html" target="_blank">documentation for user queries and resharing by HTML / RSS / OPML</a>.', // TODO
'get_important' => '중요 피드의 글 표시',
'get_label' => '“%s” 라벨을 가진 글 표시',
'help' => '<a href="https://freshrss.github.io/FreshRSS/en/users/user_queries.html" target="_blank">유저 쿼리 및 HTML / RSS / OPML을 사용한 재공유 방법 문서</a> 살펴보기.',
'name' => '이름',
'no_filter' => '필터가 없습니다',
'number' => '쿼리 #%d',
@ -141,11 +141,11 @@ return array(
'order_desc' => '최근 글 먼저 표시',
'search' => '“%s”의 검색 결과',
'share' => array(
'_' => 'Share this query by link', // TODO
'help' => 'Give this link if you want to share this query with anyone', // TODO
'html' => 'Shareable link to the HTML page', // TODO
'opml' => 'Shareable link to the OPML list of feeds', // TODO
'rss' => 'Shareable link to the RSS feed', // TODO
'_' => '링크로 쿼리 공유',
'help' => '링크를 사용해서 쿼리를 공유하세요',
'html' => 'HTML 공유 링크',
'opml' => 'OPML 피드 목록 공유 링크',
'rss' => 'RSS 피드 공유 링크',
),
'state_0' => '모든 글 표시',
'state_1' => '읽은 글 표시',
@ -217,7 +217,7 @@ return array(
'read' => array(
'article_open_on_website' => '글이 게재된 웹사이트를 방문했을 때',
'article_viewed' => '글을 읽었을 때',
'focus' => 'when focused (except for important feeds)', // TODO
'focus' => '포커스 됐을 때 (중요 피드 제외)',
'keep_max_n_unread' => '읽지 않은 상태로 유지할 최대 글 개수',
'scroll' => '스크롤을 하며 지나갈 때 (except for important feeds)', // DIRTY
'upon_gone' => '원본 뉴스 피드에서 글 삭제 되었을 때',

View File

@ -57,11 +57,11 @@ return array(
),
'import_export' => array(
'export_no_zip_extension' => 'ZIP 확장 기능을 서버에서 찾을 수 없습니다. 파일을 하나씩 내보내세요.',
'feeds_imported' => '피드를 성공적으로 불러왔습니다 / Your feeds have been imported. If you are done importing, you can now click the <i>Update feeds</i> button.', // DIRTY
'feeds_imported_with_errors' => '피드를 불러왔지만, 문제가 발생했습니다 / Your feeds have been imported, but some errors occurred. If you are done importing, you can now click the <i>Update feeds</i> button.', // DIRTY
'feeds_imported' => '피드 불러오기가 완료됐습니다. 불러오기가 끝났다면 이제 <i>피드 업데이트</i> 버튼을 클릭해도 됩니다.',
'feeds_imported_with_errors' => '피드를 불러왔지만, 문제가 발생했습니다. 불러오기가 끝났다면 이제 <i>피드 업데이트</i> 버튼을 클릭해도 됩니다.',
'file_cannot_be_uploaded' => '파일을 업로드할 수 없습니다!',
'no_zip_extension' => 'ZIP 확장 기능을 서버에서 찾을 수 없습니다.',
'zip_error' => 'ZIP 파일을 불러오는 동안 문제가 발생했습니다.', // DIRTY
'zip_error' => 'ZIP 처리 중 문제가 발생했습니다.',
),
'profile' => array(
'error' => '프로필을 변경할 수 없습니다',
@ -94,7 +94,7 @@ return array(
'cache_cleared' => '<em>%s</em> 캐쉬 지움',
'deleted' => '피드가 삭제되었습니다',
'error' => '피드를 변경할 수 없습니다',
'internal_problem' => 'RSS 피드를 추가할 수 없습니다. 자세한 내용은 <a href="%s">FreshRSS 로그</a>를 참고하세요. You can try force adding by appending <code>#force_feed</code> to the URL.', // DIRTY
'internal_problem' => 'RSS 피드를 추가할 수 없습니다. 자세한 내용은 <a href="%s">FreshRSS 로그</a>를 참고하세요. <code>#force_feed</code>를 URL에 추가하여 강제로 추가 시도 할 수 있습니다.',
'invalid_url' => 'URL (<em>%s</em>)이 유효하지 않습니다',
'n_actualized' => '%d 개의 피드에서 새 글을 가져왔습니다',
'n_entries_deleted' => '%d 개의 글을 삭제했습니다',
@ -116,10 +116,10 @@ return array(
),
'tag' => array(
'created' => '“%s” 태그가 생성되었습니다.',
'error' => 'Label could not be updated!', // TODO
'error' => '라벨 업데이트 실패!',
'name_exists' => '같은 이름의 태그가 이미 존재합니다.',
'renamed' => '“%s” 태그가 “%s” (으)로 이름이 변경되었습니다.',
'updated' => 'Label has been updated.', // TODO
'updated' => '라벨이 업데이트 됐습니다.',
),
'update' => array(
'can_apply' => 'FreshRSS가 <strong>%s</strong> 버전으로 업데이트됩니다.',

View File

@ -134,7 +134,7 @@ return array(
'request_failed' => '요청한 작업을 수행할 수 없습니다. 인터넷 연결에 문제가 발생한 것 같습니다.',
'title_new_articles' => 'FreshRSS: 새 글이 있습니다!',
),
'labels_empty' => 'No labels', // TODO
'labels_empty' => '라벨 없음',
'new_article' => '새 글이 있습니다. 여기를 클릭하면 페이지를 다시 불러옵니다.',
'should_be_activated' => '자바스크립트를 사용하도록 설정해야합니다',
),
@ -178,7 +178,7 @@ return array(
'queries' => '사용자 쿼리',
'reading' => '읽기',
'search' => '단어 또는 #태그 검색',
'search_help' => 'See documentation for advanced <a href="https://freshrss.github.io/FreshRSS/en/users/10_filter.html#with-the-search-field" target="_blank">search parameters</a>', // TODO
'search_help' => '문서에서 고급 <a href="https://freshrss.github.io/FreshRSS/en/users/10_filter.html#with-the-search-field" target="_blank">검색 인자</a> 알아보기',
'sharing' => '공유',
'shortcuts' => '단축키',
'stats' => '통계',
@ -203,7 +203,7 @@ return array(
'clipboard' => '클립보드',
'diaspora' => 'Diaspora*', // IGNORE
'email' => '메일',
'email-webmail-firefox-fix' => 'Email (webmail - fix for Firefox)', // TODO
'email-webmail-firefox-fix' => '이메일 (웹메일 - Firefox 전용 수정)',
'facebook' => 'Facebook', // IGNORE
'gnusocial' => 'GNU social', // IGNORE
'jdh' => 'Journal du hacker', // IGNORE

View File

@ -17,9 +17,9 @@ return array(
'bugs_reports' => '버그 제보하기',
'credits' => '크레딧',
'credits_content' => 'FreshRSS는 <a href="http://twitter.github.io/bootstrap/">Bootstrap</a> 프레임워크를 사용하진 않지만, 일부 디자인 요소를 가져왔습니다. <a href="https://gitlab.gnome.org/Archive/gnome-icon-theme-symbolic">아이콘들</a>은 <a href="https://www.gnome.org/">GNOME 프로젝트</a>에서 가져왔습니다. <em>Open Sans</em> 글꼴은 <a href="https://fonts.google.com/specimen/Open+Sans">Steve Matteson</a>가 제작하였습니다. FreshRSS는 PHP 프레임워크인 <a href="https://framagit.org/marienfressinaud/MINZ">Minz</a>에 기반하고 있습니다.',
'documentation' => 'Documentation', // TODO
'documentation' => '문서',
'freshrss_description' => 'FreshRSS는 같은 셀프 호스팅 기반의 RSS 피드 수집기입니다. FreshRSS는 강력하고 다양한 설정을 할 수 있으면서도 가볍고 사용하기 쉽습니다.',
'github' => '<a href="https://github.com/FreshRSS/FreshRSS/issues">Github 저장소에 제보</a>',
'github' => '<a href="https://github.com/FreshRSS/FreshRSS/issues">GitHub 저장소에 제보</a>',
'license' => '라이센스',
'project_website' => '프로젝트 웹사이트',
'title' => '정보',
@ -45,7 +45,7 @@ return array(
'bookmark_query' => '현재 쿼리 북마크',
'favorites' => '즐겨찾기 (%s)',
'global_view' => '전체 모드',
'important' => 'Important feeds', // TODO
'important' => '중요 피드',
'main_stream' => '메인 스트림',
'mark_all_read' => '모두 읽음으로 표시',
'mark_cat_read' => '카테고리를 읽음으로 표시',

View File

@ -66,9 +66,14 @@ return array(
'description' => '설명',
'empty' => '이 피드는 비어있습니다. 피드가 계속 운영되고 있는지 확인하세요.',
'error' => '이 피드에 문제가 발생했습니다. 이 피드에 접근 권한이 있는지 확인하세요.',
'export-as-opml' => array(
'download' => '다운로드',
'help' => 'XML 파일',
'label' => 'OPML로 내보내기',
),
'filteractions' => array(
'_' => '필터 동작',
'help' => '한 줄에 한 검색 필터를 작성해 주세요. Operators <a href="https://freshrss.github.io/FreshRSS/en/users/10_filter.html#with-the-search-field" target="_blank">see documentation</a>.', // DIRTY
'help' => '한 줄에 한 검색 필터를 작성해 주세요. 실행시 <a href="https://freshrss.github.io/FreshRSS/en/users/10_filter.html#with-the-search-field" target="_blank">문서 참고</a>.',
),
'information' => '정보',
'keep_min' => '최소 유지 글 개수',
@ -99,8 +104,8 @@ return array(
'help' => '예제: <code>descendant::img/@src</code>',
),
'item_timeFormat' => array(
'_' => 'Custom date/time format', // TODO
'help' => 'Optional. A format supported by <a href="https://php.net/datetime.createfromformat" target="_blank"><code>DateTime::createFromFormat()</code></a> such as <code>d-m-Y H:i:s</code>', // TODO
'_' => '사용자 지정 날짜/시간 형식',
'help' => '선택 사항. <a href="https://php.net/datetime.createfromformat" target="_blank"><code>DateTime::createFromFormat()</code></a>에서 지원하는 형식(예: <code>d-m-Y H:i:s</code>)',
),
'item_timestamp' => array(
'_' => '기사 날짜',
@ -121,62 +126,62 @@ return array(
'relative' => '다음의 (기사와 관련된) XPath:',
'xpath' => '다음의 XPath:',
),
'json_dotpath' => array(
'_' => 'JSON (Dotted paths)', // TODO
'json_dotnotation' => array(
'_' => 'JSON (점 표기법)',
'feed_title' => array(
'_' => 'feed title', // TODO
'help' => 'Example: <code>meta.title</code> or a static string: <code>"My custom feed"</code>', // TODO
'_' => '피드 제목',
'help' => '예시: <code>meta.title</code> 혹은 스태틱 문자열: <code>"나만의 커스텀 피드"</code>',
),
'help' => 'A JSON dotted path uses dots between objects and brackets for arrays (e.g. <code>data.items[0].title</code>)', // TODO
'help' => 'JSON 점 표기법은 배열을 표기할 때 오브젝트와 괄호 사이에 점을 사용합니다. (예: <code>data.items[0].title</code>)',
'item' => array(
'_' => 'finding news <strong>items</strong><br /><small>(most important)</small>', // TODO
'help' => 'JSON path to the array containing the items, e.g. <code>newsItems</code>', // TODO
'_' => '새 뉴스 <strong>기사</strong> 찾기<br /><small>(가장 중요함)</small>',
'help' => '기사를 포함한 배열의 JSON 경로, 예: <code>뉴스기사</code>',
),
'item_author' => 'item author', // TODO
'item_categories' => 'item tags', // TODO
'item_author' => '기사 저자',
'item_categories' => '기사 테그',
'item_content' => array(
'_' => 'item content', // TODO
'help' => 'Key under which the content is found, e.g. <code>content</code>', // TODO
'_' => '기사 내용',
'help' => 'Key under which the content is found, 예: <code>내용</code>',
),
'item_thumbnail' => array(
'_' => 'item thumbnail', // TODO
'help' => 'Example: <code>image</code>', // TODO
'_' => '기사 섬네일',
'help' => '예시: <code>image</code>',
),
'item_timeFormat' => array(
'_' => 'Custom date/time format', // TODO
'help' => 'Optional. A format supported by <a href="https://php.net/datetime.createfromformat" target="_blank"><code>DateTime::createFromFormat()</code></a> such as <code>d-m-Y H:i:s</code>', // TODO
'_' => '사용자 지정 날짜/시간 형식',
'help' => '선택 사항. <a href="https://php.net/datetime.createfromformat" target="_blank"><code>DateTime::createFromFormat()</code></a>에서 지원하는 형식(예: <code>d-m-Y H:i:s</code>)',
),
'item_timestamp' => array(
'_' => 'item date', // TODO
'help' => 'The result will be parsed by <a href="https://php.net/strtotime" target="_blank"><code>strtotime()</code></a>', // TODO
'_' => '기사 날짜',
'help' => '결과 값은 <a href="https://php.net/strtotime" target="_blank"><code>strtotime()</code></a>를 통해 파싱됩니다.',
),
'item_title' => 'item title', // TODO
'item_uid' => 'item unique ID', // TODO
'item_title' => '기사 제목',
'item_uid' => '기사 고유 ID',
'item_uri' => array(
'_' => 'item link (URL)', // TODO
'help' => 'Example: <code>permalink</code>', // TODO
'_' => '기사 링크 (URL)',
'help' => '예시: <code>permalink</code>',
),
'json' => 'Dotted Path for:', // TODO
'relative' => 'Dotted Path (relative to item) for:', // TODO
'json' => 'JSON 경로:',
'relative' => 'JSON 상대 경로(기사 기준):',
),
'jsonfeed' => 'JSON Feed', // TODO
'jsonfeed' => 'JSON 피드',
'rss' => 'RSS / Atom (기본값)',
'xml_xpath' => 'XML + XPath', // TODO
'xml_xpath' => 'XML + XPath', // IGNORE
),
'maintenance' => array(
'clear_cache' => '캐쉬 지우기',
'clear_cache_help' => '이 피드의 캐쉬 지우기.',
'reload_articles' => '글 다시 로드',
'reload_articles_help' => '글 다시 로드하고 셀렉터가 정의 되었을 경우에 모든 컨텐츠 가져오기.', // DIRTY
'reload_articles_help' => '선택자가 지정된 경우 해당하는 수의 기사를 다시 불러오고 전체 내용을 가져옵니다.',
'title' => '유지 보수',
),
'max_http_redir' => '최대 HTTP 리다이렉션',
'max_http_redir_help' => '값을 비워두거나 0으로 설정하면 비활성화하며, -1으로 설정하면 무제한 리다이렉션합니다',
'method' => array(
'_' => 'HTTP Method', // TODO
'_' => 'HTTP 메서드',
),
'method_help' => 'The POST payload has automatic support for <code>application/x-www-form-urlencoded</code> and <code>application/json</code>', // TODO
'method_postparams' => 'Payload for POST', // TODO
'method_help' => 'POST 페이로드는 <code>application/x-www-form-urlencoded</code> 및 <code>application/json</code>을 자동으로 지원합니다.',
'method_postparams' => 'POST용 페이로드',
'moved_category_deleted' => '카테고리를 삭제하면, 해당 카테고리 아래에 있던 피드들은 자동적으로 <em>%s</em> 아래로 분류됩니다.',
'mute' => '무기한 새로고침 금지',
'no_selected' => '선택된 피드가 없습니다.',
@ -185,11 +190,11 @@ return array(
'_' => '표시',
'archived' => '표시하지 않음 (보관됨)',
'category' => '피드가 속한 카테고리에만 표시하기',
'important' => 'Show in important feeds', // TODO
'important' => '중요 피드에서 표시',
'main_stream' => '메인 스트림에 표시하기',
),
'proxy' => '이 피드를 가져올 때 사용할 프록시 설정',
'proxy_help' => '프로토콜 선택 (예: SOCKS5) 그리고 프록시 주소 입력 (예: <kbd>127.0.0.1:1080</kbd> or <kbd>username:password@127.0.0.1:1080</kbd>)', // DIRTY
'proxy_help' => '프로토콜 선택 (예: SOCKS5) 그리고 프록시 주소 입력 (예: <kbd>127.0.0.1:1080</kbd> 혹은 <kbd>username:password@127.0.0.1:1080</kbd>)',
'selector_preview' => array(
'show_raw' => '소스코드 표시',
'show_rendered' => '콘텐츠 표시',
@ -240,7 +245,7 @@ return array(
'subscription_tools' => '구독 도구',
),
'tag' => array(
'auto_label' => 'Add this label to new articles', // TODO
'auto_label' => '새 기사에 이 라벨 추가',
'name' => '이름',
'new_name' => '새 이름',
'old_name' => '이전 이름',

View File

@ -213,7 +213,7 @@ return array(
'latest' => 'Stable release (“latest”)', // TODO
),
'title' => 'Atjaunināt sistēmu',
'viaGit' => 'Update via git and Github.com started', // TODO
'viaGit' => 'Update via git and GitHub.com started', // TODO
),
'user' => array(
'admin' => 'Administrators',

View File

@ -66,6 +66,11 @@ return array(
'description' => 'Apraksts',
'empty' => 'Šī barotne ir tukša. Lūdzu, pārbaudiet, vai tā joprojām tiek uzturēta.',
'error' => 'Šajā barotnē ir radusies problēma. Lūdzu, pārbaudiet, vai tā vienmēr ir sasniedzama, un pēc tam to atjauniniet.',
'export-as-opml' => array(
'download' => 'Download', // TODO
'help' => 'XML file', // TODO
'label' => 'Export as OPML', // TODO
),
'filteractions' => array(
'_' => 'Filtra darbības',
'help' => 'Uzrakstiet vienu meklēšanas filtru katrā rindā. Operators <a href="https://freshrss.github.io/FreshRSS/en/users/10_filter.html#with-the-search-field" target="_blank">see documentation</a>.', // DIRTY
@ -121,13 +126,13 @@ return array(
'relative' => 'XPath (relatīvs rakstam) priekš:',
'xpath' => 'XPath priekš:',
),
'json_dotpath' => array(
'_' => 'JSON (Dotted paths)', // TODO
'json_dotnotation' => array(
'_' => 'JSON (dot notation)', // TODO
'feed_title' => array(
'_' => 'feed title', // TODO
'help' => 'Example: <code>meta.title</code> or a static string: <code>"My custom feed"</code>', // TODO
),
'help' => 'A JSON dotted path uses dots between objects and brackets for arrays (e.g. <code>data.items[0].title</code>)', // TODO
'help' => 'A JSON dot notated uses dots between objects and brackets for arrays (e.g. <code>data.items[0].title</code>)', // TODO
'item' => array(
'_' => 'finding news <strong>items</strong><br /><small>(most important)</small>', // TODO
'help' => 'JSON path to the array containing the items, e.g. <code>newsItems</code>', // TODO
@ -156,8 +161,8 @@ return array(
'_' => 'item link (URL)', // TODO
'help' => 'Example: <code>permalink</code>', // TODO
),
'json' => 'Dotted Path for:', // TODO
'relative' => 'Dotted Path (relative to item) for:', // TODO
'json' => 'dot notation for:', // TODO
'relative' => 'dot notated path (relative to item) for:', // TODO
),
'jsonfeed' => 'JSON Feed', // TODO
'rss' => 'RSS / Atom (noklusējums)',

View File

@ -19,8 +19,8 @@ return array(
'http' => 'HTTP (voor gevorderde gebruikers met HTTPS)',
'none' => 'Geen (gevaarlijk)',
'title' => 'Authenticatie',
'token' => 'Master authentication token', // TODO
'token_help' => 'Allows access to all RSS outputs of the user as well as refreshing feeds without authentication:', // TODO
'token' => 'Hoofdauthenticatietoken',
'token_help' => 'Geeft toegang tot alle RSS-uitvoer van de gebruiker en kan feeds verversen zonder authenticatie:',
'type' => 'Authenticatie methode',
'unsafe_autologin' => 'Sta onveilige automatische log in toe met het volgende formaat: ',
),
@ -194,7 +194,7 @@ return array(
'help' => 'How to <a href="https://freshrss.github.io/FreshRSS/en/admins/12_User_management.html#enable-terms-of-service-tos" target="_blank">algemene voorwaarden inschakelen</a>',
),
'websub' => array(
'help' => 'About <a href="https://freshrss.github.io/FreshRSS/en/users/WebSub.html" target="_blank">WebSub</a>', // TODO
'help' => 'Over <a href="https://freshrss.github.io/FreshRSS/en/users/WebSub.html" target="_blank">WebSub</a>',
),
),
'update' => array(
@ -213,7 +213,7 @@ return array(
'latest' => 'Stabiele release (“latest”)',
),
'title' => 'Vernieuw systeem',
'viaGit' => 'Update via git and Github.com gestart',
'viaGit' => 'Update via git and GitHub.com gestart',
),
'user' => array(
'admin' => 'Beheerder',

View File

@ -120,20 +120,20 @@ return array(
'feeds' => 'Weergeven op feed',
'order' => 'Sorteren op datum',
'search' => 'Expressie',
'shareOpml' => 'Enable sharing by OPML of corresponding categories and feeds', // TODO
'shareRss' => 'Enable sharing by HTML &amp; RSS', // TODO
'shareOpml' => 'Via OPML delen van bijbehorende categorieën en feeds aanzetten',
'shareRss' => 'Via HTML &amp; RSS delen aanzetten',
'state' => 'Status',
'tags' => 'Weergeven op label',
'type' => 'Type', // IGNORE
),
'get_all' => 'Toon alle artikelen',
'get_all_labels' => 'Display articles with any label', // TODO
'get_all_labels' => 'Artikelen met elk label tonen',
'get_category' => 'Toon „%s” categorie',
'get_favorite' => 'Toon favoriete artikelen',
'get_feed' => 'Toon „%s” feed',
'get_important' => 'Display articles from important feeds', // TODO
'get_label' => 'Display articles with “%s” label', // TODO
'help' => 'See the <a href="https://freshrss.github.io/FreshRSS/en/users/user_queries.html" target="_blank">documentation for user queries and resharing by HTML / RSS / OPML</a>.', // TODO
'get_important' => 'Artikelen van belangrijke feeds tonen',
'get_label' => 'Artikelen met het label „%s” tonen',
'help' => 'Zie de <a href="https://freshrss.github.io/FreshRSS/en/users/user_queries.html" target="_blank">documentatie voor gebruikersqueries en delen via HTML / RSS / OPML</a>.',
'name' => 'Naam',
'no_filter' => 'Geen filter',
'number' => 'Query n°%d', // IGNORE
@ -141,11 +141,11 @@ return array(
'order_desc' => 'Toon nieuwste artikelen eerst',
'search' => 'Zoek naar „%s”',
'share' => array(
'_' => 'Share this query by link', // TODO
'help' => 'Give this link if you want to share this query with anyone', // TODO
'html' => 'Shareable link to the HTML page', // TODO
'opml' => 'Shareable link to the OPML list of feeds', // TODO
'rss' => 'Shareable link to the RSS feed', // TODO
'_' => 'Deze query delen via een link',
'help' => 'Geef deze link als je deze query met iemand wilt delen',
'html' => 'Deelbare link naar de HTML-pagina',
'opml' => 'Deelbare link naar de OPML-lijst van feeds',
'rss' => 'Deelbare link naar de RSS-feed',
),
'state_0' => 'Toon alle artikelen',
'state_1' => 'Toon gelezen artikelen',
@ -217,9 +217,9 @@ return array(
'read' => array(
'article_open_on_website' => 'als het artikel wordt geopend op de originele website',
'article_viewed' => 'als het artikel wordt bekeken',
'focus' => 'when focused (except for important feeds)', // TODO
'focus' => 'wanneer gefocust (behalve voor belangrijke feeds)',
'keep_max_n_unread' => 'Max aantal artikelen ongelezen houden',
'scroll' => 'tijdens het scrollen (except for important feeds)', // DIRTY
'scroll' => 'tijdens het scrollen (behalve voor belangrijke feeds)',
'upon_gone' => 'als het niet langer in de nieuwsfeed staat',
'upon_reception' => 'bij ontvangst van het artikel',
'when' => 'Markeer artikel als gelezen…',

View File

@ -116,10 +116,10 @@ return array(
),
'tag' => array(
'created' => 'Label „%s” aangemaakt.',
'error' => 'Label could not be updated!', // TODO
'error' => 'Label kon niet worden bijgewerkt!',
'name_exists' => 'Label bestaat al.',
'renamed' => 'Label „%s” hernoemd naar „%s”.',
'updated' => 'Label has been updated.', // TODO
'updated' => 'Label bijgewerkt.',
),
'update' => array(
'can_apply' => 'FreshRSS word nu bijgewerkt naar <strong>versie %s</strong>.',

View File

@ -19,7 +19,7 @@ return array(
'credits_content' => 'Sommige ontwerp elementen komen van <a href="http://twitter.github.io/bootstrap/">Bootstrap</a> alhoewel FreshRSS dit raamwerk niet gebruikt. <a href="https://gitlab.gnome.org/Archive/gnome-icon-theme-symbolic">Pictogrammen</a> komen van het <a href="https://www.gnome.org/">GNOME project</a>. <em>De Open Sans</em> font police is gemaakt door <a href="https://fonts.google.com/specimen/Open+Sans">Steve Matteson</a>. FreshRSS is gebaseerd op <a href="https://framagit.org/marienfressinaud/MINZ">Minz</a>, een PHP raamwerk. Nederlandse vertaling door Wanabo, <a href="http://www.nieuwskop.be" title="NieuwsKop">NieuwsKop.be</a>. Link naar de Nederlandse vertaling, <a href="https://github.com/Wanabo/FreshRSS-Dutch-translation/tree/master">FreshRSS-Dutch-translation</a>.',
'documentation' => 'Documentatie',
'freshrss_description' => 'FreshRSS is een RSS-feed aggregator om zelf te hosten. Het gebruikt weinig systeembronnen en is makkelijk te beheren terwijl het een krachtig en makkelijk te configureren programma is.',
'github' => '<a href="https://github.com/FreshRSS/FreshRSS/issues">op Github</a>',
'github' => '<a href="https://github.com/FreshRSS/FreshRSS/issues">op GitHub</a>',
'license' => 'Licentie',
'project_website' => 'Projectwebsite',
'title' => 'Over',
@ -45,7 +45,7 @@ return array(
'bookmark_query' => 'Huidige query opslaan',
'favorites' => 'Favorieten (%s)',
'global_view' => 'Globale weergave',
'important' => 'Important feeds', // TODO
'important' => 'Belangrijke feeds',
'main_stream' => 'Overzicht',
'mark_all_read' => 'Markeer alles als gelezen',
'mark_cat_read' => 'Markeer categorie als gelezen',

View File

@ -66,6 +66,11 @@ return array(
'description' => 'Omschrijving',
'empty' => 'Deze feed is leeg. Controleer of deze nog actueel is.',
'error' => 'Deze feed heeft problemen. Verifieer a.u.b het doeladres en actualiseer het.',
'export-as-opml' => array(
'download' => 'Downloaden',
'help' => 'XML-bestand',
'label' => 'Als OPML exporteren',
),
'filteractions' => array(
'_' => 'Filteracties',
'help' => 'Voer één zoekfilter per lijn in. Operators <a href="https://freshrss.github.io/FreshRSS/en/users/10_filter.html#with-the-search-field" target="_blank">see documentation</a>.', // DIRTY
@ -121,45 +126,45 @@ return array(
'relative' => 'XPath (relatief naar bericht) voor:',
'xpath' => 'XPath voor:',
),
'json_dotpath' => array(
'_' => 'JSON (Dotted paths)', // TODO
'json_dotnotation' => array(
'_' => 'JSON (puntnotatie)',
'feed_title' => array(
'_' => 'feed title', // TODO
'help' => 'Example: <code>meta.title</code> or a static string: <code>"My custom feed"</code>', // TODO
'_' => 'feed-titel',
'help' => 'Voorbeeld: <code>meta.titel</code> of een statische reeks tekst: <code>"Mijn aangepaste feed"</code>',
),
'help' => 'A JSON dotted path uses dots between objects and brackets for arrays (e.g. <code>data.items[0].title</code>)', // TODO
'help' => 'JSON-puntnotatie gebruikt punten tussen objecten en vierkante haakjes voor arrays (bv. <code>data.items[0].titel</code>)',
'item' => array(
'_' => 'finding news <strong>items</strong><br /><small>(most important)</small>', // TODO
'help' => 'JSON path to the array containing the items, e.g. <code>newsItems</code>', // TODO
'_' => 'nieuws-<strong>items</strong> vinden<br /><small>(het belangrijkst)</small>',
'help' => 'JSON-puntnotatiepad naar de array met de items, bv. <code>nieuwsItems</code>',
),
'item_author' => 'item author', // TODO
'item_categories' => 'item tags', // TODO
'item_author' => 'item-auteur',
'item_categories' => 'item-tags',
'item_content' => array(
'_' => 'item content', // TODO
'help' => 'Key under which the content is found, e.g. <code>content</code>', // TODO
'_' => 'item-inhoud',
'help' => 'De sleutel waaronder de inhoude te vinden is, bv. <code>content</code>',
),
'item_thumbnail' => array(
'_' => 'item thumbnail', // TODO
'help' => 'Example: <code>image</code>', // TODO
'_' => 'item-miniatuur',
'help' => 'Voorbeeld: <code>image</code>',
),
'item_timeFormat' => array(
'_' => 'Custom date/time format', // TODO
'help' => 'Optional. A format supported by <a href="https://php.net/datetime.createfromformat" target="_blank"><code>DateTime::createFromFormat()</code></a> such as <code>d-m-Y H:i:s</code>', // TODO
'_' => 'Aangepast datum-/tijdformaat',
'help' => 'Optioneel. Een formaat ondersteund door <a href="https://php.net/datetime.createfromformat" target="_blank"><code>DateTime::createFromFormat()</code></a> zoals <code>d-m-Y H:i:s</code>',
),
'item_timestamp' => array(
'_' => 'item date', // TODO
'help' => 'The result will be parsed by <a href="https://php.net/strtotime" target="_blank"><code>strtotime()</code></a>', // TODO
'_' => 'item-datum',
'help' => 'Het resultaat zal worden geparst door <a href="https://php.net/strtotime" target="_blank"><code>strtotime()</code></a>',
),
'item_title' => 'item title', // TODO
'item_uid' => 'item unique ID', // TODO
'item_title' => 'item-titel',
'item_uid' => 'uniek item-id',
'item_uri' => array(
'_' => 'item link (URL)', // TODO
'help' => 'Example: <code>permalink</code>', // TODO
'_' => 'item-link (url)',
'help' => 'Voorbeeld: <code>permalink</code>',
),
'json' => 'Dotted Path for:', // TODO
'relative' => 'Dotted Path (relative to item) for:', // TODO
'json' => 'puntnotatie voor:',
'relative' => 'puntnotatiepad (relatief aan item) voor:',
),
'jsonfeed' => 'JSON Feed', // TODO
'jsonfeed' => 'JSON Feed', // IGNORE
'rss' => 'RSS / Atom (standaard)',
'xml_xpath' => 'XML + XPath', // IGNORE
),
@ -173,10 +178,10 @@ return array(
'max_http_redir' => 'Max HTTP redirects', // IGNORE
'max_http_redir_help' => 'Stel in op 0 of laat leeg om uit te schakelen, -1 voor ongelimiteerde redirects',
'method' => array(
'_' => 'HTTP Method', // TODO
'_' => 'HTTP-methode',
),
'method_help' => 'The POST payload has automatic support for <code>application/x-www-form-urlencoded</code> and <code>application/json</code>', // TODO
'method_postparams' => 'Payload for POST', // TODO
'method_help' => 'De POST-payload ondersteunt automatisch <code>application/x-www-form-urlencoded</code> en <code>application/json</code>',
'method_postparams' => 'Payload voor POST',
'moved_category_deleted' => 'Als u een categorie verwijderd, worden de feeds automatisch geclassificeerd onder <em>%s</em>.',
'mute' => 'demp',
'no_selected' => 'Geen feed geselecteerd.',
@ -185,7 +190,7 @@ return array(
'_' => 'Zichtbaarheid',
'archived' => 'Niet weergeven (gearchiveerd)',
'category' => 'Toon in categorie',
'important' => 'Show in important feeds', // TODO
'important' => 'In belangrijke feeds tonen',
'main_stream' => 'Zichtbaar in het overzicht',
),
'proxy' => 'Proxy instellen om deze feed op te halen',
@ -240,7 +245,7 @@ return array(
'subscription_tools' => 'Hulpmiddelen voor abonnementen',
),
'tag' => array(
'auto_label' => 'Add this label to new articles', // TODO
'auto_label' => 'Dit label aan nieuwe artikelen toevoegen',
'name' => 'Naam',
'new_name' => 'Nieuwe naam',
'old_name' => 'Oude naam',

View File

@ -213,7 +213,7 @@ return array(
'latest' => 'Stable release (“latest”)', // TODO
),
'title' => 'Sistèma de mesa a jorn',
'viaGit' => 'Update via git and Github.com started', // TODO
'viaGit' => 'Update via git and GitHub.com started', // TODO
),
'user' => array(
'admin' => 'Administrator', // IGNORE

View File

@ -19,7 +19,7 @@ return array(
'credits_content' => 'Unes elements de lestil venon del <a href="http://twitter.github.io/bootstrap/">projècte Bootstrap</a> encara que FreshRSS utilize pas aqueste framework. Las <a href="https://gitlab.gnome.org/Archive/gnome-icon-theme-symbolic">icònas</a> venon del <a href="https://www.gnome.org/">projècte GNOME</a>. La polissa <em>Open Sans</em> utilizada foguèt creada per en <a href="https://fonts.google.com/specimen/Open+Sans">Steve Matteson</a>. FreshRSS es basat sus <a href="https://framagit.org/marienfressinaud/MINZ">Minz</a>, un framework PHP.',
'documentation' => 'Documentation', // TODO
'freshrss_description' => 'FreshRSS es un agregador de fluxes RSS per lauto-albergar tal. Sa tòca es dèsser leugièr e de bon utilizar de prima abòrd mas tanben dèsser potent e parametrable.',
'github' => '<a href="https://github.com/FreshRSS/FreshRSS/issues">sus Github</a>',
'github' => '<a href="https://github.com/FreshRSS/FreshRSS/issues">sus GitHub</a>',
'license' => 'Licéncia',
'project_website' => 'Site del projècte',
'title' => 'A prepaus',

View File

@ -66,6 +66,11 @@ return array(
'description' => 'Descripcion', // IGNORE
'empty' => 'Aqueste flux es void. Assegurats-vos ques totjorn mantengut.',
'error' => 'Aqueste flux a rescontrat un problèma. Volgatz verificar que siá totjorn accessible puèi actualizatz-lo.',
'export-as-opml' => array(
'download' => 'Download', // TODO
'help' => 'XML file', // TODO
'label' => 'Export as OPML', // TODO
),
'filteractions' => array(
'_' => 'Filtre daccion',
'help' => 'Escrivètz una recèrca per linha. Operators <a href="https://freshrss.github.io/FreshRSS/en/users/10_filter.html#with-the-search-field" target="_blank">see documentation</a>.', // DIRTY
@ -121,13 +126,13 @@ return array(
'relative' => 'XPath (relatiu a lelement) per:',
'xpath' => 'XPath per:',
),
'json_dotpath' => array(
'_' => 'JSON (Dotted paths)', // TODO
'json_dotnotation' => array(
'_' => 'JSON (dot notation)', // TODO
'feed_title' => array(
'_' => 'feed title', // TODO
'help' => 'Example: <code>meta.title</code> or a static string: <code>"My custom feed"</code>', // TODO
),
'help' => 'A JSON dotted path uses dots between objects and brackets for arrays (e.g. <code>data.items[0].title</code>)', // TODO
'help' => 'A JSON dot notated uses dots between objects and brackets for arrays (e.g. <code>data.items[0].title</code>)', // TODO
'item' => array(
'_' => 'finding news <strong>items</strong><br /><small>(most important)</small>', // TODO
'help' => 'JSON path to the array containing the items, e.g. <code>newsItems</code>', // TODO
@ -156,8 +161,8 @@ return array(
'_' => 'item link (URL)', // TODO
'help' => 'Example: <code>permalink</code>', // TODO
),
'json' => 'Dotted Path for:', // TODO
'relative' => 'Dotted Path (relative to item) for:', // TODO
'json' => 'dot notation for:', // TODO
'relative' => 'dot notated path (relative to item) for:', // TODO
),
'jsonfeed' => 'JSON Feed', // TODO
'rss' => 'RSS / Atom (defaut)',

View File

@ -19,10 +19,10 @@ return array(
'http' => 'HTTP (dla zaawansowanych użytkowników, z wykorzystaniem HTTPS)',
'none' => 'Brak (niebezpieczna)',
'title' => 'Uwierzytelnianie',
'token' => 'Master authentication token', // TODO
'token_help' => 'Allows access to all RSS outputs of the user as well as refreshing feeds without authentication:', // TODO
'token' => 'Główny token uwierzytelniania',
'token_help' => 'Umożliwia dostęp do wszystkich kanałów RSS użytkownika, jak również odświeżanie kanałów bez uwierzytelnienia:',
'type' => 'Metoda uwierzytelniania',
'unsafe_autologin' => 'Pozwól na niebezpieczne automatyczne logowanie następującym schematem: -> todo',
'unsafe_autologin' => 'Pozwól na niebezpieczne automatyczne logowanie następującym schematem: ',
),
'check_install' => array(
'cache' => array(
@ -160,8 +160,8 @@ return array(
'_' => 'Konfiguracja serwisu',
'auto-update-url' => 'Adres serwera automatycznej aktualizacji',
'base-url' => array(
'_' => 'Base URL', // TODO
'recommendation' => 'Automatic recommendation: <kbd>%s</kbd>', // TODO
'_' => 'Baza URL-a',
'recommendation' => 'Automatyczne zalecenie: <kbd>%s</kbd>',
),
'cookie-duration' => array(
'help' => 'w sekundach',
@ -187,33 +187,33 @@ return array(
),
'title' => 'Formularz rejestracji użytkowników',
),
'sensitive-parameter' => 'Sensitive parameter. Edit manually in <kbd>./data/config.php</kbd>', // TODO
'sensitive-parameter' => 'Czuły parametr. Należy go ustawić ręcznie w <kbd>./data/config.php</kbd>',
'tos' => array(
'disabled' => 'is not given', // TODO
'enabled' => '<a href="./?a=tos">is enabled</a>', // TODO
'help' => 'How to <a href="https://freshrss.github.io/FreshRSS/en/admins/12_User_management.html#enable-terms-of-service-tos" target="_blank">enable the Terms of Service</a>', // TODO
'disabled' => 'nie zostały ustalone',
'enabled' => '<a href="./?a=tos">włączone</a>',
'help' => 'W jaki sposób włączyć <a href="https://freshrss.github.io/FreshRSS/en/admins/12_User_management.html#enable-terms-of-service-tos" target="_blank">Warunki użytkowania</a>',
),
'websub' => array(
'help' => 'About <a href="https://freshrss.github.io/FreshRSS/en/users/WebSub.html" target="_blank">WebSub</a>', // TODO
'help' => 'O protokole <a href="https://freshrss.github.io/FreshRSS/en/users/WebSub.html" target="_blank">WebSub</a>',
),
),
'update' => array(
'_' => 'Aktualizacja',
'apply' => 'Zastosuj',
'changelog' => 'Changelog', // TODO
'changelog' => 'lista zmian',
'check' => 'Szukaj uaktualnień',
'copiedFromURL' => 'update.php copied from %s to ./data', // TODO
'copiedFromURL' => 'update.php skopiowany z %s do ./data',
'current_version' => 'Używana wersja',
'last' => 'Ostatnie sprawdzenie',
'loading' => 'Updating…', // TODO
'loading' => 'Aktualizowanie…',
'none' => 'Brak nowych aktualizacji',
'releaseChannel' => array(
'_' => 'Release channel', // TODO
'edge' => 'Rolling release (“edge”)', // TODO
'latest' => 'Stable release (“latest”)', // TODO
'_' => 'Kanał aktualizacji',
'edge' => 'Wersja rozwojowa (“edge”)',
'latest' => 'Wersja stabilna (“latest”)',
),
'title' => 'Aktualizacja',
'viaGit' => 'Update via git and Github.com started', // TODO
'viaGit' => 'Rozpoczęto aktualizację gitem do najnowszej wersji z GitHuba',
),
'user' => array(
'admin' => 'Administrator', // IGNORE

View File

@ -33,9 +33,9 @@ return array(
'display' => array(
'_' => 'Wyświetlanie',
'darkMode' => array(
'_' => 'Automatic dark mode (beta)', // TODO
'auto' => 'Auto', // TODO
'no' => 'No', // TODO
'_' => 'Tryb ciemny (beta)',
'auto' => 'Automatyczny',
'no' => 'Wyłączony',
),
'icon' => array(
'bottom_line' => 'Dolny margines',
@ -56,8 +56,8 @@ return array(
'theme' => array(
'_' => 'Motyw',
'deprecated' => array(
'_' => 'Deprecated', // TODO
'description' => 'This theme is no longer supported and will be not available anymore in a <a href="https://freshrss.github.io/FreshRSS/en/users/05_Configuration.html#theme" target="_blank">future release of FreshRSS</a>', // TODO
'_' => 'Przestarzały',
'description' => 'Ten motyw nie jest już wspierany i zostanie usunięty w <a href="https://freshrss.github.io/FreshRSS/en/users/05_Configuration.html#theme" target="_blank">przyszłej wersji FreshRSS</a>',
),
),
'theme_not_available' => 'Motyw “%s” nie jest już dostępny. Wybierz inny motyw.',
@ -68,14 +68,14 @@ return array(
'portrait' => 'Portret',
'square' => 'Kwadrat',
),
'timezone' => 'Time zone', // TODO
'timezone' => 'Strefa czasowa',
'title' => 'Wyświetlanie',
'website' => array(
'full' => 'Icon and name', // TODO
'icon' => 'Icon only', // TODO
'label' => 'Website', // TODO
'name' => 'Name only', // TODO
'none' => 'None', // TODO
'full' => 'Ikona i nazwa',
'icon' => 'Tylko ikona',
'label' => 'Strona źródłowa',
'name' => 'Tylko nazwa',
'none' => 'Ukryj',
),
'width' => array(
'content' => 'Rozmiar treści',
@ -120,20 +120,20 @@ return array(
'feeds' => 'Według kanału',
'order' => 'Sortowanie wg daty',
'search' => 'Wyrażenie',
'shareOpml' => 'Enable sharing by OPML of corresponding categories and feeds', // TODO
'shareRss' => 'Enable sharing by HTML &amp; RSS', // TODO
'shareOpml' => 'Włącz udostępnianie OPML-i zawierających kategorie i kanały',
'shareRss' => 'Włącz udostępnianie przez HTML i RSS',
'state' => 'Stan',
'tags' => 'Według tagu',
'type' => 'Rodzaj',
),
'get_all' => 'Wyświetlenie wszystkich wiadomości',
'get_all_labels' => 'Display articles with any label', // TODO
'get_all_labels' => 'Wyświetl wiadomości z dowolnymi etykietami',
'get_category' => 'Wyświetlenie kategorii “%s”',
'get_favorite' => 'Wyświetlenie ulubionych wiadomości',
'get_feed' => 'Wyświetlenie kanału “%s”',
'get_important' => 'Display articles from important feeds', // TODO
'get_label' => 'Display articles with “%s” label', // TODO
'help' => 'See the <a href="https://freshrss.github.io/FreshRSS/en/users/user_queries.html" target="_blank">documentation for user queries and resharing by HTML / RSS / OPML</a>.', // TODO
'get_important' => 'Wyświetl wiadomości z ważnych kanałów',
'get_label' => 'Wyświetl wiadomości z etykietą “%s”',
'help' => 'Zapytania i dzielenie się nimi przez HTML / RSS / OPML opisane są w <a href="https://freshrss.github.io/FreshRSS/en/users/user_queries.html" target="_blank">dokumentacji</a>.',
'name' => 'Nazwa',
'no_filter' => 'Brak filtrów',
'number' => 'Zapytanie nr %d',
@ -141,11 +141,11 @@ return array(
'order_desc' => 'Wyświetl najpierw najnowsze wiadomości',
'search' => 'Szukaj “%s”',
'share' => array(
'_' => 'Share this query by link', // TODO
'help' => 'Give this link if you want to share this query with anyone', // TODO
'html' => 'Shareable link to the HTML page', // TODO
'opml' => 'Shareable link to the OPML list of feeds', // TODO
'rss' => 'Shareable link to the RSS feed', // TODO
'_' => 'Udostępnij to zapytanie',
'help' => 'Posłuż się tym odnośnikiem, aby podzielić się zapytaniem',
'html' => 'Odnośnik do strony HTML',
'opml' => 'Odnośnik do listy kanałów (OPML)',
'rss' => 'Odnośnik do kanału RSS',
),
'state_0' => 'Wyświetl wszystkie wiadomości',
'state_1' => 'Wyświetl przeczytane wiadomości',
@ -217,9 +217,9 @@ return array(
'read' => array(
'article_open_on_website' => 'gdy wiadomość jest otworzona na pierwotnej stronie',
'article_viewed' => 'gdy wiadomość jest otworzona',
'focus' => 'when focused (except for important feeds)', // TODO
'focus' => 'kiedy ma focus (z wyłączeniem ważnych kanałów)',
'keep_max_n_unread' => 'Maksymalna liczba nieprzeczytanych wiadomości',
'scroll' => 'podczas przewijania (except for important feeds)', // DIRTY
'scroll' => 'podczas przewijania (z wyłączeniem ważnych kanałów)',
'upon_gone' => 'gdy nie jest już listowana w źródle kanału',
'upon_reception' => 'po otrzymaniu wiadomości',
'when' => 'Oznacz wiadomość jako przeczytaną…',

View File

@ -57,11 +57,11 @@ return array(
),
'import_export' => array(
'export_no_zip_extension' => 'Rozszerzenie ZIP nie jest dostępne na serwerze. Spróbuj eksportować pliki pojedynczo.',
'feeds_imported' => 'Kanały zostały zaimportowane i zostaną teraz zaktualizowane / Your feeds have been imported. If you are done importing, you can now click the <i>Update feeds</i> button.', // DIRTY
'feeds_imported_with_errors' => 'Kanały zostały zaimportowane, jednakże wystąpiło kilka błędów / Your feeds have been imported, but some errors occurred. If you are done importing, you can now click the <i>Update feeds</i> button.', // DIRTY
'feeds_imported' => 'Kanały zostały zaimportowane. Jeżeli skończyłeś, kliknij guzik <i>Aktualizuj kanały</i>.',
'feeds_imported_with_errors' => 'Kanały zostały zaimportowane, jednakże wystąpiło kilka błędów. Jeżeli skończyłeś, kliknij guzik <i>Aktualizuj kanały</i>.',
'file_cannot_be_uploaded' => 'Plik nie może zostać wgrany!',
'no_zip_extension' => 'Rozszerzenie ZIP nie jest dostępne na serwerze.',
'zip_error' => 'Wystąpił błąd podczas importu pliku ZIP.', // DIRTY
'zip_error' => 'Wystąpił błąd podczas przetwarzania pliku ZIP.',
),
'profile' => array(
'error' => 'Nie można modyfikować profilu',
@ -116,10 +116,10 @@ return array(
),
'tag' => array(
'created' => 'Etykieta “%s” została stworzona.',
'error' => 'Label could not be updated!', // TODO
'error' => 'Etykieta nie może zostać zmieniona!',
'name_exists' => 'Etykieta o podanej nazwie już istnieje.',
'renamed' => 'Etykieta “%s” została zmieniona na “%s”.',
'updated' => 'Label has been updated.', // TODO
'updated' => 'Etykieta została zmieniona.',
),
'update' => array(
'can_apply' => 'FreshRSS zostanie zaktualizowany do <strong>wersji %s</strong>.',

View File

@ -12,7 +12,7 @@
return array(
'action' => array(
'actualize' => 'Aktualizuj kanałów',
'actualize' => 'Aktualizuj kanały',
'add' => 'Dodaj',
'back' => '← Wróć',
'back_to_rss_feeds' => '← Wróć do subskrybowanych kanałów RSS',
@ -119,7 +119,7 @@ return array(
'wed' => 'Śr.',
'yesterday' => 'Wczorajsze',
),
'dir' => 'ltr', // TODO
'dir' => 'ltr', // IGNORE
'freshrss' => array(
'_' => 'FreshRSS', // IGNORE
'about' => 'O serwisie FreshRSS',
@ -134,7 +134,7 @@ return array(
'request_failed' => 'Zapytanie nie powiodło się. Może to być spowodowane problemami z łącznością z internetem.',
'title_new_articles' => 'FreshRSS: nowe wiadomości!',
),
'labels_empty' => 'No labels', // TODO
'labels_empty' => 'Brak tagów',
'new_article' => 'Dostępne są nowe wiadomości. Kliknij, aby odświeżyć stronę.',
'should_be_activated' => 'JavaScript musi być włączony',
),
@ -178,7 +178,7 @@ return array(
'queries' => 'Zapisane zapytania',
'reading' => 'Czytanie',
'search' => 'Wyszukaj wyrazy lub #tagi',
'search_help' => 'See documentation for advanced <a href="https://freshrss.github.io/FreshRSS/en/users/10_filter.html#with-the-search-field" target="_blank">search parameters</a>', // TODO
'search_help' => 'Zaawansowane <a href="https://freshrss.github.io/FreshRSS/en/users/10_filter.html#with-the-search-field" target="_blank">parametry wyszukiwania</a> opisane są w dokumentacji',
'sharing' => 'Podawanie dalej',
'shortcuts' => 'Skróty klawiszowe',
'stats' => 'Statystyki',
@ -203,7 +203,7 @@ return array(
'clipboard' => 'Schowek',
'diaspora' => 'Diaspora*', // IGNORE
'email' => 'E-mail',
'email-webmail-firefox-fix' => 'Email (webmail - fix for Firefox)', // TODO
'email-webmail-firefox-fix' => 'Email (webmail - poprawka dla Firefoksa)',
'facebook' => 'Facebook', // IGNORE
'gnusocial' => 'GNU social', // IGNORE
'jdh' => 'Journal du hacker', // IGNORE

View File

@ -17,9 +17,9 @@ return array(
'bugs_reports' => 'Zgłaszanie problemów',
'credits' => 'Uznanie autorstwa',
'credits_content' => 'Niektóre elementy designu pochodzą z <a href="http://twitter.github.io/bootstrap/">Bootstrapa</a>, przy czym FreshRSS nie używa tego frameworku. <a href="https://gitlab.gnome.org/Archive/gnome-icon-theme-symbolic">Ikony</a> zostały pierwotnie stworzone dla <a href="https://www.gnome.org/">projektu GNOME</a>. Font <em>Open Sans</em> jest autorstwa <a href="https://fonts.google.com/specimen/Open+Sans">Stevea Mattesona</a>. FreshRSS opiera się na <a href="https://framagit.org/marienfressinaud/MINZ">Minz</a>, frameworku PHP.',
'documentation' => 'Documentation', // TODO
'documentation' => 'Dokumentacja',
'freshrss_description' => 'FreshRSS jest agregatorem kanałów RSS przeznaczonym do zainstalowania na własnym serwerze. Jest lekki i łatwy do schowania w kieszeni, pozostając przy tym potężnym i konfigurowalnym narzędziem.',
'github' => '<a href="https://github.com/FreshRSS/FreshRSS/issues">na Githubie</a>',
'github' => '<a href="https://github.com/FreshRSS/FreshRSS/issues">na GitHubie</a>',
'license' => 'Licencja',
'project_website' => 'Strona projektu',
'title' => 'O serwisie',
@ -45,7 +45,7 @@ return array(
'bookmark_query' => 'Zapisz bieżące zapytanie',
'favorites' => 'Ulubione (%s)',
'global_view' => 'Widok globalny',
'important' => 'Important feeds', // TODO
'important' => 'Ważne kanały',
'main_stream' => 'Kanał główny',
'mark_all_read' => 'Oznacz wszystkie jako przeczytane',
'mark_cat_read' => 'Oznacz kategorię jako przeczytaną',

Some files were not shown because too many files have changed in this diff Show More