Compare commits

...

1181 Commits

Author SHA1 Message Date
El RIDO
50a695b609
add missing method added upstream 2025-04-23 19:14:47 +02:00
El RIDO
cfb609814a
remove duplicate options 2025-04-23 19:05:53 +02:00
El RIDO
0199bed133
Merge pull request #1537 from jesussuarz/feature/add-delete-all-option
Add --delete-all option to administration script for mass paste deletion
2025-04-23 19:03:43 +02:00
Jesus Suarez
bce152c890
Update bin/administration
Use spaces instead of tabs for indentation consistency

Co-authored-by: El RIDO <elrido@gmx.net>
2025-04-22 16:44:12 -05:00
Jesus Suarez
abe7874829
Update bin/administration
Replace tabs with spaces for consistent code formatting

Co-authored-by: El RIDO <elrido@gmx.net>
2025-04-22 16:43:54 -05:00
Jesus Suarez
df1f742789
Update bin/administration
Refactor lines 160-165 as suggested for improved readability and consistency

Co-authored-by: El RIDO <elrido@gmx.net>
2025-04-22 16:43:35 -05:00
Jesus Suarez
1f7f6c93b0
Update bin/administration
Refactor code style: replace tabs with spaces, document new option, and maintain alphabetical order

Co-authored-by: El RIDO <elrido@gmx.net>
2025-04-22 16:43:01 -05:00
root
302921a811 Add --delete-all option to administration script for mass paste deletion 2025-04-22 04:12:46 -05:00
El RIDO
d220ba7c2b
Merge pull request #1536 from PrivateBin/crowdin-translation
New Crowdin updates
2025-04-15 21:47:02 +02:00
PrivateBin Translator Bot
9a9eb44102 New translations en.json (Polish) 2025-04-15 13:58:35 +02:00
El RIDO
10ee2fa2e4
Merge pull request #1535 from PrivateBin/crowdin-translation
New Crowdin updates
2025-04-13 07:59:49 +02:00
PrivateBin Translator Bot
e34a35bf30 New translations en.json (Arabic) 2025-04-12 16:30:55 +02:00
El RIDO
75db58800c
Merge pull request #1534 from PrivateBin/crowdin-translation
New Crowdin updates
2025-04-10 06:51:07 +02:00
PrivateBin Translator Bot
cbdd3d50a5 New translations en.json (Arabic) 2025-04-10 02:52:54 +02:00
El RIDO
b1608e5119
Merge pull request #1533 from PrivateBin/crowdin-translation
New Crowdin updates
2025-04-09 21:23:38 +02:00
PrivateBin Translator Bot
f8df10d2e1 New translations en.json (Hebrew) 2025-04-09 21:17:20 +02:00
El RIDO
37871eac69
node 20 seems to fail with the updated jsdom, locally I had tested with 18 - lets downgrade till we can find a solution 2025-04-09 21:11:10 +02:00
PrivateBin Translator Bot
edb753b3d7 New translations en.json (Hebrew) 2025-04-08 07:34:59 +02:00
El RIDO
bb4a3a09b0
Merge pull request #1532 from relspas/update-hebrew-support
Update Hebrew strings
2025-04-07 20:51:57 +02:00
El RIDO
1c72380443
Merge pull request #1531 from PrivateBin/crowdin-translation
New Crowdin updates
2025-04-07 20:49:32 +02:00
Raphael Elspas
a4be833937 Update Hebrew strings file 2025-04-07 12:14:05 -04:00
PrivateBin Translator Bot
16129b610d New translations en.json (Finnish) 2025-04-06 20:12:36 +02:00
El RIDO
31162e8011
upgrading DOMpurify library to 3.2.5 2025-04-06 08:30:49 +02:00
El RIDO
bac849d98a
Merge pull request #1526 from PrivateBin/pass-by-reference
Pass by reference & drop ctype
2025-03-17 06:52:48 +01:00
El RIDO
6ee9563b27
Merge pull request #1528 from fzxx/master
Update zh.json
2025-03-15 19:22:04 +01:00
风之暇想
797bf5eb6a
Update zh.json 2025-03-15 23:12:05 +08:00
El RIDO
abb49609e0
Merge pull request #1523 from jacquesbh/use-another-configuration-loader
Allow to use another Configuration class
2025-03-13 09:39:16 +01:00
El RIDO
46c49e5455
apply StyleCI recommendation 2025-03-13 09:32:39 +01:00
El RIDO
8ad6300c1c
pass by reference, closes #858 2025-03-13 09:22:27 +01:00
Jacques Bodin-Hullin
c04a551215
feat: Allow to change the Configuration in the _construct
So, now we can change the Configuration class, override it even if we
want.
2025-03-13 09:22:22 +01:00
El RIDO
5d4561bd0a
drop ctype requirement (only one use left) 2025-03-13 08:29:53 +01:00
El RIDO
7825471d70
avoid duplication of ID check 2025-03-13 08:14:01 +01:00
El RIDO
629f263cf5
pass by reference, closes #858 2025-03-11 08:22:21 +01:00
El RIDO
e67972417e
Merge pull request #1522 from jacquesbh/avoid-multiple-configuration-instances
Do not instanciate the Configuration more than once
2025-03-09 21:29:41 +01:00
Jacques Bodin-Hullin
c62a3fbd2d
perf(configuration): Do not create multiple instances of Configuration
Since the configuration is loaded in the _init method, and this method
is called in the _construct, there is no reason to instanciate the
Configuration class more than once.
2025-03-09 20:23:01 +01:00
El RIDO
81e9c8672f
Merge pull request #1521 from PrivateBin/crowdin-translation
New Crowdin updates
2025-03-09 13:31:13 +01:00
PrivateBin Translator Bot
24316f3e07 New translations en.json (Finnish) 2025-03-08 21:36:08 +01:00
El RIDO
495a84b292
chore: documentation 2025-03-08 08:44:28 +01:00
El RIDO
1d53f5a054
Merge pull request #1520 from PrivateBin/crowdin-translation
New Crowdin updates
2025-03-08 08:25:15 +01:00
PrivateBin Translator Bot
4d0fbfd02b New translations en.json (Estonian) 2025-03-07 14:34:00 +01:00
El RIDO
dd6537b277
Merge pull request #1518 from ixten/master
Fix available templates configuration and adding custom themes
2025-03-07 07:57:21 +01:00
Michael Kuilboer
9221629d8d Fix available templates configuration and adding custom themes 2025-03-06 02:27:31 +01:00
El RIDO
ebb9e231aa
Merge pull request #1516 from PrivateBin/js-devel-dep-update
update jsdom
2025-02-28 22:39:03 +01:00
El RIDO
e68430e9c5
clarify comments 2025-02-28 21:38:30 +01:00
El RIDO
d0303dce9c
clarify comments 2025-02-28 21:36:51 +01:00
El RIDO
9f82eb64cb
clarify test descriptions 2025-02-28 21:25:40 +01:00
El RIDO
a9ea962adc
Merge pull request #1517 from PrivateBin/dependabot/github_actions/dawidd6/action-download-artifact-9
Bump dawidd6/action-download-artifact from 8 to 9
2025-02-27 22:52:41 +01:00
dependabot[bot]
d89bc1b97b
Bump dawidd6/action-download-artifact from 8 to 9
Bumps [dawidd6/action-download-artifact](https://github.com/dawidd6/action-download-artifact) from 8 to 9.
- [Release notes](https://github.com/dawidd6/action-download-artifact/releases)
- [Commits](20319c5641...07ab29fd4a)

---
updated-dependencies:
- dependency-name: dawidd6/action-download-artifact
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-27 11:25:13 +00:00
El RIDO
e0b6aee65a
indentation 2025-02-27 08:17:03 +01:00
El RIDO
4e518b3fce
update jsdom dependency, fix tests 2025-02-27 08:16:30 +01:00
El RIDO
bb98d5b6c1
Merge pull request #1515 from PrivateBin/dependabot/github_actions/slsa-framework/slsa-github-generator-2.1.0
Bump slsa-framework/slsa-github-generator from 2.0.0 to 2.1.0
2025-02-27 06:49:39 +01:00
dependabot[bot]
478b79b7b7
Bump slsa-framework/slsa-github-generator from 2.0.0 to 2.1.0
Bumps [slsa-framework/slsa-github-generator](https://github.com/slsa-framework/slsa-github-generator) from 2.0.0 to 2.1.0.
- [Release notes](https://github.com/slsa-framework/slsa-github-generator/releases)
- [Changelog](https://github.com/slsa-framework/slsa-github-generator/blob/main/CHANGELOG.md)
- [Commits](https://github.com/slsa-framework/slsa-github-generator/compare/v2.0.0...v2.1.0)

---
updated-dependencies:
- dependency-name: slsa-framework/slsa-github-generator
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-25 11:57:15 +00:00
El RIDO
57636ee6d4
Merge pull request #1513 from PrivateBin/crowdin-translation
New Crowdin updates
2025-02-17 22:04:24 +01:00
PrivateBin Translator Bot
bd3486eda7 New translations en.json (Corsican) 2025-02-17 12:36:17 +01:00
PrivateBin Translator Bot
ddc9de345d New translations en.json (Russian) 2025-02-17 07:12:20 +01:00
PrivateBin Translator Bot
e511ab74b1 New translations en.json (Russian) 2025-02-16 09:11:36 +01:00
El RIDO
c32c74a630
Merge pull request #1501 from Ribas160/allow_change_template
Added the ability to web users to change the theme
2025-02-16 09:07:46 +01:00
Ribas160
412987ea5b Merge remote-tracking branch 'origin/master' into allow_change_template
# Conflicts:
#	lib/Configuration.php
2025-02-14 15:36:57 +02:00
Ribas160
b90967a14b Apply StyleCI changes 2025-02-14 15:33:34 +02:00
El RIDO
654bff65cc
add config for older apache releases without included mime type
kudos @cryptomilk for the suggestion
2025-02-13 09:03:13 +01:00
El RIDO
95188eea94
chore: update SRI hash 2025-02-11 19:51:24 +01:00
El RIDO
6bab8b014f
Merge pull request #1510 from PrivateBin/dompurify-remove
Remove SAFE_FOR_JQUERY from DOMPurify as it has been removed
2025-02-11 19:32:55 +01:00
rugk
ac62d909b9
Remove SAFE_FOR_JQUERY from DOMPurify as it has been removed
DOMPurify removed this configuration option, so I guess it has no effect and can be removed.

See docs: https://github.com/cure53/DOMPurify?tab=readme-ov-file#removed-configuration
>  SAFE_FOR_JQUERY 	2.1.0 	No replacement required.

The PR https://github.com/cure53/DOMPurify/pull/474 also links the commits, which removed it.
2025-02-11 17:32:40 +01:00
El RIDO
64b0e33574
update jsdom dependency, fix tests 2025-02-11 08:10:25 +01:00
El RIDO
e4d1f4a26d
update jsdom dependency, disable test 2025-02-11 07:52:23 +01:00
Ribas160
5b54f2cdb0 Use the traditional "template" config key, update unit-tests 2025-02-10 18:19:36 +02:00
El RIDO
0eef8d62d7
Merge pull request #1492 from PrivateBin/oxipng
optimized images
2025-02-09 09:34:46 +01:00
ribas160
bce449de10 Merge remote-tracking branch 'origin/master' into allow_change_template
# Conflicts:
#	CHANGELOG.md
2025-02-08 22:01:10 +02:00
ribas160
edad5ba1e0 Config documentation update 2025-02-08 21:49:27 +02:00
ribas160
dce5a73444 CHANGELOG and CREDITS update 2025-02-08 16:34:23 +02:00
ribas160
a4b0a993c7 Doc blocks added, available templates may be set in the general configuration file 2025-02-08 14:32:20 +02:00
El RIDO
1c2c45ec2d
Merge pull request #1507 from PrivateBin/vulnerability-policy
Change SECURITY.md to hint for acceping vulnerability reports via the GitHub mail
2025-02-07 22:21:07 +01:00
rugk
ec5b72476e
Change SECURITY.md to hint for acceping vulnerability reports via the GitHub mail
This seems to be a new feature and I've had this tested (with a different account) that this can be used by anyone.

IMHO, this is a convenient feature, as we'd need to publish it anyway there.
2025-02-07 21:39:59 +01:00
El RIDO
540172d0f7
update jsdom dependency 2025-02-07 09:00:53 +01:00
El RIDO
3b6b97429d
update jsdom dependency, fix tests 2025-02-07 08:54:55 +01:00
El RIDO
dc983621ac
update jsdom dependency, fix tests 2025-02-07 08:19:09 +01:00
El RIDO
ac63b91a1b
fix prompt test
rngState 883a6d2e518704c9fb fails on a single \n (line feed)

password inputs can't contain carriage returns *or* line feeds
2025-02-06 08:48:36 +01:00
El RIDO
db15ae8b43
fix prompt test
rngState 003ad8214ef0579cb6 fails on a single \n (line feed)

password inputs can't contain carriage returns *or* line feeds
2025-02-06 08:43:02 +01:00
El RIDO
740fd90db9
update jsdom & jsdom-global development dependency, fix cookie test 2025-02-06 08:39:25 +01:00
El RIDO
aa8f77f673
update jsdom-url development dependency 2025-02-06 08:09:15 +01:00
El RIDO
0a37a884e2
chore: document change 2025-02-05 22:27:21 +01:00
El RIDO
bbf6ad76f4
Merge pull request #1500 from PrivateBin/dependabot/composer/mlocati/ip-lib-1.20.0
Bump mlocati/ip-lib from 1.19.0 to 1.20.0
2025-02-05 22:25:25 +01:00
Ribas160
c7a4ced9e1 Added the ability to web users to change the theme 2025-02-05 15:24:15 +02:00
dependabot[bot]
f111def946
Bump mlocati/ip-lib from 1.19.0 to 1.20.0
Bumps [mlocati/ip-lib](https://github.com/mlocati/ip-lib) from 1.19.0 to 1.20.0.
- [Release notes](https://github.com/mlocati/ip-lib/releases)
- [Commits](https://github.com/mlocati/ip-lib/compare/1.19.0...1.20.0)

---
updated-dependencies:
- dependency-name: mlocati/ip-lib
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-05 11:20:36 +00:00
El RIDO
f88c643be9
Merge pull request #1499 from PrivateBin/dependabot/composer/mlocati/ip-lib-1.19.0
Bump mlocati/ip-lib from 1.18.1 to 1.19.0
2025-02-04 21:58:08 +01:00
dependabot[bot]
ed3347e835
Bump mlocati/ip-lib from 1.18.1 to 1.19.0
Bumps [mlocati/ip-lib](https://github.com/mlocati/ip-lib) from 1.18.1 to 1.19.0.
- [Release notes](https://github.com/mlocati/ip-lib/releases)
- [Commits](https://github.com/mlocati/ip-lib/compare/1.18.1...1.19.0)

---
updated-dependencies:
- dependency-name: mlocati/ip-lib
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-04 11:50:21 +00:00
El RIDO
6ba9fe5a93
Merge pull request #1496 from PrivateBin/crowdin-translation
New Crowdin updates
2025-02-04 08:36:23 +01:00
El RIDO
e8ae354c63
Merge branch 'master' into crowdin-translation 2025-02-04 08:34:56 +01:00
PrivateBin Translator Bot
2809403893 New translations en.json (Dutch) 2025-02-03 14:37:24 +01:00
El RIDO
aeba6e24cd
Merge pull request #1498 from AnonymousWP/chore(translation)-update-Dutch-translation
chore(translation): update Dutch translation
2025-02-03 14:23:59 +01:00
Anonymoussaurus
f9ac763e62
chore(translation): update Dutch translation 2025-02-03 11:43:42 +01:00
PrivateBin Translator Bot
d86f502136 New translations en.json (Chinese Simplified) 2025-02-03 08:24:15 +01:00
El RIDO
c963ba4d7a
upgrade webcrypto used in testing
old package got corrupted on npm and fails to install
2025-02-03 07:52:32 +01:00
El RIDO
cf14766d9f
Merge pull request #1495 from fzxx/master
Update zh.json
2025-02-03 07:35:13 +01:00
风之暇想
4b2443f3eb
Update zh.json
Update translations
2025-02-03 12:11:48 +08:00
El RIDO
94ab727139
Merge pull request #1493 from MickGe/master
update new translation in fr.json
2025-02-01 14:55:48 +01:00
MickGe
bbaee2c737
update new translation in fr.json 2025-02-01 14:42:37 +01:00
El RIDO
2a27c767a5
optimized images
using oxipng 9.1.3 and parameters:
oxipng -ao max --preserve --strip safe -Z -r .
2025-02-01 12:32:04 +01:00
El RIDO
e25fe01d82
chore: prepare for next release 2025-02-01 11:40:29 +01:00
El RIDO
473baf8250
incrementing version 2025-02-01 10:43:54 +01:00
El RIDO
d5d55322de
Merge pull request #1490 from PrivateBin/dompurify-3.2.4
upgrading DOMpurify library to 3.2.4
2025-02-01 10:17:46 +01:00
El RIDO
58d11f2ba0
upgrading DOMpurify library to 3.2.4 2025-01-31 08:16:03 +01:00
El RIDO
6282e75fa0
Merge pull request #1486 from PrivateBin/dependabot/github_actions/dawidd6/action-download-artifact-8
Bump dawidd6/action-download-artifact from 7 to 8
2025-01-22 22:00:40 +01:00
dependabot[bot]
6dbd9bd157
Bump dawidd6/action-download-artifact from 7 to 8
Bumps [dawidd6/action-download-artifact](https://github.com/dawidd6/action-download-artifact) from 7 to 8.
- [Release notes](https://github.com/dawidd6/action-download-artifact/releases)
- [Commits](80620a5d27...20319c5641)

---
updated-dependencies:
- dependency-name: dawidd6/action-download-artifact
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-22 11:07:30 +00:00
El RIDO
e27e3ace16
fix google cloud sdk tests
Adds new method required by interface since https://github.com/googleapis/google-cloud-php/pull/7966
2025-01-11 20:37:50 +01:00
El RIDO
c27c18faf9
fix google cloud sdk tests
Adds new method required by interface since https://github.com/googleapis/google-cloud-php/pull/7966
2025-01-11 20:29:03 +01:00
El RIDO
4b31528fed
Merge pull request #1484 from Ribas160/copy_to_clipboard_unit_tests
CopyToClipboard unit tests
2025-01-11 13:22:18 +01:00
ribas160
48eb6ef87a Custom clipboard object added to the unit tests 2025-01-10 16:24:49 +02:00
El RIDO
863c5b320e
Merge pull request #1483 from PrivateBin/crowdin-translation
New Crowdin updates
2025-01-09 07:52:26 +01:00
Ribas160
6c651ea676 CopyToClipboard unit tests 2025-01-07 17:40:18 +02:00
PrivateBin Translator Bot
7733916ad9 New translations en.json (Corsican) 2025-01-07 16:11:02 +01:00
El RIDO
42b7b9060d
Merge pull request #1482 from Ribas160/bootstrap5_template_improvements
Bootstrap5 template improvements
2025-01-07 06:04:43 +01:00
ribas160
650dd4464a Create button icon fixed 2025-01-06 23:07:48 +02:00
Ribas160
739f105a55 Increase navbar margin bottom, centralize button icons on bootstrap5 template 2025-01-06 18:29:37 +02:00
El RIDO
65440c63c9
Merge pull request #1479 from PrivateBin/crowdin-translation
New Crowdin updates
2025-01-06 07:56:56 +01:00
PrivateBin Translator Bot
9c27143abd New translations en.json (Portuguese) 2025-01-06 07:49:25 +01:00
PrivateBin Translator Bot
85fa4ba374 New translations en.json (Corsican) 2025-01-06 06:39:15 +01:00
PrivateBin Translator Bot
4b1063b251 New translations en.json (Occitan) 2025-01-06 06:39:14 +01:00
PrivateBin Translator Bot
d3e6990d1d New translations en.json (Estonian) 2025-01-06 06:39:13 +01:00
PrivateBin Translator Bot
ee3db3ceae New translations en.json (Thai) 2025-01-06 06:39:12 +01:00
PrivateBin Translator Bot
28bec95ee8 New translations en.json (Indonesian) 2025-01-06 06:39:11 +01:00
PrivateBin Translator Bot
f031d63bd5 New translations en.json (Ukrainian) 2025-01-06 06:39:10 +01:00
PrivateBin Translator Bot
a56be85343 New translations en.json (Turkish) 2025-01-06 06:39:08 +01:00
PrivateBin Translator Bot
34645797b0 New translations en.json (Slovenian) 2025-01-06 06:39:07 +01:00
PrivateBin Translator Bot
e6216fcc6a New translations en.json (Slovak) 2025-01-06 06:39:06 +01:00
PrivateBin Translator Bot
bc8c4e72f9 New translations en.json (Russian) 2025-01-06 06:39:05 +01:00
PrivateBin Translator Bot
abb1f28905 New translations en.json (Polish) 2025-01-06 06:39:04 +01:00
PrivateBin Translator Bot
42491216f1 New translations en.json (Norwegian) 2025-01-06 06:39:03 +01:00
PrivateBin Translator Bot
598e5ae73d New translations en.json (Dutch) 2025-01-06 06:39:02 +01:00
PrivateBin Translator Bot
c2876ff8bd New translations en.json (Lithuanian) 2025-01-06 06:39:00 +01:00
PrivateBin Translator Bot
e7b28b1c9c New translations en.json (Japanese) 2025-01-06 06:38:59 +01:00
PrivateBin Translator Bot
08819f6635 New translations en.json (Italian) 2025-01-06 06:38:58 +01:00
PrivateBin Translator Bot
51e39c07eb New translations en.json (Hungarian) 2025-01-06 06:38:57 +01:00
PrivateBin Translator Bot
cc06df828b New translations en.json (Hebrew) 2025-01-06 06:38:56 +01:00
PrivateBin Translator Bot
736368378c New translations en.json (Finnish) 2025-01-06 06:38:55 +01:00
PrivateBin Translator Bot
4311f8683d New translations en.json (Greek) 2025-01-06 06:38:53 +01:00
PrivateBin Translator Bot
d0bcc46a6d New translations en.json (Czech) 2025-01-06 06:38:52 +01:00
PrivateBin Translator Bot
e2bc31bd73 New translations en.json (Bulgarian) 2025-01-06 06:38:51 +01:00
PrivateBin Translator Bot
f204051aef New translations en.json (Arabic) 2025-01-06 06:38:50 +01:00
PrivateBin Translator Bot
e76a31ca30 New translations en.json (Spanish) 2025-01-06 06:38:49 +01:00
PrivateBin Translator Bot
bcb953b0f2 New translations en.json (French) 2025-01-06 06:38:48 +01:00
PrivateBin Translator Bot
12b202a4e5 New translations en.json (Romanian) 2025-01-06 06:38:47 +01:00
El RIDO
b7451de8f2
Merge pull request #1480 from Ribas160/change_language_url_fix
Keep paste URL, if changing language in dropdown
2025-01-06 06:38:13 +01:00
ribas160
67a1dfb683 Keep paste URL, if changing language in dropdown 2025-01-05 23:21:25 +02:00
PrivateBin Translator Bot
73073f25e1 New translations en.json (Chinese Simplified) 2025-01-05 21:01:24 +01:00
PrivateBin Translator Bot
b6c01f139f New translations en.json (Italian) 2025-01-05 21:01:23 +01:00
PrivateBin Translator Bot
f232d370bc New translations en.json (German) 2025-01-05 21:01:22 +01:00
PrivateBin Translator Bot
917cd221fe New translations en.json (French) 2025-01-05 21:01:21 +01:00
PrivateBin Translator Bot
75d204fcfb New translations en.json (Corsican) 2025-01-05 19:49:53 +01:00
PrivateBin Translator Bot
d2159d81e7 New translations en.json (Occitan) 2025-01-05 19:49:52 +01:00
PrivateBin Translator Bot
9c809ff666 New translations en.json (Estonian) 2025-01-05 19:49:50 +01:00
PrivateBin Translator Bot
629c98f322 New translations en.json (Thai) 2025-01-05 19:49:49 +01:00
PrivateBin Translator Bot
b197cb4d0d New translations en.json (Indonesian) 2025-01-05 19:49:48 +01:00
PrivateBin Translator Bot
b6888f0aa9 New translations en.json (Chinese Simplified) 2025-01-05 19:49:47 +01:00
PrivateBin Translator Bot
4d8a9efa9d New translations en.json (Ukrainian) 2025-01-05 19:49:46 +01:00
PrivateBin Translator Bot
0c5dc38381 New translations en.json (Turkish) 2025-01-05 19:49:45 +01:00
PrivateBin Translator Bot
08766f3162 New translations en.json (Slovenian) 2025-01-05 19:49:44 +01:00
PrivateBin Translator Bot
8f353badef New translations en.json (Slovak) 2025-01-05 19:49:43 +01:00
PrivateBin Translator Bot
dd964f9bfc New translations en.json (Russian) 2025-01-05 19:49:42 +01:00
PrivateBin Translator Bot
eb31355364 New translations en.json (Portuguese) 2025-01-05 19:49:41 +01:00
PrivateBin Translator Bot
6f248c382b New translations en.json (Polish) 2025-01-05 19:49:40 +01:00
PrivateBin Translator Bot
d4d0e48221 New translations en.json (Norwegian) 2025-01-05 19:49:39 +01:00
PrivateBin Translator Bot
98f46a3f1a New translations en.json (Dutch) 2025-01-05 19:49:38 +01:00
PrivateBin Translator Bot
9c9a38c54e New translations en.json (Lithuanian) 2025-01-05 19:49:36 +01:00
PrivateBin Translator Bot
80a8ba9749 New translations en.json (Japanese) 2025-01-05 19:49:35 +01:00
PrivateBin Translator Bot
8d43769717 New translations en.json (Italian) 2025-01-05 19:49:34 +01:00
PrivateBin Translator Bot
645661757f New translations en.json (Hungarian) 2025-01-05 19:49:32 +01:00
PrivateBin Translator Bot
97320dfbe7 New translations en.json (Hebrew) 2025-01-05 19:49:32 +01:00
PrivateBin Translator Bot
9189945a00 New translations en.json (Finnish) 2025-01-05 19:49:31 +01:00
PrivateBin Translator Bot
eb95967bea New translations en.json (Greek) 2025-01-05 19:49:30 +01:00
PrivateBin Translator Bot
62da1ff721 New translations en.json (German) 2025-01-05 19:49:29 +01:00
PrivateBin Translator Bot
ff9d8e70d5 New translations en.json (Czech) 2025-01-05 19:49:28 +01:00
PrivateBin Translator Bot
34960fb3b4 New translations en.json (Bulgarian) 2025-01-05 19:49:26 +01:00
PrivateBin Translator Bot
9d09c4974d New translations en.json (Arabic) 2025-01-05 19:49:25 +01:00
PrivateBin Translator Bot
bdc88298a0 New translations en.json (Spanish) 2025-01-05 19:49:24 +01:00
PrivateBin Translator Bot
441fd7a979 New translations en.json (French) 2025-01-05 19:49:23 +01:00
PrivateBin Translator Bot
18db3c6670 New translations en.json (Romanian) 2025-01-05 19:49:22 +01:00
El RIDO
ffd4210fe2
Comment is now superfluous thanks to better code. 🎉
Co-authored-by: rugk <rugk+git@posteo.de>
2025-01-05 19:28:35 +01:00
El RIDO
4076a831eb
Merge branch 'master' into keyboard-trap 2025-01-05 07:23:41 +01:00
El RIDO
346ae23ade
document changes 2025-01-05 07:11:29 +01:00
El RIDO
5936dbbb10
Merge branch 'master' into Ribas160-ux_adjustments_delete_link 2025-01-05 07:07:54 +01:00
El RIDO
68be47f4d7
Merge pull request #1473 from PrivateBin/php84-tests
bump libraries, fixing PHP 8.4 tests
2025-01-05 06:40:20 +01:00
El RIDO
03fbb5e1e9
Merge branch 'master' into php84-tests 2025-01-05 06:39:28 +01:00
El RIDO
ee49f90f39
Merge pull request #1472 from PrivateBin/purify-3.2.3
upgrading DOMpurify library to 3.2.3
2025-01-05 06:33:42 +01:00
ribas160
7b57d7b289 - trash icon added to bootstrap-icons.svg
- made delete link a separate button
- unit tests updated
2025-01-04 22:53:32 +02:00
El RIDO
52cd7b3590
Merge pull request #1477 from PrivateBin/crowdin-translation
New Crowdin updates
2025-01-04 09:45:30 +01:00
PrivateBin Translator Bot
fb7bca7d71 New translations en.json (Chinese Simplified) 2025-01-04 09:33:21 +01:00
PrivateBin Translator Bot
90957850b9 New translations en.json (Russian) 2025-01-04 09:33:20 +01:00
PrivateBin Translator Bot
2cc2a4b0b5 New translations en.json (German) 2025-01-04 09:33:19 +01:00
PrivateBin Translator Bot
22eaba62f2 New translations en.json (French) 2025-01-04 09:33:18 +01:00
El RIDO
2e69154e9a
Merge branch 'master' into php84-tests 2025-01-04 09:03:51 +01:00
El RIDO
eaa60e3a81
Merge branch 'master' into purify-3.2.3 2025-01-04 08:58:00 +01:00
El RIDO
45b38770db
Merge branch 'master' into keyboard-trap 2025-01-04 08:48:08 +01:00
El RIDO
a14d0a3d11
updating documentation & optimizing composer autoload (using: make composer) 2025-01-04 08:26:14 +01:00
El RIDO
dc85a67a03
Merge pull request #1476 from Ribas160/replace_usage_of_strpos_with_php8_functions
Replace usage of strpos with str_starts_with etc.
2025-01-04 08:18:04 +01:00
El RIDO
d6020c635b
documentation 2025-01-04 08:03:50 +01:00
PrivateBin Translator Bot
870e2ea97c New translations en.json (Chinese Simplified) 2025-01-04 07:32:56 +01:00
PrivateBin Translator Bot
d7eed290ad New translations en.json (Russian) 2025-01-04 07:32:52 +01:00
El RIDO
c7d085a51f
Merge pull request #1475 from Ribas160/copy_to_clipboard_btn
Copy paste to clipboard button added. Copy paste to clipboard shortcu…
2025-01-04 07:26:25 +01:00
ribas160
f9e2373e62 - str_starts_with, str_contains used instead of strpos === 0, strpos !== 0, strpos === false, strpos !== false
- symfony/polyfill-php80 installed to introduce the polyfill and support php7.3 using php8 functions
- symfony/polyfill-ctype installed to introduce ctype functions in case somebody doesn't have the ctype extension installed
2025-01-04 00:46:20 +02:00
ribas160
b86eb93dbe Added the button to copy the paste link to the clipboard 2025-01-03 18:19:12 +02:00
ribas160
0462da6e8e - used bootstrap 5 CSS icon named copy, bootstrap 3 CSS glyphicon named duplicate
- keyboard-shortcuts made more accessible by wrapping the keys into kbd-tags
- translate messages may contain allowed HTML tags
- added the record to the CHANGELOG.md
2025-01-02 15:13:44 +02:00
ribas160
a6a7df9a72 Merge remote-tracking branch 'upstream/master' into copy_to_clipboard_btn
# Conflicts:
#	i18n/ar.json
#	i18n/bg.json
#	i18n/ca.json
#	i18n/co.json
#	i18n/cs.json
#	i18n/de.json
#	i18n/el.json
#	i18n/en.json
#	i18n/es.json
#	i18n/et.json
#	i18n/fi.json
#	i18n/fr.json
#	i18n/he.json
#	i18n/hi.json
#	i18n/hu.json
#	i18n/id.json
#	i18n/it.json
#	i18n/ja.json
#	i18n/jbo.json
#	i18n/ko.json
#	i18n/ku.json
#	i18n/la.json
#	i18n/lt.json
#	i18n/nl.json
#	i18n/no.json
#	i18n/oc.json
#	i18n/pl.json
#	i18n/pt.json
#	i18n/ro.json
#	i18n/ru.json
#	i18n/sk.json
#	i18n/sl.json
#	i18n/sv.json
#	i18n/th.json
#	i18n/tr.json
#	i18n/uk.json
#	i18n/zh.json
#	lib/Configuration.php
2024-12-29 22:19:35 +02:00
ribas160
6c39a1441c Copy paste to clipboard button added. Copy paste to clipboard shortcut added 2024-12-28 18:42:46 +02:00
El RIDO
5aa7a95841
avoid unnecessary indentation 2024-12-27 13:42:16 +01:00
El RIDO
333f0568b6
fix bootstrap 5 modal usage
kudos @kanna5
2024-12-27 09:17:35 +01:00
El RIDO
84866f9b09
Merge branch 'master' into keyboard-trap 2024-12-27 07:33:50 +01:00
El RIDO
99e0b7efac fix brackets, kudos @kanna5 2024-12-25 07:27:58 +01:00
El RIDO
8b7ccb0fd4
PHP 8.4 is no longer a development release 2024-12-22 12:14:25 +01:00
El RIDO
21b259b5eb
bump libraries, document change
fixes #1301
2024-12-22 12:05:55 +01:00
El RIDO
be18dcb838
upgrading DOMpurify library to 3.2.3 2024-12-22 11:17:34 +01:00
El RIDO
15488d3405
bump checkout action 2024-12-14 09:14:44 +01:00
El RIDO
65ea73e638
Merge pull request #1470 from PrivateBin/crowdin-translation
New Crowdin updates
2024-12-12 21:53:58 +01:00
PrivateBin Translator Bot
f7a9631a2f New translations en.json (Ukrainian) 2024-12-12 21:29:46 +01:00
El RIDO
178ae10904
Merge pull request #1467 from PrivateBin/crowdin-translation
New Crowdin updates
2024-12-04 09:22:20 +01:00
PrivateBin Translator Bot
f9094874eb New translations en.json (Thai) 2024-12-03 11:59:49 +01:00
PrivateBin Translator Bot
e92f2ac9ca New translations en.json (Thai) 2024-12-03 09:49:56 +01:00
El RIDO
90d5bf9990
Merge pull request #1466 from PrivateBin/dependabot/github_actions/dawidd6/action-download-artifact-7
Bump dawidd6/action-download-artifact from 6 to 7
2024-11-29 17:26:48 +01:00
El RIDO
d22c6e31dc
Merge pull request #1465 from PrivateBin/crowdin-translation
New Crowdin updates
2024-11-29 17:04:54 +01:00
dependabot[bot]
7ee6bcafc4
Bump dawidd6/action-download-artifact from 6 to 7
Bumps [dawidd6/action-download-artifact](https://github.com/dawidd6/action-download-artifact) from 6 to 7.
- [Release notes](https://github.com/dawidd6/action-download-artifact/releases)
- [Commits](bf251b5aa9...80620a5d27)

---
updated-dependencies:
- dependency-name: dawidd6/action-download-artifact
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-29 11:11:25 +00:00
PrivateBin Translator Bot
75ec510f2d New translations en.json (Corsican) 2024-11-28 14:44:35 +01:00
El RIDO
652cf0cf26 bump PHP libraries 2024-11-28 07:48:27 +01:00
El RIDO
1c7d639546
Merge pull request #1464 from PrivateBin/wasm-streaming
WASM streaming / eliminate unsafe-eval
2024-11-28 07:10:32 +01:00
El RIDO
6587466a9b remove async & ES6 feature detection
It requires eval and webcrypto got introduced in older Chrome & Firefox versions, so seems superfluous to keep.
2024-11-26 07:01:34 +01:00
El RIDO
6b180ac7b1
Merge branch 'master' into wasm-streaming 2024-11-24 21:15:56 +01:00
El RIDO
3d59d3da50
change focus order for accessibility
tabbing out of the textarea jumps to the "Create" button, then the tab-toggle
2024-11-24 16:17:45 +01:00
El RIDO
c7195aaf9a
replicate template changes, fix bugs
- fixes QR code height introducing space even when hidden in page layout
- fix modals in bootstrap 5 (modal syntax changed heavily, no longer jQuery integrated)
- hide and show tab-toggle depending on application state
- don't encode HTML entities in translated messages containing kbd tags (in addition to links)
2024-11-24 15:42:38 +01:00
El RIDO
9028ddbb97
update all language files & SRI hashes
all tests pass, still need to replicate template changes and do manual testing to validate the UX
2024-11-24 12:49:21 +01:00
El RIDO
544c4d2f5f prototype keyboard trap toggle
- needs updating all language files
- replicate changes to all templates
2024-11-24 11:45:46 +01:00
El RIDO
5ba56c20cb
Merge branch 'MickGe'
fix selectors, deduplicate common styles
2024-11-23 09:32:42 +01:00
El RIDO
7cbabc871a
Merge pull request #1461 from fzxx/master
Update zh.json
2024-11-23 08:38:11 +01:00
风之暇想
7e019c4aae
Update zh.json
Translation
2024-11-23 10:24:24 +08:00
MickGe
390e268bb0
Update css/bootstrap5/privatebin.css 2024-11-22 10:46:54 +01:00
MickGe
c9067f1f23
Update css/bootstrap/privatebin.css 2024-11-22 10:46:44 +01:00
MickGe
ab9d9416d9
fix: responsive long url in plaintext 2024-11-21 22:49:00 +01:00
El RIDO
eaa72ab41a
Merge pull request #1458 from PrivateBin/crowdin-translation
New Crowdin updates
2024-11-17 07:56:01 +01:00
PrivateBin Translator Bot
85241f2615 New translations en.json (Norwegian) 2024-11-17 00:49:57 +01:00
El RIDO
ab5fa3d14d
chore: prepare for next release 2024-11-16 08:27:23 +01:00
El RIDO
1a434b0e8d
incrementing version 2024-11-16 08:02:20 +01:00
El RIDO
3460f20e40
Merge pull request #1448 from slaweallx/patch-1
Update tr.json
2024-11-09 20:13:42 +01:00
Ali Çömez | Slaweally
82c2e685b6
Update tr.json 2024-11-09 22:05:49 +03:00
El RIDO
9eadf09ac3 bump libraries, document change 2024-10-31 08:05:49 +01:00
El RIDO
365782ebeb
Merge pull request #1446 from PrivateBin/dependabot/composer/mlocati/ip-lib-1.18.1
Bump mlocati/ip-lib from 1.18.0 to 1.18.1
2024-10-31 07:55:09 +01:00
dependabot[bot]
6db7d9a6fa
Bump mlocati/ip-lib from 1.18.0 to 1.18.1
Bumps [mlocati/ip-lib](https://github.com/mlocati/ip-lib) from 1.18.0 to 1.18.1.
- [Release notes](https://github.com/mlocati/ip-lib/releases)
- [Commits](https://github.com/mlocati/ip-lib/compare/1.18.0...1.18.1)

---
updated-dependencies:
- dependency-name: mlocati/ip-lib
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-30 11:33:35 +00:00
El RIDO
631b65c1ea
Merge pull request #1438 from PrivateBin/array-key-type-error
Numeric array key type errors
2024-10-27 07:10:25 +01:00
El RIDO
8752354d63 apply StyleCI fixes 2024-10-25 07:12:30 +02:00
El RIDO
0268e01ab5 experiment: add return types to a unit test facility 2024-10-25 07:09:13 +02:00
El RIDO
e468f07626 avoid clever key manipulation, all we need are incremental numbers starting at 1 2024-10-25 06:58:05 +02:00
El RIDO
cf83e3825f ensure key is cast to string, fixes #1435 2024-10-23 08:23:02 +02:00
El RIDO
93a2b97d69 add failing test case, dedup code 2024-10-23 08:17:13 +02:00
El RIDO
d23bb748d4
Merge pull request #1401 from PrivateBin/b5-message-height
bootstrap footer improvements
2024-10-23 07:22:04 +02:00
El RIDO
7d6a70a24e
Merge branch 'master' into b5-message-height 2024-10-23 07:21:28 +02:00
El RIDO
9da6d8b24b
Merge pull request #1424 from PrivateBin/fix-webkit
Restore WebKit (Safari, iOS, etc.) compatibility
2024-10-23 07:19:35 +02:00
rugk
6876e14679 Merge remote-tracking branch 'origin/master' into fix-webkit 2024-10-22 22:32:32 +00:00
rugk
628b60dcb4 refactor: deferring everything including all potential deps
Also works on Safari…
2024-10-22 22:29:42 +00:00
rugk
5b3537a7cf Merge branch 'fix-webkit' of https://github.com/PrivateBin/PrivateBin into fix-webkit 2024-10-22 22:22:21 +00:00
rugk
f0ca1ac888 fix: also loaad dark-mode switch defer'Ed to make it load correctly
(async fails on WebKIt)
2024-10-22 22:20:49 +00:00
El RIDO
b077fb7749
Merge pull request #1432 from PrivateBin/crowdin-translation
New Crowdin updates
2024-10-20 15:33:45 +02:00
PrivateBin Translator Bot
dd4f3a43fe New translations en.json (Corsican) 2024-10-20 12:12:07 +02:00
El RIDO
eed2a13757
Merge pull request #1431 from PrivateBin/dompurify-3.1.7
upgrading DOMpurify library to 3.1.7
2024-10-19 16:52:33 +02:00
El RIDO
bcf163dd8a
Merge pull request #1430 from PrivateBin/crowdin-translation
New Crowdin updates
2024-10-19 12:44:41 +02:00
PrivateBin Translator Bot
d321995d7d New translations en.json (Czech) 2024-10-19 12:28:51 +02:00
El RIDO
07aeed1c4c
Merge branch 'master' into fix-webkit 2024-10-19 11:35:57 +02:00
El RIDO
849e32201e
improve SRI example 2024-10-19 11:28:01 +02:00
PrivateBin Translator Bot
2cd1dca600 New translations en.json (Czech) 2024-10-19 11:26:11 +02:00
El RIDO
ec2e981984
upgrading DOMpurify library to 3.1.7 2024-10-19 11:17:53 +02:00
El RIDO
233a69adde
typo in usage 2024-10-19 10:55:36 +02:00
PrivateBin Translator Bot
95935fe628 New translations en.json (Czech) 2024-10-19 10:09:33 +02:00
PrivateBin Translator Bot
2b668de6c6 New translations en.json (Czech) 2024-10-19 09:02:01 +02:00
PrivateBin Translator Bot
0985cad5bf New translations en.json (Occitan) 2024-10-19 00:32:34 +02:00
PrivateBin Translator Bot
6e3cb7791c New translations en.json (Italian) 2024-10-19 00:32:33 +02:00
PrivateBin Translator Bot
bc052b9c74 New translations en.json (German) 2024-10-19 00:32:31 +02:00
PrivateBin Translator Bot
35b3a823d2 New translations en.json (Czech) 2024-10-19 00:32:30 +02:00
PrivateBin Translator Bot
38c28b8b96 New translations en.json (French) 2024-10-19 00:32:29 +02:00
El RIDO
980bdc922f Update SRI 2024-10-18 23:08:02 +02:00
PrivateBin Translator Bot
3bd8a873a7 New translations en.json (Occitan) 2024-10-18 22:53:18 +02:00
PrivateBin Translator Bot
160e875bc5 New translations en.json (Czech) 2024-10-18 22:53:02 +02:00
El RIDO
52ab0abf51
Merge pull request #1417 from PrivateBin/crowdin-translation
New Crowdin updates
2024-10-18 22:46:28 +02:00
El RIDO
a7e9c7a52b
Merge branch 'master' into crowdin-translation 2024-10-18 22:45:57 +02:00
El RIDO
b4e584c574
Merge pull request #1413 from Parthiv-M/navigate-after-delete
Fix: redirect to home page after a paste is deleted
2024-10-18 22:43:40 +02:00
El RIDO
97edbcc167
Merge branch 'master' into navigate-after-delete 2024-10-18 22:39:04 +02:00
parthiv-m
11326f86ba Update SRI 2024-10-18 11:51:57 -04:00
parthiv-m
4d2d9d75c1 Add new key to all translation related files 2024-10-18 11:51:39 -04:00
El RIDO
b31bb4f4e2
Merge pull request #1427 from PrivateBin/doc/unittesting
Fix phpunit doc missing crucial step of installing GCS
2024-10-18 07:07:56 +02:00
El RIDO
6c9e2e054f
Merge pull request #1421 from PrivateBin/fixmail
Fix paste link not always being included in mail
2024-10-18 07:04:21 +02:00
parthiv-m
851dadf600 Update CHANGELOG.md 2024-10-17 21:56:42 -04:00
parthiv-m
788146012e Fix failing tests, update button icon and text according to feedback 2024-10-17 21:56:27 -04:00
theProton
922971590e
Merge branch 'PrivateBin:master' into navigate-after-delete 2024-10-17 21:22:29 -04:00
rugk
8d435d7c14
Fix style by removing optional parameter
Co-authored-by: El RIDO <elrido@gmx.net>
2024-10-18 02:59:20 +02:00
rugk
763d6fca7e
Adding hint that you will see unrelated files and to ignore these 2024-10-18 02:20:50 +02:00
rugk
5b245a3f85
Fix phpunit doc missing crucial step of installing GCS
I tried following the steps when running, for https://github.com/PrivateBin/PrivateBin/pull/1421, but this crucial one step is missing.

Maybe more was missing, most tests failed so hmm… but I only wanted it for the SRI generation and this was hard enough.

(And no, I did not feel like trying to run a container in a [dev]container, so these manual steps should better work.)

Maybe we can improve that further here, I the things I've noticed in this or the other PR.
2024-10-18 02:18:45 +02:00
rugk
2bc5931672 Codespace: Also ensure composer deps like phpunit are usable in devcontainer 2024-10-18 00:13:18 +00:00
rugk
368e8a2ee7 chore: update SRI hash 2024-10-18 00:11:35 +00:00
rugk
2790113199 Revert "Move jquery initialisation/startup logic at the end/down"
This reverts commit eabf763c41d08df92f0b0e9a090fe2bdbae561f6.

It is not needed anymore, apparently.
2024-10-16 22:56:35 +00:00
rugk
64ed6e96ee fix: load in WebKit again by loading jquery, base and deflate libs non-async'ly 2024-10-16 22:46:18 +00:00
rugk
6631e770a0 doc: make config consistent in quoting yourls header too as everything is unused 2024-10-16 22:30:11 +00:00
rugk
2cb10b841f doc: fix wrong doc missing quotation marks 2024-10-16 22:29:20 +00:00
rugk
eabf763c41 Move jquery initialisation/startup logic at the end/down 2024-10-16 22:27:50 +00:00
rugk
ff3a9eea79 Improve devcontainer experience by linking sample config as real config 2024-10-16 21:40:17 +00:00
rugk
e675b2547f
Fix
Fixes https://github.com/PrivateBin/PrivateBin/issues/1420

I have not tested it practically (just a quick hotfix), but given the code history and this was what worked before, I guess this should work. 🙃
2024-10-16 23:09:00 +02:00
parthiv-m
773c56fc94 Fix conditional display of 'New' paste button on alert 2024-10-14 12:54:36 -04:00
parthiv-m
5acecdb879 Fix for styleci failures 2024-10-13 17:51:45 -04:00
parthiv-m
f2b60d3765 Add _is_deleted status message to Controller and prompt for button click after paste delete 2024-10-13 17:45:05 -04:00
PrivateBin Translator Bot
b5da63318d New translations en.json (Polish) 2024-10-11 14:12:31 +02:00
El RIDO
702831ea38
Merge pull request #1416 from ensag-dev/patch-1
i18n: Update Occitan locale
2024-10-11 07:15:28 +02:00
El RIDO
aafc143a5a strict types in templates 2024-10-11 07:14:18 +02:00
El RIDO
a36d72e914 handle potential key cast
since we introduced strict types, this test occasionally fails when a ID consisting only of decimal numbers gets generated
2024-10-11 07:13:20 +02:00
ensag-dev
a8331d65df
Update Occitan locale 2024-10-10 09:31:08 +02:00
El RIDO
0040531057 fix Czech translation tests, test strings now use a non-breaking space 2024-10-09 07:04:12 +02:00
El RIDO
0cc556e8ad
Merge pull request #1415 from PrivateBin/crowdin-translation
New Crowdin updates
2024-10-09 06:55:49 +02:00
PrivateBin Translator Bot
55e5f65cbd New translations en.json (Polish) 2024-10-08 23:30:43 +02:00
parthiv-m
d69d29f3a9 Fix: Once a paste is deleted, navigate to
the home page after 5 seconds; change type
of the corresponding alert to alert-success
2024-10-07 17:42:37 -04:00
El RIDO
545ef9f64a
Merge pull request #1411 from mormegil-cz/cs-translation
Fix/improve/complete Czech translation
2024-10-05 09:01:30 +02:00
Mormegil
4cc2a20d66 Fix/improve/complete Czech translation 2024-10-03 16:26:47 +02:00
El RIDO
f4bb624ae6
Merge pull request #1410 from PrivateBin/crowdin-translation
New Crowdin updates
2024-10-02 18:23:25 +02:00
PrivateBin Translator Bot
a58b7b80f8 New translations en.json (Ukrainian) 2024-10-02 06:03:27 +02:00
El RIDO
9ac08ba202
Merge pull request #1408 from PrivateBin/crowdin-translation
New Crowdin updates
2024-10-01 22:06:30 +02:00
PrivateBin Translator Bot
d8a986dbda New translations en.json (Greek) 2024-10-01 21:54:55 +02:00
PrivateBin Translator Bot
d9fa9786c9 New translations en.json (Ukrainian) 2024-10-01 21:54:54 +02:00
PrivateBin Translator Bot
50ac504fed New translations en.json (Greek) 2024-10-01 16:54:37 +02:00
PrivateBin Translator Bot
471f6ba355 New translations en.json (Ukrainian) 2024-10-01 00:27:21 +02:00
El RIDO
cc16dd0165
undue footer change for bootstrap 3, switch to dvh heights, deal with small screens 2024-09-15 10:57:42 +02:00
El RIDO
57080eb7cc
use recommended bootstrap sticky footer solutions 2024-09-14 08:43:19 +02:00
El RIDO
1a51c0973d
bootstrap improvements, fixes #1392
- remove unused styles (no IDs called preview or comments)
- replace margins & paddings with bootstrap utility classes
- apply min body height to placeholder, plaintext & prettymessage, to move footer to end of viewport
2024-09-12 07:50:52 +02:00
El RIDO
c1333e5831
Merge pull request #1399 from PrivateBin/crowdin-translation
New Crowdin updates
2024-09-10 05:31:05 +02:00
PrivateBin Translator Bot
2a0ea64456 New translations en.json (Lithuanian) 2024-09-10 01:06:41 +02:00
El RIDO
e865bec9c3 document changes 2024-09-03 05:53:01 +02:00
El RIDO
a85a7552c1
Merge pull request #1396 from alexistoulotte/fix/use-opt-model-options-configuration
fix(configuration): Use "model_options[opt]" section from "conf.php"
2024-09-03 05:50:15 +02:00
Alexis Toulotte
d0d0d7b6e5 fix: Get rid of unused code 2024-09-03 09:40:08 +11:00
Alexis Toulotte
46c92e7404 fix(configuration): Use "model_options[opt]" section from "conf.php" 2024-09-03 09:19:01 +11:00
El RIDO
81f4a1f34a
Merge pull request #1395 from Lopkop/patch-1
Update LICENSE.md
2024-08-31 19:22:03 +02:00
El RIDO
083632a074
Merge pull request #1394 from alexistoulotte/fix/allow-non-persistent-sql-connection
Allow non persistent SQL connections
2024-08-31 19:20:09 +02:00
El RIDO
cbd6183f61
Merge pull request #1389 from PrivateBin/crowdin-translation
New Crowdin updates
2024-08-31 19:13:52 +02:00
Mark
a696069ead
Update LICENSE.md 2024-08-30 15:14:28 +00:00
Alexis Toulotte
05644d39f8 fix(configuration): Allow non persistent SQL connections 2024-08-30 11:10:25 +11:00
PrivateBin Translator Bot
8e40b96586 New translations en.json (Catalan) 2024-08-23 09:54:19 +02:00
PrivateBin Translator Bot
fb9ad37db2 New translations en.json (Catalan) 2024-08-22 13:53:01 +02:00
PrivateBin Translator Bot
a04fa272da New translations en.json (Catalan) 2024-08-22 12:29:54 +02:00
PrivateBin Translator Bot
bf22c15782 New translations en.json (Dutch) 2024-08-18 23:59:36 +02:00
PrivateBin Translator Bot
6ebc7a7dcb New translations en.json (Dutch) 2024-08-18 22:08:46 +02:00
PrivateBin Translator Bot
0915c8858b New translations en.json (Dutch) 2024-08-17 06:55:56 +02:00
PrivateBin Translator Bot
aad14ac05f New translations en.json (Korean) 2024-08-17 06:55:54 +02:00
El RIDO
2f4fa349ec
Merge pull request #1384 from PrivateBin/dompurify-3.1.6
upgrading DOMpurify library to 3.1.6
2024-08-03 13:14:45 +02:00
El RIDO
ab2d2f2477 upgrading DOMpurify library to 3.1.6 2024-08-03 09:52:30 +02:00
El RIDO
123d5833a5
Merge pull request #1372 from PrivateBin/sri-into-config
Make SRI hashes configurable, no longer hardcoded in templates
2024-08-03 09:38:54 +02:00
El RIDO
41369e28d5
Merge pull request #1380 from PrivateBin/crowdin-translation
New Crowdin updates
2024-07-23 07:05:31 +02:00
PrivateBin Translator Bot
435f201e2e New translations en.json (Greek) 2024-07-22 22:29:08 +02:00
El RIDO
d032efdb64
Merge pull request #1379 from PrivateBin/crowdin-translation
New Crowdin updates
2024-07-20 21:03:17 +02:00
PrivateBin Translator Bot
d038966b64 New translations en.json (Ukrainian) 2024-07-20 00:48:16 +02:00
El RIDO
93bc122086 apply StyleCI recommendation 2024-07-19 08:20:15 +02:00
El RIDO
2b76898546 preserve configured SRI hashes 2024-07-19 08:05:40 +02:00
El RIDO
5ef8a094e7
re-add missing attribute 2024-07-09 22:47:15 +02:00
El RIDO
4b6c8356f5
clarify use of cache buster, avoid using regex 2024-07-09 22:35:21 +02:00
El RIDO
3c6df4573e
apply StyleCI recommendation 2024-07-09 22:21:01 +02:00
El RIDO
6261c94fc9
break unit tests if mismatch between JS files and SRI configuration array is detected 2024-07-09 22:20:08 +02:00
El RIDO
118c919663
adjust regex due to StyleCI spacing change 2024-07-09 21:51:19 +02:00
El RIDO
e051cde317
apply StyleCI recommendation 2024-07-09 21:48:40 +02:00
El RIDO
d27e7e8ee3
make scriptTag parameter a string for flexibility and clarity 2024-07-09 21:38:41 +02:00
El RIDO
7294ea7847
Merge branch 'master' into sri-into-config 2024-07-09 21:32:42 +02:00
El RIDO
cf95e0b1d1
Merge branch 'master' into pg-tables-query 2024-07-09 21:30:17 +02:00
El RIDO
d2f311d246
chore: prepare for next release 2024-07-09 21:27:49 +02:00
El RIDO
031bcef317
incrementing version 2024-07-09 20:36:26 +02:00
El RIDO
0c4e810e67
Merge branch 'shorten-non-self-url' 2024-07-09 20:33:54 +02:00
El RIDO
8712ed6a5d
Merge pull request #1357 from PrivateBin/b5-textarea-height
bootstrap5 textarea height relative to viewport height
2024-07-09 20:28:17 +02:00
El RIDO
8b3b16be44
SRI hashes are now configurable, no longer hardcoded in templates
- addresses #1365
- should make upgrades easier for those using custom templates
- if the JS files got customized, the default SRI hashes can be replaced in the conf.php file, added commented section in conf.sample.php
2024-07-07 16:36:52 +02:00
El RIDO
3cba170f32
re-order stubs to the end of the file for easier maintenance 2024-07-07 15:10:17 +02:00
El RIDO
d097631469
possibly not necessary? 2024-07-07 14:28:29 +02:00
El RIDO
84d4d31c73
composer is not part of the matrix, don't try and process event.json 2024-07-07 14:22:48 +02:00
El RIDO
17f924118e
address warnings and errors in github actions 2024-07-07 14:13:59 +02:00
El RIDO
e0bca0d4dc simpler PostgreSQL table lookup query, fixes #1361 2024-07-07 12:37:28 +02:00
El RIDO
f662640554
Merge pull request #1366 from PrivateBin/crowdin-translation
New Crowdin updates
2024-06-30 19:46:57 +02:00
PrivateBin Translator Bot
4fe51b5578 New translations en.json (Ukrainian) 2024-06-30 13:22:12 +02:00
El RIDO
8e6e31db5c
fix test, basepath needs to be set 2024-06-30 07:45:06 +02:00
El RIDO
2c711e9d3c
prevent bypassing YOURLS proxy URL filter, allowing to shorten non-self URLs 2024-06-29 20:28:18 +02:00
El RIDO
0eae149474
Merge pull request #1360 from PrivateBin/crowdin-translation
New Crowdin updates
2024-06-22 06:51:27 +02:00
PrivateBin Translator Bot
5461f279d7 New translations en.json (Corsican) 2024-06-21 16:11:15 +02:00
El RIDO
3abbd107ca
Merge pull request #1356 from PrivateBin/b5-darkmode-toggle-state-init
bootstrap5 dark mode toggle unset on dark browser preference
2024-06-15 08:42:05 +02:00
El RIDO
eb42915991
bootstrap5 textarea height relative to viewport height, fixes #1349 2024-06-13 20:22:40 +02:00
El RIDO
ab05ed9532
bootstrap5 dark mode toggle unset on dark browser preference, fixes #1340 2024-06-13 20:00:26 +02:00
El RIDO
e4902e1bf1
Merge pull request #1355 from PrivateBin/dependabot/github_actions/dawidd6/action-download-artifact-6
Bump dawidd6/action-download-artifact from 5 to 6
2024-06-13 07:49:28 +02:00
dependabot[bot]
4d912b082b
Bump dawidd6/action-download-artifact from 5 to 6
Bumps [dawidd6/action-download-artifact](https://github.com/dawidd6/action-download-artifact) from 5 to 6.
- [Release notes](https://github.com/dawidd6/action-download-artifact/releases)
- [Commits](deb3bb8325...bf251b5aa9)

---
updated-dependencies:
- dependency-name: dawidd6/action-download-artifact
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-12 11:12:15 +00:00
El RIDO
d190507fbe
Merge pull request #1350 from PrivateBin/strict_types
enable strict types
2024-06-08 18:36:17 +02:00
El RIDO
3c6bf26dc8
Merge pull request #1353 from PrivateBin/crowdin-translation
New Crowdin updates
2024-06-06 06:10:06 +02:00
PrivateBin Translator Bot
036563d320 New translations en.json (Norwegian) 2024-06-06 06:08:07 +02:00
El RIDO
51eec9a776
Merge pull request #1352 from PrivateBin/dependabot/github_actions/dawidd6/action-download-artifact-5
Bump dawidd6/action-download-artifact from 3.1.4 to 5
2024-06-06 06:03:25 +02:00
dependabot[bot]
48b4c6ce5b
Bump dawidd6/action-download-artifact from 3.1.4 to 5
Bumps [dawidd6/action-download-artifact](https://github.com/dawidd6/action-download-artifact) from 3.1.4 to 5.
- [Release notes](https://github.com/dawidd6/action-download-artifact/releases)
- [Commits](09f2f74827...deb3bb8325)

---
updated-dependencies:
- dependency-name: dawidd6/action-download-artifact
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-04 11:09:50 +00:00
El RIDO
662d0e1430 document change 2024-06-04 07:32:13 +02:00
El RIDO
68ccaaace0 address unit test failures due to strict typing 2024-06-04 07:27:45 +02:00
El RIDO
cebc9acce6 enable strict types in PHP 2024-06-04 07:13:55 +02:00
El RIDO
b9d24b74b3 Merge branch 'version-sed' 2024-05-30 18:52:18 +02:00
El RIDO
b32efe0187 disable snyk scan on forks, they won't have the necessary secret 2024-05-30 07:54:19 +02:00
El RIDO
6aa292e33d document changes 2024-05-30 07:31:13 +02:00
El RIDO
4875bedac7
Merge pull request #1346 from 9401adarsh/password-input-bug-fix
fix: reset password input field on creation of new paste
2024-05-29 22:12:56 +02:00
9401adarsh
750a0adce4 chore: update sri hashes to reflect changes in js/ 2024-05-29 16:21:08 +05:30
9401adarsh
372fb58d20 fix: password input not resetting bug, add resetPasswordInput() method 2024-05-29 16:20:28 +05:30
El RIDO
4c347ea08e
Merge pull request #1345 from PrivateBin/crowdin-translation
New Crowdin updates
2024-05-29 07:49:55 +02:00
PrivateBin Translator Bot
9f5de7284e New translations en.json (French) 2024-05-28 22:11:41 +02:00
El RIDO
05402ef304 remove version from doc blocs
- @version in file header level isn't used on code docs, it is intended
  for API versions at class or method level
- avoids needing to update all these files on version increment
- avoids needing to regenerate SRI hashes for privatebin.js through
  extra phpunit run
- simplifies VERSION_FILES list
- avoids having to filter above list during loop
- adds a few missing doc bloc headers
2024-05-28 21:03:22 +02:00
El RIDO
f313578892
Merge pull request #1343 from PrivateBin/db-version-upgrade
refactor database schema upgrade to support skipping versions
2024-05-26 08:40:29 +02:00
El RIDO
99a3e087ed refactor database schema upgrade to support skipping versions 2024-05-25 09:40:41 +02:00
El RIDO
b96c8ae531 revert version increment in database upgrade 2024-05-25 09:14:24 +02:00
El RIDO
1264418102 Merge branch '9401adarsh-file-download-md-format-support-feature' 2024-05-21 07:14:54 +02:00
El RIDO
c04c7b0f34 update SRI hashes, npm lock file 2024-05-21 07:14:12 +02:00
El RIDO
a240dbc616
Merge pull request #1341 from FingerlessGlov3s/patch-1
Fix bootstrap5 template width
2024-05-21 06:46:11 +02:00
FingerlessGloves
4913837d37
Fix bootstrap5 template width 2024-05-20 20:28:13 +01:00
Adarsh Ashokan
7c7b5abad3 fix: downloadText() method to accommodate .md file format 2024-05-21 00:51:41 +05:30
El RIDO
a0e42aae9e
Merge pull request #1333 from PrivateBin/crowdin-translation
New Crowdin updates
2024-05-18 21:56:57 +02:00
El RIDO
f9f8f18781
helper interacts with rawText call 2024-05-18 21:55:14 +02:00
El RIDO
5e5b394291 fix rawText test and split parts into hideAllButtons test 2024-05-18 20:02:54 +02:00
El RIDO
39a359c23f
Merge pull request #1338 from ankiiisharma/ankit#1336
Added test case to verify rawText
2024-05-18 08:39:13 +02:00
Ankiiisharma
bae6e6ff25 Added test case to verify rawText
Added test case to verify rawText manipulates button visibility correctly
2024-05-18 00:09:23 +05:30
El RIDO
2324e83b84
Merge pull request #1331 from PrivateBin/dependabot/github_actions/dawidd6/action-download-artifact-3.1.4
Bump dawidd6/action-download-artifact from 3.0.0 to 3.1.4
2024-05-14 05:43:30 +02:00
PrivateBin Translator Bot
451f4af484 New translations en.json (Romanian) 2024-05-13 22:01:08 +02:00
El RIDO
d961a892f2
chore: prepare for next release 2024-05-13 19:33:43 +02:00
El RIDO
22419cd68a
incrementing version 2024-05-13 19:18:30 +02:00
dependabot[bot]
2aeec14a52
Bump dawidd6/action-download-artifact from 3.0.0 to 3.1.4
Bumps [dawidd6/action-download-artifact](https://github.com/dawidd6/action-download-artifact) from 3.0.0 to 3.1.4.
- [Release notes](https://github.com/dawidd6/action-download-artifact/releases)
- [Commits](e7466d1a75...09f2f74827)

---
updated-dependencies:
- dependency-name: dawidd6/action-download-artifact
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-05-13 12:00:22 +00:00
El RIDO
b60dec64e5
Merge pull request #1330 from AnonymousWP/Fix-Dutch-translations
feat(translations): add new Dutch strings
2024-05-13 12:39:39 +02:00
Anonymoussaurus
0b474bb6c0
feat(lang): add new Dutch strings 2024-05-13 11:28:34 +02:00
El RIDO
74cc2c3c92
Merge pull request #1326 from PrivateBin/unset-platform-matrix
in PHP matrix tests, we don't want to constrain the platform
2024-05-13 06:58:53 +02:00
El RIDO
619fbb6653 Merge remote-tracking branch 'origin/dompurify' 2024-05-13 06:57:41 +02:00
El RIDO
435f0d8ea1 Merge remote-tracking branch 'origin/bootstrap5-navbar' 2024-05-13 06:55:50 +02:00
El RIDO
9d53c6493b Merge remote-tracking branch 'origin/bootstrap5-code' 2024-05-13 06:53:41 +02:00
El RIDO
55d30ce9bd
Merge pull request #1323 from PrivateBin/bootstrap5-fileupload
bootstrap 5 attachment dropdown sizing
2024-05-13 06:47:46 +02:00
El RIDO
6ae1f7bfcc
Merge pull request #1319 from PrivateBin/crowdin-translation
New Crowdin updates
2024-05-13 06:44:34 +02:00
El RIDO
b080fd5e39
Merge pull request #1322 from PrivateBin/bootstrap-expiration-time
expiration time selection fix for bootstrap template
2024-05-13 06:43:30 +02:00
El RIDO
ee3b5ec08a
chore: upgrade DOMPurify from v3.1.2 to 3.1.3 2024-05-12 10:18:49 +02:00
El RIDO
9239c0267f
Merge pull request #1307 from PrivateBin/experimental-8.4
Add upload test results job in CI
2024-05-12 10:12:25 +02:00
El RIDO
df377d9652
in PHP matrix tests, we don't want to constrain the platform
setting the platform allow composer to prevent upgrades to versions that would exceed the configured version, for the matrix tests we want to use the latest ones for that release
2024-05-09 19:33:50 +02:00
El RIDO
976650bdde
bootstrap 5 nav bar & footer improvements, closes #1317 2024-05-09 18:18:57 +02:00
El RIDO
efb04d868d
bootstrap 5 code block improvements, closes #1314 2024-05-09 17:53:26 +02:00
El RIDO
47df01b4c6
bootstrap 5 attachment dropdown sizing, fixes #1313 2024-05-09 17:01:02 +02:00
El RIDO
81ad352c8c
improve TopNav.getExpiration test 2024-05-09 16:11:15 +02:00
El RIDO
2c8b5ed0e4
expiration time selection for bootstrap template, fixes #1309 2024-05-09 15:55:42 +02:00
PrivateBin Translator Bot
1e10011ca6 New translations en.json (Italian) 2024-05-08 08:01:14 +02:00
PrivateBin Translator Bot
a68a635239 New translations en.json (German) 2024-05-08 08:01:13 +02:00
PrivateBin Translator Bot
a52dd6eae0 New translations en.json (French) 2024-05-08 08:01:12 +02:00
PrivateBin Translator Bot
ebbef00b01 New translations en.json (German) 2024-05-08 06:49:32 +02:00
El RIDO
08aa10a4b7
Merge pull request #1318 from PrivateBin/crowdin-translation
New Crowdin updates
2024-05-08 06:42:47 +02:00
PrivateBin Translator Bot
acfaad8131 New translations en.json (Corsican) 2024-05-07 17:01:14 +02:00
El RIDO
11c26a7281 update SRI hashes and add missing translation messages 2024-05-06 12:40:48 +02:00
El RIDO
0bdac4b4a9
Merge pull request #1312 from Sommerwiesel/master
Rephrase the WebAssembly error on unsupported browser
2024-05-06 12:26:58 +02:00
Marvin Zurborg
0405422a4c
Rephrase the WebAssembly error on unsupported browser
Rephrase the WebAssembly error on unsupported browser
2024-05-06 08:07:02 +00:00
El RIDO
28f3e544b8
chore: prepare for next release 2024-05-05 22:53:19 +02:00
El RIDO
28e5ec582a
typo 2024-05-05 22:52:49 +02:00
El RIDO
da8b6a2c67
do close modal upon confirmation 2024-05-05 20:52:29 +02:00
El RIDO
5067e9222c
incrementing version 2024-05-05 20:43:33 +02:00
rugk
b7528f4427
Merge pull request #1303 from PrivateBin/test-improvments
Add upload test results job
2024-05-05 20:38:25 +02:00
El RIDO
843aa00473 Merge branch 'chrono-privacy' 2024-05-05 19:34:22 +02:00
rugk
9df90ece78
Merge branch 'experimental-8.4' into test-improvments 2024-05-05 18:27:08 +02:00
El RIDO
9f22858892
Merge pull request #1305 from PrivateBin/bump-jquery
chore: upgrade jQuery from v3.7.0 to 3.7.1
2024-05-05 17:14:27 +02:00
El RIDO
254c583022
Merge pull request #1306 from PrivateBin/crowdin-translation
New Crowdin updates
2024-05-05 17:13:51 +02:00
rugk
4ff9dea9cf
ci: try fixing intendation 2024-05-05 15:10:00 +02:00
rugk
6144caae85
ci: fix test results publishing being a totally separate action 2024-05-05 15:01:47 +02:00
PrivateBin Translator Bot
128e7bd1fc New translations en.json (Corsican) 2024-05-05 14:40:25 +02:00
El RIDO
6028a1d801
chore: upgrade jQuery from v3.7.0 to 3.7.1 2024-05-05 11:50:12 +02:00
El RIDO
17f293fa17
Merge pull request #1304 from PrivateBin/crowdin-translation
New Crowdin updates
2024-05-05 11:22:13 +02:00
El RIDO
259a171067
apply StyleCI recommendation 2024-05-05 11:19:52 +02:00
El RIDO
a6058705a4
add test for new setting 2024-05-05 11:18:25 +02:00
El RIDO
9b99712fce
handle further PHP 8.2 deprecations
PHP 8.2 deprecates implicit conversion from float to int if it loses precision, hence the explicit conversion. I missed these in 6bcef2fa24e04b96e9f630c8b47fa91bb4ac95f8
2024-05-05 11:17:33 +02:00
PrivateBin Translator Bot
c3e7f80d99 New translations en.json (Estonian) 2024-05-05 11:16:30 +02:00
PrivateBin Translator Bot
63a2a9e18b New translations en.json (Thai) 2024-05-05 11:16:29 +02:00
PrivateBin Translator Bot
c2e7ac0bcd New translations en.json (Indonesian) 2024-05-05 11:16:28 +02:00
PrivateBin Translator Bot
f216437af6 New translations en.json (Chinese Simplified) 2024-05-05 11:16:27 +02:00
PrivateBin Translator Bot
94434b82c9 New translations en.json (Ukrainian) 2024-05-05 11:16:27 +02:00
PrivateBin Translator Bot
334e3b01d0 New translations en.json (Swedish) 2024-05-05 11:16:26 +02:00
PrivateBin Translator Bot
e25088e54d New translations en.json (Slovenian) 2024-05-05 11:16:25 +02:00
PrivateBin Translator Bot
d233458a1d New translations en.json (Slovak) 2024-05-05 11:16:24 +02:00
PrivateBin Translator Bot
b8ffb858f1 New translations en.json (Russian) 2024-05-05 11:16:23 +02:00
PrivateBin Translator Bot
136281f629 New translations en.json (Portuguese) 2024-05-05 11:16:22 +02:00
PrivateBin Translator Bot
1b4b568ca8 New translations en.json (Polish) 2024-05-05 11:16:21 +02:00
PrivateBin Translator Bot
c2ff268464 New translations en.json (Norwegian) 2024-05-05 11:16:20 +02:00
PrivateBin Translator Bot
f23acc65f3 New translations en.json (Dutch) 2024-05-05 11:16:19 +02:00
PrivateBin Translator Bot
e064742d35 New translations en.json (Lithuanian) 2024-05-05 11:16:18 +02:00
El RIDO
49bc97e295
apply StyleCI recommendation 2024-05-05 11:16:17 +02:00
PrivateBin Translator Bot
a1687ced47 New translations en.json (Kurdish) 2024-05-05 11:16:17 +02:00
PrivateBin Translator Bot
7fc2789053 New translations en.json (Japanese) 2024-05-05 11:16:16 +02:00
PrivateBin Translator Bot
8bb4542ee2 New translations en.json (Italian) 2024-05-05 11:16:15 +02:00
PrivateBin Translator Bot
3f8f71a6a3 New translations en.json (Hungarian) 2024-05-05 11:16:14 +02:00
PrivateBin Translator Bot
ad16a6ad52 New translations en.json (Finnish) 2024-05-05 11:16:13 +02:00
PrivateBin Translator Bot
3f0cd3b63f New translations en.json (Greek) 2024-05-05 11:16:13 +02:00
PrivateBin Translator Bot
45f96ee2c0 New translations en.json (German) 2024-05-05 11:16:11 +02:00
PrivateBin Translator Bot
44f20e0fa1 New translations en.json (Arabic) 2024-05-05 11:16:11 +02:00
PrivateBin Translator Bot
f681727c13 New translations en.json (Spanish) 2024-05-05 11:16:10 +02:00
PrivateBin Translator Bot
0308103ef1 New translations en.json (French) 2024-05-05 11:16:09 +02:00
PrivateBin Translator Bot
7bc895e0e5 New translations en.json (Romanian) 2024-05-05 11:16:08 +02:00
PrivateBin Translator Bot
9446967e45 New translations en.json (Turkish) 2024-05-05 11:16:07 +02:00
El RIDO
b00528388f
Merge branch 'master' into chrono-privacy 2024-05-05 10:25:31 +02:00
PrivateBin Translator Bot
b23b37c39f New translations en.json (Italian) 2024-05-05 09:29:34 +02:00
El RIDO
1722d8056b
Merge pull request #1287 from PrivateBin/bootstrap5
Bootstrap 5 template
2024-05-05 09:27:53 +02:00
El RIDO
0983d1b514
doc 2024-05-04 16:19:56 +02:00
El RIDO
3508989114
updated dompurify library 2024-05-04 16:18:43 +02:00
El RIDO
06fb606aa7
Merge branch 'master' into bootstrap 2024-05-04 16:15:07 +02:00
El RIDO
2b87bf3d13
update SRI hashes 2024-05-04 16:14:12 +02:00
El RIDO
125feec67c
Merge pull request #1299 from PrivateBin/chore/dompurify
chore: ugrade DOMPurify from v3.0.8 to 3.1.2
2024-05-04 16:13:19 +02:00
rugk
33df5fbd2f
Actually make tests continue on experimental builds 2024-05-04 16:02:31 +02:00
rugk
61259a2e60 chore: remove source map URL 2024-05-04 13:50:51 +00:00
El RIDO
513408b4fb
Update cfg/conf.sample.php
Co-authored-by: rugk <rugk+git@posteo.de>
2024-05-04 15:44:29 +02:00
rugk
3f1bcb5c5a
doc: add Chnagelog entry 2024-05-04 15:39:25 +02:00
rugk
7a738d6893
test: also update DOMPurify in tests 2024-05-04 15:38:04 +02:00
Andreas Schneider
4163c4f1d9
Merge pull request #1300 from PrivateBin/php-84-experimental
tolerate test failures in the PHP development release
2024-05-04 15:34:17 +02:00
El RIDO
0f9158b37b
allow disabling comment date display using discussiondatedisplay configuration option 2024-05-04 14:38:41 +02:00
El RIDO
3f5b6e0ce5
fix glitch introduced by e22da2e0d12e65d7cded5e21932417d78b5f54c6 2024-05-04 13:53:21 +02:00
rugk
1d6a14ba14
Switch to better artifact download action 2024-05-04 13:29:58 +02:00
rugk
93f59d6456
Upload and use event file, too, for test runs
To support forked repos: https://github.com/marketplace/actions/publish-test-results#support-fork-repositories-and-dependabot-branches

**NOTE:** Do _not_ use with `pull_request_target` as that causes issues!
2024-05-04 13:21:57 +02:00
rugk
00fca44986
Fix npm syntax 2024-05-04 13:14:25 +02:00
rugk
f92edf0026
Run mocha tests properly 2024-05-04 13:13:22 +02:00
rugk
8443d3e397
Add CI test script to package.json 2024-05-04 13:12:23 +02:00
rugk
91957838be
Add upload test results job
As per https://github.com/marketplace/actions/publish-test-results#use-with-matrix-strategy only one job should upload all results.
2024-05-04 13:07:53 +02:00
rugk
04822aa643
Actually make tests continue on experimental builds 2024-05-04 12:40:44 +02:00
rugk
55dec46cf4
Mark PHP v8.4 tests as experimental
As per this doc: https://docs.github.com/en/actions/using-jobs/using-a-matrix-for-your-jobs#handling-failures

Workaround for https://github.com/PrivateBin/PrivateBin/issues/1301 for now. I hope this ignores failures?
2024-05-04 12:16:37 +02:00
El RIDO
81fdf8ebfc
re-lax samesite cookie policy
As per discussion in code review:

> Cookies are always scoped in browsers. That's not the issue. SameSite attribute just protects against CSRF attacks. But Get requests (aka links) are also "protected" with Strict, which breaks it… and for users that is highly confusing when they (apparently arbitrarily) do not get the language they have set before when clicking a link.

https://github.com/PrivateBin/PrivateBin/pull/1287#discussion_r1589299210
2024-05-04 12:12:31 +02:00
El RIDO
5425ea79f8
Merge branch 'master' into bootstrap5 2024-05-04 12:08:10 +02:00
El RIDO
baf8c4a11d tolerate test failures in the PHP development release
at this time, guzzle, dependency of google cloud storage library, raises deprecation warnings in PHP 8.4, which caused the tests to be considered failed
2024-05-04 08:58:20 +02:00
El RIDO
1d755d8046
Merge pull request #1280 from PrivateBin/doc-n-test-mopup
Doc'n'test mopup
2024-05-04 08:38:12 +02:00
rugk
4500794980 chore: ugrade DOMPurify from v3.0.8 to 3.1.2
This incluces v3.1.1, which says:
> Note that this is a security release and should be upgraded to immediately.

https://github.com/cure53/DOMPurify/releases/tag/3.1.1

The release notes of the actual version itself are https://github.com/cure53/DOMPurify/releases/tag/3.1.2

I do not found more information on the vulnerability that apparently is in there.

* [x] manually tested and works
2024-05-03 15:55:53 +00:00
El RIDO
02e98826b3
Merge pull request #1296 from PrivateBin/crowdin-translation
New Crowdin updates
2024-05-03 07:25:50 +02:00
PrivateBin Translator Bot
22166c91d7 New translations en.json (Turkish) 2024-05-03 04:18:56 +02:00
El RIDO
c7226eedd7
Update tpl/bootstrap5.php
Co-authored-by: rugk <rugk+git@posteo.de>
2024-05-02 08:03:55 +02:00
El RIDO
8bfab7fd89
Update tpl/bootstrap5.php
Co-authored-by: rugk <rugk+git@posteo.de>
2024-05-02 08:01:37 +02:00
El RIDO
5421e8e558
fix unit test 2024-05-01 21:13:24 +02:00
El RIDO
041068b590
apply Scrutinizer recommendation 2024-05-01 21:07:24 +02:00
El RIDO
58a235e068
apply StyleCI recommendation 2024-05-01 21:04:29 +02:00
El RIDO
2b2b6f2e41
SQLite 3.35.0 introduced drop column support
see https://www.sqlite.org/releaselog/3_35_0.html
2024-05-01 21:01:12 +02:00
El RIDO
2cc40b2447
apply StyleCI recommendation 2024-05-01 20:36:47 +02:00
El RIDO
b2db26998d
remove the old keys, if they are still stored 2024-05-01 20:32:39 +02:00
El RIDO
a9f1926b96
implement chrono privacy for pastes, addresses #1290 2024-05-01 20:16:03 +02:00
El RIDO
5c6bd3eba8
Update tpl/bootstrap5.php
Co-authored-by: rugk <rugk+git@posteo.de>
2024-04-23 23:09:21 +02:00
El RIDO
c66d3f05da
semantics 2024-04-23 22:11:58 +02:00
El RIDO
142a380bb2
undo simplification, here we actually check if it is a non-empty string 2024-04-23 22:02:41 +02:00
El RIDO
6273cc9a4c
extract shared common CSS into single file 2024-04-23 21:49:57 +02:00
El RIDO
e22da2e0d1
address "oneliner-hell" 2024-04-23 21:15:33 +02:00
El RIDO
f4e8e363cb
fix scrutinizer reported issue
empty only works with variables, not constants - here we want to error out if PATH either isn't defined or does not end in a directory separator, so we can concatenate onto it
2024-04-23 21:15:33 +02:00
El RIDO
ec02afca04
Merge pull request #1289 from PrivateBin/dependabot/github_actions/slsa-framework/slsa-github-generator-2.0.0
Bump slsa-framework/slsa-github-generator from 1.10.0 to 2.0.0
2024-04-23 18:27:24 +02:00
El RIDO
b6f90f903b
Merge pull request #1288 from smonesi/master
Fix weird Italian translation for burn-after-reading messages.
2024-04-23 18:19:46 +02:00
dependabot[bot]
ad19f8cfe6
Bump slsa-framework/slsa-github-generator from 1.10.0 to 2.0.0
Bumps [slsa-framework/slsa-github-generator](https://github.com/slsa-framework/slsa-github-generator) from 1.10.0 to 2.0.0.
- [Release notes](https://github.com/slsa-framework/slsa-github-generator/releases)
- [Changelog](https://github.com/slsa-framework/slsa-github-generator/blob/main/CHANGELOG.md)
- [Commits](https://github.com/slsa-framework/slsa-github-generator/compare/v1.10.0...v2.0.0)

---
updated-dependencies:
- dependency-name: slsa-framework/slsa-github-generator
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-23 11:43:14 +00:00
smonesi
2813dd2295
Another small translation fix 2024-04-23 11:43:30 +02:00
smonesi
0311b4f527
Fix silly translation for burn-after-reading messages. 2024-04-23 11:35:32 +02:00
El RIDO
8b3d66b8e2
Update css/bootstrap5/privatebin.css
Co-authored-by: rugk <rugk+git@posteo.de>
2024-04-23 06:38:45 +02:00
El RIDO
9bcb114a23
document changes 2024-04-21 11:46:46 +02:00
El RIDO
bdc9c307df
add "Dark Mode" to translation strings 2024-04-21 11:46:14 +02:00
El RIDO
658383e6d1
set lang cookie with strict SameSite property 2024-04-21 11:36:31 +02:00
El RIDO
15481290fb
fix tab alignment 2024-04-21 11:02:14 +02:00
El RIDO
545ba7506e
bootstrap 5 - fix password modal display 2024-04-21 11:01:40 +02:00
El RIDO
a7ea62fcd0
bootstrap 5 prettify dark theme support
current status:
- made prettify theme work with dark mode

to be done:
- fix password modal display
- add "Dark Mode" to translation strings
- check tab alignment in HTML source
2024-04-19 14:00:49 +02:00
El RIDO
491ed9a521
bootstrap 5 template function complete
current status:
- got expiration and format selections to work
- fixed modals (password, QR-code, etc.)
- replaced glyphicons with Bootstrap icons (needs CSP relaxation to work)
- tested the different settings and combinations
- got editor tabs to change active status

to be done:
- add "Dark Mode" to translation strings
- figure out how to change prettify theme when dark mode gets selected
- check tab alignment in HTML source
2024-04-18 21:36:43 +02:00
El RIDO
7526856570
Merge pull request #1281 from PrivateBin/dependabot/composer/phpunit/phpunit-9.6.19
Bump phpunit/phpunit from 9.6.18 to 9.6.19
2024-04-09 04:07:33 +02:00
dependabot[bot]
027462a872
Bump phpunit/phpunit from 9.6.18 to 9.6.19
Bumps [phpunit/phpunit](https://github.com/sebastianbergmann/phpunit) from 9.6.18 to 9.6.19.
- [Release notes](https://github.com/sebastianbergmann/phpunit/releases)
- [Changelog](https://github.com/sebastianbergmann/phpunit/blob/9.6.19/ChangeLog-9.6.md)
- [Commits](https://github.com/sebastianbergmann/phpunit/compare/9.6.18...9.6.19)

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

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-05 11:06:39 +00:00
El RIDO
7565be8ed5
initial work on a bootstrap 5 template
current status:
- renders without PHP errors & passes unit tests
- displays pastes
- responsive navbar
- right-to-left support
- auto dark mode with toggle

to be done:
- add "Dark Mode" to translation strings
- get expiration and format selections to work
- fix modals (password, QR-code, etc.)
- replace glyphicons with Bootstrap Icons (no longer included)
- test all the different settings and combinations
- check tab alignment in HTML source
2024-04-01 18:59:28 +02:00
El RIDO
6bcef2fa24
handle PHP 8.2 deprecation
PHP 8.2 deprecates implicit conversion from float to int if it loses precision, hence the explicit conversion.

PHP 8.1 deprecates the (optional since PHP 8.0) 3rd parameter of imagefilledpolygon(), but 7.3 & 7.4 require it.
2024-04-01 14:50:16 +02:00
El RIDO
b9a9e7c324
bump versions of optional cloud storage dependencies 2024-04-01 14:35:16 +02:00
El RIDO
aae3ea7cbf
update documentation
- clarify all template options & link to previews
- document new ctype extension requirement
2024-04-01 14:34:23 +02:00
El RIDO
3bc09ed561
Merge pull request #1275 from PrivateBin/legacy-php-cleanup
input sanitation & removing some obsolete version checks
2024-03-26 06:33:57 +01:00
El RIDO
b75aee6834
Merge pull request #1277 from Zwyx/add-header
Add response header `X-Uncompressed-Content-Length` for JSON API
2024-03-24 18:58:01 +01:00
Zwyx
6130547ca6
Add response header X-Uncompressed-Content-Length for JSON API
Because the response from the API is PHP output, the usual `Content-Length` header is absent.

This [custom header technique](https://stackoverflow.com/questions/15097712/how-can-i-use-deflated-gzipped-content-with-an-xhr-onprogress-function/32799706#32799706) allows the client to know the total length of the data being received, in order to display a progress indicator.

Here's a code example with `XMLHttpRequest`:


```
xhr.addEventListener("progress", (e) => {
	if (e.lengthComputable) {
		onDownloadProgress({
			loaded: e.loaded,
			total: e.total,
		});
	} else {
		const uncompressedContentLength = xhr.getResponseHeader(
			"X-Uncompressed-Content-Length",
		);

		if (uncompressedContentLength) {
			onDownloadProgress({
				loaded: e.loaded,
				total: Number(uncompressedContentLength),
			});
		}
	}
});
```

Notes:
- `Fetch` can be used as well (only reason I use `XMLHttpRequest` is because `fetch` doesn't allow to track the progress of uploaded data (when creating a paste); whereas `XMLHttpRequest` does).
- `e.loaded` can be different between browsers; Firefox reports the length of the compressed data, Chrome reports the length of uncompressed data (see https://github.com/whatwg/xhr/issues/388). A workaround for this is to manually set our progress indicator to 100% when the request finishes.
2024-03-24 19:40:50 +08:00
El RIDO
776030c08a
Merge pull request #1273 from PrivateBin/crowdin-translation
New Crowdin updates
2024-03-23 11:33:02 +01:00
El RIDO
65a626f940 inputs sanitation & remove some obsolete version checks
using filter_vars instead of filter_input, because our unit tests depend on manipulating global arrays, which are not used by filter_input - we would have to mock the function in the unit testing, it therefore is cleaner to use the same code paths in testing as in production

some inputs in I18n and TrafficLimiter remain unfiltered, since we already validate them by other means (IP lib and/or preg_match)

our minimum PHP version is 7.3, so we can drop the two < 5.6 fallback checks
2024-03-23 11:27:25 +01:00
PrivateBin Translator Bot
8ec1fc626b New translations en.json (Chinese Simplified) 2024-03-23 09:24:14 +01:00
PrivateBin Translator Bot
59eb6570ee New translations en.json (Ukrainian) 2024-03-23 09:24:13 +01:00
PrivateBin Translator Bot
6e780d516c New translations en.json (Russian) 2024-03-23 09:24:13 +01:00
PrivateBin Translator Bot
14733d7ce0 New translations en.json (Norwegian) 2024-03-23 09:24:12 +01:00
PrivateBin Translator Bot
02f9384a97 New translations en.json (Dutch) 2024-03-23 09:24:11 +01:00
PrivateBin Translator Bot
e2f9e24d4b New translations en.json (Italian) 2024-03-23 09:24:10 +01:00
PrivateBin Translator Bot
04676fe61d New translations en.json (German) 2024-03-23 09:24:09 +01:00
PrivateBin Translator Bot
18d49148e1 New translations en.json (Romanian) 2024-03-23 09:24:08 +01:00
PrivateBin Translator Bot
9f23b23da0 New translations en.json (French) 2024-03-23 09:24:07 +01:00
El RIDO
9997178928
Merge pull request #1274 from PrivateBin/dependabot/composer/phpunit/phpunit-9.6.18
Bump phpunit/phpunit from 9.6.17 to 9.6.18
2024-03-23 09:04:33 +01:00
PrivateBin Translator Bot
7c82eec40c New translations en.json (Arabic) 2024-03-23 08:27:03 +01:00
PrivateBin Translator Bot
2dbedf2219 New translations en.json (Corsican) 2024-03-22 15:19:42 +01:00
dependabot[bot]
6510e1b4e2
Bump phpunit/phpunit from 9.6.17 to 9.6.18
Bumps [phpunit/phpunit](https://github.com/sebastianbergmann/phpunit) from 9.6.17 to 9.6.18.
- [Release notes](https://github.com/sebastianbergmann/phpunit/releases)
- [Changelog](https://github.com/sebastianbergmann/phpunit/blob/9.6.18/ChangeLog-9.6.md)
- [Commits](https://github.com/sebastianbergmann/phpunit/compare/9.6.17...9.6.18)

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

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-22 12:01:52 +00:00
PrivateBin Translator Bot
b5bc5753db New translations en.json (Corsican) 2024-03-22 07:50:35 +01:00
PrivateBin Translator Bot
a9d64421d3 New translations en.json (Chinese Simplified) 2024-03-22 07:50:30 +01:00
PrivateBin Translator Bot
84a203b153 New translations en.json (Ukrainian) 2024-03-22 07:50:29 +01:00
PrivateBin Translator Bot
677dd54505 New translations en.json (Russian) 2024-03-22 07:50:26 +01:00
PrivateBin Translator Bot
63df1ac8ed New translations en.json (Norwegian) 2024-03-22 07:50:24 +01:00
PrivateBin Translator Bot
6d79a2ed43 New translations en.json (Dutch) 2024-03-22 07:50:23 +01:00
PrivateBin Translator Bot
d7a317dfaf New translations en.json (Italian) 2024-03-22 07:50:21 +01:00
PrivateBin Translator Bot
ab0126af7c New translations en.json (German) 2024-03-22 07:50:18 +01:00
PrivateBin Translator Bot
310a4cb54d New translations en.json (Arabic) 2024-03-22 07:50:15 +01:00
PrivateBin Translator Bot
f1627ea929 New translations en.json (Romanian) 2024-03-22 07:50:14 +01:00
PrivateBin Translator Bot
c43e557cc5 New translations en.json (French) 2024-03-22 07:50:13 +01:00
El RIDO
1870b9075c Merge branch 'cloudrac3r-patch-1' 2024-03-22 07:44:47 +01:00
Chris Dailey
028626ac1e Update conf.sample.php
A small comment addition to `conf.sample.php` that mentions the other strings to use for the included themes. The "bootstrap-dark" one in particular is perhaps not obvious to any user who doesn't look at the contents of `tpl/bootstrap.php`.
2024-03-22 07:42:43 +01:00
dependabot[bot]
44dd410dec Bump slsa-framework/slsa-github-generator from 1.9.0 to 1.10.0
Bumps [slsa-framework/slsa-github-generator](https://github.com/slsa-framework/slsa-github-generator) from 1.9.0 to 1.10.0.
- [Release notes](https://github.com/slsa-framework/slsa-github-generator/releases)
- [Changelog](https://github.com/slsa-framework/slsa-github-generator/blob/main/CHANGELOG.md)
- [Commits](https://github.com/slsa-framework/slsa-github-generator/compare/v1.9.0...v1.10.0)

---
updated-dependencies:
- dependency-name: slsa-framework/slsa-github-generator
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-22 07:42:43 +01:00
El RIDO
bf2bb7c4ff
Merge pull request #1272 from nitz/conf-sample-add-theme-names
Update conf.sample.php
2024-03-22 07:37:38 +01:00
El RIDO
1eb3ead364
Merge pull request #1271 from PrivateBin/dependabot/github_actions/slsa-framework/slsa-github-generator-1.10.0
Bump slsa-framework/slsa-github-generator from 1.9.0 to 1.10.0
2024-03-22 07:36:34 +01:00
Cadence Ember
d4fdc563ae Update all instances of text in language files 2024-03-22 11:25:17 +13:00
Chris Dailey
1c9da2ffac
Update conf.sample.php
A small comment addition to `conf.sample.php` that mentions the other strings to use for the included themes. The "bootstrap-dark" one in particular is perhaps not obvious to any user who doesn't look at the contents of `tpl/bootstrap.php`.
2024-03-21 09:01:01 -04:00
dependabot[bot]
383dbf1c79
Bump slsa-framework/slsa-github-generator from 1.9.0 to 1.10.0
Bumps [slsa-framework/slsa-github-generator](https://github.com/slsa-framework/slsa-github-generator) from 1.9.0 to 1.10.0.
- [Release notes](https://github.com/slsa-framework/slsa-github-generator/releases)
- [Changelog](https://github.com/slsa-framework/slsa-github-generator/blob/main/CHANGELOG.md)
- [Commits](https://github.com/slsa-framework/slsa-github-generator/compare/v1.9.0...v1.10.0)

---
updated-dependencies:
- dependency-name: slsa-framework/slsa-github-generator
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-21 11:46:25 +00:00
Cadence Ember
070ce7e196
Update en.json
Change notice when opening burn after reading
2024-03-20 09:15:05 +13:00
El RIDO
74ac3350a3
Merge pull request #1268 from PrivateBin/crowdin-translation
New Crowdin updates
2024-03-18 19:24:44 +01:00
PrivateBin Translator Bot
5a52f71bb7 New translations en.json (French) 2024-03-18 18:14:41 +01:00
El RIDO
f0794e3c0b document & attribute changes from #1267 2024-03-18 07:48:20 +01:00
El RIDO
db287a10fe
Merge pull request #1267 from asherber/shorten-yourls
Allow for shortenviayourls in query params
2024-03-18 07:42:59 +01:00
Aaron Sherber
7a4c6c010f
Update conf.sample.php 2024-03-16 19:46:57 -04:00
Aaron Sherber
7c9cc7754f
Allow for shortenviayourls in query params 2024-03-16 16:55:49 -04:00
El RIDO
6eb5fdcc06
Merge pull request #1264 from PrivateBin/email-shortend-url
shortened paste URL does not appear in email
2024-03-14 06:59:07 +01:00
El RIDO
e1e0e8399c
phpdoc improvements 2024-03-10 18:01:46 +01:00
El RIDO
89a5d07b94
shortened paste URL does not appear in email
fixes #606
2024-03-10 17:26:30 +01:00
El RIDO
5f00587d71
phpdoc improvements, fixes #1036 2024-03-10 17:07:10 +01:00
El RIDO
53d2d3334d
document & attribute changes 2024-03-10 16:12:40 +01:00
Aaron Sherber
fd7d9f4715
Fix styleci issues 2024-03-09 16:55:44 -05:00
Aaron Sherber
8abf6ae9cb
Always add cache control headers 2024-03-09 16:49:42 -05:00
El RIDO
a62f4babbf
Merge pull request #1258 from PrivateBin/dependabot/composer/phpunit/phpunit-9.6.17
Bump phpunit/phpunit from 9.6.16 to 9.6.17
2024-02-26 12:37:38 +01:00
El RIDO
d52b8af0f5
Merge pull request #1257 from PrivateBin/crowdin-translation
New Crowdin updates
2024-02-26 12:35:33 +01:00
dependabot[bot]
6474c374e2
Bump phpunit/phpunit from 9.6.16 to 9.6.17
Bumps [phpunit/phpunit](https://github.com/sebastianbergmann/phpunit) from 9.6.16 to 9.6.17.
- [Changelog](https://github.com/sebastianbergmann/phpunit/blob/9.6.17/ChangeLog-9.6.md)
- [Commits](https://github.com/sebastianbergmann/phpunit/compare/9.6.16...9.6.17)

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

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-26 11:13:45 +00:00
PrivateBin Translator Bot
b15571ae4a New translations en.json (German) 2024-02-26 10:05:41 +01:00
El RIDO
c162f04384
Merge pull request #1256 from LMS235/patch-1
Update de.json
2024-02-22 08:46:08 +01:00
Florian
6999ed3f4b
Update de.json
Text verständlicher gemacht
2024-02-21 11:34:33 +01:00
El RIDO
03e7f6a9a7
Merge pull request #1250 from PrivateBin/crowdin-translation
New Crowdin updates
2024-02-17 20:25:15 +01:00
PrivateBin Translator Bot
a1095d0d21 New translations en.json (Arabic) 2024-02-17 17:15:15 +01:00
El RIDO
7576459135
Merge pull request #1249 from PrivateBin/doc-slsa
doc: Fix (direct) link to SLSA verifier
2024-02-17 09:03:14 +01:00
rugk
cb117d6797
doc: Fix (direct) link to SLSA verifier
Apparently the headline changed, this is the direct link for GitHub.
2024-02-16 17:19:17 +01:00
El RIDO
244703babb
Merge pull request #1248 from PrivateBin/crowdin-translation
New Crowdin updates
2024-02-15 07:53:06 +01:00
PrivateBin Translator Bot
b00085f30f New translations en.json (Romanian) 2024-02-15 07:09:13 +01:00
PrivateBin Translator Bot
fc1b1ae0ca New translations en.json (Russian) 2024-02-15 07:09:12 +01:00
PrivateBin Translator Bot
45e335eca6 New translations en.json (German) 2024-02-15 07:09:11 +01:00
PrivateBin Translator Bot
f03bccd31e New translations en.json (Bulgarian) 2024-02-15 07:09:10 +01:00
PrivateBin Translator Bot
04da6db079 New translations en.json (Arabic) 2024-02-15 07:09:09 +01:00
PrivateBin Translator Bot
580a034189 New translations en.json (French) 2024-02-15 07:09:08 +01:00
PrivateBin Translator Bot
6c5a500fcd New translations en.json (Corsican) 2024-02-15 00:50:42 +01:00
PrivateBin Translator Bot
da4ad06758 New translations en.json (Occitan) 2024-02-14 21:17:17 +01:00
PrivateBin Translator Bot
2f394a4714 New translations en.json (Lojban) 2024-02-14 21:17:16 +01:00
PrivateBin Translator Bot
39949cea34 New translations en.json (Estonian) 2024-02-14 21:17:15 +01:00
PrivateBin Translator Bot
a9d287874b New translations en.json (Thai) 2024-02-14 21:17:14 +01:00
PrivateBin Translator Bot
2381e30dc4 New translations en.json (Indonesian) 2024-02-14 21:17:13 +01:00
PrivateBin Translator Bot
0255f72ae0 New translations en.json (Chinese Simplified) 2024-02-14 21:17:12 +01:00
PrivateBin Translator Bot
900200c35f New translations en.json (Ukrainian) 2024-02-14 21:17:11 +01:00
PrivateBin Translator Bot
860b4b183e New translations en.json (Turkish) 2024-02-14 21:17:10 +01:00
PrivateBin Translator Bot
e585aeacda New translations en.json (Swedish) 2024-02-14 21:17:09 +01:00
PrivateBin Translator Bot
a4820618dd New translations en.json (Slovenian) 2024-02-14 21:17:08 +01:00
PrivateBin Translator Bot
d957d344d1 New translations en.json (Slovak) 2024-02-14 21:17:07 +01:00
PrivateBin Translator Bot
c9c99f7535 New translations en.json (Portuguese) 2024-02-14 21:17:06 +01:00
PrivateBin Translator Bot
516a4c7d13 New translations en.json (Polish) 2024-02-14 21:17:05 +01:00
PrivateBin Translator Bot
2ccc90798f New translations en.json (Norwegian) 2024-02-14 21:17:04 +01:00
PrivateBin Translator Bot
647ddebb5c New translations en.json (Dutch) 2024-02-14 21:17:03 +01:00
PrivateBin Translator Bot
f40f3dd3a5 New translations en.json (Lithuanian) 2024-02-14 21:17:02 +01:00
PrivateBin Translator Bot
ce4f3a1b09 New translations en.json (Japanese) 2024-02-14 21:17:01 +01:00
PrivateBin Translator Bot
888b3cb49c New translations en.json (Italian) 2024-02-14 21:17:00 +01:00
PrivateBin Translator Bot
6e0bc8bceb New translations en.json (Hungarian) 2024-02-14 21:16:59 +01:00
PrivateBin Translator Bot
43d396efd9 New translations en.json (Hebrew) 2024-02-14 21:16:58 +01:00
PrivateBin Translator Bot
3b6ebfdf02 New translations en.json (Finnish) 2024-02-14 21:16:57 +01:00
PrivateBin Translator Bot
f3df151a8c New translations en.json (Greek) 2024-02-14 21:16:56 +01:00
PrivateBin Translator Bot
e4329b623d New translations en.json (Czech) 2024-02-14 21:16:55 +01:00
PrivateBin Translator Bot
e18ec99aa9 New translations en.json (Catalan) 2024-02-14 21:16:54 +01:00
PrivateBin Translator Bot
6d2d19c38c New translations en.json (Spanish) 2024-02-14 21:16:53 +01:00
PrivateBin Translator Bot
532f85c6b7 New translations en.json (Romanian) 2024-02-14 19:53:04 +01:00
PrivateBin Translator Bot
0dc7b1f6fc New translations en.json (Corsican) 2024-02-14 19:53:03 +01:00
PrivateBin Translator Bot
f0cc0e878a New translations en.json (Occitan) 2024-02-14 19:53:02 +01:00
PrivateBin Translator Bot
2f775c218c New translations en.json (Latin) 2024-02-14 19:53:01 +01:00
PrivateBin Translator Bot
98b3d0e2ae New translations en.json (Lojban) 2024-02-14 19:53:00 +01:00
PrivateBin Translator Bot
7ba642c0ad New translations en.json (Hindi) 2024-02-14 19:52:59 +01:00
PrivateBin Translator Bot
63b63354d7 New translations en.json (Estonian) 2024-02-14 19:52:58 +01:00
PrivateBin Translator Bot
569b47ee62 New translations en.json (Thai) 2024-02-14 19:52:57 +01:00
PrivateBin Translator Bot
050917f035 New translations en.json (Indonesian) 2024-02-14 19:52:56 +01:00
PrivateBin Translator Bot
eff7eb5e23 New translations en.json (Chinese Simplified) 2024-02-14 19:52:55 +01:00
PrivateBin Translator Bot
326feb1808 New translations en.json (Ukrainian) 2024-02-14 19:52:54 +01:00
PrivateBin Translator Bot
3ed954fef4 New translations en.json (Turkish) 2024-02-14 19:52:53 +01:00
PrivateBin Translator Bot
ebe997bd02 New translations en.json (Swedish) 2024-02-14 19:52:52 +01:00
PrivateBin Translator Bot
a90a874d82 New translations en.json (Slovenian) 2024-02-14 19:52:51 +01:00
PrivateBin Translator Bot
dd49b8e694 New translations en.json (Slovak) 2024-02-14 19:52:50 +01:00
PrivateBin Translator Bot
fec82754bb New translations en.json (Russian) 2024-02-14 19:52:50 +01:00
PrivateBin Translator Bot
24bd804d38 New translations en.json (Portuguese) 2024-02-14 19:52:49 +01:00
PrivateBin Translator Bot
d0d77325de New translations en.json (Polish) 2024-02-14 19:52:48 +01:00
PrivateBin Translator Bot
a8b4bf84c4 New translations en.json (Norwegian) 2024-02-14 19:52:47 +01:00
PrivateBin Translator Bot
a398b1ff59 New translations en.json (Dutch) 2024-02-14 19:52:46 +01:00
PrivateBin Translator Bot
3e2fc24e11 New translations en.json (Lithuanian) 2024-02-14 19:52:45 +01:00
PrivateBin Translator Bot
e6acab38d8 New translations en.json (Kurdish) 2024-02-14 19:52:44 +01:00
PrivateBin Translator Bot
bcd899b3c4 New translations en.json (Japanese) 2024-02-14 19:52:43 +01:00
PrivateBin Translator Bot
196e5046ac New translations en.json (Italian) 2024-02-14 19:52:42 +01:00
PrivateBin Translator Bot
64a209483a New translations en.json (Hungarian) 2024-02-14 19:52:41 +01:00
PrivateBin Translator Bot
a5725d503e New translations en.json (Hebrew) 2024-02-14 19:52:40 +01:00
PrivateBin Translator Bot
14a73ddc61 New translations en.json (Finnish) 2024-02-14 19:52:39 +01:00
PrivateBin Translator Bot
1503fb8aa7 New translations en.json (Greek) 2024-02-14 19:52:38 +01:00
PrivateBin Translator Bot
5291e381c8 New translations en.json (German) 2024-02-14 19:52:37 +01:00
PrivateBin Translator Bot
a412a85ad0 New translations en.json (Czech) 2024-02-14 19:52:37 +01:00
PrivateBin Translator Bot
64e533ba8c New translations en.json (Catalan) 2024-02-14 19:52:36 +01:00
PrivateBin Translator Bot
57a03839fa New translations en.json (Bulgarian) 2024-02-14 19:52:35 +01:00
PrivateBin Translator Bot
7d8f57ffe8 New translations en.json (Arabic) 2024-02-14 19:52:34 +01:00
PrivateBin Translator Bot
a14151b85c New translations en.json (Spanish) 2024-02-14 19:52:33 +01:00
PrivateBin Translator Bot
76affbc63b New translations en.json (French) 2024-02-14 19:52:32 +01:00
El RIDO
253e078263 fix base translation 2024-02-14 19:49:52 +01:00
PrivateBin Translator Bot
8b66612622 New translations en.json (Corsican) 2024-02-14 17:50:16 +01:00
PrivateBin Translator Bot
bfddc388b9 New translations en.json (Russian) 2024-02-14 17:50:15 +01:00
PrivateBin Translator Bot
a68d81b10b New translations en.json (Russian) 2024-02-14 16:14:15 +01:00
PrivateBin Translator Bot
c37ca3f495 New translations en.json (Corsican) 2024-02-14 01:19:05 +01:00
PrivateBin Translator Bot
4048e2f45d New translations en.json (Occitan) 2024-02-14 01:19:04 +01:00
PrivateBin Translator Bot
024bbc246e New translations en.json (Latin) 2024-02-14 01:19:03 +01:00
PrivateBin Translator Bot
25318facd7 New translations en.json (Lojban) 2024-02-14 01:19:02 +01:00
PrivateBin Translator Bot
1e9c5cb812 New translations en.json (Hindi) 2024-02-14 01:19:01 +01:00
PrivateBin Translator Bot
cab26c619b New translations en.json (Estonian) 2024-02-14 01:19:00 +01:00
PrivateBin Translator Bot
cabfa18a35 New translations en.json (Thai) 2024-02-14 01:18:59 +01:00
PrivateBin Translator Bot
629faeea8d New translations en.json (Indonesian) 2024-02-14 01:18:58 +01:00
PrivateBin Translator Bot
0a9770ae51 New translations en.json (Chinese Simplified) 2024-02-14 01:18:57 +01:00
PrivateBin Translator Bot
5c76cc9203 New translations en.json (Ukrainian) 2024-02-14 01:18:56 +01:00
PrivateBin Translator Bot
7710a6066c New translations en.json (Turkish) 2024-02-14 01:18:55 +01:00
PrivateBin Translator Bot
94f0808996 New translations en.json (Swedish) 2024-02-14 01:18:55 +01:00
PrivateBin Translator Bot
494623eec7 New translations en.json (Slovenian) 2024-02-14 01:18:54 +01:00
PrivateBin Translator Bot
7174be4dfb New translations en.json (Slovak) 2024-02-14 01:18:53 +01:00
PrivateBin Translator Bot
af72f0694d New translations en.json (Russian) 2024-02-14 01:18:52 +01:00
PrivateBin Translator Bot
126d08933a New translations en.json (Portuguese) 2024-02-14 01:18:51 +01:00
PrivateBin Translator Bot
5ec102a75c New translations en.json (Polish) 2024-02-14 01:18:50 +01:00
PrivateBin Translator Bot
cd33a4824b New translations en.json (Norwegian) 2024-02-14 01:18:49 +01:00
PrivateBin Translator Bot
966d0f5d64 New translations en.json (Dutch) 2024-02-14 01:18:48 +01:00
PrivateBin Translator Bot
37c57e5815 New translations en.json (Lithuanian) 2024-02-14 01:18:47 +01:00
PrivateBin Translator Bot
5854770286 New translations en.json (Kurdish) 2024-02-14 01:18:46 +01:00
PrivateBin Translator Bot
40df875334 New translations en.json (Japanese) 2024-02-14 01:18:45 +01:00
PrivateBin Translator Bot
120fe77e1e New translations en.json (Italian) 2024-02-14 01:18:45 +01:00
PrivateBin Translator Bot
5bf7c04e04 New translations en.json (Hungarian) 2024-02-14 01:18:44 +01:00
PrivateBin Translator Bot
9f623b4130 New translations en.json (Hebrew) 2024-02-14 01:18:43 +01:00
PrivateBin Translator Bot
41b20da78b New translations en.json (Finnish) 2024-02-14 01:18:42 +01:00
PrivateBin Translator Bot
3547e67cc6 New translations en.json (Greek) 2024-02-14 01:18:41 +01:00
PrivateBin Translator Bot
4eb55be55e New translations en.json (Czech) 2024-02-14 01:18:39 +01:00
PrivateBin Translator Bot
c3d143f9ba New translations en.json (Catalan) 2024-02-14 01:18:39 +01:00
PrivateBin Translator Bot
7467c7998c New translations en.json (Bulgarian) 2024-02-14 01:18:38 +01:00
PrivateBin Translator Bot
979dc58575 New translations en.json (Arabic) 2024-02-14 01:18:37 +01:00
PrivateBin Translator Bot
41a3748656 New translations en.json (Spanish) 2024-02-14 01:18:36 +01:00
El RIDO
c5704b445a
Merge pull request #1246 from PrivateBin/crowdin-translation
New Crowdin updates
2024-02-14 00:02:04 +01:00
El RIDO
c172cde994
Merge pull request #1245 from PrivateBin/send-create-button
Rename "Send" button to "Create"
2024-02-14 00:00:29 +01:00
El RIDO
7d070fe3a4
Merge pull request #1244 from PrivateBin/composer
composer fixes for #1222
2024-02-13 23:58:53 +01:00
PrivateBin Translator Bot
28a05abfc5 New translations en.json (Arabic) 2024-02-13 13:56:04 +01:00
PrivateBin Translator Bot
456e62f29b New translations en.json (Romanian) 2024-02-12 23:51:38 +01:00
El RIDO
63b2526ee7
"Send" button now labeled "Create", fixes #946 2024-02-12 21:50:11 +01:00
El RIDO
dd8aa4f8fb
Merge branch 'master' into send-create-button 2024-02-12 21:42:15 +01:00
El RIDO
6dddf808c6
composer fixes #1222
- clarify installation
- ensure composer files get released in exported archive
- fix lock checksum
2024-02-12 21:18:58 +01:00
El RIDO
eb59f3a4f3
post-release cleanup 2024-02-11 15:36:59 +01:00
El RIDO
aad975a721
incrementing version 2024-02-11 15:31:11 +01:00
El RIDO
5c29619fee
post-release cleanup
- prep changelog for future changes
- composer changes from re-running composer on the repo, testing deps
- change to phpunit coverage make target, required with newer releases
2024-02-11 15:10:01 +01:00
El RIDO
a3ee624d3a
incrementing version 2024-02-11 14:17:27 +01:00
El RIDO
1eee8032c7
Merge pull request #1240 from PrivateBin/crowdin-translation
New Crowdin updates
2024-02-09 07:19:21 +01:00
PrivateBin Translator Bot
f3fba1c0f5 New translations en.json (Corsican) 2024-02-09 00:48:48 +01:00
PrivateBin Translator Bot
a54a55a9a1 New translations en.json (Italian) 2024-02-08 07:21:52 +01:00
PrivateBin Translator Bot
56f0ec7d52 New translations en.json (German) 2024-02-08 07:21:51 +01:00
PrivateBin Translator Bot
208c922e04 New translations en.json (French) 2024-02-08 07:21:50 +01:00
El RIDO
4db0db320b Merge branch 'master' into crowdin-translation 2024-02-08 05:29:53 +01:00
PrivateBin Translator Bot
772ab96364 New translations en.json (Corsican) 2024-02-07 20:47:56 +01:00
PrivateBin Translator Bot
dc2db9e622 New translations en.json (Occitan) 2024-02-07 20:47:55 +01:00
PrivateBin Translator Bot
6d559c3043 New translations en.json (Latin) 2024-02-07 20:47:54 +01:00
PrivateBin Translator Bot
096a5118d1 New translations en.json (Lojban) 2024-02-07 20:47:54 +01:00
PrivateBin Translator Bot
5084ab7a07 New translations en.json (Hindi) 2024-02-07 20:47:53 +01:00
PrivateBin Translator Bot
fbe4ac5a6c New translations en.json (Estonian) 2024-02-07 20:47:52 +01:00
PrivateBin Translator Bot
4e21e980de New translations en.json (Thai) 2024-02-07 20:47:51 +01:00
PrivateBin Translator Bot
a3243b3165 New translations en.json (Indonesian) 2024-02-07 20:47:50 +01:00
PrivateBin Translator Bot
223ef02a43 New translations en.json (Chinese Simplified) 2024-02-07 20:47:49 +01:00
PrivateBin Translator Bot
c7da424ef9 New translations en.json (Ukrainian) 2024-02-07 20:47:48 +01:00
PrivateBin Translator Bot
e1c74457e5 New translations en.json (Turkish) 2024-02-07 20:47:47 +01:00
PrivateBin Translator Bot
1a6c3dd8d8 New translations en.json (Swedish) 2024-02-07 20:47:46 +01:00
PrivateBin Translator Bot
146b2513c1 New translations en.json (Slovenian) 2024-02-07 20:47:45 +01:00
PrivateBin Translator Bot
5ec8a57c60 New translations en.json (Slovak) 2024-02-07 20:47:44 +01:00
PrivateBin Translator Bot
cd67d81ae3 New translations en.json (Russian) 2024-02-07 20:47:43 +01:00
PrivateBin Translator Bot
218e68a604 New translations en.json (Portuguese) 2024-02-07 20:47:42 +01:00
PrivateBin Translator Bot
9611991748 New translations en.json (Polish) 2024-02-07 20:47:41 +01:00
PrivateBin Translator Bot
b613d9558c New translations en.json (Norwegian) 2024-02-07 20:47:40 +01:00
PrivateBin Translator Bot
5523ba9a45 New translations en.json (Dutch) 2024-02-07 20:47:39 +01:00
PrivateBin Translator Bot
421342396f New translations en.json (Lithuanian) 2024-02-07 20:47:38 +01:00
PrivateBin Translator Bot
4e3b469c08 New translations en.json (Kurdish) 2024-02-07 20:47:37 +01:00
PrivateBin Translator Bot
cb0edf4f2b New translations en.json (Japanese) 2024-02-07 20:47:37 +01:00
PrivateBin Translator Bot
a0f8e0a566 New translations en.json (Italian) 2024-02-07 20:47:36 +01:00
PrivateBin Translator Bot
089652382a New translations en.json (Hungarian) 2024-02-07 20:47:35 +01:00
PrivateBin Translator Bot
a1408601d9 New translations en.json (Hebrew) 2024-02-07 20:47:34 +01:00
PrivateBin Translator Bot
3d4887e5f0 New translations en.json (Finnish) 2024-02-07 20:47:33 +01:00
PrivateBin Translator Bot
5c876df2ea New translations en.json (Greek) 2024-02-07 20:47:32 +01:00
PrivateBin Translator Bot
fe4a64529a New translations en.json (German) 2024-02-07 20:47:31 +01:00
PrivateBin Translator Bot
a25bfd4cce New translations en.json (Czech) 2024-02-07 20:47:30 +01:00
PrivateBin Translator Bot
53639b913e New translations en.json (Catalan) 2024-02-07 20:47:29 +01:00
PrivateBin Translator Bot
9379a73632 New translations en.json (Bulgarian) 2024-02-07 20:47:28 +01:00
PrivateBin Translator Bot
efd6c3f8c4 New translations en.json (Arabic) 2024-02-07 20:47:27 +01:00
PrivateBin Translator Bot
51f68f0c78 New translations en.json (Spanish) 2024-02-07 20:47:26 +01:00
PrivateBin Translator Bot
ad2de3a135 New translations en.json (French) 2024-02-07 20:47:25 +01:00
PrivateBin Translator Bot
ea7f1fca6e New translations en.json (Romanian) 2024-02-07 20:47:25 +01:00
El RIDO
57b1890815 Merge branch 'master' into ask-before-burn 2024-02-07 19:45:54 +01:00
El RIDO
7bb913acdf
Merge pull request #1236 from PrivateBin/bump-libs
bump libraries to DOMpurify 3.0.8 & zlib 1.3.1, increase compression level
2024-02-07 19:30:25 +01:00
El RIDO
25de89c954
change loading confirm prefix, fix password modal focus, again 2024-02-06 20:22:47 +01:00
El RIDO
950c0b56b4
revert changing compression level
as per discussion with @rugk, see:
https://github.com/PrivateBin/PrivateBin/pull/1236#discussion_r1473639960
2024-02-06 19:21:14 +01:00
El RIDO
070ae2e5ec
Merge pull request #1228 from PrivateBin/crowdin-translation
New Crowdin updates
2024-01-27 19:23:34 +01:00
El RIDO
239f6da73c
Merge branch 'master' into crowdin-translation 2024-01-27 19:19:08 +01:00
El RIDO
257fc5d2b6
enable Romanian translation and credit it 2024-01-27 19:15:40 +01:00
El RIDO
03d2291ec7
Merge branch 'master' into ask-before-burn 2024-01-27 18:56:52 +01:00
El RIDO
56f5b2386c
document changes 2024-01-27 18:51:12 +01:00
El RIDO
d0e03e5167
change logic into asking for loading confirmation
also:
- fixes #1039 - email buttons overlapping in some languages
- fixes #1191 - language change URL mangling
- adds focus to password input in modal
- prevents needless reload on visiting default URL
2024-01-27 18:26:19 +01:00
El RIDO
0d2376cd88
bump libraries to DOMpurify 3.0.8 & zlib 1.3.1, increase compression level to 9 2024-01-27 11:33:54 +01:00
El RIDO
df703dfe4b
Merge pull request #1234 from PrivateBin/dependabot/composer/phpunit/phpunit-9.6.16
Bump phpunit/phpunit from 9.6.15 to 9.6.16
2024-01-20 08:50:57 +01:00
dependabot[bot]
3ff3db72a1
Bump phpunit/phpunit from 9.6.15 to 9.6.16
Bumps [phpunit/phpunit](https://github.com/sebastianbergmann/phpunit) from 9.6.15 to 9.6.16.
- [Changelog](https://github.com/sebastianbergmann/phpunit/blob/9.6.16/ChangeLog-9.6.md)
- [Commits](https://github.com/sebastianbergmann/phpunit/compare/9.6.15...9.6.16)

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

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-19 11:44:19 +00:00
El RIDO
a27cb0cffc
Merge pull request #1233 from PrivateBin/dependabot/github_actions/actions/cache-4
Bump actions/cache from 3 to 4
2024-01-18 18:23:52 +01:00
dependabot[bot]
ba25ab8fa9
Bump actions/cache from 3 to 4
Bumps [actions/cache](https://github.com/actions/cache) from 3 to 4.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](https://github.com/actions/cache/compare/v3...v4)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-18 11:21:35 +00:00
El RIDO
d091382313
Merge pull request #1229 from PrivateBin/shortener-sort
add YOURLS API samples for extractUrl validation
2024-01-09 06:36:32 +01:00
Tobias Gurtzick
2a508cb7bf
burn after reading only
Signed-off-by: Tobias Gurtzick <magic@wizardtales.com>
2024-01-08 12:38:48 +01:00
Tobias Gurtzick
8516a3f4a4
Merge branch '162' into encrypt-browser 2024-01-08 12:29:06 +01:00
Tobias Gurtzick
2cc2cf0de7
working browser password
Signed-off-by: Tobias Gurtzick <magic@wizardtales.com>
2024-01-08 12:28:41 +01:00
Tobias Gurtzick
e1e8618015
Merge branch 'change' into 162 2024-01-08 11:10:11 +01:00
Tobias Gurtzick
7fddefeb05
password
Signed-off-by: Tobias Gurtzick <magic@wizardtales.com>
2024-01-08 10:36:59 +01:00
El RIDO
4e62e1f6ef address jsverify rngState 87ab3f64de258190c7, fixes #1139 2024-01-08 08:09:29 +01:00
El RIDO
405479642f add YOURLS API samples for extractUrl validation 2024-01-07 17:45:01 +01:00
El RIDO
fd82b937a9 refactor URL generators 2024-01-07 16:06:24 +01:00
El RIDO
d493ba7337 refactor URL generators 2024-01-07 15:47:29 +01:00
El RIDO
37ee3b1c7c refactor URL generators 2024-01-07 14:10:43 +01:00
PrivateBin Translator Bot
7ab20c23e9 New translations en.json (Romanian) 2024-01-06 23:17:48 +01:00
PrivateBin Translator Bot
cc5c81afbc New translations en.json (Romanian) 2024-01-06 22:12:59 +01:00
El RIDO
9fb7aee589
Merge pull request #1227 from PrivateBin/shortener-idn
Shortener URL validation improvement
2024-01-06 17:35:09 +01:00
El RIDO
ba17e94c5e use the newer function, if possible 2024-01-05 06:40:12 +01:00
El RIDO
c3331070cb codestyle, let's use readable variable names
Co-authored-by: rugk <rugk+git@posteo.de>
2024-01-05 06:30:21 +01:00
El RIDO
cc0b6e387a avoid use of bleeding edge function
only supported in Firefox & Chrome >= 120 & node >= 19.9.0 & 18.17.0
2024-01-04 23:23:47 +01:00
El RIDO
a80bd4e4ea fix url filter, IDN URL unit test 2024-01-04 23:08:17 +01:00
PrivateBin Translator Bot
b3b97b69c6 New translations en.json (Romanian) 2024-01-04 20:47:08 +01:00
El RIDO
8427c1136c document change 2024-01-04 06:52:27 +01:00
El RIDO
7cb1f8ca67 relax URL regex to support finding IDN domains, filter using built in function, removing non-URLs 2024-01-04 06:48:34 +01:00
El RIDO
9a707e288a
Merge pull request #1225 from PrivateBin/crowdin-translation
New Crowdin updates
2024-01-02 07:50:28 +01:00
El RIDO
83a1de271a
Merge pull request #1223 from PrivateBin/install-cloud-libs
improve SDK install docs
2024-01-02 07:49:26 +01:00
PrivateBin Translator Bot
c264904f77 New translations en.json (Chinese Simplified) 2024-01-01 12:29:13 +01:00
El RIDO
712715caba improve SDK install docs
fixes #1222
2023-12-27 18:58:39 +01:00
El RIDO
2985305dbb
Merge pull request #1220 from PrivateBin/en-default-test
prevent regression around presence or absence of en.json
2023-12-23 13:06:05 +01:00
El RIDO
0581522414
Merge pull request #1221 from PrivateBin/zlib-1.3
updating zlib to 1.3
2023-12-19 21:39:13 +01:00
El RIDO
dc8cb66adc
updating zlib to 1.3 2023-12-19 06:22:30 +01:00
El RIDO
54585549e0
Merge pull request #1218 from PrivateBin/detect-broken-pastes
detect and report on damaged pastes
2023-12-19 05:39:39 +01:00
El RIDO
d49be80ffb
prevent regression around presence or absence of en.json
it gets excluded in the release archive, it's absence should not make
any difference
2023-12-18 21:49:21 +01:00
El RIDO
a17529c7e1
document change 2023-12-18 21:02:27 +01:00
El RIDO
0a7a341fda
Merge pull request #1217 from PrivateBin/releasedoc
Created doc for “how to verify and how to do release” (release doc)
2023-12-18 20:57:11 +01:00
El RIDO
d88945663e detect and report on damaged pastes
May occur during statistics or purge, when existing pastes get parsed, addresses #1214
2023-12-16 07:38:09 +01:00
El RIDO
255fd4b12b updated release document
- removed duplicate content
- clarified what is signed and since which release
- updated verification sample output (also in wiki) using the output of https://github.com/PrivateBin/docker-nginx-fpm-alpine/actions/runs/7228527399/job/19698112056#step:7:156
- Corrected release process - we trigger the release on the push of the tag, not a branch (fixed point in time instead of a moving target)
2023-12-16 07:02:21 +01:00
rugk
43d162f452
Created doc for “how to verify and how to do release” (release doc) (WIP)
This documents/should document:
* what the signatures are and what they proof
* how to verify them
* how to build releases (I know more of a maintainer doc, but yeah, I found it a good place here, if you want a separate one feel free)

This should also make it easier for other maintainers to create releases or so.

@elrido feel free to adjust/push to the branch if you want to have some details fixed. I have left some TODOs of stuff where I am unsure.
2023-12-15 14:17:51 +01:00
El RIDO
9b07e3ff62
Merge pull request #1215 from PrivateBin/dependabot/github_actions/github/codeql-action-3
Bump github/codeql-action from 2 to 3
2023-12-15 08:13:08 +01:00
El RIDO
d0420fb418
1.6.2 release 2023-12-15 07:20:20 +01:00
El RIDO
3b17dfc6ef
Merge pull request #1213 from PrivateBin/en-lang-selection
ensure English is always added to available languages, fixes #1208
2023-12-15 07:03:06 +01:00
dependabot[bot]
03e3e4fa06
Bump github/codeql-action from 2 to 3
Bumps [github/codeql-action](https://github.com/github/codeql-action) from 2 to 3.
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/github/codeql-action/compare/v2...v3)

---
updated-dependencies:
- dependency-name: github/codeql-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-14 11:52:46 +00:00
El RIDO
879c7400bf
Merge pull request #1212 from joeskeen/conf-view-as-ini
add workspace settings with config files treated as INI
2023-12-09 12:17:51 +01:00
El RIDO
46d8d7d781
Merge pull request #1210 from joeskeen/devcontainer-postcreate
move postCreateCommands to a separate file
2023-12-09 12:16:21 +01:00
El RIDO
684924e9e5
apply StyleCI patch 2023-12-09 12:00:57 +01:00
El RIDO
a7f720d825
ensure English is always added to available languages, fixes #1208
bug got introduced in 3668f1e3f4808d7232606349035c6a43c5a84c23 and
started affecting release after 896a49c8cf96ae9351796bd84050d2a0b249ddb3
2023-12-09 11:58:29 +01:00
El RIDO
826444bef7
fix shasum in release pipeline, hope this fixes #1169 2023-12-09 10:50:49 +01:00
Joe Skeen
10c6841f8a
Update .devcontainer/postCreateCommand.sh
Co-authored-by: rugk <rugk+git@posteo.de>
2023-12-08 15:31:45 -07:00
Joe Skeen
49a87c6038 add workspace settings with config files treated as INI 2023-12-08 16:30:45 +00:00
Joe Skeen
7a5036d957 move postCreateCommands to a separate file 2023-12-08 15:34:00 +00:00
El RIDO
f8c2f58604
typo 2023-12-04 21:24:12 +01:00
El RIDO
edec91de1c
Merge branch 'master' of github.com:PrivateBin/PrivateBin 2023-12-04 21:17:32 +01:00
El RIDO
3bd570bd6a
incrementing version 2023-12-04 21:07:17 +01:00
El RIDO
8131518ba1
Merge pull request #1204 from PrivateBin/crowdin-translation
New Crowdin updates
2023-12-04 19:10:18 +01:00
PrivateBin Translator Bot
bb89eb7fba New translations en.json (Finnish) 2023-12-04 18:46:19 +01:00
El RIDO
94d1908777
Merge pull request #1203 from PrivateBin/dependabot/composer/phpunit/phpunit-9.6.15
Bump phpunit/phpunit from 9.6.14 to 9.6.15
2023-12-04 17:39:48 +01:00
PrivateBin Translator Bot
5b2f788e48 New translations en.json (Finnish) 2023-12-04 16:43:03 +01:00
PrivateBin Translator Bot
33e9025d09 New translations en.json (Finnish) 2023-12-04 15:14:57 +01:00
dependabot[bot]
6133f6c35c
Bump phpunit/phpunit from 9.6.14 to 9.6.15
Bumps [phpunit/phpunit](https://github.com/sebastianbergmann/phpunit) from 9.6.14 to 9.6.15.
- [Changelog](https://github.com/sebastianbergmann/phpunit/blob/9.6.15/ChangeLog-9.6.md)
- [Commits](https://github.com/sebastianbergmann/phpunit/compare/9.6.14...9.6.15)

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

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-04 11:37:40 +00:00
El RIDO
0107b1258e
forgot to update SRI hashes
caused in b150450fac8671374cb9af4da63979d5d92d215b
2023-12-04 06:10:47 +01:00
El RIDO
65f289e516
Merge pull request #1202 from PrivateBin/release-prep
1.6.1 release preparations
2023-12-03 17:07:19 +01:00
El RIDO
b150450fac
address nodejs unit testing issue
mocha tests started failing as of node 20.10.0, likely due to this change:
https://github.com/nodejs/node/pull/49936

Error was:
node:internal/deps/undici/undici:11730
    Error.captureStackTrace(err, this);
          ^

TypeError: Failed to parse URL from js/zlib-1.2.13.wasm
    at Object.fetch (node:internal/deps/undici/undici:11730:11)
    at async initialize (/home/runner/work/PrivateBin/PrivateBin/js/zlib-1.2.13.js:31:26) {
  [cause]: TypeError: Invalid URL: js/zlib-1.2.13.wasm
      at new URLImpl (/home/runner/work/PrivateBin/PrivateBin/js/node_modules/jsdom-url/node_modules/whatwg-url/lib/URL-impl.js:21:13)
      at new URLImplCore (/home/runner/work/PrivateBin/PrivateBin/js/node_modules/jsdom-url/lib/URLImpl.js:18:9)
      at new URLCore (/home/runner/work/PrivateBin/PrivateBin/js/node_modules/jsdom-url/lib/URL.js:28:9)
      at Object.construct (/home/runner/work/PrivateBin/PrivateBin/js/node_modules/class-proxy/index.js:18:23)
      at new Request (node:internal/deps/undici/undici:5270:25)
      at fetch (node:internal/deps/undici/undici:9508:25)
      at Object.fetch (node:internal/deps/undici/undici:11728:18)
      at fetch (node:internal/process/pre_execution:314:27)
      at initialize (/home/runner/work/PrivateBin/PrivateBin/js/zlib-1.2.13.js:31:32)
      at Object.<anonymous> (/home/runner/work/PrivateBin/PrivateBin/js/zlib-1.2.13.js:145:17)
      at Object.<anonymous> (/home/runner/work/PrivateBin/PrivateBin/js/zlib-1.2.13.js:146:4)
[...]

Notice that the error occurs on line 31, meaning that fetch is not
undefined anymore. Node works on supporting fetch, which would make our
workaround using fs.readFileSync obsolete, but it (or rather the undici
library) currently doesn't support relative URLs.
2023-12-03 14:40:59 +01:00
El RIDO
aa1a44e329
upgrading DOMpurify to 3.0.6 2023-12-03 14:02:30 +01:00
El RIDO
ee151ad29d
fix phpdoc parameters for newer releases 2023-12-03 13:54:35 +01:00
El RIDO
c090f8d27f
fixed comments
so that these functions end up on the correct jsdoc page
2023-12-03 13:41:17 +01:00
El RIDO
8c1310c334
update unit test doc & PHP 8 fixes
having had to re-do all of these steps on a new environment, I noticed
some inconsistencies and updated the doc:
- moved unit testing doc into common doc folder, so it is easier to find
- removed no longer supported Janitor reference
- removed note regarding generated test duration, current version takes
  less than a minute
- addressed each function removal & phpunit deprecations
2023-12-03 13:40:04 +01:00
El RIDO
c895c511c1
Merge pull request #1201 from PrivateBin/dependabot/composer/phpunit/phpunit-9.6.14
Bump phpunit/phpunit from 9.6.13 to 9.6.14
2023-12-02 18:20:58 +01:00
dependabot[bot]
421fd4901f
Bump phpunit/phpunit from 9.6.13 to 9.6.14
Bumps [phpunit/phpunit](https://github.com/sebastianbergmann/phpunit) from 9.6.13 to 9.6.14.
- [Changelog](https://github.com/sebastianbergmann/phpunit/blob/9.6.14/ChangeLog-9.6.md)
- [Commits](https://github.com/sebastianbergmann/phpunit/compare/9.6.13...9.6.14)

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

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-01 11:58:32 +00:00
El RIDO
b2bf90d14e
Merge pull request #1200 from PrivateBin/php83
enable unit testing on PHP 8.3 &  8.4 nightly
2023-11-28 20:48:19 +01:00
El RIDO
8d97569de0
enable testing on PHP 8.3 and 8.4
at this time both are still installed out of nightly builds, though 8.3
got released last week, see:
https://github.com/shivammathur/setup-php#tada-php-support
2023-11-26 09:54:28 +01:00
El RIDO
d34f9c0b8c
new phpdoc temp file location 2023-11-26 09:50:36 +01:00
El RIDO
9614ee90f2
Merge pull request #1190 from PrivateBin/node20
Use Node20 for tests
2023-10-25 12:43:33 +02:00
El RIDO
95d6a0d3b9
Merge pull request #1189 from PrivateBin/dependabot/github_actions/actions/setup-node-4
Bump actions/setup-node from 3 to 4
2023-10-25 12:39:56 +02:00
rugk
b9d74ecd35
Use Node20 for tests
A try following https://github.com/PrivateBin/PrivateBin/pull/1189#pullrequestreview-1695447526
2023-10-24 19:03:47 +02:00
dependabot[bot]
9114ca00bf
Bump actions/setup-node from 3 to 4
Bumps [actions/setup-node](https://github.com/actions/setup-node) from 3 to 4.
- [Release notes](https://github.com/actions/setup-node/releases)
- [Commits](https://github.com/actions/setup-node/compare/v3...v4)

---
updated-dependencies:
- dependency-name: actions/setup-node
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-24 11:05:40 +00:00
El RIDO
0fb40d5d3a
Merge pull request #1183 from PrivateBin/crowdin-translation
New Crowdin updates
2023-10-22 14:19:20 +02:00
PrivateBin Translator Bot
cb4e95b917 New translations en.json (Japanese) 2023-10-19 10:37:44 +02:00
PrivateBin Translator Bot
52b0e0b369 New translations en.json (Japanese) 2023-10-19 08:18:59 +02:00
PrivateBin Translator Bot
515bfd8122 New translations en.json (Japanese) 2023-10-19 07:11:36 +02:00
PrivateBin Translator Bot
fbc302c0a1 New translations en.json (Japanese) 2023-10-19 06:07:25 +02:00
PrivateBin Translator Bot
b62e9dbc6e New translations en.json (Japanese) 2023-10-19 01:05:19 +02:00
PrivateBin Translator Bot
5c2496d474 New translations en.json (Japanese) 2023-10-18 05:59:11 +02:00
PrivateBin Translator Bot
f3eb2759ce New translations en.json (Japanese) 2023-10-18 04:26:14 +02:00
PrivateBin Translator Bot
cdb7ec0443 New translations en.json (Japanese) 2023-10-17 18:47:08 +02:00
PrivateBin Translator Bot
05dc1dd32e New translations en.json (Japanese) 2023-10-17 17:27:56 +02:00
El RIDO
b70be94538
Merge pull request #1181 from voidquark/master
Update Ansible Galaxy links in Installation.md
2023-10-02 06:45:04 +02:00
VoidQuark
9a4c5b30c6
Update Ansible Galaxy links in Installation.md 2023-10-01 20:43:11 +02:00
El RIDO
4ef0318495
Merge pull request #1179 from PrivateBin/dependabot/github_actions/actions/checkout-4
Bump actions/checkout from 3 to 4
2023-09-24 07:36:04 +02:00
dependabot[bot]
58f919ecdd
Bump actions/checkout from 3 to 4
Bumps [actions/checkout](https://github.com/actions/checkout) from 3 to 4.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v3...v4)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-09-22 11:33:49 +00:00
El RIDO
7518ea74c5
Merge pull request #1175 from PrivateBin/slsa-release
release workflow for SLSA & changelog
2023-09-22 05:24:04 +02:00
El RIDO
7e1dfdb012
Merge pull request #1178 from PrivateBin/crowdin-translation
New Crowdin updates
2023-09-20 22:12:53 +02:00
El RIDO
1a4e2f8f06 Merge branch 'master' into crowdin-translation 2023-09-20 22:09:59 +02:00
PrivateBin Translator Bot
8053daec14 New translations en.json (Corsican) 2023-09-20 07:33:00 +02:00
PrivateBin Translator Bot
9612637881 New translations en.json (Occitan) 2023-09-20 07:32:59 +02:00
PrivateBin Translator Bot
fb1ea260ba New translations en.json (Latin) 2023-09-20 07:32:58 +02:00
PrivateBin Translator Bot
17b629018c New translations en.json (Lojban) 2023-09-20 07:32:57 +02:00
PrivateBin Translator Bot
a92407ea4e New translations en.json (Hindi) 2023-09-20 07:32:56 +02:00
PrivateBin Translator Bot
441ac9d8d9 New translations en.json (Estonian) 2023-09-20 07:32:56 +02:00
PrivateBin Translator Bot
046ccf2000 New translations en.json (Thai) 2023-09-20 07:32:55 +02:00
PrivateBin Translator Bot
6c7c0ec09c New translations en.json (Indonesian) 2023-09-20 07:32:54 +02:00
PrivateBin Translator Bot
b0f4a63705 New translations en.json (Chinese Simplified) 2023-09-20 07:32:53 +02:00
PrivateBin Translator Bot
1b772d0404 New translations en.json (Ukrainian) 2023-09-20 07:32:52 +02:00
PrivateBin Translator Bot
8dbf954870 New translations en.json (Turkish) 2023-09-20 07:32:51 +02:00
PrivateBin Translator Bot
69efa00d7f New translations en.json (Swedish) 2023-09-20 07:32:50 +02:00
PrivateBin Translator Bot
d17a0f091b New translations en.json (Slovenian) 2023-09-20 07:32:49 +02:00
PrivateBin Translator Bot
6a1371822a New translations en.json (Slovak) 2023-09-20 07:32:48 +02:00
PrivateBin Translator Bot
0cc5880354 New translations en.json (Russian) 2023-09-20 07:32:47 +02:00
PrivateBin Translator Bot
eb17f75793 New translations en.json (Portuguese) 2023-09-20 07:32:46 +02:00
PrivateBin Translator Bot
0568d10bca New translations en.json (Polish) 2023-09-20 07:32:45 +02:00
PrivateBin Translator Bot
ac681d6aa9 New translations en.json (Norwegian) 2023-09-20 07:32:44 +02:00
PrivateBin Translator Bot
6f9496511a New translations en.json (Dutch) 2023-09-20 07:32:43 +02:00
PrivateBin Translator Bot
31cfa5b6e3 New translations en.json (Lithuanian) 2023-09-20 07:32:42 +02:00
PrivateBin Translator Bot
d27f43eb1d New translations en.json (Kurdish) 2023-09-20 07:32:41 +02:00
PrivateBin Translator Bot
e395717a54 New translations en.json (Japanese) 2023-09-20 07:32:40 +02:00
PrivateBin Translator Bot
6a68d59d8b New translations en.json (Italian) 2023-09-20 07:32:39 +02:00
PrivateBin Translator Bot
bc7a346aa0 New translations en.json (Hungarian) 2023-09-20 07:32:38 +02:00
PrivateBin Translator Bot
0a24df6adb New translations en.json (Hebrew) 2023-09-20 07:32:37 +02:00
PrivateBin Translator Bot
4cdf21ecd1 New translations en.json (Finnish) 2023-09-20 07:32:36 +02:00
PrivateBin Translator Bot
e2fac1be9d New translations en.json (Greek) 2023-09-20 07:32:35 +02:00
PrivateBin Translator Bot
fa714c03dd New translations en.json (German) 2023-09-20 07:32:34 +02:00
PrivateBin Translator Bot
c025c83e33 New translations en.json (Czech) 2023-09-20 07:32:33 +02:00
PrivateBin Translator Bot
76e7ca4942 New translations en.json (Catalan) 2023-09-20 07:32:32 +02:00
PrivateBin Translator Bot
7aceed6a03 New translations en.json (Bulgarian) 2023-09-20 07:32:31 +02:00
PrivateBin Translator Bot
1795c1cf1a New translations en.json (Arabic) 2023-09-20 07:32:30 +02:00
PrivateBin Translator Bot
fd95445831 New translations en.json (Spanish) 2023-09-20 07:32:29 +02:00
PrivateBin Translator Bot
70ca60089f New translations en.json (French) 2023-09-20 07:32:28 +02:00
El RIDO
4f8c19c80e Merge branch 'master' into slsa-release 2023-09-20 07:19:20 +02:00
El RIDO
7a6aa84b76
Merge pull request #1176 from PrivateBin/rtl
add basic right-to-left (RTL) support
2023-09-20 07:12:31 +02:00
El RIDO
f255905a6f
Merge pull request #1177 from PrivateBin/dependabot/composer/phpunit/phpunit-9.6.13
Bump phpunit/phpunit from 9.6.12 to 9.6.13
2023-09-20 07:12:03 +02:00
dependabot[bot]
b4ca795b6a
Bump phpunit/phpunit from 9.6.12 to 9.6.13
Bumps [phpunit/phpunit](https://github.com/sebastianbergmann/phpunit) from 9.6.12 to 9.6.13.
- [Changelog](https://github.com/sebastianbergmann/phpunit/blob/9.6.13/ChangeLog-9.6.md)
- [Commits](https://github.com/sebastianbergmann/phpunit/compare/9.6.12...9.6.13)

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

Signed-off-by: dependabot[bot] <support@github.com>
2023-09-19 11:24:56 +00:00
El RIDO
80546bf629
add some basic RTL CSS overrides 2023-09-19 07:29:49 +02:00
El RIDO
5c97443d1d
add basic RTL support, drop default language key 2023-09-19 07:29:00 +02:00
El RIDO
896a49c8cf
en.json is not used at runtime 2023-09-19 06:35:50 +02:00
El RIDO
ad50950b3c
Extract latest changelog entry and attach it to draft 2023-09-18 20:50:14 +02:00
El RIDO
73c13af10d
add workflow attaching SLSA provinence to draft release 2023-09-18 20:47:16 +02:00
El RIDO
8a03c85708
Merge pull request #1173 from PrivateBin/bugreport
Also add FAQ section/tick box requirement for bug template
2023-09-15 06:26:28 +02:00
El RIDO
6a454c1765
Merge pull request #1172 from PrivateBin/patchqaagain
Fix error message about QA template
2023-09-15 06:23:25 +02:00
El RIDO
f862e062cd
Merge pull request #1171 from PrivateBin/dependabot/composer/phpunit/phpunit-9.6.12
Bump phpunit/phpunit from 9.6.11 to 9.6.12
2023-09-14 05:31:40 +02:00
rugk
db2d8f1598
Also add FAQ sectiontick box requirement for bug template
It's apparently not enough to have in the Q/A, best is we have it here to.

The next step would be converting that into the same form like the QA template. After all, it may mostly just be copy paste as it is nearly identical but well…
2023-09-14 00:02:01 +02:00
rugk
168fb46767
Fix error message about QA template
GitHub complains:
> title must be of type String and cannot be empty. Learn more about this error.

Well then… as we don't want to provide a default title (see https://github.com/PrivateBin/PrivateBin/pull/1155) let's remove it.
2023-09-13 23:56:35 +02:00
dependabot[bot]
ff6b9b8e01
Bump phpunit/phpunit from 9.6.11 to 9.6.12
Bumps [phpunit/phpunit](https://github.com/sebastianbergmann/phpunit) from 9.6.11 to 9.6.12.
- [Changelog](https://github.com/sebastianbergmann/phpunit/blob/9.6.12/ChangeLog-9.6.md)
- [Commits](https://github.com/sebastianbergmann/phpunit/compare/9.6.11...9.6.12)

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

Signed-off-by: dependabot[bot] <support@github.com>
2023-09-13 11:39:25 +00:00
El RIDO
b998820957
Merge pull request #1168 from tristanlatr/patch-1
Fix install docs
2023-09-12 21:05:44 +02:00
tristanlatr
edc86ffd72
Fix install docs
CONFIG_PATH should actually point to the directory that contains the conf.php file.
2023-09-11 17:58:13 -04:00
El RIDO
bbc5b627c2
hide github codepages artifacts from release archive 2023-09-11 19:42:18 +02:00
El RIDO
f56907bd38
increment version 2023-09-11 19:36:45 +02:00
El RIDO
e534a2f6a6
document changes 2023-09-11 19:36:09 +02:00
El RIDO
9a3bfd7f5b
Merge pull request #1164 from sergiorgiraldo/master
feat: make the email button optional.
2023-09-10 19:42:23 +02:00
Sergio Giraldo
bf090fabb8
refactor: removed unnecessary php tag
::by sergio giraldo
@ 20230910T1650CEST, gpg signed
2023-09-10 16:50:00 +02:00
Sergio Giraldo
6728053ab0
test: default value for email configuration item;nit necessary to close php comment
::by sergio giraldo
@ 20230910T0958CEST, gpg signed
2023-09-10 09:58:04 +02:00
Sergio Giraldo
c665385ff6
feat: make the email button optional. Issue #1031
::by sergio giraldo
@ 20230909T2226CEST, gpg signed
2023-09-09 22:26:11 +02:00
El RIDO
c3baeab5aa
Merge pull request #1163 from voidquark/doc-installation-ansible
Doc installation ansible
2023-09-08 06:59:57 +02:00
voidquark
42cf45542f consistency 2023-09-07 20:50:58 +02:00
voidquark
172efafb81 modify ansible installation part 2023-09-07 20:49:10 +02:00
rugk
73f8a1d4ae
Merge pull request #1161 from PrivateBin/dependabot/github_actions/actions/checkout-4
Bump actions/checkout from 3 to 4
2023-09-05 21:02:31 +02:00
dependabot[bot]
5bd2eb97e6
Bump actions/checkout from 3 to 4
Bumps [actions/checkout](https://github.com/actions/checkout) from 3 to 4.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v3...v4)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-09-05 11:13:01 +00:00
El RIDO
9b8bee82cf
Merge pull request #1160 from PrivateBin/r4sas-issue-template
Fix comment in bug report issue template
2023-09-04 06:26:24 +02:00
R4SAS
617b421d8f
Fix comment in bug report issue template 2023-09-03 19:30:32 +03:00
El RIDO
e6f2ad0ff4
Merge pull request #1157 from PrivateBin/securitybutton
Remove custom security button as GitHub added own
2023-08-28 20:42:07 +02:00
rugk
876a59cedc
Apprently GitHub
Apparently GitHub now adds a security policy button by default (this is new, is not it?)?
Also they have a policy report form behind that button. So reports can apparently now be made online at GitHub? (IMHO that is fine, just need to be aware of that)

As such, IMHO two buttons would be confusing, so let's remove our custom one here?
2023-08-28 18:49:27 +02:00
El RIDO
5e42b4f242
Merge pull request #1136 from PrivateBin/codespaces/init-files
chore: commit all files initiated by coddespaces
2023-08-25 06:53:06 +02:00
rugk
664a8fff08 feat: also open doc readme by default 2023-08-25 06:49:19 +02:00
rugk
b2e4920aa2 feat: add basic support for debugging and working with devcontainer
For GitHub Codespaces e.g.
2023-08-25 06:49:19 +02:00
El RIDO
4c9c5b2941
Merge pull request #1155 from PrivateBin/betterqwaagain
QA template: remove prefilled title
2023-08-25 06:14:21 +02:00
rugk
1470b0cb9c
QA tenplate: remove prefilled title
Let's remove that.

1. With label and A&A category we have more than enough options for filtering such requests.
2. Actually, as you can see in https://github.com/orgs/PrivateBin/discussions/1152, as it is a required field, but already filled out… we want them to write proper titles.
2023-08-24 22:14:15 +02:00
rugk
f8ce73b46e
Merge pull request #1154 from PrivateBin/betterqa
Make QA template more strict and helpful
2023-08-24 22:10:33 +02:00
rugk
61457c46c0
doc: link FAQ in option too
The doc says MD is supported for that here, too.
2023-08-24 21:35:42 +02:00
rugk
11fd21f8a8
doc: improve wording/grammar 2023-08-24 21:32:42 +02:00
rugk
906c115a97
Make QA template more strict and helpful
1. Require to fill out STRs.
2. Add more fields for client stuff, i.e. web browser and OS.
3. Add more placeholders and descriptions to guide users.
4. Adjust the reproducibility thing to be more clear. I.e. before the result was sth. like "Issue reproducibility: Yes" - this could be confused with "Is it always reproducible? Yes", and not "It is reproducible on our test instance."
2023-08-24 21:30:25 +02:00
El RIDO
b0869c3280
Merge pull request #1151 from PrivateBin/dependabot/composer/phpunit/phpunit-9.6.11
Bump phpunit/phpunit from 9.6.10 to 9.6.11
2023-08-23 06:31:38 +02:00
dependabot[bot]
e14b55bd27
Bump phpunit/phpunit from 9.6.10 to 9.6.11
Bumps [phpunit/phpunit](https://github.com/sebastianbergmann/phpunit) from 9.6.10 to 9.6.11.
- [Changelog](https://github.com/sebastianbergmann/phpunit/blob/9.6.11/ChangeLog-9.6.md)
- [Commits](https://github.com/sebastianbergmann/phpunit/compare/9.6.10...9.6.11)

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

Signed-off-by: dependabot[bot] <support@github.com>
2023-08-21 11:06:57 +00:00
El RIDO
5047e6c550
Merge pull request #1149 from PrivateBin/delete-shifleft
Delete shiftleft-analysis.yml
2023-08-18 06:33:12 +02:00
El RIDO
f0615d561f
Merge pull request #1150 from PrivateBin/r4sas-templ-qa
[GH] update discussion q-a template (#1143)
2023-08-17 07:35:55 +02:00
R4SAS
1c42576575
[GH] update discussion q-a template (#1143) 2023-08-17 03:05:39 +03:00
El RIDO
81ae359dfc
Delete shiftleft-analysis.yml
Development on this stopped in 2021 and apart from the (false positive) secret scan, dev suggests CodeQL replaces it, feature wise: https://github.com/ShiftLeftSecurity/sast-scan/issues/352
2023-08-17 00:00:30 +02:00
El RIDO
ad35c30d45
Update q-a.yml, one more try
body[12]: options must not include booleans. Please wrap values such as 'yes', and 'true' in quotes.
2023-08-16 23:14:07 +02:00
El RIDO
0f9aee5335
Merge pull request #1147 from PrivateBin/r4sas-discus-templ
Update discussion template
2023-08-16 23:09:04 +02:00
R4SAS
7f28e8cc0c
Update discussion template
Try to fix #1143.
2023-08-16 23:21:46 +03:00
rugk
a0a9147e63
Merge pull request #1145 from PrivateBin/template-tweaks
Template tweaks
2023-08-15 23:37:30 +02:00
El RIDO
15bf1fcf38
Merge pull request #1144 from idarlund/master
reverted Markdown
2023-08-11 21:01:53 +02:00
El RIDO
0e582e8934 fix syntax, standardize form attributes
radio buttons are not supported, checkboxes would allow selecting
multiple things, so dropdown it is
2023-08-11 20:53:06 +02:00
El RIDO
e89593b4fc comment fix, kudos @r4sas 2023-08-11 20:51:12 +02:00
Idar Lund
0697a514ca
Merge pull request #1 from idarlund/idarlund-patch-1
Idarlund patch 1
2023-08-11 13:08:19 +02:00
Idar Lund
79386027fb
reverted Markdown
Markdown is a name of a language and not something that should be translated.
2023-08-11 13:07:48 +02:00
El RIDO
33285aeaf4
Merge pull request #1142 from PrivateBin/rugk-patch-1
Remove markdown from issue selector
2023-08-10 06:50:09 +02:00
rugk
1bb23ef9ca
Remove markdown from issue selector
Was worth a try, but apparently markdown is not supported there.
2023-08-09 23:11:35 +02:00
El RIDO
b2926357d3
Merge pull request #1140 from PrivateBin/better-issue-templates
Fix potential syntax error in YAML
2023-08-09 20:08:48 +02:00
rugk
991ec6ca22
Fix potential syntax error in YAML
Likely that online VSCode did a stupid line wrapping here, let's see whether that works.
2023-08-09 18:19:33 +02:00
El RIDO
3513d18029
Merge pull request #1063 from PrivateBin/restructure-doc
Restructure documentation
2023-08-08 20:24:20 +02:00
El RIDO
e83f51b547
Merge pull request #1138 from PrivateBin/dependabot/github_actions/github/codeql-action-2
Bump github/codeql-action from 1 to 2
2023-08-08 20:19:02 +02:00
El RIDO
41e4072899
Merge pull request #1137 from PrivateBin/dependabot/github_actions/actions/checkout-3
Bump actions/checkout from 2 to 3
2023-08-08 20:18:00 +02:00
dependabot[bot]
cbff1c8488
Bump github/codeql-action from 1 to 2
Bumps [github/codeql-action](https://github.com/github/codeql-action) from 1 to 2.
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/github/codeql-action/compare/v1...v2)

---
updated-dependencies:
- dependency-name: github/codeql-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-08-08 11:13:15 +00:00
dependabot[bot]
5f71c9de10
Bump actions/checkout from 2 to 3
Bumps [actions/checkout](https://github.com/actions/checkout) from 2 to 3.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v2...v3)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-08-08 11:13:08 +00:00
El RIDO
be6eadd7c6
needs to get incremented on releases as well
contains the sample SQL schema with version string
2023-08-07 20:52:02 +02:00
El RIDO
a5a888a225
Merge branch 'master' into restructure-doc 2023-08-07 20:47:55 +02:00
El RIDO
4796c7ff02
Merge pull request #807 from PrivateBin/siftleft-scan
Add Shiftleft scan
2023-08-07 20:46:43 +02:00
El RIDO
771d7a3df8
Merge pull request #1134 from PrivateBin/better-issue-templates
Update and create new issue templates for better catgeorisation
2023-08-07 20:31:17 +02:00
rugk
a22b96b7fc
style: fix typo 2023-08-07 20:02:36 +02:00
rugk
204d1756c9 refactor: redirect support questions to discussions including form + more links
Discussions apparently onyl support forms see,
so I quickly used ChatGPT to convert the Markdown file into the YAMl format
and after telling the format it seems to have done that in a good eay:
https://chat.openai.com/share/99718495-28d0-4382-ab5e-6a4a733c1ccb

(maybe GitHub introduced that after end of 2021 hehe, so the LLM could not know that)
2023-08-07 17:59:07 +00:00
rugk
8deb68c2da chore: remove old issue template 2023-08-07 17:26:26 +00:00
rugk
1a37f7b865
Update and create new issue templates for better ctageorisation
[128 of 600 issues are just questions and support and this is getting out of hand IMHO](https://github.com/PrivateBin/PrivateBin/issues?q=is%3Aissue+is%3Aopen+label%3Aquestion%2Fsupport), so I thought we need to do something while of course IMHO keeping support in some sense that is vital to an open-source project.

Anyway, this here now:
* Converts the "one and only issue template" to multiple ones with the new GitHub way, see https://docs.github.com/en/communities/using-templates-to-encourage-useful-issues-and-pull-requests/
  Note this uses mostly the templates they have, modifies them to use proper headers (sorry but I don't get why they always want to use **bold text** as headers, when you have real markdown headings) and adjusts/ports the
* We could use even more elaborate issue forms, but that  was too much for me to do now and is also beta, so maybe when they have a visual editor for that or so 😉 https://docs.github.com/en/communities/using-templates-to-encourage-useful-issues-and-pull-requests/configuring-issue-templates-for-your-repository#creating-issue-forms

The aim:
* is to get support requests and stuff directly sorted and tagged, so they are out the way
* is to nudge people to improve the quality of issues/reports by providing a more useful template or their use case
* is to redirect people to the appropriate resource (give me a moment)
2023-08-07 19:24:13 +02:00
El RIDO
48079483be
Merge pull request #1131 from PrivateBin/crowdin-translation
New Crowdin updates
2023-08-06 15:19:16 +02:00
PrivateBin Translator Bot
222ebd06a9 New translations en.json (Dutch) 2023-08-06 13:36:40 +02:00
PrivateBin Translator Bot
d8f2d01c1e New translations en.json (Lojban) 2023-08-06 12:19:09 +02:00
PrivateBin Translator Bot
1050fa303f New translations en.json (Dutch) 2023-08-06 12:19:08 +02:00
PrivateBin Translator Bot
94d07039b6 New translations en.json (French) 2023-08-06 12:19:07 +02:00
PrivateBin Translator Bot
e3e500cb2d New translations en.json (Corsican) 2023-08-06 11:17:05 +02:00
PrivateBin Translator Bot
5faa09f83e New translations en.json (Occitan) 2023-08-06 11:17:04 +02:00
PrivateBin Translator Bot
66f2a4b6f5 New translations en.json (Estonian) 2023-08-06 11:17:04 +02:00
PrivateBin Translator Bot
39ad584a52 New translations en.json (Thai) 2023-08-06 11:17:03 +02:00
PrivateBin Translator Bot
dc790cb2e0 New translations en.json (Indonesian) 2023-08-06 11:17:02 +02:00
PrivateBin Translator Bot
18189a148a New translations en.json (Chinese Simplified) 2023-08-06 11:17:01 +02:00
PrivateBin Translator Bot
d20a09c3d6 New translations en.json (Ukrainian) 2023-08-06 11:17:00 +02:00
PrivateBin Translator Bot
f9a5891072 New translations en.json (Turkish) 2023-08-06 11:16:59 +02:00
PrivateBin Translator Bot
4aefd56e96 New translations en.json (Slovenian) 2023-08-06 11:16:58 +02:00
PrivateBin Translator Bot
5aab567d94 New translations en.json (Slovak) 2023-08-06 11:16:57 +02:00
PrivateBin Translator Bot
7c25ce2b6f New translations en.json (Russian) 2023-08-06 11:16:56 +02:00
PrivateBin Translator Bot
8ede9a4e08 New translations en.json (Portuguese) 2023-08-06 11:16:56 +02:00
PrivateBin Translator Bot
728d38a89d New translations en.json (Polish) 2023-08-06 11:16:55 +02:00
PrivateBin Translator Bot
04ab3ccea9 New translations en.json (Norwegian) 2023-08-06 11:16:54 +02:00
PrivateBin Translator Bot
b3bbb91987 New translations en.json (Dutch) 2023-08-06 11:16:53 +02:00
PrivateBin Translator Bot
0fea8c44a4 New translations en.json (Lithuanian) 2023-08-06 11:16:52 +02:00
PrivateBin Translator Bot
b7604b57ab New translations en.json (Japanese) 2023-08-06 11:16:51 +02:00
PrivateBin Translator Bot
cc46b74705 New translations en.json (Italian) 2023-08-06 11:16:50 +02:00
PrivateBin Translator Bot
e2c71290cf New translations en.json (Hungarian) 2023-08-06 11:16:49 +02:00
PrivateBin Translator Bot
0ce8d7dfd0 New translations en.json (Hebrew) 2023-08-06 11:16:48 +02:00
PrivateBin Translator Bot
a357c7f34d New translations en.json (Finnish) 2023-08-06 11:16:47 +02:00
PrivateBin Translator Bot
941b0bdce8 New translations en.json (Greek) 2023-08-06 11:16:47 +02:00
PrivateBin Translator Bot
0b2939bb94 New translations en.json (German) 2023-08-06 11:16:46 +02:00
PrivateBin Translator Bot
9ce0878db2 New translations en.json (Czech) 2023-08-06 11:16:45 +02:00
PrivateBin Translator Bot
45b52ee895 New translations en.json (Catalan) 2023-08-06 11:16:44 +02:00
PrivateBin Translator Bot
d91848de2d New translations en.json (Bulgarian) 2023-08-06 11:16:43 +02:00
PrivateBin Translator Bot
d5f8bef276 New translations en.json (Spanish) 2023-08-06 11:16:42 +02:00
PrivateBin Translator Bot
63dabced9a New translations en.json (French) 2023-08-06 11:16:41 +02:00
PrivateBin Translator Bot
5aa06e5b26 New translations en.json (Corsican) 2023-08-06 09:37:07 +02:00
PrivateBin Translator Bot
68aeef687d New translations en.json (Occitan) 2023-08-06 09:37:06 +02:00
PrivateBin Translator Bot
e261167ea5 New translations en.json (Lojban) 2023-08-06 09:37:04 +02:00
PrivateBin Translator Bot
0211a27a24 New translations en.json (Estonian) 2023-08-06 09:37:03 +02:00
PrivateBin Translator Bot
21157a2ad9 New translations en.json (Thai) 2023-08-06 09:37:02 +02:00
PrivateBin Translator Bot
20dc8d7c21 New translations en.json (Indonesian) 2023-08-06 09:37:01 +02:00
PrivateBin Translator Bot
5bc5295e60 New translations en.json (Chinese Simplified) 2023-08-06 09:37:00 +02:00
PrivateBin Translator Bot
b5ca9efc95 New translations en.json (Ukrainian) 2023-08-06 09:36:59 +02:00
PrivateBin Translator Bot
92864f837d New translations en.json (Turkish) 2023-08-06 09:36:59 +02:00
PrivateBin Translator Bot
81627713be New translations en.json (Slovenian) 2023-08-06 09:36:57 +02:00
PrivateBin Translator Bot
81170c0d78 New translations en.json (Slovak) 2023-08-06 09:36:57 +02:00
PrivateBin Translator Bot
0b22083409 New translations en.json (Russian) 2023-08-06 09:36:56 +02:00
PrivateBin Translator Bot
8ad5a104cb New translations en.json (Portuguese) 2023-08-06 09:36:55 +02:00
PrivateBin Translator Bot
e002b439a5 New translations en.json (Polish) 2023-08-06 09:36:54 +02:00
PrivateBin Translator Bot
de23016288 New translations en.json (Norwegian) 2023-08-06 09:36:53 +02:00
PrivateBin Translator Bot
6da15f4a41 New translations en.json (Dutch) 2023-08-06 09:36:52 +02:00
PrivateBin Translator Bot
d845ffc174 New translations en.json (Lithuanian) 2023-08-06 09:36:51 +02:00
PrivateBin Translator Bot
6f69a6756a New translations en.json (Japanese) 2023-08-06 09:36:50 +02:00
PrivateBin Translator Bot
5cc312f4a1 New translations en.json (Italian) 2023-08-06 09:36:49 +02:00
PrivateBin Translator Bot
68a25ae4a4 New translations en.json (Hungarian) 2023-08-06 09:36:48 +02:00
PrivateBin Translator Bot
ed519395b1 New translations en.json (Hebrew) 2023-08-06 09:36:47 +02:00
PrivateBin Translator Bot
2274d90875 New translations en.json (Finnish) 2023-08-06 09:36:47 +02:00
PrivateBin Translator Bot
73c9b3169b New translations en.json (Greek) 2023-08-06 09:36:46 +02:00
PrivateBin Translator Bot
7b74f7dc35 New translations en.json (German) 2023-08-06 09:36:45 +02:00
PrivateBin Translator Bot
190f6d693d New translations en.json (Czech) 2023-08-06 09:36:44 +02:00
PrivateBin Translator Bot
8bc21ef38b New translations en.json (Catalan) 2023-08-06 09:36:43 +02:00
PrivateBin Translator Bot
27964b7298 New translations en.json (Bulgarian) 2023-08-06 09:36:42 +02:00
PrivateBin Translator Bot
da08fbd5d7 New translations en.json (Spanish) 2023-08-06 09:36:41 +02:00
PrivateBin Translator Bot
4c316a8729 New translations en.json (French) 2023-08-06 09:36:40 +02:00
El RIDO
776a22fbcd
Merge pull request #1130 from PrivateBin/japanese-and-arabic
Enable use of Japanese and Arabic translations
2023-08-06 08:18:51 +02:00
El RIDO
dc4bbe07f1 Merge remote-tracking branch 'origin/master' into japanese-and-arabic 2023-08-04 06:52:06 +02:00
El RIDO
cdd29d4798 extend translations with a 4th & 5th plural case
These are used by Arabic, described in https://arabeyes.org/Plural_Forms
2023-08-04 06:32:33 +02:00
El RIDO
900e45c69b
Merge pull request #1129 from PrivateBin/crowdin-translation
New Crowdin updates
2023-08-02 19:59:12 +02:00
PrivateBin Translator Bot
032a9c9862 New translations en.json (Spanish) 2023-08-02 00:49:59 +02:00
PrivateBin Translator Bot
6047dcfe2d New translations en.json (Arabic) 2023-08-02 00:49:58 +02:00
PrivateBin Translator Bot
a78d0536c6 New translations en.json (Arabic) 2023-08-01 23:47:20 +02:00
El RIDO
1dbe46cfed update SRI hashes 2023-08-01 14:05:20 +02:00
El RIDO
fe37b7f0e5 enable & credit Japanese & Arabic translations 2023-08-01 14:00:45 +02:00
El RIDO
8df69a1120
Merge pull request #1128 from PrivateBin/crowdin-translation
New Crowdin updates
2023-08-01 13:32:36 +02:00
PrivateBin Translator Bot
fcec76b151 New translations en.json (Arabic) 2023-08-01 12:11:21 +02:00
El RIDO
e8448225af
Merge pull request #1126 from PrivateBin/crowdin-translation
New Crowdin updates
2023-08-01 07:21:10 +02:00
PrivateBin Translator Bot
bff0561e01 New translations en.json (Arabic) 2023-07-31 00:43:52 +02:00
El RIDO
5296f05904
Merge pull request #1121 from PrivateBin/php8
merge PHP 8 branch, upgrading to PHPunit 9 and minimum PHP version 7.3
2023-07-23 16:48:28 +02:00
El RIDO
b6ad6b538a allow composer to run at scrutinizer, explicitly telling it about our minimum supported PHP version 2023-07-23 10:38:14 +02:00
El RIDO
c1b3bffe8c document change, update composer, dropping obsolete library with polyfill for random_bytes function on PHP < 7 2023-07-23 10:19:35 +02:00
El RIDO
ecf100551d document change, raise minimum PHP version to 7.3, remove branch refresh 2023-07-23 10:04:57 +02:00
github-actions[bot]
48df1d29ac Merge remote-tracking branch 'origin/master' into php8 2023-07-22 08:14:07 +00:00
El RIDO
969f433861
Merge pull request #1120 from PrivateBin/dependabot/npm_and_yarn/js/word-wrap-1.2.4
Bump word-wrap from 1.2.3 to 1.2.4 in /js
2023-07-22 10:13:38 +02:00
dependabot[bot]
86ba5b4966
Bump word-wrap from 1.2.3 to 1.2.4 in /js
Bumps [word-wrap](https://github.com/jonschlinkert/word-wrap) from 1.2.3 to 1.2.4.
- [Release notes](https://github.com/jonschlinkert/word-wrap/releases)
- [Commits](https://github.com/jonschlinkert/word-wrap/compare/1.2.3...1.2.4)

---
updated-dependencies:
- dependency-name: word-wrap
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-07-19 18:58:23 +00:00
github-actions[bot]
10909c133a Merge remote-tracking branch 'origin/master' into php8 2023-07-10 04:47:03 +00:00
El RIDO
b2d8d480e4
Merge pull request #1115 from PrivateBin/crowdin-translation
New Crowdin updates
2023-07-10 04:46:12 +00:00
PrivateBin Translator Bot
c29d6c2a3a New translations en.json (Japanese) 2023-07-10 04:02:37 +02:00
PrivateBin Translator Bot
d0ea125b11 New translations en.json (Japanese) 2023-07-10 02:55:46 +02:00
github-actions[bot]
95747ed11c Merge remote-tracking branch 'origin/master' into php8 2023-07-09 07:32:46 +00:00
El RIDO
dabcafb99b
Merge branch 'master' into php8 2023-07-05 07:15:28 +02:00
github-actions[bot]
2fc920394d Merge remote-tracking branch 'origin/master' into php8 2023-06-18 15:15:00 +00:00
github-actions[bot]
9271af481d Merge remote-tracking branch 'origin/master' into php8 2023-05-18 19:41:08 +00:00
github-actions[bot]
75d42ccbf6 Merge remote-tracking branch 'origin/master' into php8 2023-04-15 14:22:10 +00:00
github-actions[bot]
e20bacca27 Merge remote-tracking branch 'origin/master' into php8 2023-03-25 06:45:33 +00:00
github-actions[bot]
83cbbdece2 Merge remote-tracking branch 'origin/master' into php8 2023-03-17 05:55:05 +00:00
github-actions[bot]
c19df94fc2 Merge remote-tracking branch 'origin/master' into php8 2023-02-28 04:49:39 +00:00
github-actions[bot]
5e43dcf56e Merge remote-tracking branch 'origin/master' into php8 2023-02-27 17:45:26 +00:00
github-actions[bot]
b8a425f7a1 Merge remote-tracking branch 'origin/master' into php8 2023-02-26 15:16:05 +00:00
github-actions[bot]
e3b2ae2a0b Merge remote-tracking branch 'origin/master' into php8 2023-02-19 07:47:31 +00:00
El RIDO
ccc5dd037f update links, unify formats, add documentation index 2023-02-19 08:32:10 +01:00
El RIDO
411629df37 rename documentation files 2023-02-19 08:30:44 +01:00
github-actions[bot]
8818a99677 Merge remote-tracking branch 'origin/master' into php8 2023-02-10 05:28:40 +00:00
github-actions[bot]
714ebdaa0b Merge remote-tracking branch 'origin/master' into php8 2023-02-03 06:25:42 +00:00
github-actions[bot]
1987f4a165 Merge remote-tracking branch 'origin/master' into php8 2023-01-27 17:42:53 +00:00
github-actions[bot]
476aa0d3f1 Merge remote-tracking branch 'origin/master' into php8 2023-01-21 07:46:05 +00:00
github-actions[bot]
4ae461df47 Merge remote-tracking branch 'origin/master' into php8 2022-12-24 06:11:22 +00:00
github-actions[bot]
99ce99a9fc Merge remote-tracking branch 'origin/master' into php8 2022-12-24 04:48:56 +00:00
github-actions[bot]
e1bfdadf23 Merge remote-tracking branch 'origin/master' into php8 2022-12-22 04:39:01 +00:00
github-actions[bot]
9247b25824 Merge remote-tracking branch 'origin/master' into php8 2022-12-20 18:54:23 +00:00
El RIDO
6d116e0cd9
Merge branch 'master' into php8 2022-12-20 18:28:19 +01:00
github-actions[bot]
5b78cc80f2 Merge remote-tracking branch 'origin/master' into php8 2022-12-12 19:52:53 +00:00
github-actions[bot]
00cd331eaa Merge remote-tracking branch 'origin/master' into php8 2022-12-12 19:51:50 +00:00
github-actions[bot]
46831d76a8 Merge remote-tracking branch 'origin/master' into php8 2022-12-11 05:15:59 +00:00
github-actions[bot]
dc60d6b27e Merge remote-tracking branch 'origin/master' into php8 2022-12-11 04:09:19 +00:00
github-actions[bot]
36925687b2 Merge remote-tracking branch 'origin/master' into php8 2022-11-18 04:39:49 +00:00
github-actions[bot]
e888877f23 Merge remote-tracking branch 'origin/master' into php8 2022-11-18 04:37:18 +00:00
El RIDO
46c0fc851c
Merge branch 'master' into php8 2022-11-17 06:04:12 +01:00
github-actions[bot]
ba5c859d85 Merge remote-tracking branch 'origin/master' into php8 2022-11-03 18:55:30 +00:00
El RIDO
a731a1143c
update jdenticon 2022-10-31 20:36:39 +01:00
github-actions[bot]
46013df620 Merge remote-tracking branch 'origin/master' into php8 2022-10-31 16:19:19 +00:00
github-actions[bot]
f0bbf99306 Merge remote-tracking branch 'origin/master' into php8 2022-10-31 16:07:38 +00:00
El RIDO
c44b252aa8
Merge branch 'master' into php8 2022-10-29 19:38:01 +02:00
El RIDO
34264cb7f5
Merge branch 'master' into php8 2022-10-26 08:24:41 +02:00
El RIDO
7b98d7381f
allow tests to be manually triggered 2022-10-26 05:30:37 +02:00
github-actions[bot]
fa61e4507c Merge remote-tracking branch 'origin/master' into php8 2022-10-26 02:39:53 +00:00
github-actions[bot]
f79c8c63e5 Merge remote-tracking branch 'origin/master' into php8 2022-10-25 19:12:00 +00:00
El RIDO
5b3d61cedc
revert, this one actually was correct 2022-10-25 06:58:42 +02:00
El RIDO
510103fd9f
make tests compatible with newer phpunit 2022-10-25 06:55:24 +02:00
El RIDO
b890d768d1
enable use of PHP 8.2 2022-10-25 06:53:26 +02:00
El RIDO
27965d0287
make tests compatible with newer phpunit 2022-10-25 06:53:07 +02:00
El RIDO
8ed9fccf25
make YourlsProxyTest compatible with newer phpunit 2022-10-25 06:43:17 +02:00
El RIDO
522c2721a2
make YourlsProxyTest compatible with newer phpunit 2022-10-25 06:41:42 +02:00
El RIDO
17d7a6967e
make YourlsProxyTest compatible with newer phpunit 2022-10-25 06:39:50 +02:00
El RIDO
f6edcc1acd
Merge branch 'master' into php8 2022-10-25 06:37:15 +02:00
github-actions[bot]
5b2ec7f7c2 Merge remote-tracking branch 'origin/master' into php8 2022-10-23 03:14:46 +00:00
github-actions[bot]
5768b1e4bd Merge remote-tracking branch 'origin/master' into php8 2022-10-22 16:35:34 +00:00
github-actions[bot]
23928d26f0 Merge remote-tracking branch 'origin/master' into php8 2022-10-07 05:54:07 +00:00
github-actions[bot]
cbeb30adf1 Merge remote-tracking branch 'origin/master' into php8 2022-10-07 03:59:28 +00:00
github-actions[bot]
b488359e35 Merge remote-tracking branch 'origin/master' into php8 2022-09-30 03:25:00 +00:00
github-actions[bot]
9f541e6276 Merge remote-tracking branch 'origin/master' into php8 2022-09-29 19:06:55 +00:00
github-actions[bot]
4aa95107d3 Merge remote-tracking branch 'origin/master' into php8 2022-09-26 10:16:10 +00:00
github-actions[bot]
4f7b3d2ac3 Merge remote-tracking branch 'origin/master' into php8 2022-09-24 08:06:29 +00:00
github-actions[bot]
5165845b54 Merge remote-tracking branch 'origin/master' into php8 2022-09-18 12:45:32 +00:00
github-actions[bot]
05e236ed6c Merge remote-tracking branch 'origin/master' into php8 2022-08-24 04:28:45 +00:00
El RIDO
8c2cc18b66
Merge branch 'master' into php8 2022-07-31 08:53:52 +02:00
J. Fernando LAGRANGE
f797311650 Change "Send" button label to "Save"
Includes french translation.
2022-06-28 10:34:40 +02:00
github-actions[bot]
d7e88b236e Merge remote-tracking branch 'origin/master' into php8 2022-06-10 02:59:39 +00:00
github-actions[bot]
b48430cd4d Merge remote-tracking branch 'origin/master' into php8 2022-06-08 18:29:26 +00:00
github-actions[bot]
b5d9850bee Merge remote-tracking branch 'origin/master' into php8 2022-06-06 05:36:56 +00:00
github-actions[bot]
8b534ace28 Merge remote-tracking branch 'origin/master' into php8 2022-06-02 17:22:48 +00:00
El RIDO
2ad79ebf71
add php 8.1 unit tests 2022-06-01 20:50:38 +02:00
El RIDO
a376f894a9
Merge branch 'php8' of github.com:PrivateBin/PrivateBin into php8 2022-06-01 20:48:33 +02:00
github-actions[bot]
43cd87c417 Merge remote-tracking branch 'origin/master' into php8 2022-05-02 17:22:36 +00:00
github-actions[bot]
b8be814015 Merge remote-tracking branch 'origin/master' into php8 2022-04-30 07:45:50 +00:00
github-actions[bot]
b73f4be25e Merge remote-tracking branch 'origin/master' into php8 2022-04-30 07:23:22 +00:00
github-actions[bot]
f18770eaa6 Merge remote-tracking branch 'origin/master' into php8 2022-04-28 17:44:58 +00:00
github-actions[bot]
878374979b Merge remote-tracking branch 'origin/master' into php8 2022-04-20 17:56:55 +00:00
github-actions[bot]
abd722d0e4 Merge remote-tracking branch 'origin/master' into php8 2022-04-14 04:20:29 +00:00
github-actions[bot]
16d6cfb1ac Merge remote-tracking branch 'origin/master' into php8 2022-04-11 17:09:34 +00:00
github-actions[bot]
60bb381796 Merge remote-tracking branch 'origin/master' into php8 2022-04-10 09:16:48 +00:00
github-actions[bot]
f2397ac532 Merge remote-tracking branch 'origin/master' into php8 2022-04-09 17:56:36 +00:00
github-actions[bot]
ebf6a92c8f Merge remote-tracking branch 'origin/master' into php8 2022-04-09 12:39:05 +00:00
github-actions[bot]
634b3a6605 Merge remote-tracking branch 'origin/master' into php8 2022-04-04 17:13:18 +00:00
github-actions[bot]
e770065edf Merge remote-tracking branch 'origin/master' into php8 2022-03-30 18:49:51 +00:00
github-actions[bot]
5f53150390 Merge remote-tracking branch 'origin/master' into php8 2022-03-28 17:06:05 +00:00
github-actions[bot]
184b8b567d Merge remote-tracking branch 'origin/master' into php8 2022-03-28 17:03:38 +00:00
github-actions[bot]
de6db843ba Merge remote-tracking branch 'origin/master' into php8 2022-03-23 19:45:37 +00:00
github-actions[bot]
6caf1a5f06 Merge remote-tracking branch 'origin/master' into php8 2022-03-01 05:45:16 +00:00
github-actions[bot]
bda1ab23b8 Merge remote-tracking branch 'origin/master' into php8 2022-02-28 18:22:17 +00:00
github-actions[bot]
50fb12e3b3 Merge remote-tracking branch 'origin/master' into php8 2022-02-27 18:33:35 +00:00
github-actions[bot]
955334ff91 Merge remote-tracking branch 'origin/master' into php8 2022-02-26 10:53:14 +00:00
El RIDO
fa7aa3e88c
fix composer lock 2022-02-26 07:22:32 +01:00
El RIDO
38c13398fc
Merge branch 'master' into php8 2022-02-26 06:51:32 +01:00
github-actions[bot]
14de09789e Merge remote-tracking branch 'origin/master' into php8 2022-02-18 05:51:15 +00:00
github-actions[bot]
595f9cf42e Merge remote-tracking branch 'origin/master' into php8 2022-02-18 05:18:21 +00:00
github-actions[bot]
fb0d13937b Merge remote-tracking branch 'origin/master' into php8 2022-02-17 19:38:19 +00:00
github-actions[bot]
26ae7db0eb Merge remote-tracking branch 'origin/master' into php8 2022-02-13 08:04:35 +00:00
github-actions[bot]
0212429c4a Merge remote-tracking branch 'origin/master' into php8 2022-02-13 07:59:02 +00:00
github-actions[bot]
484ab3cd84 Merge remote-tracking branch 'origin/master' into php8 2022-02-12 16:29:53 +00:00
github-actions[bot]
7694c1460b Merge remote-tracking branch 'origin/master' into php8 2022-02-12 16:18:17 +00:00
github-actions[bot]
8812b09f5f Merge remote-tracking branch 'origin/master' into php8 2022-01-31 05:41:10 +00:00
github-actions[bot]
f5d8d7735f Merge remote-tracking branch 'origin/master' into php8 2022-01-10 20:29:09 +00:00
github-actions[bot]
3a801bc238 Merge remote-tracking branch 'origin/master' into php8 2021-10-30 15:26:05 +00:00
El RIDO
91462da29d
update composer 2021-10-07 22:39:57 +02:00
El RIDO
5c61a442a0
phpunit compatibility 2021-10-07 22:36:11 +02:00
El RIDO
9c81d85bb7
phpunit compatibility 2021-10-07 22:34:15 +02:00
El RIDO
168ce1d85c
phpunit compatibility 2021-10-07 22:25:51 +02:00
El RIDO
1f6b962468
phpunit compatibility 2021-10-07 22:24:30 +02:00
El RIDO
1f95f57be9
phpunit compatibility 2021-10-07 22:22:32 +02:00
El RIDO
a2e479192f
phpunit compatibility 2021-10-07 22:20:25 +02:00
El RIDO
3f469f715f
Merge branch 'master' into php8 2021-10-07 22:17:11 +02:00
El RIDO
55176309a7
remove unsafe-eval from CSP 2021-06-20 08:44:25 +02:00
El RIDO
a4a32f6b9e
switch to streaming WASM loading, fixes #814 2021-06-20 08:43:44 +02:00
rugk
79c0ad1670
Add Siftleft scan
It seems [to cover](https://slscan.io/en/latest/#supported-languages-frameworks) PHP including license check in addition to dependency scanning.
2021-06-05 00:21:48 +02:00
El RIDO
09133f4f10
kudos StyleCI for spotting the unneccessary namespace 2020-10-11 11:39:36 +02:00
El RIDO
ec190fdcf6
phpunit 9 requires php >= 7.3 2020-10-11 10:34:03 +02:00
El RIDO
17c3cb35c0
change tests for phpunit 9 support, breaking support with phpunit 5.6 2020-10-11 10:31:24 +02:00
El RIDO
37a620df95
return type void is required as of PHPunit 7, breaking test compatibility with PHP < 7.1 2020-10-10 12:22:20 +02:00
El RIDO
6f90df9545
updating tests by dropping PHPunit 4.6 support 2020-10-10 12:08:58 +02:00
El RIDO
99f50f6de3
update composer dependencies - test phpunit 9 2020-10-10 11:50:48 +02:00
El RIDO
50f81e1d2e
unlock PHP 8 for composer 2020-10-10 11:24:36 +02:00
El RIDO
4312f77385
experimentally enable PHP 8 beta unit testing 2020-10-10 11:21:53 +02:00
213 changed files with 10396 additions and 6771 deletions

View File

@ -0,0 +1,46 @@
{
"name": "PHP",
"image": "mcr.microsoft.com/devcontainers/php",
"customizations": {
"vscode": {
"extensions": [
"github.codespaces",
// PHP from https://github.com/devcontainers/templates/tree/main/src/php
"xdebug.php-debug",
"bmewburn.vscode-intelephense-client",
"xdebug.php-pack",
// PHP
"DEVSENSE.phptools-vscode",
"DEVSENSE.composer-php-vscode",
// linting
"EditorConfig.EditorConfig",
"dbaeumer.vscode-eslint",
"raymondcamden.CSSLint",
// testing
"maty.vscode-mocha-sidebar"
]
},
"codespaces": {
"openFiles": [
"README.md",
"doc/README.md"
],
"repositories": {
"PrivateBin/*": {
"permissions": {
"pull_requests": "write"
}
}
}
}
},
"features": {
"ghcr.io/devcontainers-contrib/features/mocha:2": {}
},
"forwardPorts": [
8080
],
"postCreateCommand": ".devcontainer/postCreateCommand.sh",
// alternatiuve: apache2ctl start (but requires root)
"postAttachCommand": "php -S 0.0.0.0:8080"
}

View File

@ -0,0 +1,9 @@
#!/bin/sh
export PATH="$PATH:$HOME/.composer/vendor/bin"
ln -s ./conf.sample.php cfg/conf.php
composer install --no-dev --optimize-autoloader
sudo chmod a+x "$(pwd)" && sudo rm -rf /var/www/html && sudo ln -s "$(pwd)" /var/www/html
npm install --global nyc

5
.gitattributes vendored
View File

@ -2,6 +2,7 @@ bin/configuration-test-generator export-ignore
bin/icon-test export-ignore bin/icon-test export-ignore
doc/ export-ignore doc/ export-ignore
tst/ export-ignore tst/ export-ignore
i18n/en.json export-ignore
img/browserstack.svg export-ignore img/browserstack.svg export-ignore
js/.istanbul.yml export-ignore js/.istanbul.yml export-ignore
js/.nycrc.yml export-ignore js/.nycrc.yml export-ignore
@ -9,6 +10,7 @@ js/common.js export-ignore
js/test/ export-ignore js/test/ export-ignore
.codeclimate.yml export-ignore .codeclimate.yml export-ignore
.csslintrc export-ignore .csslintrc export-ignore
.devcontainer export-ignore
.editorconfig export-ignore .editorconfig export-ignore
.eslintignore export-ignore .eslintignore export-ignore
.eslintrc export-ignore .eslintrc export-ignore
@ -21,10 +23,9 @@ js/test/ export-ignore
.scrutinizer.yml export-ignore .scrutinizer.yml export-ignore
.styleci.yml export-ignore .styleci.yml export-ignore
.travis.yml export-ignore .travis.yml export-ignore
.vscode export-ignore
codacy-analysis.yml export-ignore codacy-analysis.yml export-ignore
crowdin.yml export-ignore crowdin.yml export-ignore
composer.json export-ignore
composer.lock export-ignore
BADGES.md export-ignore BADGES.md export-ignore
CODE_OF_CONDUCT.md export-ignore CODE_OF_CONDUCT.md export-ignore
Makefile export-ignore Makefile export-ignore

90
.github/DISCUSSION_TEMPLATE/q-a.yml vendored Normal file
View File

@ -0,0 +1,90 @@
labels: ["question/support"]
body:
- type: markdown
attributes:
value: |
## Thanks for taking the time to fill out this form!
- type: textarea
id: description
attributes:
label: Describe the problem/question
description: A clear and concise description of what the problem/issue or question is.
validations:
required: true
- type: checkboxes
id: readed-faq
attributes:
label: Did you use the FAQ section?
description: Have you read [the FAQ](https://github.com/PrivateBin/PrivateBin/wiki/FAQ)?
options:
- label: Yes, I have read [the FAQ](https://github.com/PrivateBin/PrivateBin/wiki/FAQ) and I found no solution/answer there.
required: true
- type: textarea
id: what_you_did
attributes:
label: What you did?
description: Tell us how to reproduce the problem.
value: |
1.
2.
...
validations:
required: true
- type: textarea
id: what_happens
attributes:
label: What happens
placeholder: Tell us what you see!
- type: textarea
id: what_should_happen
attributes:
label: What should happen
placeholder: Tell us what you want to see!
- type: textarea
id: additional_info
attributes:
label: Additional information
description: E.g. if you have access to the server log files, copy them here. Or copy the browser console content, if appropiate.
- type: input
id: server_address
attributes:
label: Server address
description: The instance of PrivateBin, where you experience the issue.
placeholder: e.g. https://privatebin.net
- type: input
id: server_os
attributes:
label: Server OS
placeholder: e.g. Ubuntu
- type: input
id: webserver
attributes:
label: Webserver
placeholder: e.g. Apache
- type: input
id: privatebin_version
attributes:
label: PrivateBin version
description: The PrivateBin version, where you experience the issue. It is e.g. shown at the bottom left in the web interface.
placeholder: e.g. v1.5.2
- type: input
id: browser
attributes:
label: Browser and version
placeholder: e.g. Firefox v116.3.0 (desktop)
- type: input
id: client
attributes:
label: Local operating system and version
placeholder: e.g. Windows 10
- type: dropdown
id: reproduce_issue
attributes:
label: Issue reproducibility
description: Can you reproduce this issue on [https://privatebin.net](https://privatebin.net)?
options:
- "No, I cannot reproduce it on https://privatebin.net."
- "Yes, reproducible on https://privatebin.net."
default: 0
validations:
required: true

View File

@ -1,5 +1,19 @@
<!-- Please have a look at our FAQ before submitting an issue: https://github.com/PrivateBin/PrivateBin/wiki/FAQ --> ---
<!-- This is a template for a bug report. If you would like to suggest a feature, feel free to delete the part below. --> name: Bug report
about: Create a report to help us improve (only for software bugs)
title: ''
labels: bug
assignees: ''
---
<!-- Please make sure to **only** use this template when it is about bugs in the PrivateBin PHP project.
Otherwise, for help and support issues e.g. for deployment issues, please go back and chose the appropiate category. -->
**Did you use the FAQ section?**
- [ ] Yes, I have read [the FAQ](https://github.com/PrivateBin/PrivateBin/wiki/FAQ) and I found no solution/answer there.
<!-- Describe the bug: A clear and concise description of what the bug is. -->
## Steps to reproduce ## Steps to reproduce
<!-- Tell us how to reproduce the problem. --> <!-- Tell us how to reproduce the problem. -->
@ -26,7 +40,7 @@ If you have access to the server log files, also copy them here.
<!-- The Operation System of your server --> <!-- The Operation System of your server -->
**Server OS:** **Server OS:**
<!-- The webserver running on your server, preferrably including the version --> <!-- The webserver running on your server, preferably including the version -->
**Webserver:** **Webserver:**
<!-- The version of your browser (when it is a client-side issue) --> <!-- The version of your browser (when it is a client-side issue) -->

9
.github/ISSUE_TEMPLATE/config.yml vendored Normal file
View File

@ -0,0 +1,9 @@
blank_issues_enabled: false
contact_links:
- name: Question and support
url: https://github.com/orgs/PrivateBin/discussions/new?category=q-a
about: Your setup is not working and you need help or you have a question regarding PrivateBin
- name: Problem with the container image
url: https://github.com/PrivateBin/docker-nginx-fpm-alpine/issues/new
about: Please report all problems that apply only(!) to the official (Docker) image “docker-nginx-fpm-alpine” here.

View File

@ -0,0 +1,22 @@
---
name: Feature request
about: Suggest an idea for this project
title: ''
labels: enhancement
assignees: ''
---
## The problem
<!-- Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is. Ex. I'm always frustrated when -->
## The solution
<!-- A clear and concise description of what you want to happen. Pitch your solution! What would happen, if we don't implement this? -->
## Alternatives
<!-- A clear and concise description of any alternative solutions or features you've considered. -->
## Additional context
<!-- Add any other context or screenshots about the feature request here. -->

View File

@ -33,11 +33,11 @@ jobs:
steps: steps:
- name: Checkout repository - name: Checkout repository
uses: actions/checkout@v3 uses: actions/checkout@v4
# Initializes the CodeQL tools for scanning. # Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL - name: Initialize CodeQL
uses: github/codeql-action/init@v2 uses: github/codeql-action/init@v3
with: with:
languages: ${{ matrix.language }} languages: ${{ matrix.language }}
# If you wish to specify custom queries, you can do so here or in a config file. # If you wish to specify custom queries, you can do so here or in a config file.
@ -46,4 +46,4 @@ jobs:
# queries: ./path/to/local/query, your-org/your-repo/queries@main # queries: ./path/to/local/query, your-org/your-repo/queries@main
- name: Perform CodeQL Analysis - name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v2 uses: github/codeql-action/analyze@v3

View File

@ -1,37 +0,0 @@
name: Refresh PHP 8 branch
on:
push:
branches: [ master ]
schedule:
- cron: '42 2 * * *'
workflow_dispatch:
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout php8 branch
uses: actions/checkout@v3
with:
# directly checkout the php8 branch
ref: php8
# Number of commits to fetch. 0 indicates all history for all branches and tags.
# Default: 1
fetch-depth: 0
- name: Merge master changes into php8
run: |
git config user.name "github-actions[bot]"
git config user.email "41898282+github-actions[bot]@users.noreply.github.com"
git merge origin/master
- name: Push new changes
uses: github-actions-x/commit@v2.9
with:
name: github-actions[bot]
email: 41898282+github-actions[bot]@users.noreply.github.com
github-token: ${{ secrets.GITHUB_TOKEN }}
push-branch: 'php8'

50
.github/workflows/release.yml vendored Normal file
View File

@ -0,0 +1,50 @@
name: Draft Release
on:
push:
tags: '[0-9]+.[0-9]?[0-9]?[0-9]?.?[0-9]+'
jobs:
draft:
runs-on: ubuntu-latest
steps:
- name: Fetch changelog from tag
uses: actions/checkout@v4
with:
sparse-checkout: CHANGELOG.md
sparse-checkout-cone-mode: false
- name: Extract latest changelog entry and attach it to draft
uses: taiki-e/create-gh-release-action@v1
with:
changelog: CHANGELOG.md
draft: true
token: ${{ secrets.GITHUB_TOKEN }}
release:
outputs:
hashes: ${{ steps.hash.outputs.hashes }}
runs-on: ubuntu-latest
steps:
- name: Collect artifacts
run: |
wget -q https://github.com/PrivateBin/PrivateBin/archive/refs/tags/${GITHUB_REF_NAME}.tar.gz
wget -q https://github.com/PrivateBin/PrivateBin/archive/refs/tags/${GITHUB_REF_NAME}.zip
- name: Generate hashes
shell: bash
id: hash
run: echo "hashes=$(sha256sum ${GITHUB_REF_NAME}.* | base64 -w0)" >> "$GITHUB_OUTPUT"
provenance:
needs:
- release
permissions:
actions: read
id-token: write
contents: write
uses: slsa-framework/slsa-github-generator/.github/workflows/generator_generic_slsa3.yml@v2.1.0
with:
base64-subjects: "${{ needs.release.outputs.hashes }}"
draft-release: true
upload-assets: true

View File

@ -12,8 +12,9 @@ jobs:
# https://github.com/snyk/actions/tree/master/php # https://github.com/snyk/actions/tree/master/php
snyk-php: snyk-php:
runs-on: ubuntu-latest runs-on: ubuntu-latest
if: ${{ github.repository == 'PrivateBin/PrivateBin' }}
steps: steps:
- uses: actions/checkout@v3 - uses: actions/checkout@v4
- name: Install Google Cloud Storage - name: Install Google Cloud Storage
run: composer require --no-update google/cloud-storage && composer update --no-dev run: composer require --no-update google/cloud-storage && composer update --no-dev
- name: Run Snyk to check for vulnerabilities - name: Run Snyk to check for vulnerabilities
@ -24,6 +25,6 @@ jobs:
with: with:
args: --sarif-file-output=snyk.sarif args: --sarif-file-output=snyk.sarif
- name: Upload result to GitHub Code Scanning - name: Upload result to GitHub Code Scanning
uses: github/codeql-action/upload-sarif@v2 uses: github/codeql-action/upload-sarif@v3
with: with:
sarif_file: snyk.sarif sarif_file: snyk.sarif

38
.github/workflows/test-results.yml vendored Normal file
View File

@ -0,0 +1,38 @@
name: Test Results
on:
workflow_run:
workflows: ["Tests"]
types:
- completed
permissions: {}
jobs:
test-results:
name: Test Results
runs-on: ubuntu-latest
if: github.event.workflow_run.conclusion != 'skipped'
permissions:
checks: write
# needed unless run with comment_mode: off
pull-requests: write
# required by download step to access artifacts API
actions: read
steps:
- name: Download and Extract Artifacts
uses: dawidd6/action-download-artifact@07ab29fd4a977ae4d2b275087cf67563dfdf0295
with:
run_id: ${{ github.event.workflow_run.id }}
path: artifacts
- name: Publish Test Results
uses: EnricoMi/publish-unit-test-result-action@v2
with:
commit: ${{ github.event.workflow_run.head_sha }}
event_file: artifacts/Event File/event.json
event_name: ${{ github.event.workflow_run.event }}
files: "artifacts/**/*.xml"

View File

@ -1,5 +1,7 @@
name: Tests name: Tests
on: [push] on:
push:
workflow_dispatch:
jobs: jobs:
@ -7,28 +9,35 @@ jobs:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- name: Checkout - name: Checkout
uses: actions/checkout@v3 uses: actions/checkout@v4
- name: Validate composer.json and composer.lock - name: Validate composer.json and composer.lock
run: composer validate run: composer validate
- name: Install dependencies - name: Install dependencies
run: composer install --prefer-dist --no-dev run: composer install --prefer-dist --no-dev
PHPunit: PHPunit:
name: PHP ${{ matrix.php-versions }} unit tests on ${{ matrix.operating-system }}
runs-on: ubuntu-latest runs-on: ubuntu-latest
# https://docs.github.com/en/actions/using-jobs/using-a-matrix-for-your-jobs#handling-failures
continue-on-error: "${{ matrix.experimental }}"
strategy: strategy:
matrix: matrix:
php-versions: ['5.6', '7.0', '7.1', '7.2', '7.3', '7.4'] php-versions: ['7.3', '7.4', '8.0', '8.1', '8.2', '8.3', '8.4']
name: PHP ${{ matrix.php-versions }} unit tests on ${{ matrix.operating-system }} experimental: [false]
# uncomment this to start testing on development release
# include:
# - php-versions: '8.5' # development release, things can break
# experimental: true
env: env:
extensions: gd, sqlite3 extensions: gd, sqlite3
extensions-cache-key-name: phpextensions extensions-cache-key-name: phpextensions
steps: steps:
# let's get started! # let's get started!
- name: Checkout - name: Checkout
uses: actions/checkout@v3 uses: actions/checkout@v4
# cache PHP extensions # cache PHP extensions
- name: Setup cache environment - name: Setup cache environment
id: extcache id: extcache
@ -39,82 +48,107 @@ jobs:
key: ${{ runner.os }}-${{ env.extensions-cache-key }} key: ${{ runner.os }}-${{ env.extensions-cache-key }}
- name: Cache extensions - name: Cache extensions
uses: actions/cache@v3 uses: actions/cache@v4
with: with:
path: ${{ steps.extcache.outputs.dir }} path: ${{ steps.extcache.outputs.dir }}
key: ${{ steps.extcache.outputs.key }} key: ${{ steps.extcache.outputs.key }}
restore-keys: ${{ runner.os }}-${{ env.extensions-cache-key }} restore-keys: ${{ runner.os }}-${{ env.extensions-cache-key }}
- name: Setup PHP - name: Setup PHP
uses: shivammathur/setup-php@v2 uses: shivammathur/setup-php@v2
with: with:
php-version: ${{ matrix.php-versions }} php-version: ${{ matrix.php-versions }}
extensions: ${{ env.extensions }} extensions: ${{ env.extensions }}
# Setup GitHub CI PHP problem matchers # Setup GitHub CI PHP problem matchers
# https://github.com/shivammathur/setup-php#problem-matchers # https://github.com/shivammathur/setup-php#problem-matchers
- name: Setup problem matchers for PHP - name: Setup problem matchers for PHP
run: echo "::add-matcher::${{ runner.tool_cache }}/php.json" run: echo "::add-matcher::${{ runner.tool_cache }}/php.json"
- name: Setup problem matchers for PHPUnit - name: Setup problem matchers for PHPUnit
run: echo "::add-matcher::${{ runner.tool_cache }}/phpunit.json" run: echo "::add-matcher::${{ runner.tool_cache }}/phpunit.json"
# composer cache # composer cache
- name: Remove composer lock - name: Remove composer lock
run: rm composer.lock run: rm composer.lock
- name: Get composer cache directory - name: Get composer cache directory
id: composer-cache id: composer-cache
run: echo "dir=$(composer config cache-files-dir)" >> $GITHUB_OUTPUT run: echo "dir=$(composer config cache-files-dir)" >> $GITHUB_OUTPUT
# http://man7.org/linux/man-pages/man1/date.1.html # http://man7.org/linux/man-pages/man1/date.1.html
# https://github.com/actions/cache#creating-a-cache-key # https://github.com/actions/cache#creating-a-cache-key
- name: Get Date - name: Get Date
id: get-date id: get-date
run: echo "date=$(/bin/date -u "+%Y%m%d")" >> $GITHUB_OUTPUT run: echo "date=$(/bin/date -u "+%Y%m%d")" >> $GITHUB_OUTPUT
shell: bash shell: bash
- name: Cache dependencies - name: Cache dependencies
uses: actions/cache@v3 uses: actions/cache@v4
with: with:
path: ${{ steps.composer-cache.outputs.dir }} path: "${{ steps.composer-cache.outputs.dir }}"
key: ${{ runner.os }}-composer-${{ steps.get-date.outputs.date }}-${{ hashFiles('**/composer.json') }} key: "${{ runner.os }}-composer-${{ steps.get-date.outputs.date }}-${{ hashFiles('**/composer.json') }}"
restore-keys: ${{ runner.os }}-composer-${{ steps.get-date.outputs.date }}- restore-keys: "${{ runner.os }}-composer-${{ steps.get-date.outputs.date }}-"
# composer installation # composer installation
- name: Unset platform requirement
run: composer config --unset platform
- name: Setup PHPunit - name: Setup PHPunit
run: composer install -n run: composer install -n
- name: Install Google Cloud Storage - name: Install Google Cloud Storage
run: composer require google/cloud-storage run: composer require google/cloud-storage
# testing # testing
- name: Run unit tests - name: Run unit tests
run: ../vendor/bin/phpunit --no-coverage run: ../vendor/bin/phpunit --no-coverage --log-junit results.xml
working-directory: tst working-directory: tst
- name: Upload Test Results
if: always()
uses: actions/upload-artifact@v4
with:
name: Test Results (PHP ${{ matrix.php-versions }})
path: tst/results.xml
Mocha: Mocha:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- name: Checkout - name: Checkout
uses: actions/checkout@v3 uses: actions/checkout@v4
- name: Setup Node - name: Setup Node
uses: actions/setup-node@v3 uses: actions/setup-node@v4
with: with:
node-version: '16' node-version: '18'
cache: 'npm' cache: 'npm'
cache-dependency-path: 'js/package-lock.json' cache-dependency-path: 'js/package-lock.json'
- name: Setup Mocha - name: Setup Mocha
run: npm install -g mocha run: npm install -g mocha
- name: Setup Node modules - name: Setup Node modules
run: npm ci run: npm ci
working-directory: js working-directory: js
- name: Run unit tests - name: Run unit tests
run: npm test run: npm run ci-test
working-directory: js working-directory: js
- name: Upload Test Results
if: always()
uses: actions/upload-artifact@v4
with:
name: Test Results (Mocha)
path: js/mocha-results.xml
event_file:
name: "Event File"
runs-on: ubuntu-latest
steps:
- name: Upload
uses: actions/upload-artifact@v4
with:
name: Event File
path: "${{ github.event_path }}"

3
.gitignore vendored
View File

@ -28,12 +28,15 @@ vendor/**/build_phar.php
# Ignore local node modules, unit testing logs, api docs and IDE project files # Ignore local node modules, unit testing logs, api docs and IDE project files
js/node_modules/ js/node_modules/
js/mocha-results.xml
js/test.log js/test.log
tst/log/ tst/log/
tst/ConfigurationCombinationsTest.php tst/ConfigurationCombinationsTest.php
tst/.phpunit.result.cache
.settings .settings
.buildpath .buildpath
.project .project
.phpdoc
.externalToolBuilders .externalToolBuilders
.c9 .c9
/.idea/ /.idea/

View File

@ -2,6 +2,7 @@ RewriteEngine on
RewriteCond !%{HTTP_USER_AGENT} "Let's Encrypt validation server" [NC] RewriteCond !%{HTTP_USER_AGENT} "Let's Encrypt validation server" [NC]
RewriteCond %{HTTP_USER_AGENT} ^.*(bot|spider|crawl|https?://|WhatsApp|SkypeUriPreview|facebookexternalhit) [NC] RewriteCond %{HTTP_USER_AGENT} ^.*(bot|spider|crawl|https?://|WhatsApp|SkypeUriPreview|facebookexternalhit) [NC]
RewriteRule .* - [R=403,L] RewriteRule .* - [R=403,L]
AddType application/wasm .wasm
<IfModule mod_php7.c> <IfModule mod_php7.c>
php_value max_execution_time 30 php_value max_execution_time 30

7
.vscode/extensions.json vendored Normal file
View File

@ -0,0 +1,7 @@
{
"recommendations": [
"recca0120.vscode-phpunit",
"onecentlin.phpunit-snippets",
"devsense.profiler-php-vscode"
]
}

35
.vscode/launch.json vendored Normal file
View File

@ -0,0 +1,35 @@
{
"version": "0.2.0",
"configurations": [
{
"name": "Launch built-in server and debug",
"type": "php",
"request": "launch",
"runtimeArgs": [
"-S",
"localhost:8000",
"-t",
"."
],
"port": 9003,
"serverReadyAction": {
"action": "openExternally"
}
},
{
"name": "Debug current script in console",
"type": "php",
"request": "launch",
"program": "${file}",
"cwd": "${fileDirname}",
"externalConsole": false,
"port": 9003
},
{
"name": "Listen for Xdebug",
"type": "php",
"request": "launch",
"port": 9003
}
]
}

5
.vscode/settings.json vendored Normal file
View File

@ -0,0 +1,5 @@
{
"files.associations": {
"**/cfg/conf*.php": "ini"
}
}

View File

@ -1,289 +1,401 @@
# PrivateBin version history # PrivateBin version history
* **1.5.2 (2023-07-09)** ## 1.7.7 (not yet released)
* ADDED: Allow AWS SDK to use default credential provider chain for S3Storage (#1070) * ADDED: Switching templates using the web ui (#1501)
* CHANGED: Upgrading libraries to: DOMpurify 3.0.4 & jQuery 3.7.0 * CHANGED: Passing large data structures by reference to reduce memory consumption (#858)
* FIXED: Addressed PHP 8.2 deprecation warnings (#1092) * CHANGED: Removed use of ctype functions and polyfill library for ctype
* FIXED: Expose types JSON-LD incl. configured expiration dates (#1045) * CHANGED: Upgrading libraries to: DOMpurify 3.2.5, ip-lib 1.20.0
* **1.5.1 (2022-12-24)**
* ADDED: script for administrative tasks: deleting pastes (#274), removing empty directories (#277), purging expired pastes (#276) & statistics (#319) ## 1.7.6 (2025-02-01)
* FIXED: Revert Filesystem purge to limited and randomized lookup (#1030) * ADDED: Ability to copy the paste by clicking the copy icon button or using the keyboard shortcut ctrl+c/cmd+c (#1390 & #12)
* FIXED: Catch JSON decode errors when invalid data gets sent to the API (#1030) * CHANGED: Allow toggling tab-key-support using `[Ctrl]+[m]` or `[Esc]` in textarea for keyboard navigation (#1386)
* FIXED: Support sorting v1 format in mixed version comments in Filesystem backend (#1030) * CHANGED: Switched to WASM streaming and replace unsafe-eval with wasm-unsafe-eval CSP declaration (#1464), requires webserver to have `application/wasm` MIME type configured.
* **1.5 (2022-12-11)** * CHANGED: Replaced usage of strpos with str_starts_with & str_contains (#1373)
* ADDED: script for data storage backend migrations (#1012) * CHANGED: Added polyfill libraries for ctype, str_starts_with & str_contains functions (#1476)
* ADDED: Translations for Turkish, Slovak, Greek and Thai * CHANGED: Turned paste delete link into a button (#266)
* ADDED: S3 Storage backend (#994) * CHANGED: Upgrading libraries to: DOMpurify 3.2.4, cloud-storage 1.45.0, aws-sdk-php 3.336.2
* ADDED: Jdenticons as an option for comment icons (#793) * CHANGED: `bootstrap5` template UI improvements
* CHANGED: Avoid `SUPER` privilege for setting the `sql_mode` for MariaDB/MySQL (#919) * FIXED: Redirect to the home page after changing the language (#92)
* CHANGED: Upgrading libraries to: DOMpurify 2.4.6, jQuery 3.6.1, Showdown 2.1.0 & zlib 1.2.13
* FIXED: Revert to CREATE INDEX without IF NOT EXISTS clauses, to support MySQL (#943) ## 1.7.5 (2024-11-16)
* FIXED: Apply table prefix to indexes as well, to support multiple instances sharing a single database (#943) * ADDED: Allow non persistent SQL connections, if configured (#1394)
* FIXED: YOURLS integration via new proxy, storing signature in configuration (#725) * ADDED: Show a button (that redirects to the `basepath` URL) inside the alert after a paste is deleted
* **1.4 (2022-04-09)** * CHANGED: Tweaked page footer of the `bootstrap5` template (#1392)
* ADDED: Translations for Corsican, Estonian, Finnish and Lojban * CHANGED: Simpler PostgreSQL table lookup query (#1361)
* ADDED: new HTTP headers improving security (#765) * CHANGED: SRI hashes are now configurable, no longer hardcoded in templates (#1365)
* ADDED: Download button for paste text (#774) * CHANGED: Upgrading libraries to: DOMpurify 3.1.7, ip-lib 1.18.1, cloud-storage 1.43.0, aws-sdk-php 3.325.0
* ADDED: Opt-out of federated learning of cohorts (FLoC) (#776) * FIXED: Numeric array keys being cast to integer causing failures under strict type checking (#1435)
* ADDED: Configuration option to exempt IPs from the rate-limiter (#787)
* ADDED: Google Cloud Storage backend support (#795) ## 1.7.4 (2024-07-09)
* ADDED: Oracle database support (#868) * CHANGED: Saving markdown pastes uses `.md` extension instead of `.txt` (#1293)
* ADDED: Configuration option to limit paste creation and commenting to certain IPs (#883) * CHANGED: Enable strict type checking in PHP (#1350)
* ADDED: Set CSP also as meta tag, to deal with misconfigured webservers mangling the HTTP header * CHANGED: Various tweaks of the `bootstrap5` template, suggested by the community
* ADDED: Sanitize SVG preview, preventing script execution in instance context * FIXED: Reset password input field on creation of new paste (#1194)
* CHANGED: Language selection cookie only transmitted over HTTPS (#472) * FIXED: Allow database schema upgrade to skip versions (#1343)
* CHANGED: Upgrading libraries to: base-x 4.0.0, bootstrap 3.4.1 (JS), DOMpurify 2.3.6, ip-lib 1.18.0, jQuery 3.6.0, random_compat 2.0.21, Showdown 2.0.3 & zlib 1.2.12 * FIXED: `bootstrap5` dark mode toggle unset on dark browser preference (#1340)
* CHANGED: Removed automatic `.ini` configuration file migration (#808) * FIXED: Prevent bypassing YOURLS proxy URL filter, allowing to shorten non-self URLs
* CHANGED: Removed configurable `dir` for `traffic` & `purge` limiters (#419)
* CHANGED: Server salt, traffic and purge limiter now stored in the storage backend (#419) ## 1.7.3 (2024-05-13)
* CHANGED: Drop support for attachment download in IE * CHANGED: Various tweaks of the `bootstrap5` template, suggested by the community
* FIXED: Error when attachments are disabled, but paste with attachment gets displayed * CHANGED: Upgrading libraries to: DOMpurify 3.1.3
* **1.3.5 (2021-04-05)** * FIXED: Selected expiration not being applied, when using bootstrap template (#1309)
* ADDED: Translations for Hebrew, Lithuanian, Indonesian and Catalan
* ADDED: Make the project info configurable (#681) ## 1.7.2 (2024-05-05)
* CHANGED: Upgrading libraries to: DOMpurify 2.2.7, kjua 0.9.0 & random_compat 2.0.18 * ADDED: Allow use of `shortenviayourls` in query parameters (#1267)
* CHANGED: Open all links in new window (#630) * ADDED: Input sanitation to some not yet filtered query and server parameters
* FIXED: PDF display in Firefox (#630) * ADDED: Optional Bootstrap CSS 5.3.3 based template, use configuration `template = "bootstrap5"` to switch to it (#728)
* FIXED: Allow pasting into password input dialog (#630) * CHANGED: "Send" button now labeled "Create" (#946)
* FIXED: Display of expiration date in email (#630) * CHANGED: Drop some PHP < 5.6 fallbacks, minimum version is PHP 7.3 as of release 1.6.0
* FIXED: Allow display of durations in weeks (#630) * CHANGED: Set `lang` cookie with lax `SameSite` property
* FIXED: Avoid exposing burn-after-reading messages from cache (#630) * CHANGED: Upgrading libraries to: DOMpurify 3.1.2 (#1299) & jQuery 3.7.1
* FIXED: Only display the dropzone when it should (#630) * CHANGED: `create` attribute is no longer returned in API for pastes & can be disabled for comments using `discussiondatedisplay` as well (#1290)
* FIXED: Detect delete token properly (#630) * FIXED: Add cache control headers also to API calls (#1263)
* FIXED: Sanitize output from `Helper.urls2links()` (#630) * FIXED: Shortened paste URL does not appear in email (#606)
* FIXED: Avoid recreation of existing pasteurl element when calling URL shortener (#630)
* FIXED: Downloads in Chrome >= 83 (#634) ## 1.7.1 (2024-02-11)
* FIXED: Display of empty files (#663) * FIXED: zlib 1.3.1 wasm file reference
* FIXED: Improve OpenGraph attributes (#651)
* FIXED: Reset to configured burn-after-reading, discussion and expiration settings (#682) ## 1.7.0 (2024-02-11)
* FIXED: Italic segment of project information (#756) * ADDED: Translations for Romanian
* **1.3.4 (2020-03-22)** * ADDED: Detect and report on damaged pastes (#1218)
* CHANGED: Minimum required PHP version is 5.6, due to a change in the identicon library and to use php's native hash_equals() * CHANGED: Ask for confirmation, before loading burn after reading pastes (#1237)
* CHANGED: Upgrading libraries to: identicon 2.0.0 * CHANGED: Focus on password input in modal dialog
* FIXED: Support custom expiration options in email function (#586) * CHANGED: Upgrading libraries to: DOMpurify 3.0.8 & zlib 1.3.1
* FIXED: Regression with encoding of HTML entities (#588) * FIXED: Support more types of valid URLs for shorteners, incl. IDN ones (#1224)
* FIXED: Unable to paste password on paste with attachment (#565 & #595) * FIXED: Email timezone buttons overlapping in some languages (#1039)
* **1.3.3 (2020-02-16)** * FIXED: Changing language mangles URL (#1191)
* CHANGED: Upgrading libraries to: DOMpurify 2.0.8 * FIXED: Needless reload when visiting default URL
* CHANGED: Several translations got updated with missing messages
* CHANGED: Introduce HTML entity encoding on server side (#581) ## 1.6.2 (2023-12-15)
* FIXED: HTML entity double encoding issues introduced in 1.3.2 (#560) * FIXED: English not selectable when `languageselection` enabled (#1208)
* **1.2.3 (2020-02-16)** * FIXED: SRI mismatch due to cached file having changed (#1207)
* CHANGED: Upgrading libraries to: DOMpurify 2.0.8
* CHANGED: Introduce HTML entity encoding on server side (#581) ## 1.6.1 (2023-12-04)
* FIXED: HTML entity double encoding issues introduced in 1.3.2 (#560) * ADDED: Right-To-Left (RTL) support for Arabic & Hebrew (#1174)
* **1.3.2 (2020-01-11)** * CHANGED: Upgrading libraries to: DOMpurify 3.0.6
* ADDED: Translation for Ukrainian (#533)
* ADDED: Option to send a mail with the link, when creating a paste (#398) ## 1.6.0 (2023-09-11)
* ADDED: Add support for CONFIG_PATH environment variable (#552) * ADDED: Translations for Japanese & Arabic
* CHANGED: Upgrading libraries to: base-x 3.0.7, DOMpurify 2.0.7 & Showdown 1.9.1 * ADDED: Configuration option to disable email button (#1164)
* FIXED: HTML injection via unescaped attachment filename (#554) * CHANGED: Minimum required PHP version is 7.3, due to upgrading PHPunit (#707)
* FIXED: Password disabling option (#527) * CHANGED: Removed PHP 5 polyfill for random_bytes()
* **1.2.2 (2020-01-11)**
* CHANGED: Upgrading libraries to: bootstrap 3.4.1 (CSS), DOMpurify 2.0.7, jQuery 3.4.1, kjua 0.6.0, Showdown 1.9.1 & SJCL 1.0.8 ## 1.5.2 (2023-07-09)
* FIXED: HTML injection via unescaped attachment filename (#554) * ADDED: Allow AWS SDK to use default credential provider chain for S3Storage (#1070)
* **1.3.1 (2019-09-22)** * CHANGED: Upgrading libraries to: DOMpurify 3.0.4 & jQuery 3.7.0
* ADDED: Translation for Bulgarian (#455) * FIXED: Addressed PHP 8.2 deprecation warnings (#1092)
* CHANGED: Improved mobile UI - obscured send button and hard to click shortener button (#477) * FIXED: Expose types JSON-LD incl. configured expiration dates (#1045)
* CHANGED: Enhanced URL shortener integration (#479)
* CHANGED: Improved file upload drag & drop UI (#317) ## 1.5.1 (2022-12-24)
* CHANGED: Increased default size limit from 2 to 10 MiB, switch data from BLOB to MEDIUMBLOB in MySQL (#458) * ADDED: script for administrative tasks: deleting pastes (#274), removing empty directories (#277), purging expired pastes (#276) & statistics (#319)
* CHANGED: Upgrading libraries to: DOMpurify 2.0.1 * FIXED: Revert Filesystem purge to limited and randomized lookup (#1030)
* FIXED: Enabling browsers without WASM to create pastes and read uncompressed ones (#454) * FIXED: Catch JSON decode errors when invalid data gets sent to the API (#1030)
* FIXED: Cloning related issues (#489, #491, #493, #494) * FIXED: Support sorting v1 format in mixed version comments in Filesystem backend (#1030)
* FIXED: Enable file operation only when editing (#497)
* FIXED: Clicking 'New' on a previously submitted paste does not blank address bar (#354) ## 1.5 (2022-12-11)
* FIXED: Clear address bar when create new paste from existing paste (#479) * ADDED: script for data storage backend migrations (#1012)
* FIXED: Discussion section not hiding when new/clone paste is clicked on (#484) * ADDED: Translations for Turkish, Slovak, Greek and Thai
* FIXED: Showdown.js error when posting svg qrcode (#485) * ADDED: S3 Storage backend (#994)
* FIXED: Failed to handle the case where user cancelled attachment selection properly (#487) * ADDED: Jdenticons as an option for comment icons (#793)
* FIXED: Displaying the appropriate errors in older browsers (#508) * CHANGED: Avoid `SUPER` privilege for setting the `sql_mode` for MariaDB/MySQL (#919)
* **1.3 (2019-07-09)** * CHANGED: Upgrading libraries to: DOMpurify 2.4.6, jQuery 3.6.1, Showdown 2.1.0 & zlib 1.2.13
* ADDED: Translation for Czech (#424) * FIXED: Revert to CREATE INDEX without IF NOT EXISTS clauses, to support MySQL (#943)
* ADDED: Threat modeled the application (#177) * FIXED: Apply table prefix to indexes as well, to support multiple instances sharing a single database (#943)
* ADDED: Made compression configurable (#38) * FIXED: YOURLS integration via new proxy, storing signature in configuration (#725)
* CHANGED: Minimum required PHP version is 5.5, due to a change in the identicon library
* CHANGED: Minimum required browser versions are Firefox 54, Chrome 57, Opera 44, Safari 11, Edge 16, due to use of WebCrypto API, async/await, ES6 & WebAssembly features - all Internet Explorer versions are incompatible ## 1.4 (2022-04-09)
* CHANGED: JSON and encryption formats were changed to replace SJCL library by browser integrated WebCrypto API (#28, #74) * ADDED: Translations for Corsican, Estonian, Finnish and Lojban
* CHANGED: Replaced rawdeflate.js with zlib.wasm to resolve decompression failures and gain compatibility with standard deflate implementations (#193, #260, #328, #434, #440) * ADDED: new HTTP headers improving security (#765)
* CHANGED: Increase PBKDF2 iterations to 100k (#350) * ADDED: Download button for paste text (#774)
* CHANGED: Replaced last use of MD5 with FowlerNollVo checksum which produces the exact length we need for the paste ID (#49) * ADDED: Opt-out of federated learning of cohorts (FLoC) (#776)
* CHANGED: Simplified some PHP code & renamed PrivateBin class into Controller, to make MVC pattern use more obvious (#342) * ADDED: Configuration option to exempt IPs from the rate-limiter (#787)
* CHANGED: Upgrading libraries to: identicon 1.2.0, random_compat 2.0.18, jQuery 3.4.1, Showdown 1.9.0, DOMpurify 1.0.11 & kjua 0.6.0 * ADDED: Google Cloud Storage backend support (#795)
* FIXED: Prevent Chrome from sending content of paste to Google for translation (#378) * ADDED: Oracle database support (#868)
* FIXED: To support attachments larger then 2 MiB in newer Chrome versions, we switched to blob instead of data URIs (#432) * ADDED: Configuration option to limit paste creation and commenting to certain IPs (#883)
* FIXED: Since Outlook strips trailing equal signs in links, the key in URL hash is now base58 encoded, instead of base64 (#377) * ADDED: Set CSP also as meta tag, to deal with misconfigured webservers mangling the HTTP header
* FIXED: Facebooks started injecting parameters into shared URLs for tracking that lead to inaccessible pastes (#396) * ADDED: Sanitize SVG preview, preventing script execution in instance context
* FIXED: Properly escaped HTML in raw text mode (#358) * CHANGED: Language selection cookie only transmitted over HTTPS (#472)
* FIXED: Made download links better readable in the dark bootstrap theme (#364) * CHANGED: Upgrading libraries to: base-x 4.0.0, bootstrap 3.4.1 (JS), DOMpurify 2.3.6, ip-lib 1.18.0, jQuery 3.6.0, random_compat 2.0.21, Showdown 2.0.3 & zlib 1.2.12
* FIXED: Allow Letsencrypt bot to access on apache servers (#413) * CHANGED: Removed automatic `.ini` configuration file migration (#808)
* **1.2.1 (2018-08-11)** * CHANGED: Removed configurable `dir` for `traffic` & `purge` limiters (#419)
* ADDED: Add support for mega.nz links in pastes and comments (#331) * CHANGED: Server salt, traffic and purge limiter now stored in the storage backend (#419)
* CHANGED: Added some missing Russian translations (#348) * CHANGED: Drop support for attachment download in IE
* CHANGED: Minor PHP refactoring: Rename PrivateBin class to Controller, improved logic of some persistence classes (#342) * FIXED: Error when attachments are disabled, but paste with attachment gets displayed
* CHANGED: Upgrading DOMpurify library to 1.0.7
* FIXED: Ensure legacy browsers without webcrypto support can't create paste keys with insufficient entropy (#346) ## 1.3.5 (2021-04-05)
* FIXED: Re-add support for old browsers (Firefox&lt;21, Chrome&lt;31, Safari&lt;7, IE&lt;11), broken in 1.2, will be removed again in 1.3 * ADDED: Translations for Hebrew, Lithuanian, Indonesian and Catalan
* **1.2 (2018-07-22)** * ADDED: Make the project info configurable (#681)
* ADDED: Translations for Spanish, Occitan, Norwegian, Portuguese, Dutch and Hungarian * CHANGED: Upgrading libraries to: DOMpurify 2.2.7, kjua 0.9.0 & random_compat 2.0.18
* ADDED: Option in configuration to change the default "PrivateBin" title of the site * CHANGED: Open all links in new window (#630)
* ADDED: Added display of video, audio & PDF, drag & drop, preview of attachments (#182) * FIXED: PDF display in Firefox (#630)
* ADDED: QR code generation (#169) * FIXED: Allow pasting into password input dialog (#630)
* ADDED: Introduced DOMpurify library to sanitize generated HTML before display (#183) * FIXED: Display of expiration date in email (#630)
* CHANGED: Force JSON request for getting paste data & password retry (#216) * FIXED: Allow display of durations in weeks (#630)
* CHANGED: Minimum required PHP version is 5.4 (#186) * FIXED: Avoid exposing burn-after-reading messages from cache (#630)
* CHANGED: Shipped .htaccess files were updated for Apache 2.4 (#192) * FIXED: Only display the dropzone when it should (#630)
* CHANGED: Cleanup of bootstrap template variants and moved icons to `img` directory * FIXED: Detect delete token properly (#630)
* CHANGED: Removed option to hide clone button on expiring pastes, since this requires reading the paste for rendering the template, which leaks information on the pastes state * FIXED: Sanitize output from `Helper.urls2links()` (#630)
* CHANGED: Upgrading libraries to: SJCL 1.0.7, jQuery 3.3.1, Base64 2.4.5, Showdown 1.8.6, DOMpurify 1.0.5 & Prettify 453bd5f * FIXED: Avoid recreation of existing pasteurl element when calling URL shortener (#630)
* CHANGED: Refactored JavaScript code, making it modular with private and public functions, making it much easier to maintain (#178) * FIXED: Downloads in Chrome >= 83 (#634)
* FIXED: To counteract regressions introduced by the refactoring, we finally introduced property based unit testing for the JavaScript code, this caught several regressions, but also some very old bugs not found so far (#32) * FIXED: Display of empty files (#663)
* **1.1.1 (2017-10-06)** * FIXED: Improve OpenGraph attributes (#651)
* CHANGED: Switched to `.php` file extension for configuration file, to avoid leaking configuration data in unprotected installation. * FIXED: Reset to configured burn-after-reading, discussion and expiration settings (#682)
* **1.1 (2016-12-26)** * FIXED: Italic segment of project information (#756)
* ADDED: Translations for Italian and Russian
* ADDED: Loading message displayed until decryption succeeded for slower (in terms of CPU or network) systems ## 1.3.4 (2020-03-22)
* ADDED: Dockerfile for docker container creation * CHANGED: Minimum required PHP version is 5.6, due to a change in the identicon library and to use php's native hash_equals()
* CHANGED: Using modal dialog to request password input instead of native JS input window (#69) * CHANGED: Upgrading libraries to: identicon 2.0.0
* CHANGED: Suppressed referrer HTTP header sending when following links in a paste or comment (#96) and added additional HTTP headers for XSS mitigation (#91) * FIXED: Support custom expiration options in email function (#586)
* CHANGED: Updated random_compat and jQuery libraries * FIXED: Regression with encoding of HTML entities (#588)
* FIXED: XSS using JavaScript stored as markdown formatted paste, after clicking on Raw paste button (#137) * FIXED: Unable to paste password on paste with attachment (#565 & #595)
* FIXED: Automatic purging deleting non-expiring pastes, when using database store (#149)
* **1.0 (2016-08-25)** ## 1.3.3 (2020-02-16)
* ADDED: Translations for Slowene and Chinese * CHANGED: Upgrading libraries to: DOMpurify 2.0.8
* ADDED: re-introduced (optional) URL shortener support, which was removed back in version 0.16 for privacy concerns * CHANGED: Several translations got updated with missing messages
* ADDED: Preview tab, helpful for writing markdown code or check the source code rendering * CHANGED: Introduce HTML entity encoding on server side (#581)
* ADDED: Automatic purging of expired pastes, done on paste creation * FIXED: HTML entity double encoding issues introduced in 1.3.2 (#560)
* ADDED: Option to disable icons in discussions (will only affect newly created pastes)
* ADDED: Composer support ## 1.2.3 (2020-02-16)
* CHANGED: Renamed the ZeroBin fork to PrivateBin * CHANGED: Upgrading libraries to: DOMpurify 2.0.8
* CHANGED: Removed unmaintained RainTPL template engine, replacing the templates with straight forward PHP files * CHANGED: Introduce HTML entity encoding on server side (#581)
* CHANGED: New logo and favicons * FIXED: HTML entity double encoding issues introduced in 1.3.2 (#560)
* CHANGED: Upgrading SJCL library to 1.0.4
* CHANGED: Switched to GCM instead of CCM mode for AES encryption for newly created pastes ## 1.3.2 (2020-01-11)
* CHANGED: Use backported random bytes function from PHP7 for older PHP versions instead of mcrypt * ADDED: Translation for Ukrainian (#533)
* CHANGED: Switched to a SHA256 HMAC of the IP in traffic limiter instead of storing it in plain text on the server * ADDED: Option to send a mail with the link, when creating a paste (#398)
* CHANGED: Introduced content security policy header to reduce cross site scripting (XSS) risks * ADDED: Add support for CONFIG_PATH environment variable (#552)
* CHANGED: Added SHA512 subresource integrity hashes for all javascript includes to reduce the risk of manipulated scripts and easier detection of such * CHANGED: Upgrading libraries to: base-x 3.0.7, DOMpurify 2.0.7 & Showdown 1.9.1
* CHANGED: Refactored PHP code to conform to PSR-4 and PSR-2 standards * FIXED: HTML injection via unescaped attachment filename (#554)
* CHANGED: Switched to Identicons as the default for comments with nicknames * FIXED: Password disabling option (#527)
* CHANGED: Vizhash is now optional and based on (128 byte) SHA512 HMAC instead of (144 byte) combination of MD5, SHA1 and a reversal of that string
* FIXED: Content-type negociation for HTML in certain uncommon browser configurations ## 1.2.2 (2020-01-11)
* FIXED: JavaScript error displayed before page is loaded or during attachment load * CHANGED: Upgrading libraries to: bootstrap 3.4.1 (CSS), DOMpurify 2.0.7, jQuery 3.4.1, kjua 0.6.0, Showdown 1.9.1 & SJCL 1.0.8
* FIXED: Don't strip space characters at beginning or end of optional password * FIXED: HTML injection via unescaped attachment filename (#554)
* FIXED: Various UI glitches in mobile version or on smaller desktops with language menu, button spacing and long URLs
* FIXED: Back button now works as expected after switching to raw text view of a paste ## 1.3.1 (2019-09-22)
* FIXED: Reactivated second error message above send comment button to ensure its visibility when the main error message is outside the viewport * ADDED: Translation for Bulgarian (#455)
* FIXED: Raw text now displays original markdown instead of rendered HTML * CHANGED: Improved mobile UI - obscured send button and hard to click shortener button (#477)
* FIXED: Removed unused code detected with the help of various code review tools * CHANGED: Enhanced URL shortener integration (#479)
* FIXED: Table format for PostgreSQL, making it possible to use PostgreSQL as backend in addition to MySQL, SQLite and flat files * CHANGED: Improved file upload drag & drop UI (#317)
* **0.22 (2015-11-09)**: * CHANGED: Increased default size limit from 2 to 10 MiB, switch data from BLOB to MEDIUMBLOB in MySQL (#458)
* ADDED: Tab character input support * CHANGED: Upgrading libraries to: DOMpurify 2.0.1
* ADDED: Dark bootstrap theme * FIXED: Enabling browsers without WASM to create pastes and read uncompressed ones (#454)
* ADDED: Option to hide clone button on expiring pastes * FIXED: Cloning related issues (#489, #491, #493, #494)
* ADDED: Option to set a different default language then English and/or enforce it as the only language * FIXED: Enable file operation only when editing (#497)
* ADDED: Database now contains version to allow automatic update of structure, only if necessary; removing database structure check on each request * FIXED: Clicking 'New' on a previously submitted paste does not blank address bar (#354)
* ADDED: Favicons * FIXED: Clear address bar when create new paste from existing paste (#479)
* FIXING: Regressions in database layer, prohibiting pastes from being stored * FIXED: Discussion section not hiding when new/clone paste is clicked on (#484)
* FIXING: Fixing "missing" comments when they were posted during the same second to the same paste * FIXED: Showdown.js error when posting svg qrcode (#485)
* FIXING: JS failing when password input disabled * FIXED: Failed to handle the case where user cancelled attachment selection properly (#487)
* CHANGED: Switching positions of "New" and "Send" button, highlighting the latter to improve workflow * FIXED: Displaying the appropriate errors in older browsers (#508)
* CHANGED: Renamed config file to make updates easier
* CHANGED: Switching to JSON-based REST-API ## 1.3 (2019-07-09)
* CHANGED: Database structure to store attachments, allowing larger attachments to be stored (depending on maximum BLOB size of database backend) * ADDED: Translation for Czech (#424)
* CHANGED: Refactored data model, traffic limiting & request handling * ADDED: Threat modeled the application (#177)
* **0.21.1 (2015-09-21)**: * ADDED: Made compression configurable (#38)
* FIXING: lost meta data when using DB model instead of flat files * CHANGED: Minimum required PHP version is 5.5, due to a change in the identicon library
* FIXING: mobile navbar getting triggered on load * CHANGED: Minimum required browser versions are Firefox 54, Chrome 57, Opera 44, Safari 11, Edge 16, due to use of WebCrypto API, async/await, ES6 & WebAssembly features - all Internet Explorer versions are incompatible
* CHANGED: database table "paste" gets automatically extended with a "meta" column * CHANGED: JSON and encryption formats were changed to replace SJCL library by browser integrated WebCrypto API (#28, #74)
* CHANGED: navbar of "bootstrap" template now spans full width of view port on large screens * CHANGED: Replaced rawdeflate.js with zlib.wasm to resolve decompression failures and gain compatibility with standard deflate implementations (#193, #260, #328, #434, #440)
* **0.21 (2015-09-19)**: * CHANGED: Increase PBKDF2 iterations to 100k (#350)
* ADDED: Translations for German, French and Polish, language selection menu (optional) * CHANGED: Replaced last use of MD5 with FowlerNollVo checksum which produces the exact length we need for the paste ID (#49)
* ADDED: File upload and image display support (optional) * CHANGED: Simplified some PHP code & renamed PrivateBin class into Controller, to make MVC pattern use more obvious (#342)
* ADDED: Markdown format support * CHANGED: Upgrading libraries to: identicon 1.2.0, random_compat 2.0.18, jQuery 3.4.1, Showdown 1.9.0, DOMpurify 1.0.11 & kjua 0.6.0
* ADDED: "bootstrap-compact" template that hides some of the options in a drop down menu to ensure the nav bar fitting on one line on smaller screen sizes * FIXED: Prevent Chrome from sending content of paste to Google for translation (#378)
* FIXING: Various usability issues with different screen sizes / device types in the "bootstrap" template * FIXED: To support attachments larger then 2 MiB in newer Chrome versions, we switched to blob instead of data URIs (#432)
* CHANGED: Instead of having different options to enable and preselect certain formats there is now a generic `[formatter_options]` section where formats can be added to the displayed format drop down menu. A `defaultformatter` can be set, it defaults to "plaintext". The `syntaxhighlighting` configuration got deprecated. * FIXED: Since Outlook strips trailing equal signs in links, the key in URL hash is now base58 encoded, instead of base64 (#377)
* `zerobin.js` got a major refactoring: * FIXED: Facebooks started injecting parameters into shared URLs for tracking that lead to inaccessible pastes (#396)
* moved from global namespace into anonymous function * FIXED: Properly escaped HTML in raw text mode (#358)
* events are no longer set via "onclick" attributes in the templates, but bound by from JS side * FIXED: Made download links better readable in the dark bootstrap theme (#364)
* for simpler maintenance the functions were grouped into objects: zerobin (display logic, event handling), filter (compression, * FIXED: Allow Letsencrypt bot to access on apache servers (#413)
## 1.2.1 (2018-08-11)
* ADDED: Add support for mega.nz links in pastes and comments (#331)
* CHANGED: Added some missing Russian translations (#348)
* CHANGED: Minor PHP refactoring: Rename PrivateBin class to Controller, improved logic of some persistence classes (#342)
* CHANGED: Upgrading DOMpurify library to 1.0.7
* FIXED: Ensure legacy browsers without webcrypto support can't create paste keys with insufficient entropy (#346)
* FIXED: Re-add support for old browsers (Firefox&lt;21, Chrome&lt;31, Safari&lt;7, IE&lt;11), broken in 1.2, will be removed again in 1.3
## 1.2 (2018-07-22)
* ADDED: Translations for Spanish, Occitan, Norwegian, Portuguese, Dutch and Hungarian
* ADDED: Option in configuration to change the default "PrivateBin" title of the site
* ADDED: Added display of video, audio & PDF, drag & drop, preview of attachments (#182)
* ADDED: QR code generation (#169)
* ADDED: Introduced DOMpurify library to sanitize generated HTML before display (#183)
* CHANGED: Force JSON request for getting paste data & password retry (#216)
* CHANGED: Minimum required PHP version is 5.4 (#186)
* CHANGED: Shipped .htaccess files were updated for Apache 2.4 (#192)
* CHANGED: Cleanup of bootstrap template variants and moved icons to `img` directory
* CHANGED: Removed option to hide clone button on expiring pastes, since this requires reading the paste for rendering the template, which leaks information on the pastes state
* CHANGED: Upgrading libraries to: SJCL 1.0.7, jQuery 3.3.1, Base64 2.4.5, Showdown 1.8.6, DOMpurify 1.0.5 & Prettify 453bd5f
* CHANGED: Refactored JavaScript code, making it modular with private and public functions, making it much easier to maintain (#178)
* FIXED: To counteract regressions introduced by the refactoring, we finally introduced property based unit testing for the JavaScript code, this caught several regressions, but also some very old bugs not found so far (#32)
## 1.1.1 (2017-10-06)
* CHANGED: Switched to `.php` file extension for configuration file, to avoid leaking configuration data in unprotected installation.
## 1.1 (2016-12-26)
* ADDED: Translations for Italian and Russian
* ADDED: Loading message displayed until decryption succeeded for slower (in terms of CPU or network) systems
* ADDED: Dockerfile for docker container creation
* CHANGED: Using modal dialog to request password input instead of native JS input window (#69)
* CHANGED: Suppressed referrer HTTP header sending when following links in a paste or comment (#96) and added additional HTTP headers for XSS mitigation (#91)
* CHANGED: Updated random_compat and jQuery libraries
* FIXED: XSS using JavaScript stored as markdown formatted paste, after clicking on Raw paste button (#137)
* FIXED: Automatic purging deleting non-expiring pastes, when using database store (#149)
## 1.0 (2016-08-25)
* ADDED: Translations for Slowene and Chinese
* ADDED: re-introduced (optional) URL shortener support, which was removed back in version 0.16 for privacy concerns
* ADDED: Preview tab, helpful for writing markdown code or check the source code rendering
* ADDED: Automatic purging of expired pastes, done on paste creation
* ADDED: Option to disable icons in discussions (will only affect newly created pastes)
* ADDED: Composer support
* CHANGED: Renamed the ZeroBin fork to PrivateBin
* CHANGED: Removed unmaintained RainTPL template engine, replacing the templates with straight forward PHP files
* CHANGED: New logo and favicons
* CHANGED: Upgrading SJCL library to 1.0.4
* CHANGED: Switched to GCM instead of CCM mode for AES encryption for newly created pastes
* CHANGED: Use backported random bytes function from PHP7 for older PHP versions instead of mcrypt
* CHANGED: Switched to a SHA256 HMAC of the IP in traffic limiter instead of storing it in plain text on the server
* CHANGED: Introduced content security policy header to reduce cross site scripting (XSS) risks
* CHANGED: Added SHA512 subresource integrity hashes for all javascript includes to reduce the risk of manipulated scripts and easier detection of such
* CHANGED: Refactored PHP code to conform to PSR-4 and PSR-2 standards
* CHANGED: Switched to Identicons as the default for comments with nicknames
* CHANGED: Vizhash is now optional and based on (128 byte) SHA512 HMAC instead of (144 byte) combination of MD5, SHA1 and a reversal of that string
* FIXED: Content-type negociation for HTML in certain uncommon browser configurations
* FIXED: JavaScript error displayed before page is loaded or during attachment load
* FIXED: Don't strip space characters at beginning or end of optional password
* FIXED: Various UI glitches in mobile version or on smaller desktops with language menu, button spacing and long URLs
* FIXED: Back button now works as expected after switching to raw text view of a paste
* FIXED: Reactivated second error message above send comment button to ensure its visibility when the main error message is outside the viewport
* FIXED: Raw text now displays original markdown instead of rendered HTML
* FIXED: Removed unused code detected with the help of various code review tools
* FIXED: Table format for PostgreSQL, making it possible to use PostgreSQL as backend in addition to MySQL, SQLite and flat files
## 0.22 (2015-11-09):
* ADDED: Tab character input support
* ADDED: Dark bootstrap theme
* ADDED: Option to hide clone button on expiring pastes
* ADDED: Option to set a different default language then English and/or enforce it as the only language
* ADDED: Database now contains version to allow automatic update of structure, only if necessary; removing database structure check on each request
* ADDED: Favicons
* FIXING: Regressions in database layer, prohibiting pastes from being stored
* FIXING: Fixing "missing" comments when they were posted during the same second to the same paste
* FIXING: JS failing when password input disabled
* CHANGED: Switching positions of "New" and "Send" button, highlighting the latter to improve workflow
* CHANGED: Renamed config file to make updates easier
* CHANGED: Switching to JSON-based REST-API
* CHANGED: Database structure to store attachments, allowing larger attachments to be stored (depending on maximum BLOB size of database backend)
* CHANGED: Refactored data model, traffic limiting & request handling
## 0.21.1 (2015-09-21):
* FIXING: lost meta data when using DB model instead of flat files
* FIXING: mobile navbar getting triggered on load
* CHANGED: database table "paste" gets automatically extended with a "meta" column
* CHANGED: navbar of "bootstrap" template now spans full width of view port on large screens
## 0.21 (2015-09-19):
* ADDED: Translations for German, French and Polish, language selection menu (optional)
* ADDED: File upload and image display support (optional)
* ADDED: Markdown format support
* ADDED: "bootstrap-compact" template that hides some of the options in a drop down menu to ensure the nav bar fitting on one line on smaller screen sizes
* FIXING: Various usability issues with different screen sizes / device types in the "bootstrap" template
* CHANGED: Instead of having different options to enable and preselect certain formats there is now a generic `[formatter_options]` section where formats can be added to the displayed format drop down menu. A `defaultformatter` can be set, it defaults to "plaintext". The `syntaxhighlighting` configuration got deprecated.
* `zerobin.js` got a major refactoring:
* moved from global namespace into anonymous function
* events are no longer set via "onclick" attributes in the templates, but bound by from JS side
* for simpler maintenance the functions were grouped into objects: zerobin (display logic, event handling), filter (compression,
encryption), i18n (translation, counterpart of i18n.php) and helper (stateless utilities) encryption), i18n (translation, counterpart of i18n.php) and helper (stateless utilities)
* Wiki pages were added to address common topics: * Wiki pages were added to address common topics:
* [Upgrading from ZeroBin 0.19 Alpha](https://github.com/PrivateBin/PrivateBin/wiki/Upgrading-from-ZeroBin-0.19-Alpha) * [Upgrading from ZeroBin 0.19 Alpha](https://github.com/PrivateBin/PrivateBin/wiki/Upgrading-from-ZeroBin-0.19-Alpha)
* [Directory of public PrivateBin servers](https://github.com/PrivateBin/PrivateBin/wiki/PrivateBin-Directory) * [Directory of public PrivateBin servers](https://github.com/PrivateBin/PrivateBin/wiki/PrivateBin-Directory)
* [Translation](https://github.com/PrivateBin/PrivateBin/wiki/Translation) * [Translation](https://github.com/PrivateBin/PrivateBin/wiki/Translation)
* [Templates](https://github.com/PrivateBin/PrivateBin/wiki/Templates) * [Templates](https://github.com/PrivateBin/PrivateBin/wiki/Templates)
* **0.20 (2015-09-03)**:
* ADDED: Password protected pastes (optional) ## 0.20 (2015-09-03):
* ADDED: configuration options for highlighting, password, discussions, expiration times, rate limiting * ADDED: Password protected pastes (optional)
* ADDED: JSON-only retrieval of paste incl. discussion, used to be able to refresh paste when posting a comment * ADDED: configuration options for highlighting, password, discussions, expiration times, rate limiting
* ADDED: bootstrap CSS based template * ADDED: JSON-only retrieval of paste incl. discussion, used to be able to refresh paste when posting a comment
* CHANGED: "Burn after reading" pastes are now deleted only after the paste was successfully decrypted via callback. This prevents accidental deletion by chatbots following URLs and the like. Usage of a password is suggested to ensure only the desired recipient is able to encrypt it. * ADDED: bootstrap CSS based template
* CHANGED: the "opendiscussion" option now only controls if the discussion checkbox is preselected. Use "discussion = false" to disable the discussion feature completely (which also removes the checkbox from the template). * CHANGED: "Burn after reading" pastes are now deleted only after the paste was successfully decrypted via callback. This prevents accidental deletion by chatbots following URLs and the like. Usage of a password is suggested to ensure only the desired recipient is able to encrypt it.
* FIXING: Behaviour of several conflicting configuration options. As a general measure unit tests for 9 of the options and all their possible configurations were added via a unit test generator. * CHANGED: the "opendiscussion" option now only controls if the discussion checkbox is preselected. Use "discussion = false" to disable the discussion feature completely (which also removes the checkbox from the template).
* updated JS libraries: jquery to 1.11.3, sjcl to 1.0.2, base64.js to 2.1.9, deflate to 0.5, inflate to 0.3 and prettify to latest * FIXING: Behaviour of several conflicting configuration options. As a general measure unit tests for 9 of the options and all their possible configurations were added via a unit test generator.
* generally improved documentation, both inline phpdoc / JSdoc source code documentation, as well as Wiki pages on installation, configuration, development and JSON-API * updated JS libraries: jquery to 1.11.3, sjcl to 1.0.2, base64.js to 2.1.9, deflate to 0.5, inflate to 0.3 and prettify to latest
* **Alpha 0.19 (2013-07-05)**: * generally improved documentation, both inline phpdoc / JSdoc source code documentation, as well as Wiki pages on installation, configuration, development and JSON-API
* Corrected XSS security flaw which affected IE<10. Other browsers were not affected.
* Corrected spacing display in IE<10. ## Alpha 0.19 (2013-07-05):
* **Alpha 0.18 (2013-02-24)**: * Corrected XSS security flaw which affected IE<10. Other browsers were not affected.
* ADDED: The resulting URL is automatically selected after pressing "Send". You just have to press CTRL+C. * Corrected spacing display in IE<10.
* ADDED: Automatic syntax highlighting for 53 languages using highlight.js
* ADDED: "5 minutes" and "1 week" expirations. ## Alpha 0.18 (2013-02-24):
* ADDED: "Raw text" button. * ADDED: The resulting URL is automatically selected after pressing "Send". You just have to press CTRL+C.
* jQuery upgraded to 1.9.1 * ADDED: Automatic syntax highlighting for 53 languages using highlight.js
* sjcl upgraded to GitHub master 2013-02-23 * ADDED: "5 minutes" and "1 week" expirations.
* base64.js upgraded to 1.7 * ADDED: "Raw text" button.
* FIXED: Dates in discussion are now proper local dates. * jQuery upgraded to 1.9.1
* ADDED: Robot meta tags in HTML to prevent search engines indexing. * sjcl upgraded to GitHub master 2013-02-23
* ADDED: Better json checking (including entropy). * base64.js upgraded to 1.7
* ADDED: Added version to js/css assets URLs in order to prevent some abusive caches to serve an obsolete version of these files when ZeroBin is upgraded. * FIXED: Dates in discussion are now proper local dates.
* "Burn after reading" option has been moved out of Expiration combo to a separate checkbox. Reason is: You can prevent a read-once paste to be available ad vitam eternam on the net. * ADDED: Robot meta tags in HTML to prevent search engines indexing.
* **Alpha 0.17 (2013-02-23)**: * ADDED: Better json checking (including entropy).
* ADDED: Deletion URL. * ADDED: Added version to js/css assets URLs in order to prevent some abusive caches to serve an obsolete version of these files when ZeroBin is upgraded.
* small refactoring. * "Burn after reading" option has been moved out of Expiration combo to a separate checkbox. Reason is: You can prevent a read-once paste to be available ad vitam eternam on the net.
* improved regex checks.
* larger server alt on installation. ## Alpha 0.17 (2013-02-23):
* **Alpha 0.16**: * ADDED: Deletion URL.
* FIXED minor php warnings. * small refactoring.
* FIXED: zerobin.js reformated and properly commented. * improved regex checks.
* FIXED: Directory structure re-organized. * larger server alt on installation.
* CHANGED: URL shortening button was removed. (It was bad for privacy.)
* **Alpha 0.15 (2012-04-20):** ## Alpha 0.16:
* FIXED: 2 minor corrections to avoid notices in php log. * FIXED minor php warnings.
* FIXED: Sources converted to UTF-8. * FIXED: zerobin.js reformated and properly commented.
* **Alpha 0.14 (2012-04-20):** * FIXED: Directory structure re-organized.
* ADDED: GD presence is checked. * CHANGED: URL shortening button was removed. (It was bad for privacy.)
* CHANGED: Traffic limiter data files moved to data/ (→easier rights management)
* ADDED: "Burn after reading" implemented. Opening the URL will display the paste and immediately destroy it on server. ## Alpha 0.15 (2012-04-20):
* **Alpha 0.13 (2012-04-18):** * FIXED: 2 minor corrections to avoid notices in php log.
* FIXED: ''imageantialias()'' call removed because it's not really usefull and can be a problem on most hosts (if GD is not compiled in php). * FIXED: Sources converted to UTF-8.
* FIXED: $error not properly initialized in index.php
* **Alpha 0.12 (2012-04-18):** ## Alpha 0.14 (2012-04-20):
* **DISCUSSIONS !** Now you can enable discussions on your pastes. Of course, posted comments and nickname are also encrypted and the server cannot see them. * ADDED: GD presence is checked.
* This feature implies a change in storage format. You will have to delete all previous pastes in your ZeroBin. * CHANGED: Traffic limiter data files moved to data/ (→easier rights management)
* Added [[php:vizhash_gd|Vizhash]] as avatars, so you can match posters IP addresses without revealing them. (Same image = same IP). Of course the IP address cannot be deduced from the Vizhash. * ADDED: "Burn after reading" implemented. Opening the URL will display the paste and immediately destroy it on server.
* Remaining time before expiration is now displayed.
* Explicit tags were added to CSS and jQuery selectors (eg. div#aaa instead of #aaa) to speed up browser. ## Alpha 0.13 (2012-04-18):
* Better cleaning of the URL (to make sure the key is not broken by some stupid redirection service) * FIXED: ''imageantialias()'' call removed because it's not really usefull and can be a problem on most hosts (if GD is not compiled in php).
* **Alpha 0.11 (2012-04-12):** * FIXED: $error not properly initialized in index.php
* Automatically ignore parameters (such as &utm_source=...) added //after// the anchor by some stupid Web 2.0 services.
* First public release. ## Alpha 0.12 (2012-04-18):
* **Alpha 0.10 (2012-04-12):** ## DISCUSSIONS ! Now you can enable discussions on your pastes. Of course, posted comments and nickname are also encrypted and the server cannot see them.
* IE9 does not seem to correctly support ''pre-wrap'' either. Special handling mode activated for all version of IE<10. (Note: **ALL other browsers** correctly support this feature.) * This feature implies a change in storage format. You will have to delete all previous pastes in your ZeroBin.
* **Alpha 0.9 (2012-04-11):** * Added [[php:vizhash_gd|Vizhash]] as avatars, so you can match posters IP addresses without revealing them. (Same image = same IP). Of course the IP address cannot be deduced from the Vizhash.
* Oh bummer... IE 8 is as shitty as IE6/7: Its does not seem to support ''white-space:pre-wrap'' correctly. I had to activate the special handling mode. I still have to test IE 9. * Remaining time before expiration is now displayed.
* **Alpha 0.8 (2012-04-11):** * Explicit tags were added to CSS and jQuery selectors (eg. div#aaa instead of #aaa) to speed up browser.
* Source code not published yet. * Better cleaning of the URL (to make sure the key is not broken by some stupid redirection service)
* Interface completely redesigned. Icons added.
* Now properly supports IE6/7 (ugly display, but it works. "Clone" button is disabled though.) ## Alpha 0.11 (2012-04-12):
* Added one level of depth for storage directories (This is better for higher load servers). * Automatically ignore parameters (such as &utm_source=...) added //after// the anchor by some stupid Web 2.0 services.
* php version is now checked (min: 5.2.6) * First public release.
* Better checks on posted json data on server.
* Added "1 year" expiration. ## Alpha 0.10 (2012-04-12):
* URLs are now converted to clickable links. This include http, https, ftp and magnet links. * IE9 does not seem to correctly support ''pre-wrap'' either. Special handling mode activated for all version of IE<10. (Note: ALL other browsers correctly support this feature.)
* Clickable links include ''rel="nofollow"'' to discourage SEO.
* On my public service (http://sebsauvage.net/paste/) ## Alpha 0.9 (2012-04-11):
* All data will be deleted (you were warned - this is a test service) * Oh bummer... IE 8 is as shitty as IE6/7: Its does not seem to support ''white-space:pre-wrap'' correctly. I had to activate the special handling mode. I still have to test IE 9.
* Default paste expiration is now 1 month to prevent clogging-up my host.
## Alpha 0.8 (2012-04-11):
* Source code not published yet.
* Interface completely redesigned. Icons added.
* Now properly supports IE6/7 (ugly display, but it works. "Clone" button is disabled though.)
* Added one level of depth for storage directories (This is better for higher load servers).
* php version is now checked (min: 5.2.6)
* Better checks on posted json data on server.
* Added "1 year" expiration.
* URLs are now converted to clickable links. This include http, https, ftp and magnet links.
* Clickable links include ''rel="nofollow"'' to discourage SEO.
* On my public service (http://sebsauvage.net/paste/)
* All data will be deleted (you were warned - this is a test service)
* Default paste expiration is now 1 month to prevent clogging-up my host.

View File

@ -32,6 +32,8 @@
* Felix J. Ogris - S3 Storage backend, script for data backend migrations, dropped singleton behaviour of data backends * Felix J. Ogris - S3 Storage backend, script for data backend migrations, dropped singleton behaviour of data backends
* Mounir Idrassi & J. Mozdzen - secure YOURLS integration * Mounir Idrassi & J. Mozdzen - secure YOURLS integration
* Felipe Nakandakari - enabled AWS SDK to use default credential provider chain in the S3 Storage backend * Felipe Nakandakari - enabled AWS SDK to use default credential provider chain in the S3 Storage backend
* Aaron Sherber - cache control headers for API calls & use of `shortenviayourls` in query parameters
* Mikhail Romanov - copying to clipboard, UI/UX improvements, templates switching
## Translations ## Translations
* Hexalyse - French * Hexalyse - French
@ -63,3 +65,6 @@
* Stevo984 - Slovak * Stevo984 - Slovak
* Christos Karamolegkos - Greek * Christos Karamolegkos - Greek
* jaideejung007 - Thai * jaideejung007 - Thai
* Nicolas Le Gall - Japanese
* lazerns - Arabic
* Edward205 - Romanian

View File

@ -1,7 +1,7 @@
# License # License
PrivateBin consists of PHP and JS code which was originally written by Sébastien PrivateBin consists of PHP and JS code which was originally written by Sébastien
Sauvage in 2012 and falls unter the Zlib/libpng license. Also included are Sauvage in 2012 and falls under the Zlib/libpng license. Also included are
libraries that fall under the GPLv2 (rawinflate), BSD 3-clause (Showdown), MIT libraries that fall under the GPLv2 (rawinflate), BSD 3-clause (Showdown), MIT
(base64.js version 1.7, Bootstrap, Identicon, random_compat, composer, kjua, (base64.js version 1.7, Bootstrap, Identicon, random_compat, composer, kjua,
base-x), Apache (prettify.js) and CC-BY (favicon, icon, logo) licenses. All of base-x), Apache (prettify.js) and CC-BY (favicon, icon, logo) licenses. All of
@ -342,16 +342,16 @@ any theory of liability, whether in contract, strict liability, or tort
(including negligence or otherwise) arising in any way out of the use of this (including negligence or otherwise) arising in any way out of the use of this
software, even if advised of the possibility of such damage. software, even if advised of the possibility of such damage.
## MIT License for base64.js version 1.7, Bootstrap, Identicon, random_compat, Composer, kjua and base-x ## MIT License for base64.js version 1.7, Bootstrap, Identicon, Composer, kjua and base-x
Copyright © 2012 Dan Kogai Copyright © 2012 Dan Kogai
Copyright © 2011-2016 Twitter, Inc. Copyright © 2011-2016 Twitter, Inc.
Copyright © 2013 Benjamin Laugueux <benjamin@yzalis.com> Copyright © 2013 Benjamin Laugueux <benjamin@yzalis.com>
Copyright © 2015 Paragon Initiative Enterprises
Copyright © 2016 Nils Adermann, Jordi Boggiano Copyright © 2016 Nils Adermann, Jordi Boggiano
Copyright © 2016 Lars Jung (https://larsjung.de) Copyright © 2016 Lars Jung (https://larsjung.de)
Copyright © 2018 base-x contributors Copyright © 2018 base-x contributors
Copyright © 2014-2018 The Bitcoin Core developers Copyright © 2014-2018 The Bitcoin Core developers
Copyright © 2019-2024 The Bootstrap Authors
Permission is hereby granted, free of charge, to any person obtaining a copy Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal of this software and associated documentation files (the "Software"), to deal

View File

@ -1,8 +1,8 @@
.PHONY: all coverage coverage-js coverage-php doc doc-js doc-php increment sign test test-js test-php help .PHONY: all coverage coverage-js coverage-php doc doc-js doc-php increment sign test test-js test-php help
CURRENT_VERSION = 1.5.2 CURRENT_VERSION = 1.7.6
VERSION ?= 1.5.3 VERSION ?= 1.7.7
VERSION_FILES = index.php bin/ cfg/ *.md css/ i18n/ img/ js/package.json js/privatebin.js lib/ Makefile tpl/ tst/ VERSION_FILES = README.md SECURITY.md doc/Installation.md js/package*.json lib/Controller.php Makefile
REGEX_CURRENT_VERSION := $(shell echo $(CURRENT_VERSION) | sed "s/\./\\\./g") REGEX_CURRENT_VERSION := $(shell echo $(CURRENT_VERSION) | sed "s/\./\\\./g")
REGEX_VERSION := $(shell echo $(VERSION) | sed "s/\./\\\./g") REGEX_VERSION := $(shell echo $(VERSION) | sed "s/\./\\\./g")
@ -17,8 +17,8 @@ coverage-js: ## Run JS unit tests and generate code coverage reports.
cd js && nyc mocha cd js && nyc mocha
coverage-php: ## Run PHP unit tests and generate code coverage reports. coverage-php: ## Run PHP unit tests and generate code coverage reports.
cd tst && phpunit 2> /dev/null cd tst && XDEBUG_MODE=coverage phpunit 2> /dev/null
cd tst/log/php-coverage-report && sed -i "s#$(CURDIR)##g" *.html */*.html cd tst/log/php-coverage-report && sed -i "s#$(CURDIR)/##g" *.html */*.html
doc: doc-js doc-php ## Generate all code documentation. doc: doc-js doc-php ## Generate all code documentation.
@ -26,15 +26,14 @@ doc-js: ## Generate JS code documentation.
jsdoc -p -d doc/jsdoc js/privatebin.js js/legacy.js jsdoc -p -d doc/jsdoc js/privatebin.js js/legacy.js
doc-php: ## Generate JS code documentation. doc-php: ## Generate JS code documentation.
phpdoc --visibility public,protected,private -t doc/phpdoc -d lib/ phpdoc --visibility=public,protected,private --target=doc/phpdoc --directory=lib/
increment: ## Increment and commit new version number, set target version using `make increment VERSION=1.2.3`. increment: ## Increment and commit new version number, set target version using `make increment VERSION=1.2.3`.
for F in `grep -l -R $(REGEX_CURRENT_VERSION) $(VERSION_FILES) | grep -v -e tst/log/ -e ":0" -e CHANGELOG.md`; \ for F in `grep -l -R $(REGEX_CURRENT_VERSION) $(VERSION_FILES)`; \
do \ do \
sed -i "s/$(REGEX_CURRENT_VERSION)/$(REGEX_VERSION)/g" $$F; \ sed -i "s/$(REGEX_CURRENT_VERSION)/$(REGEX_VERSION)/g" $$F; \
done done
cd tst && phpunit --no-coverage && cd .. git add $(VERSION_FILES) CHANGELOG.md
git add $(VERSION_FILES) tpl/
git commit -m "incrementing version" git commit -m "incrementing version"
sign: ## Sign a release. sign: ## Sign a release.

View File

@ -1,6 +1,6 @@
# [![PrivateBin](https://cdn.rawgit.com/PrivateBin/assets/master/images/preview/logoSmall.png)](https://privatebin.info/) # [![PrivateBin](https://cdn.rawgit.com/PrivateBin/assets/master/images/preview/logoSmall.png)](https://privatebin.info/)
*Current version: 1.5.2* *Current version: 1.7.6*
**PrivateBin** is a minimalist, open source online **PrivateBin** is a minimalist, open source online
[pastebin](https://en.wikipedia.org/wiki/Pastebin) [pastebin](https://en.wikipedia.org/wiki/Pastebin)
@ -55,7 +55,7 @@ without losing any data.
paste (first) might still be disclosed via access logs. paste (first) might still be disclosed via access logs.
- In case of a server breach your data is secure as it is only stored encrypted - In case of a server breach your data is secure as it is only stored encrypted
on the server. However, the server could be absused or the server admin could on the server. However, the server could be abused or the server admin could
be legally forced into sending malicious code to their users, which logs be legally forced into sending malicious code to their users, which logs
the decryption key and sends it to a server when a user accesses a paste. the decryption key and sends it to a server when a user accesses a paste.
Therefore, do not access any PrivateBin instance if you think it has been Therefore, do not access any PrivateBin instance if you think it has been
@ -96,7 +96,7 @@ file](https://github.com/PrivateBin/PrivateBin/wiki/Configuration):
* [FAQ](https://github.com/PrivateBin/PrivateBin/wiki/FAQ) * [FAQ](https://github.com/PrivateBin/PrivateBin/wiki/FAQ)
* [Installation guide](https://github.com/PrivateBin/PrivateBin/blob/master/INSTALL.md#installation) * [Installation guide](https://github.com/PrivateBin/PrivateBin/blob/master/doc/Installation.md#installation)
* [Configuration guide](https://github.com/PrivateBin/PrivateBin/wiki/Configuration) * [Configuration guide](https://github.com/PrivateBin/PrivateBin/wiki/Configuration)

View File

@ -4,8 +4,8 @@
| Version | Supported | | Version | Supported |
| ------- | ------------------ | | ------- | ------------------ |
| 1.5.2 | :heavy_check_mark: | | 1.7.6 | :heavy_check_mark: |
| < 1.5.2 | :x: | | < 1.7.6 | :x: |
## Reporting a Vulnerability ## Reporting a Vulnerability
@ -14,5 +14,8 @@ a response within a week (usually during the next weekend). The respondee will
reply from their personal address and can offer you their GPG public key to reply from their personal address and can offer you their GPG public key to
support end-to-end encrypted communication on sensitive topics or attachments. support end-to-end encrypted communication on sensitive topics or attachments.
You can also [use the corresponding GitHub form](https://github.com/PrivateBin/PrivateBin/security/advisories/new)
to report a new vulnerability directly on GitHub.
You can also contact us via the regular issue tracker if the risk of early You can also contact us via the regular issue tracker if the risk of early
publication is low or you would request input from other PrivateBin users. publication is low or you would request input from other PrivateBin users.

View File

@ -1,6 +1,5 @@
#!/usr/bin/env php #!/usr/bin/env php
<?php <?php declare(strict_types=1);
/** /**
* PrivateBin * PrivateBin
* *
@ -9,11 +8,11 @@
* @link https://github.com/PrivateBin/PrivateBin * @link https://github.com/PrivateBin/PrivateBin
* @copyright 2012 Sébastien SAUVAGE (sebsauvage.net) * @copyright 2012 Sébastien SAUVAGE (sebsauvage.net)
* @license https://www.opensource.org/licenses/zlib-license.php The zlib/libpng License * @license https://www.opensource.org/licenses/zlib-license.php The zlib/libpng License
* @version 1.5.2
*/ */
namespace PrivateBin; namespace PrivateBin;
use Exception;
use PrivateBin\Configuration; use PrivateBin\Configuration;
use PrivateBin\Data\AbstractData; use PrivateBin\Data\AbstractData;
use PrivateBin\Model\Paste; use PrivateBin\Model\Paste;
@ -73,6 +72,35 @@ class Administration
exit("paste $pasteId successfully deleted" . PHP_EOL); exit("paste $pasteId successfully deleted" . PHP_EOL);
} }
/**
* lists all stored paste IDs
*
* @access private
*/
private function _list_ids()
{
$ids = $this->_store->getAllPastes();
foreach ($ids as $pasteid) {
echo $pasteid, PHP_EOL;
}
exit;
}
/**
* deletes all stored pastes (regardless of expiration)
*
* @access private
*/
private function _delete_all()
{
$ids = $this->_store->getAllPastes();
foreach ($ids as $pasteid) {
echo "Deleting paste ID: $pasteid" . PHP_EOL;
$this->_store->delete($pasteid);
}
exit("All pastes successfully deleted" . PHP_EOL);
}
/** /**
* removes empty directories, if current storage model uses Filesystem * removes empty directories, if current storage model uses Filesystem
* *
@ -125,13 +153,15 @@ class Administration
{ {
echo <<<'EOT' echo <<<'EOT'
Usage: Usage:
administration [--delete <paste id> | --empty-dirs | --help | --purge | --statistics] administration [--delete <paste id> | --delete-all | --empty-dirs | --help | --list-ids | --purge | --statistics]
Options: Options:
-d, --delete deletes the requested paste ID -d, --delete deletes the requested paste ID
--delete-all deletes all paste IDs
-e, --empty-dirs removes empty directories (only if Filesystem storage is -e, --empty-dirs removes empty directories (only if Filesystem storage is
configured) configured)
-h, --help displays this help message -h, --help displays this help message
-l, --list-ids lists all paste IDs
-p, --purge purge all expired pastes -p, --purge purge all expired pastes
-s, --statistics reads all stored pastes and comments and reports statistics -s, --statistics reads all stored pastes and comments and reports statistics
EOT, PHP_EOL; EOT, PHP_EOL;
@ -178,7 +208,8 @@ EOT, PHP_EOL;
self::_help(2); self::_help(2);
} }
$this->_opts = getopt('hd:eps', array('help', 'delete:', 'empty-dirs', 'purge', 'statistics')); $this->_opts = getopt('hd:epsl', array('help', 'delete:', 'empty-dirs', 'purge', 'statistics', 'list-ids', 'delete-all'));
if (!$this->_opts) { if (!$this->_opts) {
self::_error_echo('unsupported arguments given'); self::_error_echo('unsupported arguments given');
echo PHP_EOL; echo PHP_EOL;
@ -195,6 +226,7 @@ EOT, PHP_EOL;
{ {
$counters = array( $counters = array(
'burn' => 0, 'burn' => 0,
'damaged' => 0,
'discussion' => 0, 'discussion' => 0,
'expired' => 0, 'expired' => 0,
'md' => 0, 'md' => 0,
@ -217,7 +249,12 @@ EOT, PHP_EOL;
echo "Total:\t\t\t{$counters['total']}", PHP_EOL; echo "Total:\t\t\t{$counters['total']}", PHP_EOL;
foreach ($ids as $pasteid) { foreach ($ids as $pasteid) {
$paste = $this->_store->read($pasteid); try {
$paste = $this->_store->read($pasteid);
} catch (Exception $e) {
echo "Error reading paste {$pasteid}: ", $e->getMessage(), PHP_EOL;
++$counters['damaged'];
}
++$counters['progress']; ++$counters['progress'];
if ( if (
@ -271,6 +308,9 @@ Plain Text:\t\t{$counters['plain']}
Source Code:\t\t{$counters['syntax']} Source Code:\t\t{$counters['syntax']}
Markdown:\t\t{$counters['md']} Markdown:\t\t{$counters['md']}
EOT, PHP_EOL; EOT, PHP_EOL;
if ($counters['damaged'] > 0) {
echo "Damaged:\t\t{$counters['damaged']}", PHP_EOL;
}
if ($counters['unknown'] > 0) { if ($counters['unknown'] > 0) {
echo "Unknown format:\t\t{$counters['unknown']}", PHP_EOL; echo "Unknown format:\t\t{$counters['unknown']}", PHP_EOL;
} }
@ -300,12 +340,23 @@ EOT, PHP_EOL;
$class = 'PrivateBin\\Data\\' . $this->_conf->getKey('class', 'model'); $class = 'PrivateBin\\Data\\' . $this->_conf->getKey('class', 'model');
$this->_store = new $class($this->_conf->getSection('model_options')); $this->_store = new $class($this->_conf->getSection('model_options'));
if ($this->_option('l', 'list-ids') !== null) {
$this->_list_ids();
}
if ($this->_option(null, 'delete-all') !== null) {
$this->_delete_all();
}
if (($pasteId = $this->_option('d', 'delete')) !== null) { if (($pasteId = $this->_option('d', 'delete')) !== null) {
$this->_delete($pasteId); $this->_delete($pasteId);
} }
if ($this->_option('p', 'purge') !== null) { if ($this->_option('p', 'purge') !== null) {
$this->_store->purge(PHP_INT_MAX); try {
$this->_store->purge(PHP_INT_MAX);
} catch (Exception $e) {
echo 'Error purging pastes: ', $e->getMessage(), PHP_EOL,
'Run the statistics to find damaged paste IDs and either delete them or restore them from backup.', PHP_EOL;
}
exit('purging of expired pastes concluded' . PHP_EOL); exit('purging of expired pastes concluded' . PHP_EOL);
} }

View File

@ -1,6 +1,14 @@
#!/usr/bin/env php #!/usr/bin/env php
<?php <?php declare(strict_types=1);
/** /**
* PrivateBin
*
* a zero-knowledge paste bin
*
* @link https://github.com/PrivateBin/PrivateBin
* @copyright 2012 Sébastien SAUVAGE (sebsauvage.net)
* @license https://www.opensource.org/licenses/zlib-license.php The zlib/libpng License
*
* generates a config unit test class * generates a config unit test class
* *
* This generator is meant to test all possible configuration combinations * This generator is meant to test all possible configuration combinations
@ -23,7 +31,7 @@ new ConfigurationTestGenerator(array(
'tests' => array( 'tests' => array(
array( array(
'conditions' => array('steps' => $vd), 'conditions' => array('steps' => $vd),
'type' => 'RegExp', 'type' => 'MatchesRegularExpression',
'args' => array( 'args' => array(
'#<div[^>]*id="opendiscussionoption"[^>]*>#', '#<div[^>]*id="opendiscussionoption"[^>]*>#',
'$content', '$content',
@ -53,7 +61,7 @@ new ConfigurationTestGenerator(array(
'setting' => false, 'setting' => false,
'tests' => array( 'tests' => array(
array( array(
'type' => 'NotRegExp', 'type' => 'DoesNotMatchRegularExpression',
'args' => array( 'args' => array(
'#<div[^>]*id="opendiscussionoption"[^>]*>#', '#<div[^>]*id="opendiscussionoption"[^>]*>#',
'$content', '$content',
@ -70,7 +78,7 @@ new ConfigurationTestGenerator(array(
'tests' => array( 'tests' => array(
array( array(
'conditions' => array('main/discussion' => true), 'conditions' => array('main/discussion' => true),
'type' => 'RegExp', 'type' => 'MatchesRegularExpression',
'args' => array( 'args' => array(
'#<input[^>]+id="opendiscussion"[^>]*checked="checked"[^>]*>#', '#<input[^>]+id="opendiscussion"[^>]*checked="checked"[^>]*>#',
'$content', '$content',
@ -84,7 +92,7 @@ new ConfigurationTestGenerator(array(
'tests' => array( 'tests' => array(
array( array(
'conditions' => array('main/discussion' => true), 'conditions' => array('main/discussion' => true),
'type' => 'NotRegExp', 'type' => 'DoesNotMatchRegularExpression',
'args' => array( 'args' => array(
'#<input[^>]+id="opendiscussion"[^>]*checked="checked"[^>]*>#', '#<input[^>]+id="opendiscussion"[^>]*checked="checked"[^>]*>#',
'$content', '$content',
@ -100,7 +108,7 @@ new ConfigurationTestGenerator(array(
'setting' => true, 'setting' => true,
'tests' => array( 'tests' => array(
array( array(
'type' => 'RegExp', 'type' => 'MatchesRegularExpression',
'args' => array( 'args' => array(
'#<input[^>]+id="burnafterreading"[^>]*checked="checked"[^>]*>#', '#<input[^>]+id="burnafterreading"[^>]*checked="checked"[^>]*>#',
'$content', '$content',
@ -113,7 +121,7 @@ new ConfigurationTestGenerator(array(
'setting' => false, 'setting' => false,
'tests' => array( 'tests' => array(
array( array(
'type' => 'NotRegExp', 'type' => 'DoesNotMatchRegularExpression',
'args' => array( 'args' => array(
'#<input[^>]+id="burnafterreading"[^>]*checked="checked"[^>]*>#', '#<input[^>]+id="burnafterreading"[^>]*checked="checked"[^>]*>#',
'$content', '$content',
@ -129,7 +137,7 @@ new ConfigurationTestGenerator(array(
'setting' => true, 'setting' => true,
'tests' => array( 'tests' => array(
array( array(
'type' => 'RegExp', 'type' => 'MatchesRegularExpression',
'args' => array( 'args' => array(
'#<div[^>]*id="password"[^>]*>#', '#<div[^>]*id="password"[^>]*>#',
'$content', '$content',
@ -143,7 +151,7 @@ new ConfigurationTestGenerator(array(
'tests' => array( 'tests' => array(
array( array(
'conditions' => array('main/discussion' => true), 'conditions' => array('main/discussion' => true),
'type' => 'NotRegExp', 'type' => 'DoesNotMatchRegularExpression',
'args' => array( 'args' => array(
'#<div[^>]*id="password"[^>]*>#', '#<div[^>]*id="password"[^>]*>#',
'$content', '$content',
@ -159,14 +167,14 @@ new ConfigurationTestGenerator(array(
'setting' => 'page', 'setting' => 'page',
'tests' => array( 'tests' => array(
array( array(
'type' => 'RegExp', 'type' => 'MatchesRegularExpression',
'args' => array( 'args' => array(
'#<link[^>]+type="text/css"[^>]+rel="stylesheet"[^>]+href="css/privatebin\.css\\?\d[\d\.]+\d+"[^>]*/>#', '#<link[^>]+type="text/css"[^>]+rel="stylesheet"[^>]+href="css/privatebin\.css\\?\d[\d\.]+\d+"[^>]*/>#',
'$content', '$content',
'outputs "page" stylesheet correctly', 'outputs "page" stylesheet correctly',
), ),
), array( ), array(
'type' => 'NotRegExp', 'type' => 'DoesNotMatchRegularExpression',
'args' => array( 'args' => array(
'#<link[^>]+type="text/css"[^>]+rel="stylesheet"[^>]+href="css/bootstrap/bootstrap-\d[\d\.]+\d\.css"[^>]*/>#', '#<link[^>]+type="text/css"[^>]+rel="stylesheet"[^>]+href="css/bootstrap/bootstrap-\d[\d\.]+\d\.css"[^>]*/>#',
'$content', '$content',
@ -179,14 +187,14 @@ new ConfigurationTestGenerator(array(
'setting' => 'bootstrap', 'setting' => 'bootstrap',
'tests' => array( 'tests' => array(
array( array(
'type' => 'NotRegExp', 'type' => 'DoesNotMatchRegularExpression',
'args' => array( 'args' => array(
'#<link[^>]+type="text/css"[^>]+rel="stylesheet"[^>]+href="css/privatebin\.css\\?\d[\d\.]+\d+"[^>]*/>#', '#<link[^>]+type="text/css"[^>]+rel="stylesheet"[^>]+href="css/privatebin\.css\\?\d[\d\.]+\d+"[^>]*/>#',
'$content', '$content',
'removes "page" stylesheet correctly', 'removes "page" stylesheet correctly',
), ),
), array( ), array(
'type' => 'RegExp', 'type' => 'MatchesRegularExpression',
'args' => array( 'args' => array(
'#<link[^>]+type="text/css"[^>]+rel="stylesheet"[^>]+href="css/bootstrap/bootstrap-\d[\d\.]+\d\.css"[^>]*/>#', '#<link[^>]+type="text/css"[^>]+rel="stylesheet"[^>]+href="css/bootstrap/bootstrap-\d[\d\.]+\d\.css"[^>]*/>#',
'$content', '$content',
@ -361,7 +369,7 @@ class ConfigurationTestGenerator
} }
// skip if not all test conditions are met // skip if not all test conditions are met
if (array_key_exists('conditions', $test)) { if (array_key_exists('conditions', $test)) {
while (list($path, $setting) = each($test['conditions'])) { foreach ($test['conditions'] as $path => $setting) {
if ($path == 'steps' && !in_array($step, $setting)) { if ($path == 'steps' && !in_array($step, $setting)) {
continue 2; continue 2;
} elseif ($path != 'steps') { } elseif ($path != 'steps') {
@ -405,18 +413,19 @@ class ConfigurationTestGenerator
private function _getHeader() private function _getHeader()
{ {
return <<<'EOT' return <<<'EOT'
<?php <?php declare(strict_types=1);
/** /**
* DO NOT EDIT: This file is generated automatically using configGenerator.php * DO NOT EDIT: This file is generated automatically using configGenerator.php
*/ */
use PHPUnit\Framework\TestCase;
use PrivateBin\Controller; use PrivateBin\Controller;
use PrivateBin\Data\Filesystem; use PrivateBin\Data\Filesystem;
use PrivateBin\Persistence\ServerSalt; use PrivateBin\Persistence\ServerSalt;
use PrivateBin\Persistence\TrafficLimiter; use PrivateBin\Persistence\TrafficLimiter;
use PrivateBin\Request; use PrivateBin\Request;
class ConfigurationCombinationsTest extends PHPUnit_Framework_TestCase class ConfigurationCombinationsTest extends TestCase
{ {
private $_conf; private $_conf;
@ -424,7 +433,7 @@ class ConfigurationCombinationsTest extends PHPUnit_Framework_TestCase
private $_path; private $_path;
public function setUp() public function setUp(): void
{ {
/* Setup Routine */ /* Setup Routine */
Helper::confBackup(); Helper::confBackup();
@ -435,7 +444,7 @@ class ConfigurationCombinationsTest extends PHPUnit_Framework_TestCase
$this->reset(); $this->reset();
} }
public function tearDown() public function tearDown(): void
{ {
/* Tear Down Routine */ /* Tear Down Routine */
unlink(CONF); unlink(CONF);
@ -564,7 +573,7 @@ EOT;
case 'Delete': case 'Delete':
$code .= <<<'EOT' $code .= <<<'EOT'
$this->assertRegExp( $this->assertMatchesRegularExpression(
'#<div[^>]*id="status"[^>]*>.*Paste was properly deleted[^<]*</div>#s', '#<div[^>]*id="status"[^>]*>.*Paste was properly deleted[^<]*</div>#s',
$content, $content,
'outputs deleted status correctly' 'outputs deleted status correctly'
@ -590,8 +599,9 @@ EOT;
return $this->_configurations; return $this->_configurations;
} }
echo "generateConfigurations: iteration $this->_iterationCount", PHP_EOL; echo "generateConfigurations: iteration $this->_iterationCount", PHP_EOL;
$continue = list($path, $settings) = each($this->_options); $path = key($this->_options);
if ($continue === false) { $settings = current($this->_options);
if (next($this->_options) === false) {
return $this->_configurations; return $this->_configurations;
} }
list($section, $option) = explode('/', $path); list($section, $option) = explode('/', $path);

View File

@ -1,9 +1,17 @@
#!/usr/bin/env php #!/usr/bin/env php
<?php <?php declare(strict_types=1);
/**
* PrivateBin
*
* a zero-knowledge paste bin
*
* @link https://github.com/PrivateBin/PrivateBin
* @copyright 2012 Sébastien SAUVAGE (sebsauvage.net)
* @license https://www.opensource.org/licenses/zlib-license.php The zlib/libpng License
*/
define('ITERATIONS', 100000); define('ITERATIONS', 100000);
require dirname(__FILE__) . DIRECTORY_SEPARATOR . '..' . DIRECTORY_SEPARATOR . 'vendor' . DIRECTORY_SEPARATOR . 'autoload.php'; require dirname(__FILE__) . DIRECTORY_SEPARATOR . '..' . DIRECTORY_SEPARATOR . 'vendor' . DIRECTORY_SEPARATOR . 'autoload.php';
use Identicon\Generator\GdGenerator; use Identicon\Generator\GdGenerator;
use Identicon\Generator\ImageMagickGenerator; use Identicon\Generator\ImageMagickGenerator;
@ -12,8 +20,6 @@ use Identicon\Identicon;
use Jdenticon\Identicon as Jdenticon; use Jdenticon\Identicon as Jdenticon;
use PrivateBin\Vizhash16x16; use PrivateBin\Vizhash16x16;
$vizhash = new Vizhash16x16(); $vizhash = new Vizhash16x16();
$identiconGenerators = array( $identiconGenerators = array(
'identicon GD' => new Identicon(new GdGenerator()), 'identicon GD' => new Identicon(new GdGenerator()),

View File

@ -1,7 +1,16 @@
#!/usr/bin/env php #!/usr/bin/env php
<?php <?php declare(strict_types=1);
/**
* PrivateBin
*
* a zero-knowledge paste bin
*
* @link https://github.com/PrivateBin/PrivateBin
* @copyright 2012 Sébastien SAUVAGE (sebsauvage.net)
* @license https://www.opensource.org/licenses/zlib-license.php The zlib/libpng License
*/
// change this, if your php files and data is outside of your webservers document root // change this, if your php files and data are outside of your webservers document root
define('PATH', dirname(__FILE__) . DIRECTORY_SEPARATOR . '..' . DIRECTORY_SEPARATOR); define('PATH', dirname(__FILE__) . DIRECTORY_SEPARATOR . '..' . DIRECTORY_SEPARATOR);
define('PUBLIC_PATH', __DIR__ . DIRECTORY_SEPARATOR); define('PUBLIC_PATH', __DIR__ . DIRECTORY_SEPARATOR);
@ -191,9 +200,9 @@ Options:
-h, --help displays this help message -h, --help displays this help message
-n dry run, do not copy data -n dry run, do not copy data
-v be verbose -v be verbose
<srcconfdir> use storage backend configration from conf.php found in <srcconfdir> use storage backend configuration from conf.php found in
this directory as source this directory as source
<dstconfdir> optionally, use storage backend configration from conf.php <dstconfdir> optionally, use storage backend configuration from conf.php
found in this directory as destination; defaults to: found in this directory as destination; defaults to:
" . PATH . "cfg" . DIRECTORY_SEPARATOR . "conf.php " . PATH . "cfg" . DIRECTORY_SEPARATOR . "conf.php
"); ");

View File

@ -18,6 +18,11 @@ discussion = true
; preselect the discussion feature, defaults to false ; preselect the discussion feature, defaults to false
opendiscussion = false opendiscussion = false
; enable or disable the display of dates & times in the comments, defaults to true
; Note that internally the creation time will still get tracked in order to sort
; the comments by creation time, but you can choose not to display them.
; discussiondatedisplay = false
; enable or disable the password feature, defaults to true ; enable or disable the password feature, defaults to true
password = true password = true
@ -37,8 +42,28 @@ defaultformatter = "plaintext"
; size limit per paste or comment in bytes, defaults to 10 Mebibytes ; size limit per paste or comment in bytes, defaults to 10 Mebibytes
sizelimit = 10485760 sizelimit = 10485760
; template to include, default is "bootstrap" (tpl/bootstrap.php) ; by default PrivateBin use "bootstrap" template (tpl/bootstrap.php).
template = "bootstrap" ; Optionally you can enable the template selection menu, which uses
; a session cookie to store the choice until the browser is closed.
templateselection = false
; List of available for selection templates when "templateselection" option is enabled
availabletemplates[] = "bootstrap"
availabletemplates[] = "bootstrap-page"
availabletemplates[] = "bootstrap-dark"
availabletemplates[] = "bootstrap-dark-page"
availabletemplates[] = "bootstrap-compact"
availabletemplates[] = "bootstrap-compact-page"
availabletemplates[] = "bootstrap5"
availabletemplates[] = "page"
; set the template your installs defaults to, defaults to "bootstrap" (tpl/bootstrap.php), also
; available are "page" (tpl/page.php), the classic ZeroBin style and several
; bootstrap variants: "bootstrap-dark", "bootstrap-compact", "bootstrap-page",
; which can be combined with "-dark" and "-compact" for "bootstrap-dark-page",
; "bootstrap-compact-page" and finally "bootstrap5" (tpl/bootstrap5.php) - previews at:
; https://privatebin.info/screenshots.html
; template = "bootstrap"
; (optional) info text to display ; (optional) info text to display
; use single, instead of double quotes for HTML attributes ; use single, instead of double quotes for HTML attributes
@ -65,6 +90,10 @@ languageselection = false
; It works both when a new paste is created and when you view a paste. ; It works both when a new paste is created and when you view a paste.
; qrcode = true ; qrcode = true
; (optional) Let users send an email sharing the paste URL with one click.
; It works both when a new paste is created and when you view a paste.
; email = true
; (optional) IP based icons are a weak mechanism to detect if a comment was from ; (optional) IP based icons are a weak mechanism to detect if a comment was from
; a different user when the same username was used in a comment. It might get ; a different user when the same username was used in a comment. It might get
; used to get the IP of a comment poster if the server salt is leaked and a ; used to get the IP of a comment poster if the server salt is leaked and a
@ -79,17 +108,17 @@ languageselection = false
; scripts or run your site behind certain DDoS-protection services. ; scripts or run your site behind certain DDoS-protection services.
; Check the documentation at https://content-security-policy.com/ ; Check the documentation at https://content-security-policy.com/
; Notes: ; Notes:
; - If you use a bootstrap theme, you can remove the allow-popups from the ; - If you use any bootstrap theme, you can remove the allow-popups from the
; sandbox restrictions. ; sandbox restrictions.
; - If you use the bootstrap5 theme, you must change default-src to 'self' to
; enable display of the svg icons
; - By default this disallows to load images from third-party servers, e.g. when ; - By default this disallows to load images from third-party servers, e.g. when
; they are embedded in pastes. If you wish to allow that, you can adjust the ; they are embedded in pastes. If you wish to allow that, you can adjust the
; policy here. See https://github.com/PrivateBin/PrivateBin/wiki/FAQ#why-does-not-it-load-embedded-images ; policy here. See https://github.com/PrivateBin/PrivateBin/wiki/FAQ#why-does-not-it-load-embedded-images
; for details. ; for details.
; - The 'unsafe-eval' is used in two cases; to check if the browser supports ; - The 'wasm-unsafe-eval' is used to enable webassembly support (used for zlib
; async functions and display an error if not and for Chrome to enable ; compression). You can remove it if compression doesn't need to be supported.
; webassembly support (used for zlib compression). You can remove it if Chrome ; cspheader = "default-src 'none'; base-uri 'self'; form-action 'none'; manifest-src 'self'; connect-src * blob:; script-src 'self' 'wasm-unsafe-eval'; style-src 'self'; font-src 'self'; frame-ancestors 'none'; img-src 'self' data: blob:; media-src blob:; object-src blob:; sandbox allow-same-origin allow-scripts allow-forms allow-popups allow-modals allow-downloads"
; doesn't need to be supported and old browsers don't need to be warned.
; cspheader = "default-src 'none'; base-uri 'self'; form-action 'none'; manifest-src 'self'; connect-src * blob:; script-src 'self' 'unsafe-eval'; style-src 'self'; font-src 'self'; frame-ancestors 'none'; img-src 'self' data: blob:; media-src blob:; object-src blob:; sandbox allow-same-origin allow-scripts allow-forms allow-popups allow-modals allow-downloads"
; stay compatible with PrivateBin Alpha 0.19, less secure ; stay compatible with PrivateBin Alpha 0.19, less secure
; if enabled will use base64.js version 1.7 instead of 2.1.9 and sha1 instead of ; if enabled will use base64.js version 1.7 instead of 2.1.9 and sha1 instead of
@ -236,26 +265,32 @@ dir = PATH "data"
; - AWS_ACCESS_KEY_ID ; - AWS_ACCESS_KEY_ID
; - AWS_SECRET_ACCESS_KEY ; - AWS_SECRET_ACCESS_KEY
; - AWS_SESSION_TOKEN (if needed) ; - AWS_SESSION_TOKEN (if needed)
; for more details, see https://docs.aws.amazon.com/sdk-for-php/v3/developer-guide/guide_credentials.html#default-credential-chain ; for more details, see https://docs.aws.amazon.com/sdk-for-php/v3/developer-guide/guide_credentials.html#default-credential-chain
;class = S3Storage ;class = S3Storage
;[model_options] ;[model_options]
;region = "eu-central-1" ;region = "eu-central-1"
;version = "latest" ;version = "latest"
;bucket = "my-bucket" ;bucket = "my-bucket"
[yourls] ;[yourls]
; When using YOURLS as a "urlshortener" config item: ; When using YOURLS as a "urlshortener" config item:
; - By default, "urlshortener" will point to the YOURLS API URL, with or without ; - By default, "urlshortener" will point to the YOURLS API URL, with or without
; credentials, and will be visible in public on the PrivateBin web page. ; credentials, and will be visible in public on the PrivateBin web page.
; Only use this if you allow short URL creation without credentials. ; Only use this if you allow short URL creation without credentials.
; - Alternatively, using the parameters in this section ("signature" and ; - Alternatively, using the parameters in this section ("signature" and
; "apiurl"), "urlshortener" needs to point to the base URL of your PrivateBin ; "apiurl"), "urlshortener" needs to point to the base URL of your PrivateBin
; instance with "shortenviayourls?link=" appended. For example: ; instance with "?shortenviayourls&link=" appended. For example:
; urlshortener = "${basepath}shortenviayourls?link=" ; urlshortener = "${basepath}?shortenviayourls&link="
; This URL will in turn call YOURLS on the server side, using the URL from ; This URL will in turn call YOURLS on the server side, using the URL from
; "apiurl" and the "access signature" from the "signature" parameters below. ; "apiurl" and the "access signature" from the "signature" parameters below.
; (optional) the "signature" (access key) issued by YOURLS for the using account ; (optional) the "signature" (access key) issued by YOURLS for the using account
; signature = "" ; signature = ""
; (optional) the URL of the YOURLS API, called to shorten a PrivateBin URL ; (optional) the URL of the YOURLS API, called to shorten a PrivateBin URL
; apiurl = "https://yourls.example.com/yourls-api.php" ; apiurl = "https://yourls.example.com/yourls-api.php"
;[sri]
; Subresource integrity (SRI) hashes used in template files. Uncomment and set
; these for all js files used. See:
; https://github.com/PrivateBin/PrivateBin/wiki/FAQ#user-content-how-to-make-privatebin-work-when-i-have-changed-some-javascript-files
;js/privatebin.js = "sha512-[…]"

View File

@ -24,7 +24,7 @@ jobs:
steps: steps:
# Checkout the repository to the GitHub Actions runner # Checkout the repository to the GitHub Actions runner
- name: Checkout code - name: Checkout code
uses: actions/checkout@v2 uses: actions/checkout@v4
# Execute Codacy Analysis CLI and generate a SARIF output with the security issues identified during the analysis # Execute Codacy Analysis CLI and generate a SARIF output with the security issues identified during the analysis
- name: Run Codacy Analysis CLI - name: Run Codacy Analysis CLI

View File

@ -24,18 +24,18 @@
"docs" : "https://privatebin.info/codedoc/" "docs" : "https://privatebin.info/codedoc/"
}, },
"require" : { "require" : {
"php" : "^5.6.0 || ^7.0 || ^8.0", "php": "^7.3 || ^8.0",
"paragonie/random_compat" : "2.0.21", "jdenticon/jdenticon": "1.0.2",
"yzalis/identicon" : "2.0.0", "mlocati/ip-lib": "1.20.0",
"mlocati/ip-lib" : "1.18.0", "symfony/polyfill-php80": "1.31.0",
"jdenticon/jdenticon": "1.0.2" "yzalis/identicon": "2.0.0"
}, },
"suggest" : { "suggest" : {
"google/cloud-storage" : "1.32.0", "google/cloud-storage" : "1.45.0",
"aws/aws-sdk-php" : "3.275.1" "aws/aws-sdk-php" : "3.336.2"
}, },
"require-dev" : { "require-dev" : {
"phpunit/phpunit" : "^4.6 || ^5.0" "phpunit/phpunit" : "^9"
}, },
"autoload" : { "autoload" : {
"psr-4" : { "psr-4" : {
@ -43,6 +43,12 @@
} }
}, },
"config" : { "config" : {
"autoloader-suffix" : "DontChange" "autoloader-suffix" : "DontChange",
"optimize-autoloader": true,
"preferred-install": "dist",
"sort-packages": true,
"platform": {
"php": "7.3"
}
} }
} }

1727
composer.lock generated

File diff suppressed because it is too large Load Diff

View File

@ -1,14 +1,15 @@
/** /**
* PrivateBin * PrivateBin
* *
* a zero-knowledge paste bin * Cascading style sheets for bootstrap template.
* *
* @link https://github.com/PrivateBin/PrivateBin * @link https://github.com/PrivateBin/PrivateBin
* @copyright 2012 Sébastien SAUVAGE (sebsauvage.net) * @copyright 2012 Sébastien SAUVAGE (sebsauvage.net)
* @license https://www.opensource.org/licenses/zlib-license.php The zlib/libpng License * @license https://www.opensource.org/licenses/zlib-license.php The zlib/libpng License
* @version 1.5.2
*/ */
@import url("../common.css");
body { body {
padding: 0 0 30px; padding: 0 0 30px;
} }
@ -68,96 +69,8 @@ body.loading {
margin-right: 8px; margin-right: 8px;
} }
#attachmentPreview img {
max-width: 100%;
height: auto;
margin-bottom: 20px;
}
#attachmentPreview .pdfPreview {
width: 100%;
height: 100vh;
margin-bottom: 20px;
}
#dropzone {
text-align: center;
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: 1000;
opacity: 0.6;
background-color: #99ccff;
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath d='M0 0h24v24H0z' fill='none'/%3E%3Cpath d='M19.35 10.04C18.67 6.59 15.64 4 12 4 9.11 4 6.6 5.64 5.35 8.04 2.34 8.36 0 10.91 0 14c0 3.31 2.69 6 6 6h13c2.76 0 5-2.24 5-5 0-2.64-2.05-4.78-4.65-4.96zM14 13v4h-4v-4H7l5-5 5 5h-3z'/%3E%3C/svg%3E");
background-repeat: no-repeat;
background-position: center;
background-size: 25vh;
outline: 2px dashed #228bff;
outline-offset: -50px;
}
.dragAndDropFile{
color: #777;
font-size: 1em;
display: inline;
white-space: normal;
}
#deletelink {
float: right;
margin-left: 5px;
}
#qrcodemodalClose {
float: right;
}
#qrcode-display {
width: 200px;
height: 200px;
margin: auto;
}
#pastelink {
display: inline;
}
#pastelink > a {
word-wrap: break-word;
}
#preview {
margin-bottom: 10px;
}
#message, .replymessage {
font-family: monospace;
resize: vertical;
}
#nickname {
margin: 5px 0;
}
#comments, #comments button {
margin-bottom: 10px;
}
#filewrap {
transition: background-color 0.75s ease-out;
}
.comment { .comment {
border-left: 1px solid #ccc;
padding: 5px 0 5px 10px; padding: 5px 0 5px 10px;
white-space: pre-wrap;
transition: background-color 0.75s ease-out;
}
.highlight {
background-color: #ffdd86;
transition: background-color 0.2s ease-in;
} }
footer h4 { footer h4 {
@ -205,3 +118,51 @@ li.L0, li.L1, li.L2, li.L3, li.L5, li.L6, li.L7, li.L8 {
.modal .modal-content button { .modal .modal-content button {
margin: 0.5em 0; margin: 0.5em 0;
} }
/* right-to-left overrides */
html[dir="rtl"] .checkbox label {
padding-left: inherit;
padding-right: 20px;
}
html[dir="rtl"] .checkbox input[type="checkbox"] {
margin-left: inherit;
margin-right: -20px;
}
html[dir="rtl"] #language {
margin-left: inherit;
margin-right: 8px;
}
html[dir="rtl"] #deletelink, html[dir="rtl"] #qrcodemodalClose {
float: left;
}
#prettyprint {
padding-right: 30px;
}
#prettyMessageCopyBtn {
position: absolute;
top: 8px;
right: 25px;
left: auto;
padding: 0;
background: none;
border: none;
z-index: 1;
}
html[dir="rtl"] #prettyMessageCopyBtn {
left: 25px;
right: auto;
}
#copySuccessIcon {
display: none;
}
#copyShortcutHint {
margin-bottom: 5px;
}

5
css/bootstrap5/bootstrap-5.3.3.css vendored Normal file

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,90 @@
/**
* PrivateBin
*
* Cascading style sheets for bootstrap 5 template.
*
* @link https://github.com/PrivateBin/PrivateBin
* @copyright 2012 Sébastien SAUVAGE (sebsauvage.net)
* @license https://www.opensource.org/licenses/zlib-license.php The zlib/libpng License
*/
@import url("../common.css");
.hidden {
display: none !important;
}
.opacity-05-1-hover {
opacity: 0.5;
transition: all 0.15s ease;
}
.opacity-05-1-hover:hover {
opacity: 1;
}
.dropdown-menu {
--bs-dropdown-min-width: 23rem;
}
pre {
margin-bottom: 0;
}
[data-bs-theme=light] pre, [data-bs-theme=light] .card {
background-color: RGBA(var(--bs-light-rgb), var(--bs-bg-opacity, 1));
}
li.L0, li.L1, li.L2, li.L3, li.L4, li.L5, li.L6, li.L7, li.L8, li.L9 {
color: revert !important;
list-style-type: decimal !important;
}
[data-bs-theme=dark] li.L1, [data-bs-theme=dark] li.L3, [data-bs-theme=dark] li.L5,
[data-bs-theme=dark] li.L7, [data-bs-theme=dark] li.L9 {
background-color: var(--bs-gray-dark) !important;
}
.text-right button {
float: right;
}
html[dir="rtl"] #deletelink, html[dir="rtl"] #qrcodemodalClose {
float: left;
}
#prettyprint {
padding-right: 30px;
}
#prettyMessageCopyBtn {
position: absolute;
top: 8px;
right: 8px;
left: auto;
width: 20px;
height: 20px;
padding: 0;
background: none;
border: none;
z-index: 1;
}
html[dir="rtl"] #prettyMessageCopyBtn {
left: 8px;
right: auto;
}
#prettyMessageCopyBtn svg {
width: 100%;
height: 100%;
vertical-align: baseline;
}
#copySuccessIcon {
display: none;
}
#sendbutton svg {
transform: translateY(1.5px);
}

101
css/common.css Normal file
View File

@ -0,0 +1,101 @@
/**
* PrivateBin
*
* Common cascading style sheets for all templates.
*
* @link https://github.com/PrivateBin/PrivateBin
* @copyright 2012 Sébastien SAUVAGE (sebsauvage.net)
* @license https://www.opensource.org/licenses/zlib-license.php The zlib/libpng License
*/
#attachmentPreview img {
max-width: 100%;
height: auto;
margin-bottom: 20px;
}
#attachmentPreview .pdfPreview {
width: 100%;
height: 100vh;
margin-bottom: 20px;
}
#dropzone {
text-align: center;
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: 1000;
opacity: 0.6;
background-color: #9cf;
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath d='M0 0h24v24H0z' fill='none'/%3E%3Cpath d='M19.35 10.04C18.67 6.59 15.64 4 12 4 9.11 4 6.6 5.64 5.35 8.04 2.34 8.36 0 10.91 0 14c0 3.31 2.69 6 6 6h13c2.76 0 5-2.24 5-5 0-2.64-2.05-4.78-4.65-4.96zM14 13v4h-4v-4H7l5-5 5 5h-3z'/%3E%3C/svg%3E");
background-repeat: no-repeat;
background-position: center;
background-size: 25vh;
outline: 2px dashed #28f;
outline-offset: -50px;
}
#filewrap {
transition: background-color 0.75s ease-out;
}
#deletelink {
float: right;
margin-left: 5px;
}
#qrcodemodalClose {
float: right;
}
#qrcode-display {
width: 200px;
margin: auto;
}
#pastelink {
display: inline;
}
#pastelink > a, #plaintext > a {
word-wrap: break-word;
}
#message {
height: 70dvh;
}
@media ((max-width: 450px) and (max-height: 950px)) {
#message {
height: 55dvh;
}
}
#message, .replymessage {
font-family: monospace;
resize: vertical;
}
.comment {
border-left: 1px solid #ccc;
transition: background-color 0.75s ease-out;
}
.commentdata {
white-space: pre-wrap;
}
.dragAndDropFile {
color: #777;
font-size: 1em;
display: inline;
white-space: normal;
}
.highlight {
background-color: #fd8;
transition: background-color 0.2s ease-in;
}

View File

@ -1,15 +1,13 @@
/** /**
* PrivateBin * PrivateBin
* *
* CSS file only loaded when no JavaScript available. * Cascading style sheet only loaded when JavaScript is not available.
* *
* @link https://github.com/PrivateBin/PrivateBin * @link https://github.com/PrivateBin/PrivateBin
* @copyright 2012 Sébastien SAUVAGE (sebsauvage.net) * @copyright 2012 Sébastien SAUVAGE (sebsauvage.net)
* @license https://www.opensource.org/licenses/zlib-license.php The zlib/libpng License * @license https://www.opensource.org/licenses/zlib-license.php The zlib/libpng License
* @version 1.5.2
*/ */
/* When there is no script at all other */
.noscript-hide { .noscript-hide {
display: none; display: none;
} }

View File

@ -1,14 +1,15 @@
/** /**
* PrivateBin * PrivateBin
* *
* Main CSS file. * Cascading style sheets for page template.
* *
* @link https://github.com/PrivateBin/PrivateBin * @link https://github.com/PrivateBin/PrivateBin
* @copyright 2012 Sébastien SAUVAGE (sebsauvage.net) * @copyright 2012 Sébastien SAUVAGE (sebsauvage.net)
* @license https://www.opensource.org/licenses/zlib-license.php The zlib/libpng License * @license https://www.opensource.org/licenses/zlib-license.php The zlib/libpng License
* @version 1.5.2
*/ */
@import url("common.css");
/* CSS Reset from YUI 3.4.1 (build 4118) - Copyright 2011 Yahoo! Inc. All rights reserved. /* CSS Reset from YUI 3.4.1 (build 4118) - Copyright 2011 Yahoo! Inc. All rights reserved.
Licensed under the BSD License. - http://yuilibrary.com/license/ */ Licensed under the BSD License. - http://yuilibrary.com/license/ */
html{color:#000;background:#fff}body,div,dl,dt,dd,ul,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquote,th,td{margin:0;padding:0}table{border-collapse:collapse;border-spacing:0}fieldset,img{border:0}address,caption,cite,code,dfn,em,strong,th,var{font-style:normal;font-weight:normal}ol,ul{list-style:none}caption,th{text-align:left}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal}q:before,q:after{content:''}abbr,acronym{border:0;font-variant:normal}sup{vertical-align:text-top}sub{vertical-align:text-bottom}input,textarea,select{font-family:inherit;font-size:inherit;font-weight:inherit}input,textarea,select{font-size:100%;}legend{color:#000} html{color:#000;background:#fff}body,div,dl,dt,dd,ul,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquote,th,td{margin:0;padding:0}table{border-collapse:collapse;border-spacing:0}fieldset,img{border:0}address,caption,cite,code,dfn,em,strong,th,var{font-style:normal;font-weight:normal}ol,ul{list-style:none}caption,th{text-align:left}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal}q:before,q:after{content:''}abbr,acronym{border:0;font-variant:normal}sup{vertical-align:text-top}sub{vertical-align:text-bottom}input,textarea,select{font-family:inherit;font-size:inherit;font-weight:inherit}input,textarea,select{font-size:100%;}legend{color:#000}
@ -85,6 +86,7 @@ h3.title {
#aboutbox a { color: #94a3b4; } #aboutbox a { color: #94a3b4; }
#message, #cleartext, #prettymessage, #attachment, .replymessage { #message, #cleartext, #prettymessage, #attachment, .replymessage {
position: relative;
clear: both; clear: both;
color: #000; color: #000;
background-color: #fff; background-color: #fff;
@ -105,42 +107,6 @@ h3.title {
resize: vertical; resize: vertical;
} }
#attachmentPreview img {
max-width: 100%;
height: auto;
}
#attachmentPreview .pdfPreview {
width: 100%;
height: 100vh;
margin-bottom: 20px;
}
#dropzone {
text-align: center;
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: 1000;
opacity: 0.6;
background-color: #99ccff;
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath d='M0 0h24v24H0z' fill='none'/%3E%3Cpath d='M19.35 10.04C18.67 6.59 15.64 4 12 4 9.11 4 6.6 5.64 5.35 8.04 2.34 8.36 0 10.91 0 14c0 3.31 2.69 6 6 6h13c2.76 0 5-2.24 5-5 0-2.64-2.05-4.78-4.65-4.96zM14 13v4h-4v-4H7l5-5 5 5h-3z'/%3E%3C/svg%3E");
background-repeat: no-repeat;
background-position: center;
background-size: 25vh;
outline: 2px dashed #228bff;
outline-offset: -50px;
}
.dragAndDropFile{
color: #777;
font-size: 1em;
display: inline;
white-space: normal;
}
#status { #status {
clear: both; clear: both;
padding: 5px 10px; padding: 5px 10px;
@ -160,9 +126,7 @@ h3.title {
#pasteresult button { margin-left: 11px; } #pasteresult button { margin-left: 11px; }
#deletelink { float: right; } #message, #plaintext, #prettymessage, #toolbar, #status { margin-bottom: 5px; }
#toolbar, #status { margin-bottom: 5px; }
#copyhint { color: #666; font-size: 0.85em } #copyhint { color: #666; font-size: 0.85em }
@ -261,6 +225,7 @@ button img {
#newbutton { #newbutton {
float: right; float: right;
margin-left: 0;
margin-right: 0; margin-right: 0;
margin-bottom: 5px; margin-bottom: 5px;
display: inline; display: inline;
@ -429,15 +394,6 @@ h4.title {
.commentdate { color: #bfcede; } .commentdate { color: #bfcede; }
#filewrap {
transition: background-color 0.75s ease-out;
}
.highlight {
background-color: #ffdd86;
transition: background-color 0.2s ease-in;
}
img.vizhash { img.vizhash {
width: 16px; width: 16px;
height: 16px; height: 16px;
@ -488,3 +444,17 @@ img.vizhash {
#cleartext h3 { #cleartext h3 {
font-size: 1.2em; font-size: 1.2em;
} }
/* right-to-left overrides */
html[dir="rtl"] #aboutbox, html[dir="rtl"] #deletelink, html[dir="rtl"] #newbutton {
float: left;
}
html[dir="rtl"] button, html[dir="rtl"] .button, html[dir="rtl"] button img {
margin-left: 5px;
margin-right: inherit;
}
html[dir="rtl"] button img {
margin-left: 8px;
}

View File

@ -0,0 +1,59 @@
# Generating Source Code Documentation
## Generating PHP documentation
In order to generate the documentation, you will need to install the following
packages and its dependencies:
* phpdoc
* graphviz
Details about
[installing phpDocumentor](https://phpdoc.org/docs/latest/getting-started/installing.html)
can be found in that projects documentation.
Example for Debian and Ubuntu:
```console
$ sudo apt install php-pear graphviz
$ sudo pear channel-discover pear.phpdoc.org
$ sudo pear install phpdoc/phpDocumentor
```
To generate the documentation, change into the main directory and run phpdoc:
```console
$ cd PrivateBin
$ phpdoc --visibility=public,protected,private --target=doc/phpdoc --directory=lib/
```
**Note:** When used with PHP 7, the prerelease of phpDocumentator 2.9 needs to be
manually installed by downloading it from
[GitHub](https://github.com/phpDocumentor/phpDocumentor2/releases/download/v2.9.0/phpDocumentor.phar)
and then manually moving it to e.g. `/usr/local/bin` and making it executable.
## Generating JS documentation
In order to generate the documentation, you will need to install the following
packages and its dependencies:
* npm
Then you can use the node package manager to install the latest stable release
of jsdoc globally:
```console
$ npm install -g jsdoc
```
Example for Debian and Ubuntu, including steps to allow current user to install
node modules globally:
```console
$ sudo apt install npm
$ sudo mkdir /usr/local/lib/node_modules
$ sudo chown -R $(whoami) $(npm config get prefix)/{lib/node_modules,bin,share}
$ npm install -g jsdoc
$ ln -s /usr/bin/nodejs /usr/local/bin/node
```
To generate the documentation, change into the main directory and run phpdoc:
```console
$ cd PrivateBin
$ jsdoc -p -d doc/jsdoc js/privatebin.js js/legacy.js
```

View File

@ -1,6 +1,8 @@
# Installation # Installation
**TL;DR:** Download the ## TL;DR
Download the
[latest release archive](https://github.com/PrivateBin/PrivateBin/releases/latest) [latest release archive](https://github.com/PrivateBin/PrivateBin/releases/latest)
(with the link labelled as "Source code (…)") and extract it in your web hosts (with the link labelled as "Source code (…)") and extract it in your web hosts
folder where you want to install your PrivateBin instance. We try to provide a folder where you want to install your PrivateBin instance. We try to provide a
@ -11,21 +13,15 @@ mostly safe default configuration, but we urge you to check the
**NOTE:** See our [FAQ entry on securely downloading release files](https://github.com/PrivateBin/PrivateBin/wiki/FAQ#how-can-i-securely-clonedownload-your-project) **NOTE:** See our [FAQ entry on securely downloading release files](https://github.com/PrivateBin/PrivateBin/wiki/FAQ#how-can-i-securely-clonedownload-your-project)
for more information. for more information.
**NOTE:** There is a [ansible](https://ansible.com) role by @e1mo available to **NOTE:** There are Ansible roles available for installing and configuring PrivateBin on your server. You can choose from the following options:
install and configure PrivateBin on your server. It's available on
[ansible galaxy](https://galaxy.ansible.com/e1mo/privatebin) - [Podman Rootless - PrivateBin by @voidquark](https://galaxy.ansible.com/ui/standalone/roles/voidquark/privatebin/) ([Github source code](https://github.com/voidquark/privatebin)): Simplifies the deployment and management of a secure PrivateBin service using a rootless Podman container. Key features include root-less deployment, ensuring security within a user namespace, idempotent deployment for consistent state, out-of-the-box setup for Red Hat systems, and the flexibility to customize PrivateBin configurations. It has been tested on EL9.
([source code](https://git.sr.ht/~e1mo/ansible-role-privatebin)).
- [Config Configuration - PrivateBin by @e1mo](https://galaxy.ansible.com/ui/standalone/roles/e1mo/privatebin/) ([Github source code](https://git.sr.ht/~e1mo/ansible-role-privatebin)): Deploy PrivateBin configuration to disk with a customized configuration.
### Minimal Requirements ### Minimal Requirements
- PHP version 7.0 or above - PHP version 7.3 or above
- Or PHP version 5.6 AND _one_ of the following sources of cryptographically
safe randomness:
- [Libsodium](https://download.libsodium.org/libsodium/content/installation/)
and it's [PHP extension](https://paragonie.com/book/pecl-libsodium/read/00-intro.md#installing-libsodium)
- `open_basedir` access to `/dev/urandom`
- mcrypt extension AND `open_basedir` access to `/dev/urandom`
- com_dotnet extension
- GD extension (when using identicon or vizhash icons, jdenticon works without it) - GD extension (when using identicon or vizhash icons, jdenticon works without it)
- zlib extension - zlib extension
- some disk space or a database supported by [PDO](https://php.net/manual/book.pdo.php) - some disk space or a database supported by [PDO](https://php.net/manual/book.pdo.php)
@ -63,7 +59,7 @@ accessible to your webserver and PHP process (see also
In situations where you want to keep the PrivateBin static files separate from the In situations where you want to keep the PrivateBin static files separate from the
rest of your data, or you want to reuse the installation files on multiple vhosts, rest of your data, or you want to reuse the installation files on multiple vhosts,
you may only want to change the `conf.php`. In this case, you can set the you may only want to change the `conf.php`. In this case, you can set the
`CONFIG_PATH` environment variable to the absolute path to the `conf.php` file. `CONFIG_PATH` environment variable to the absolute path to the directory containing the `conf.php` file.
This can be done in your web server's virtual host config, the PHP config, or in This can be done in your web server's virtual host config, the PHP config, or in
the index.php, if you choose to customize it. the index.php, if you choose to customize it.
@ -72,13 +68,13 @@ wherever it may be.
> #### CONFIG_PATH example > #### CONFIG_PATH example
> Setting the value in an Apache Vhost: > Setting the value in an Apache Vhost:
> SetEnv CONFIG_PATH /var/lib/privatebin/conf.php > SetEnv CONFIG_PATH /var/lib/privatebin/
> >
> In a php-fpm pool config: > In a php-fpm pool config:
> env[CONFIG_PATH] = /var/lib/privatebin/conf.php > env[CONFIG_PATH] = /var/lib/privatebin/
> >
> In the index.php, near the top: > In the index.php, near the top:
> putenv('CONFIG_PATH=/var/lib/privatebin/conf.php'); > putenv('CONFIG_PATH=/var/lib/privatebin/');
### Transport security ### Transport security
@ -173,14 +169,13 @@ user these additional privileges:
For reference or if you want to create the table schema for yourself to avoid For reference or if you want to create the table schema for yourself to avoid
having to give PrivateBin too many permissions (replace `prefix_` with your own having to give PrivateBin too many permissions (replace `prefix_` with your own
table prefix and create the table schema with your favourite MariaDB/MySQL table prefix and create the table schema with your favorite MariaDB/MySQL
client): client):
```sql ```sql
CREATE TABLE prefix_paste ( CREATE TABLE prefix_paste (
dataid CHAR(16) NOT NULL, dataid CHAR(16) NOT NULL,
data MEDIUMBLOB, data MEDIUMBLOB,
postdate INT,
expiredate INT, expiredate INT,
opendiscussion INT, opendiscussion INT,
burnafterreading INT, burnafterreading INT,
@ -205,7 +200,7 @@ CREATE INDEX parent ON prefix_comment(pasteid);
CREATE TABLE prefix_config ( CREATE TABLE prefix_config (
id CHAR(16) NOT NULL, value TEXT, PRIMARY KEY (id) id CHAR(16) NOT NULL, value TEXT, PRIMARY KEY (id)
); );
INSERT INTO prefix_config VALUES('VERSION', '1.5.2'); INSERT INTO prefix_config VALUES('VERSION', '1.7.6');
``` ```
In **PostgreSQL**, the `data`, `attachment`, `nickname` and `vizhash` columns In **PostgreSQL**, the `data`, `attachment`, `nickname` and `vizhash` columns
@ -217,11 +212,30 @@ to be `CLOB` and not `BLOB` or `MEDIUMBLOB`, the `id` column in the `config`
table needs to be `VARCHAR2(16)` and the `meta` column in the `paste` table table needs to be `VARCHAR2(16)` and the `meta` column in the `paste` table
and the `value` column in the `config` table need to be `VARCHAR2(4000)`. and the `value` column in the `config` table need to be `VARCHAR2(4000)`.
### Cloud Storage Backends
Due to the large size of the respective cloud SDKs required for these, we didn't
include these in the `vendor` directory shipped in our release archives. To use
these in your manual installation, you will need [composer installed](https://getcomposer.org/)
and require the used library (see instructions below).
This is not required if using the dedicated container images that have these SDKs
preinstalled.
#### Using Google Cloud Storage #### Using Google Cloud Storage
If you want to deploy PrivateBin in a serverless manner in the Google Cloud, you If you want to deploy PrivateBin in a serverless manner in the Google Cloud, you
can choose the `GoogleCloudStorage` as backend. To use this backend, you create can choose the `GoogleCloudStorage` as backend.
a GCS bucket and specify the name as the model option `bucket`. Alternatively,
you can set the name through the environment variable `PRIVATEBIN_GCS_BUCKET`. To use this backend, you first have to install the SDK from the installation
directory of PrivateBin:
```console
composer require --no-update google/cloud-storage
composer update --no-dev --optimize-autoloader
```
You have to create a GCS bucket and specify the name as the model option `bucket`.
Alternatively, you can set the name through the environment variable `PRIVATEBIN_GCS_BUCKET`.
The default prefix for pastes stored in the bucket is `pastes`. To change the The default prefix for pastes stored in the bucket is `pastes`. To change the
prefix, specify the option `prefix`. prefix, specify the option `prefix`.
@ -230,15 +244,20 @@ Google Cloud Storage buckets may be significantly slower than a `FileSystem` or
`Database` backend. The big advantage is that the deployment on Google Cloud `Database` backend. The big advantage is that the deployment on Google Cloud
Platform using Google Cloud Run is easy and cheap. Platform using Google Cloud Run is easy and cheap.
To use the Google Cloud Storage backend you have to install the suggested
library using the command `composer require google/cloud-storage`.
#### Using S3 Storage #### Using S3 Storage
Similar to Google Cloud Storage, you can choose S3 as storage backend. It uses Similar to Google Cloud Storage, you can choose S3 as storage backend. It uses
the AWS SDK for PHP, but can also talk to a Rados gateway as part of a CEPH the AWS SDK for PHP, but can also talk to a Rados gateway as part of a Ceph
cluster. To use this backend, you first have to install the SDK in the cluster.
document root of PrivateBin: `composer require aws/aws-sdk-php`. You have to
create the S3 bucket on the CEPH cluster before using the S3 backend. To use this backend, you first have to install the SDK from the installation
directory of PrivateBin:
```console
composer require --no-update aws/aws-sdk-php
composer update --no-dev --optimize-autoloader
```
You have to create an S3 bucket on the Ceph cluster before using the S3 backend.
In the `[model]` section of cfg/conf.php, set `class` to `S3Storage`. In the `[model]` section of cfg/conf.php, set `class` to `S3Storage`.
@ -260,7 +279,7 @@ data beneath this prefix.
For AWS, you have to provide at least `region`, `bucket`, `accesskey`, and For AWS, you have to provide at least `region`, `bucket`, `accesskey`, and
`secretkey`. `secretkey`.
For CEPH, follow this example: For Ceph, follow this example:
``` ```
region = "" region = ""

View File

@ -1,60 +1,37 @@
Generating PHP documentation # PrivateBin Documentation
============================
In order to generate the documentation, you will need to install the following ## [Frequently Asked Questions](https://github.com/PrivateBin/PrivateBin/wiki/FAQ)
packages and its dependencies:
* phpdoc
* graphviz
Details about Please have a look at these questions *before* opening an issue in this repo.
[installing phpDocumentor](https://phpdoc.org/docs/latest/getting-started/installing.html)
can be found in that projects documentation.
Example for Debian and Ubuntu: ## [Installation guide](https://github.com/PrivateBin/PrivateBin/blob/master/doc/Installation.md#installation)
```console
$ sudo apt install php-pear graphviz
$ sudo pear channel-discover pear.phpdoc.org
$ sudo pear install phpdoc/phpDocumentor
```
To generate the documentation, change into the main directory and run phpdoc: Minimal requirements, hardening and securing your installation and initial
```console configuration.
$ cd PrivateBin
$ phpdoc --visibility public,protected,private -t doc/phpdoc -d lib/
```
**Note:** When used with PHP 7, the prerelease of phpDocumentator 2.9 needs to be ## [Configuration guide](https://github.com/PrivateBin/PrivateBin/wiki/Configuration)
manually installed by downloading it from
[GitHub](https://github.com/phpDocumentor/phpDocumentor2/releases/download/v2.9.0/phpDocumentor.phar)
and then manually moving it to e.g. `/usr/local/bin` and making it executable.
Generating JS documentation Detailed guide on each configuration option and their effects.
============================
In order to generate the documentation, you will need to install the following ## [Templates](https://github.com/PrivateBin/PrivateBin/wiki/Templates)
packages and its dependencies:
* npm
Then you can use the node package manager to install the latest stable release How to change an existing template or create your own, as well as an overview of
of jsdoc globally: the currently included templates.
```console ## [Translation guide](https://github.com/PrivateBin/PrivateBin/wiki/Translation)
$ npm install -g jsdoc
```
Example for Debian and Ubuntu, including steps to allow current user to install How to help translate PrivateBin and technical background on it's implementation.
node modules globally:
```console
$ sudo apt install npm
$ sudo mkdir /usr/local/lib/node_modules
$ sudo chown -R $(whoami) $(npm config get prefix)/{lib/node_modules,bin,share}
$ npm install -g jsdoc
$ ln -s /usr/bin/nodejs /usr/local/bin/node
```
To generate the documentation, change into the main directory and run phpdoc: ## [Developer guide](https://github.com/PrivateBin/PrivateBin/wiki/Development)
```console
$ cd PrivateBin
$ jsdoc -p -d doc/jsdoc js/privatebin.js js/legacy.js
```
Know how for participating in PrivateBins development.
### [Generating Source Code Documentation](https://github.com/PrivateBin/PrivateBin/blob/master/doc/Generating%20Source%20Code%20Documentation.md#generating-source-code-documentation)
How to generate the source code API documentation, as found on the project
website for [PHP](https://privatebin.info/codedoc/) and [JS](https://privatebin.info/jsdoc/)
### [Running Unit Tests](https://github.com/PrivateBin/PrivateBin/blob/master/doc/Running Unit Tests.md#running-all-unit-tests)
How to run the PHP & JS unit tests, including a brief introduction to property
based unit testing.

44
doc/Release.md Normal file
View File

@ -0,0 +1,44 @@
# Release
## Overview of Supply-Chain Security
As of the PrivateBin 1.0 release we [cryptographically sign](https://git-scm.com/book/uz/v2/Git-Tools-Signing-Your-Work) our git commits and tags, so that you can verify we actually developed the software. Later, we also [started signing the release archives on GitHub](https://github.com/PrivateBin/PrivateBin/issues/219) and retroactively signed all releases from 1.0 forward.
Since [release 1.6.2](https://github.com/PrivateBin/PrivateBin/releases/tag/1.6.2) our release assets additionally also are [verified with the SLSA (Supply-chain Levels for Software Artifacts) framework](https://slsa.dev/), providing an in-toto manifest of the release archive.
This achieves the following:
1. It ensures no maintainer has gone rogue and has modified/tampered with the source code before “building” the release.
2. It ensures the release is build exactly according to the source as defined by the branch that was used for the release.
This includes the workflow file defining how the release is done itself.
3. Our release should achieve [SLSA build level 3](https://slsa.dev/spec/v1.0/levels#build-l3) as it [runs on GitHub](https://slsa.dev/spec/v1.0/threats). Some more properties [are thus achieved](https://slsa.dev/spec/v1.0/threats).
For more information [see the corresponding issue](https://github.com/PrivateBin/PrivateBin/issues/1169) and [the GitHub workflow file](/.github/workflows/release.yml).
## Reproducible builds
All releases `.tar.gz` and `.zip` archives since 1.0 come with corresponding `.asc` signatures that can be used to confirm the authenticity of the fact that the release has been issued by a PrivateBin maintainer.
This uses traditional [PGP](https://en.wikipedia.org/wiki/Pretty_Good_Privacy) signatures.
## Verification
You can use the gpg signatures for verifying the reproducibility and that a maintainer in posession with that PGP private key created the release with that content:
```
$ gpg2 --verify 1.6.2.tar.gz.asc
gpg: assuming signed data in '1.6.2.tar.gz'
gpg: Signature made Fri Dec 15 06:21:08 2023 UTC
gpg: using RSA key 28CA7C964938EA5C1481D42AE11B7950E9E183DB
gpg: Good signature from "PrivateBin release (solely used for signing releases)" [unknown]
gpg: WARNING: This key is not certified with a trusted signature!
gpg: There is no indication that the signature belongs to the owner.
Primary key fingerprint: 28CA 7C96 4938 EA5C 1481 D42A E11B 7950 E9E1 83DB
```
For a more step-by-step guide in detail [see this FAQ](https://github.com/PrivateBin/PrivateBin/wiki/FAQ#how-can-i-securely-clonedownload-your-project).
SLSA verification can be performed using the [SLSA verifier](https://github.com/slsa-framework/slsa-verifier?tab=readme-ov-file#verification-for-github-builders).
## Release process
The release process is outlined in the [release checklist](https://github.com/PrivateBin/PrivateBin/wiki/Release-Checklist). The key manual steps are performed using a [Makefile](https://github.com/PrivateBin/PrivateBin/blob/master/Makefile#L31-L43) and using a [shell script](https://github.com/rugk/gittools/blob/master/signrelease.sh).

View File

@ -1,5 +1,4 @@
Running all unit tests # Running All Unit Tests
======================
Since it is non-trivial to setup all dependencies for our unit testing suite, Since it is non-trivial to setup all dependencies for our unit testing suite,
we provide a docker image that bundles all of them into one container, both we provide a docker image that bundles all of them into one container, both
@ -29,13 +28,7 @@ docker run --rm --read-only -v ~/PrivateBin:/srv:ro privatebin/unit-testing phpu
docker run --rm --read-only -v ~/PrivateBin:/srv:ro privatebin/unit-testing mocha docker run --rm --read-only -v ~/PrivateBin:/srv:ro privatebin/unit-testing mocha
``` ```
We also provide a Janitor image that includes the Cloud9 and Theia WebIDEs as ## Running PHP Unit Tests
well as the integrated unit testing utilities. See our [docker wiki
page](https://github.com/PrivateBin/PrivateBin/wiki/Docker#janitor-image-with-cloud9-and-theia-webide-janitortechnologyprivatebin)
for further details on this.
Running PHP unit tests
======================
In order to run these tests, you will need to install the following packages In order to run these tests, you will need to install the following packages
and their dependencies: and their dependencies:
@ -50,6 +43,14 @@ Example for Debian and Ubuntu:
$ sudo apt install phpunit php-gd php-sqlite3 php-xdebug $ sudo apt install phpunit php-gd php-sqlite3 php-xdebug
``` ```
Because the unit tests depend on this, you also need to install the optional. Otherwise they won't run:
```console
composer require google/cloud-storage
```
If you do this and want to develop further, please go into `.gitignore` and adjust it to ignore the whole
vendor directory. Otherwise your `git status` will be filled with lot's of unrelated PHP files.
To run the tests, change into the `tst` directory and run phpunit: To run the tests, change into the `tst` directory and run phpunit:
```console ```console
@ -63,20 +64,16 @@ configurations defined in its constructor, it generates the unit test file
of these configurations and tests for (most of the) valid combinations. Some of of these configurations and tests for (most of the) valid combinations. Some of
combinations can't be tested with this method, i.e. a valid option combined with combinations can't be tested with this method, i.e. a valid option combined with
an invalid one. Other very specific test cases (i.e. to trigger multiple errors) an invalid one. Other very specific test cases (i.e. to trigger multiple errors)
are covered in `tst/PrivateBinTest.php`. Here is how to generate the are covered in `tst/ControllerTest.php`. Here is how to generate the
configuration test and run it: configuration test and run it:
```console ```console
$ cd PrivateBin/tst $ cd PrivateBin/tst
$ php ConfigurationTestGenerator.php $ ../bin/configuration-test-generator
$ phpunit ConfigurationCombinationsTest.php $ phpunit ConfigurationCombinationsTest.php
``` ```
Note that it can take an hour or longer to run the several thousand tests. ## Running JavaScript Unit Tests
Running JavaScript unit tests
=============================
In order to run these tests, you will need to install the following packages In order to run these tests, you will need to install the following packages
and its dependencies: and its dependencies:
@ -112,8 +109,7 @@ $ cd PrivateBin/js
$ nyc mocha $ nyc mocha
``` ```
Property based unit testing ### Property Based Unit Testing
---------------------------
In the JavaScript unit tests we use the JSVerify library to leverage property In the JavaScript unit tests we use the JSVerify library to leverage property
based unit testing. Instead of artificially creating specific test cases to based unit testing. Instead of artificially creating specific test cases to
@ -138,7 +134,7 @@ associated random number generator (RNG) state, so you can reproduce it easily:
1 failing 1 failing
1) Helper getCookie returns the requested cookie: 1) Helper getCookie returns the requested cookie:
Error: Failed after 30 tests and 11 shrinks. rngState: 88caf85079d32e416b; Counterexample: ["{", "9", "9", "YD8%fT"]; [" ", "_|K:"]; Error: Failed after 30 tests and 11 shrinks. rngState: 88caf85079d32e416b; Counterexample: ["{", "9", "9", "YD8%fT"]; [" ", "_|K:"];
[...] [...]
``` ```
@ -154,4 +150,3 @@ with the same RNG state as follows:
```console ```console
$ nyc mocha test --jsverifyRngState 88caf85079d32e416b $ nyc mocha test --jsverifyRngState 88caf85079d32e416b
``` ```

View File

@ -1,193 +1,231 @@
{ {
"PrivateBin": "PrivateBin", "PrivateBin": "PrivateBin",
"%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.": "%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.", "%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.": "%s عبارة عن أداة لصق على الإنترنت بسيطة ومفتوحة المصدر حيث لا يمتلك الخادم أي معرفة بالبيانات الملصقة. يتم تشفير / فك تشفير البيانات %sفي المتصفح%s باستخدام 256 بت AES.",
"More information on the <a href=\"https://privatebin.info/\">project page</a>.": "More information on the <a href=\"https://privatebin.info/\">project page</a>.", "More information on the <a href=\"https://privatebin.info/\">project page</a>.": "مزيد من المعلومات على <a href=\"https://privatebin.info/\">صفحة المشروع</a>.",
"Because ignorance is bliss": "Because ignorance is bliss", "Because ignorance is bliss": "لأن الجهل نعمة",
"en": "ar", "Paste does not exist, has expired or has been deleted.": "اللصق غير موجود أو انتهت صلاحيته أو تم حذفه.",
"Paste does not exist, has expired or has been deleted.": "Paste does not exist, has expired or has been deleted.", "%s requires php %s or above to work. Sorry.": "%s يتطلب php %s أو أعلى للعمل. آسف.",
"%s requires php %s or above to work. Sorry.": "%s requires php %s or above to work. Sorry.", "%s requires configuration section [%s] to be present in configuration file.": "%s يتطلب وجود قسم [%s] تضبيط في ملف تضبيط.",
"%s requires configuration section [%s] to be present in configuration file.": "%s requires configuration section [%s] to be present in configuration file.",
"Please wait %d seconds between each post.": [ "Please wait %d seconds between each post.": [
"Please wait %d second between each post. (singular)", "الرجاء الانتظار %d ثانية بين كل مشاركة.",
"Please wait %d seconds between each post. (1st plural)", "الرجاء الانتظار %d ثواني بين كل مشاركة.",
"Please wait %d seconds between each post. (2nd plural)", "الرجاء الانتظار %d ثواني بين كل مشاركة.",
"Please wait %d seconds between each post. (3rd plural)" "الرجاء الانتظار %d ثواني بين كل مشاركة.",
"الرجاء الانتظار %d ثواني بين كل مشاركة.",
"الرجاء الانتظار %d ثواني بين كل مشاركة."
], ],
"Paste is limited to %s of encrypted data.": "Paste is limited to %s of encrypted data.", "Paste is limited to %s of encrypted data.": "يقتصر اللصق على %s البيانات المشفرة.",
"Invalid data.": "Invalid data.", "Invalid data.": "بيانات غير صالحة.",
"You are unlucky. Try again.": "You are unlucky. Try again.", "You are unlucky. Try again.": "أنت غير محظوظ. أعِد المحاولة.",
"Error saving comment. Sorry.": "Error saving comment. Sorry.", "Error saving comment. Sorry.": "خطأ في حفظ التعليق. آسف.",
"Error saving paste. Sorry.": "Error saving paste. Sorry.", "Error saving paste. Sorry.": "خطأ في حفظ اللصق. آسف.",
"Invalid paste ID.": "Invalid paste ID.", "Invalid paste ID.": "معرف لصق غير صالح.",
"Paste is not of burn-after-reading type.": "Paste is not of burn-after-reading type.", "Paste is not of burn-after-reading type.": "اللصق ليس من النوع الذي يحرق بعد القراءة.",
"Wrong deletion token. Paste was not deleted.": "Wrong deletion token. Paste was not deleted.", "Wrong deletion token. Paste was not deleted.": "رمز حذف خاطئ. لم يتم يحُذف اللصق.",
"Paste was properly deleted.": "Paste was properly deleted.", "Paste was properly deleted.": "حُذفت اللصق بشكل صحيح.",
"JavaScript is required for %s to work. Sorry for the inconvenience.": "JavaScript is required for %s to work. Sorry for the inconvenience.", "JavaScript is required for %s to work. Sorry for the inconvenience.": "جافاسكرِبت (JavaScript) مطلوب %s للعمل. نأسف للإزعاج.",
"%s requires a modern browser to work.": "%s requires a modern browser to work.", "%s requires a modern browser to work.": "%s يتطلب متصفحًا حديثًا للعمل.",
"New": "New", "New": "جديد",
"Send": "Send", "Create": "أنشِئ",
"Clone": "Clone", "Clone": "استنساخ",
"Raw text": "Raw text", "Raw text": "نص خام",
"Expires": "Expires", "Expires": "تنتهي",
"Burn after reading": "Burn after reading", "Burn after reading": "حرق بعد القراءة",
"Open discussion": "Open discussion", "Open discussion": "مناقشة مفتوحة",
"Password (recommended)": "Password (recommended)", "Password (recommended)": "كلمة المرور (مستحسن)",
"Discussion": "Discussion", "Discussion": "مناقشة",
"Toggle navigation": "Toggle navigation", "Toggle navigation": "تبديل التنقل",
"%d seconds": [ "%d seconds": [
"%d second (singular)", "%d ثانية",
"%d seconds (1st plural)", "%d ثواني",
"%d seconds (2nd plural)", "%d ثواني",
"%d seconds (3rd plural)" "%d ثواني",
"%d ثواني",
"%d ثواني"
], ],
"%d minutes": [ "%d minutes": [
"%d minute (singular)", "%d دقيقة",
"%d minutes (1st plural)", "%d دقائق",
"%d minutes (2nd plural)", "%d دقائق",
"%d minutes (3rd plural)" "%d دقائق",
"%d دقائق",
"%d دقائق"
], ],
"%d hours": [ "%d hours": [
"%d hour (singular)", "%d ساعة",
"%d hours (1st plural)", "%d ساعات",
"%d hours (2nd plural)", "%d ساعات",
"%d hours (3rd plural)" "%d ساعات",
"%d ساعات",
"%d ساعات"
], ],
"%d days": [ "%d days": [
"%d day (singular)", "%d يوم",
"%d days (1st plural)", "%d أيام",
"%d days (2nd plural)", "%d أيام",
"%d days (3rd plural)" "%d أيام",
"%d أيام",
"%d أيام"
], ],
"%d weeks": [ "%d weeks": [
"%d week (singular)", "%d أسبوع",
"%d weeks (1st plural)", "%d أسابيع",
"%d weeks (2nd plural)", "%d أسابيع",
"%d weeks (3rd plural)" "%d أسابيع",
"%d أسابيع",
"%d أسابيع"
], ],
"%d months": [ "%d months": [
"%d month (singular)", "%d شهر",
"%d months (1st plural)", "%d شهور",
"%d months (2nd plural)", "%d شهور",
"%d months (3rd plural)" "%d شهور",
"%d شهور",
"%d شهور"
], ],
"%d years": [ "%d years": [
"%d year (singular)", "%d سنة",
"%d years (1st plural)", "%d سنين",
"%d years (2nd plural)", "%d سنين",
"%d years (3rd plural)" "%d سنين",
"%d سنين",
"%d سنين"
], ],
"Never": "Never", "Never": "أبدًا",
"Note: This is a test service: Data may be deleted anytime. Kittens will die if you abuse this service.": "Note: This is a test service: Data may be deleted anytime. Kittens will die if you abuse this service.", "Note: This is a test service: Data may be deleted anytime. Kittens will die if you abuse this service.": "ملاحظة: هذه خدمة اختبارية: يمكن حذف البيانات في أي وقت. سوف تموت القطط إذا أساءت استخدام هذه الخدمة.",
"This document will expire in %d seconds.": [ "This document will expire in %d seconds.": [
"This document will expire in %d second. (singular)", "ستنتهي صلاحية هذا المستند في %d ثانية.",
"This document will expire in %d seconds. (1st plural)", "ستنتهي صلاحية هذا المستند في %d ثواني.",
"This document will expire in %d seconds. (2nd plural)", "ستنتهي صلاحية هذا المستند في %d ثواني.",
"This document will expire in %d seconds. (3rd plural)" "ستنتهي صلاحية هذا المستند في %d ثواني.",
"ستنتهي صلاحية هذا المستند في %d ثواني.",
"ستنتهي صلاحية هذا المستند في %d ثواني."
], ],
"This document will expire in %d minutes.": [ "This document will expire in %d minutes.": [
"This document will expire in %d minute. (singular)", "ستنتهي صلاحية هذا المستند في %d دقيقة.",
"This document will expire in %d minutes. (1st plural)", "ستنتهي صلاحية هذا المستند في %d دقائق.",
"This document will expire in %d minutes. (2nd plural)", "ستنتهي صلاحية هذا المستند في %d دقائق.",
"This document will expire in %d minutes. (3rd plural)" "ستنتهي صلاحية هذا المستند في %d دقائق.",
"ستنتهي صلاحية هذا المستند في %d دقائق.",
"ستنتهي صلاحية هذا المستند في %d دقائق."
], ],
"This document will expire in %d hours.": [ "This document will expire in %d hours.": [
"This document will expire in %d hour. (singular)", "ستنتهي صلاحية هذا المستند في غضون %d ساعة.",
"This document will expire in %d hours. (1st plural)", "ستنتهي صلاحية هذا المستند في غضون %d ساعات.",
"This document will expire in %d hours. (2nd plural)", "ستنتهي صلاحية هذا المستند في غضون %d ساعات.",
"This document will expire in %d hours. (3rd plural)" "ستنتهي صلاحية هذا المستند في غضون %d ساعات.",
"ستنتهي صلاحية هذا المستند في غضون %d ساعات.",
"ستنتهي صلاحية هذا المستند في غضون %d ساعات."
], ],
"This document will expire in %d days.": [ "This document will expire in %d days.": [
"This document will expire in %d day. (singular)", "ستنتهي صلاحية هذا المستند خلال %d يوم.",
"This document will expire in %d days. (1st plural)", "ستنتهي صلاحية هذا المستند خلال %d أيام.",
"This document will expire in %d days. (2nd plural)", "ستنتهي صلاحية هذا المستند خلال %d أيام.",
"This document will expire in %d days. (3rd plural)" "ستنتهي صلاحية هذا المستند خلال %d أيام.",
"ستنتهي صلاحية هذا المستند خلال %d أيام.",
"ستنتهي صلاحية هذا المستند خلال %d أيام."
], ],
"This document will expire in %d months.": [ "This document will expire in %d months.": [
"This document will expire in %d month. (singular)", "ستنتهي صلاحية هذا المستند خلال %d شهر.",
"This document will expire in %d months. (1st plural)", "ستنتهي صلاحية هذا المستند خلال %d شهور.",
"This document will expire in %d months. (2nd plural)", "ستنتهي صلاحية هذا المستند خلال %d شهور.",
"This document will expire in %d months. (3rd plural)" "ستنتهي صلاحية هذا المستند خلال %d شهور.",
"ستنتهي صلاحية هذا المستند خلال %d شهور.",
"ستنتهي صلاحية هذا المستند خلال %d شهور."
], ],
"Please enter the password for this paste:": "Please enter the password for this paste:", "Please enter the password for this paste:": "الرجاء إدخال كلمة المرور لهذا اللصق:",
"Could not decrypt data (Wrong key?)": "Could not decrypt data (Wrong key?)", "Could not decrypt data (Wrong key?)": "تعذر فك تشفير البيانات (مفتاح غير صحيح؟)",
"Could not delete the paste, it was not stored in burn after reading mode.": "Could not delete the paste, it was not stored in burn after reading mode.", "Could not delete the paste, it was not stored in burn after reading mode.": "تعذر حذف اللصق، ولم يخزين في وضع النسخ بعد القراءة.",
"FOR YOUR EYES ONLY. Don't close this window, this message can't be displayed again.": "FOR YOUR EYES ONLY. Don't close this window, this message can't be displayed again.", "FOR YOUR EYES ONLY. Don't close this window, this message can't be displayed again.": "فقط من أجل عينيك. لا تغلق هذه النافذة، لا يمكن عرض هذه الرسالة مرة أخرى.",
"Could not decrypt comment; Wrong key?": "Could not decrypt comment; Wrong key?", "Could not decrypt comment; Wrong key?": "تعذر فك تشفير التعليق؛ المفتاح غير صحيح؟",
"Reply": "Reply", "Reply": "رد",
"Anonymous": "Anonymous", "Anonymous": "وهمي",
"Avatar generated from IP address": "Avatar generated from IP address", "Avatar generated from IP address": "تم إنشاء أفتار من عنوان IP",
"Add comment": "Add comment", "Add comment": "أضف تعليق",
"Optional nickname…": "Optional nickname…", "Optional nickname…": "لقب اختياري…",
"Post comment": "Post comment", "Post comment": "أضف تعليقا",
"Sending comment…": "Sending comment…", "Sending comment…": "يُرسل تعليق…",
"Comment posted.": "Comment posted.", "Comment posted.": "نُشر التعليق.",
"Could not refresh display: %s": "Could not refresh display: %s", "Could not refresh display: %s": "تعذر تحديث العرض: %s",
"unknown status": "unknown status", "unknown status": "حالة غير معروفة",
"server error or not responding": "server error or not responding", "server error or not responding": "خطأ في الخادم أو لا يستجيب",
"Could not post comment: %s": "Could not post comment: %s", "Could not post comment: %s": "لا يمكن نشر تعليق: %s",
"Sending paste…": "Sending paste…", "Sending paste…": "يُرسل لصق…",
"Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit [Ctrl]+[c] to copy)</span>": "Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit [Ctrl]+[c] to copy)</span>", "Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit <kbd>Ctrl</kbd>+<kbd>c</kbd> to copy)</span>": "لصقك هو <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(اضغط على <kbd>Ctrl</kbd> + <kbd>c</kbd> للنسخ)</span>",
"Delete data": "Delete data", "Delete data": "حذف البيانات",
"Could not create paste: %s": "Could not create paste: %s", "Could not create paste: %s": "تعذر إنشاء اللصق: %s",
"Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)": "Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)", "Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)": "لا يمكن فك تشفير اللصق: مفتاح فك التشفير مفقود في URL (هل استخدمت معيد توجيه أو أداة تقصير لعناوين URL تزيل جزءًا من عنوان URL؟)",
"B": "B", "B": "بايت",
"KiB": "KiB", "KiB": "كيلوبايت",
"MiB": "MiB", "MiB": "ميجابايت",
"GiB": "GiB", "GiB": "جيجابايت",
"TiB": "TiB", "TiB": "تيرابايت",
"PiB": "PiB", "PiB": "بيتابايت",
"EiB": "EiB", "EiB": "إكسابايت",
"ZiB": "ZiB", "ZiB": "زيتابايت",
"YiB": "YiB", "YiB": "يوتابايت",
"Format": "Format", "Format": "التنسيق",
"Plain Text": "Plain Text", "Plain Text": "نص عادي",
"Source Code": "Source Code", "Source Code": "كود مصدر",
"Markdown": "Markdown", "Markdown": "ماركداون",
"Download attachment": "Download attachment", "Download attachment": "تنزيل المرفقات",
"Cloned: '%s'": "Cloned: '%s'", "Cloned: '%s'": "مستنسخ: '%s'",
"The cloned file '%s' was attached to this paste.": "The cloned file '%s' was attached to this paste.", "The cloned file '%s' was attached to this paste.": "تم إرفاق المِلَفّ المستنسخ '%s' بهذا اللصق.",
"Attach a file": "Attach a file", "Attach a file": "إرفاق مِلَفّ",
"alternatively drag & drop a file or paste an image from the clipboard": "alternatively drag & drop a file or paste an image from the clipboard", "alternatively drag & drop a file or paste an image from the clipboard": "بدلاً من ذلك، اسحب ملفًا وأسقطه أو الصق صورة من الحافظة",
"File too large, to display a preview. Please download the attachment.": "File too large, to display a preview. Please download the attachment.", "File too large, to display a preview. Please download the attachment.": "المِلَفّ كبير جدًا، بحيث لا يمكن عرض معاينة. الرجاء تنزيل المرفق.",
"Remove attachment": "Remove attachment", "Remove attachment": "إزالة المرفق",
"Your browser does not support uploading encrypted files. Please use a newer browser.": "Your browser does not support uploading encrypted files. Please use a newer browser.", "Your browser does not support uploading encrypted files. Please use a newer browser.": "متصفحك لا يدعم رفع الملفات المشفرة. الرجاء استخدام متصفح أحدث.",
"Invalid attachment.": "Invalid attachment.", "Invalid attachment.": "مرفق غير صحيح.",
"Options": "Options", "Options": "الخيارات",
"Shorten URL": "Shorten URL", "Shorten URL": "تقصير URL",
"Editor": "Editor", "Editor": "المحرّر",
"Preview": "Preview", "Preview": "معاينة",
"%s requires the PATH to end in a \"%s\". Please update the PATH in your index.php.": "%s requires the PATH to end in a \"%s\". Please update the PATH in your index.php.", "%s requires the PATH to end in a \"%s\". Please update the PATH in your index.php.": "%s يتطلب PATH لينتهي ب \"%s\". يرجى تحديث PATH في ملف index.php الخاص بك.",
"Decrypt": "Decrypt", "Decrypt": "فك التشفير",
"Enter password": "Enter password", "Enter password": "أدخل كلمة المرور",
"Loading…": "Loading…", "Loading…": "تحميل…",
"Decrypting paste…": "Decrypting paste…", "Decrypting paste…": "يفك تشفير اللصق…",
"Preparing new paste…": "Preparing new paste…", "Preparing new paste…": "تحضير لصقة جديدة…",
"In case this message never disappears please have a look at <a href=\"%s\">this FAQ for information to troubleshoot</a>.": "In case this message never disappears please have a look at <a href=\"%s\">this FAQ for information to troubleshoot</a>.", "In case this message never disappears please have a look at <a href=\"%s\">this FAQ for information to troubleshoot</a>.": "في حالة عدم اختفاء هذه الرسالة مطلقًا ، يرجى إلقاء نظرة على <a href=\"%s\">الأسئلة الشائعة هذه للحصول على معلومات لتحري الخلل وإصلاحه</a>.",
"+++ no paste text +++": "+++ no paste text +++", "+++ no paste text +++": "+++ لا يوجد نص لصق +++",
"Could not get paste data: %s": "Could not get paste data: %s", "Could not get paste data: %s": "تعذر الحصول على لصق البيانات: %s",
"QR code": "QR code", "QR code": "رمز QR",
"This website is using an insecure HTTP connection! Please use it only for testing.": "This website is using an insecure HTTP connection! Please use it only for testing.", "This website is using an insecure HTTP connection! Please use it only for testing.": "هذا الموقع يستخدم اتصال HTTP غير آمن! الرجاء استخدامه للاختبار فقط.",
"For more information <a href=\"%s\">see this FAQ entry</a>.": "For more information <a href=\"%s\">see this FAQ entry</a>.", "For more information <a href=\"%s\">see this FAQ entry</a>.": "لمزيد من المعلومات <a href=\"%s\">راجع هذه الأسئلة الشائعة</a>.",
"Your browser may require an HTTPS connection to support the WebCrypto API. Try <a href=\"%s\">switching to HTTPS</a>.": "Your browser may require an HTTPS connection to support the WebCrypto API. Try <a href=\"%s\">switching to HTTPS</a>.", "Your browser may require an HTTPS connection to support the WebCrypto API. Try <a href=\"%s\">switching to HTTPS</a>.": "قد يتطلب متصفحك اتصال HTTPS لدعم WebCrypto API. حاول <a href=\"%s\">التبديل إلى HTTPS </a>.",
"Your browser doesn't support WebAssembly, used for zlib compression. You can create uncompressed documents, but can't read compressed ones.": "Your browser doesn't support WebAssembly, used for zlib compression. You can create uncompressed documents, but can't read compressed ones.", "Your browser doesn't support WebAssembly, used for zlib compression. You can create uncompressed documents, but can't read compressed ones.": "لا يدعم المستعرض الخاص بك WebAssembly، المستخدم لضغط zlib. يمكنك إنشاء مستندات غير مضغوطة، لكن لا يمكنك قراءة المستندات المضغوطة.",
"waiting on user to provide a password": "waiting on user to provide a password", "waiting on user to provide a password": "ينتظر المستخدم لتقديم كلمة مرور",
"Could not decrypt data. Did you enter a wrong password? Retry with the button at the top.": "Could not decrypt data. Did you enter a wrong password? Retry with the button at the top.", "Could not decrypt data. Did you enter a wrong password? Retry with the button at the top.": "تعذر فك تشفير البيانات. هل أدخلت كلمة مرور خاطئة؟ أعِد المحاولة باستخدام الزر الموجود في الأعلى.",
"Retry": "Retry", "Retry": "أعِد المحاولة",
"Showing raw text…": "Showing raw text…", "Showing raw text…": "يُظهر نص خام…",
"Notice:": "Notice:", "Notice:": "إشعار:",
"This link will expire after %s.": "This link will expire after %s.", "This link will expire after %s.": "ستنتهي صلاحية هذا الرابط بعد %s.",
"This link can only be accessed once, do not use back or refresh button in your browser.": "This link can only be accessed once, do not use back or refresh button in your browser.", "This link can only be accessed once, do not use back or refresh button in your browser.": "لا يمكن الوصول إلى هذا الرابط إلا مرة واحدة، لا تستخدم زر الرجوع أو التحديث في متصفحك.",
"Link:": "Link:", "Link:": "الرابط:",
"Recipient may become aware of your timezone, convert time to UTC?": "Recipient may become aware of your timezone, convert time to UTC?", "Recipient may become aware of your timezone, convert time to UTC?": "قد يكون المستلم على علم بمنطقتك الزمنية، هل تريد تحويل الوقت إلى التوقيت العالمي المنسق (UTC)؟",
"Use Current Timezone": "Use Current Timezone", "Use Current Timezone": "استخدم المنطقة الزمنية الحالية",
"Convert To UTC": "Convert To UTC", "Convert To UTC": "تحويل إلى UTC",
"Close": "Close", "Close": "إغلاق",
"Encrypted note on %s": "Encrypted note on %s", "Encrypted note on %s": "ملاحظة مشفرة على %s",
"Visit this link to see the note. Giving the URL to anyone allows them to access the note, too.": "Visit this link to see the note. Giving the URL to anyone allows them to access the note, too.", "Visit this link to see the note. Giving the URL to anyone allows them to access the note, too.": "زُر هذا الرابط لرؤية الملاحظة. يتيح إعطاء عنوان URL لأي شخص الوصول إلى الملاحظة أيضًا.",
"URL shortener may expose your decrypt key in URL.": "URL shortener may expose your decrypt key in URL.", "URL shortener may expose your decrypt key in URL.": "قد يفضح أداة تقصير عناوين URL مفتاح فك التشفير الخاص بك في URL.",
"Save paste": "Save paste", "Save paste": "احفظ اللصق",
"Your IP is not authorized to create pastes.": "Your IP is not authorized to create pastes.", "Your IP is not authorized to create pastes.": "عنوان IP الخاص بك غير مصرح له بإنشاء لصُق.",
"Trying to shorten a URL that isn't pointing at our instance.": "Trying to shorten a URL that isn't pointing at our instance.", "Trying to shorten a URL that isn't pointing at our instance.": "محاولة تقصير عنوان URL لا يشير إلى خادمنا.",
"Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".": "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".", "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".": "خطأ في الاتصال بـ YOURLS. ربما تكون هناك مشكلة في التضبيط، مثل \"apiurl\" أو \"التوقيع\" الخاطئ أو المفقود.",
"Error parsing YOURLS response.": "Error parsing YOURLS response." "Error parsing YOURLS response.": "خطأ في تحليل استجابة YOURLS.",
"This secret message can only be displayed once. Would you like to see it now?": "لا يمكن عرض اللصق احرقه بعد قراءته إلا مرة واحدة عند تحميله. هل تريد فتحه الآن؟",
"Yes, see it": "نعم، حمله",
"Dark Mode": "الوضع الداكن",
"Error compressing paste, due to missing WebAssembly support.": "خطأ في ضغط اللصق، بسبب فقدان دعم WebAssembly.",
"Error decompressing paste, your browser does not support WebAssembly. Please use another browser to view this paste.": "خطأ في فك ضغط اللصق، متصفحك لا يدعم WebAssembly. الرجاء استخدام متصفح آخر لعرض هذه اللصقة.",
"Start over": "ابدأ من جديد",
"Paste copied to clipboard": "تم نسخ اللصق إلى الحافظة",
"To copy paste press on the copy button or use the clipboard shortcut <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>": "لنسخ اللصق انقر على زر النسخ أو استخدم اختصار الحافظة <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>",
"Copy link": "نسخ الرابط",
"Link copied to clipboard": "تم نسخ الرابط إلى الحافظة",
"Paste text": "لصق النص",
"Tabulator key serves as character (Hit <kbd>Ctrl</kbd>+<kbd>m</kbd> or <kbd>Esc</kbd> to toggle)": "مفتاح التبويب يعمل كشخصية (انقر <kbd>Ctrl</kbd>+<kbd>m</kbd> أو <kbd>Esc</kbd> للتبديل)",
"Theme": "السمة"
} }

View File

@ -3,7 +3,6 @@
"%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.": "%s е изчистен и изцяло достъпен като отворен код, онлайн \"paste\" услуга, където сървъра не знае подадената информация. Тя се шифрова/дешифрова %sвъв браузъра%s използвайки 256 битов AES алгоритъм.", "%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.": "%s е изчистен и изцяло достъпен като отворен код, онлайн \"paste\" услуга, където сървъра не знае подадената информация. Тя се шифрова/дешифрова %sвъв браузъра%s използвайки 256 битов AES алгоритъм.",
"More information on the <a href=\"https://privatebin.info/\">project page</a>.": "Повече информация може да намерите на <a href=\"https://privatebin.info/\">страницата на проекта (Английски)</a>.", "More information on the <a href=\"https://privatebin.info/\">project page</a>.": "Повече информация може да намерите на <a href=\"https://privatebin.info/\">страницата на проекта (Английски)</a>.",
"Because ignorance is bliss": "Невежеството е блаженство", "Because ignorance is bliss": "Невежеството е блаженство",
"en": "bg",
"Paste does not exist, has expired or has been deleted.": "Информацията не съществува, срокът и е изтекъл или е била изтрита.", "Paste does not exist, has expired or has been deleted.": "Информацията не съществува, срокът и е изтекъл или е била изтрита.",
"%s requires php %s or above to work. Sorry.": "%s има нужда от PHP %s или по-нова, за да работи. Съжалявам.", "%s requires php %s or above to work. Sorry.": "%s има нужда от PHP %s или по-нова, за да работи. Съжалявам.",
"%s requires configuration section [%s] to be present in configuration file.": "%s задължава отдела от настройките [%s] да съществува във файла със настройките.", "%s requires configuration section [%s] to be present in configuration file.": "%s задължава отдела от настройките [%s] да съществува във файла със настройките.",
@ -11,6 +10,8 @@
"Моля изчакайте една секунда между всяка публикация.", "Моля изчакайте една секунда между всяка публикация.",
"Моля изчакайте %d секунди между всяка публикация.", "Моля изчакайте %d секунди между всяка публикация.",
"Моля изчакайте %d секунди между всяка публикация.", "Моля изчакайте %d секунди между всяка публикация.",
"Моля изчакайте %d секунди между всяка публикация.",
"Моля изчакайте %d секунди между всяка публикация.",
"Моля изчакайте %d секунди между всяка публикация." "Моля изчакайте %d секунди между всяка публикация."
], ],
"Paste is limited to %s of encrypted data.": "Съдържанието е ограничено до %s криптирана информация.", "Paste is limited to %s of encrypted data.": "Съдържанието е ограничено до %s криптирана информация.",
@ -25,7 +26,7 @@
"JavaScript is required for %s to work. Sorry for the inconvenience.": "Услугата %s се нуждае от JavaScript, за да работи. Съжаляваме за неудобството.", "JavaScript is required for %s to work. Sorry for the inconvenience.": "Услугата %s се нуждае от JavaScript, за да работи. Съжаляваме за неудобството.",
"%s requires a modern browser to work.": "%s се нуждае от съвременен браузър за да работи.", "%s requires a modern browser to work.": "%s се нуждае от съвременен браузър за да работи.",
"New": "Създаване", "New": "Създаване",
"Send": "Изпрати", "Create": "Създай",
"Clone": "Дублирай", "Clone": "Дублирай",
"Raw text": "Чист текст", "Raw text": "Чист текст",
"Expires": "Изтича", "Expires": "Изтича",
@ -38,42 +39,56 @@
"%d секунди", "%d секунди",
"%d секунда", "%d секунда",
"%d секунда", "%d секунда",
"%d секунда",
"%d секунда",
"%d секунда" "%d секунда"
], ],
"%d minutes": [ "%d minutes": [
"%d минути", "%d минути",
"%d минута", "%d минута",
"%d минута", "%d минута",
"%d минута",
"%d минута",
"%d минута" "%d минута"
], ],
"%d hours": [ "%d hours": [
"%d часа", "%d часа",
"%d час", "%d час",
"%d час", "%d час",
"%d час",
"%d час",
"%d час" "%d час"
], ],
"%d days": [ "%d days": [
"%d дни", "%d дни",
"%d ден", "%d ден",
"%d ден", "%d ден",
"%d ден",
"%d ден",
"%d ден" "%d ден"
], ],
"%d weeks": [ "%d weeks": [
"%d седмици", "%d седмици",
"%d седмица", "%d седмица",
"%d седмица", "%d седмица",
"%d седмица",
"%d седмица",
"%d седмица" "%d седмица"
], ],
"%d months": [ "%d months": [
"%d месеци", "%d месеци",
"%d месец", "%d месец",
"%d месец", "%d месец",
"%d месец",
"%d месец",
"%d месец" "%d месец"
], ],
"%d years": [ "%d years": [
"%d години", "%d години",
"%d година", "%d година",
"%d година", "%d година",
"%d година",
"%d година",
"%d година" "%d година"
], ],
"Never": "Никога", "Never": "Никога",
@ -82,30 +97,40 @@
"Този документ изтича след една секунда.", "Този документ изтича след една секунда.",
"Този документ изтича след %d секунди.", "Този документ изтича след %d секунди.",
"Този документ изтича след %d секунди.", "Този документ изтича след %d секунди.",
"Този документ изтича след %d секунди.",
"Този документ изтича след %d секунди.",
"Този документ изтича след %d секунди." "Този документ изтича след %d секунди."
], ],
"This document will expire in %d minutes.": [ "This document will expire in %d minutes.": [
"Този документ изтича след една минута.", "Този документ изтича след една минута.",
"Този документ изтича след %d минути.", "Този документ изтича след %d минути.",
"Този документ изтича след %d минути.", "Този документ изтича след %d минути.",
"Този документ изтича след %d минути.",
"Този документ изтича след %d минути.",
"Този документ изтича след %d минути." "Този документ изтича след %d минути."
], ],
"This document will expire in %d hours.": [ "This document will expire in %d hours.": [
"Този документ изтича след един час.", "Този документ изтича след един час.",
"Този документ изтича след %d часа.", "Този документ изтича след %d часа.",
"Този документ изтича след %d часа.", "Този документ изтича след %d часа.",
"Този документ изтича след %d часа.",
"Този документ изтича след %d часа.",
"Този документ изтича след %d часа." "Този документ изтича след %d часа."
], ],
"This document will expire in %d days.": [ "This document will expire in %d days.": [
"Този документ изтича след един ден.", "Този документ изтича след един ден.",
"Този документ изтича след %d дни.", "Този документ изтича след %d дни.",
"Този документ изтича след %d дни.", "Този документ изтича след %d дни.",
"Този документ изтича след %d дни.",
"Този документ изтича след %d дни.",
"Този документ изтича след %d дни." "Този документ изтича след %d дни."
], ],
"This document will expire in %d months.": [ "This document will expire in %d months.": [
"Този документ изтича след една година.", "Този документ изтича след една година.",
"Този документ изтича след %d години.", "Този документ изтича след %d години.",
"Този документ изтича след %d години.", "Този документ изтича след %d години.",
"Този документ изтича след %d години.",
"Този документ изтича след %d години.",
"Този документ изтича след %d години." "Този документ изтича след %d години."
], ],
"Please enter the password for this paste:": "Моля въведете паролата за това съдържание:", "Please enter the password for this paste:": "Моля въведете паролата за това съдържание:",
@ -126,7 +151,7 @@
"server error or not responding": "Грешка в сървъра или не отговаря", "server error or not responding": "Грешка в сървъра или не отговаря",
"Could not post comment: %s": "Публикуването на коментара Ви беше неуспешно: %s", "Could not post comment: %s": "Публикуването на коментара Ви беше неуспешно: %s",
"Sending paste…": "Изпращане на информацията Ви…", "Sending paste…": "Изпращане на информацията Ви…",
"Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit [Ctrl]+[c] to copy)</span>": "Вашата връзка е <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Натиснете [Ctrl]+[c] за да копирате)</span>", "Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit <kbd>Ctrl</kbd>+<kbd>c</kbd> to copy)</span>": "Вашата връзка е <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Натиснете <kbd>Ctrl</kbd>+<kbd>c</kbd> за да копирате)</span>",
"Delete data": "Изтриване на информацията", "Delete data": "Изтриване на информацията",
"Could not create paste: %s": "Създаването на връзката ви беше неуспешно: %s", "Could not create paste: %s": "Създаването на връзката ви беше неуспешно: %s",
"Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)": "Дешифроването на информацията беше неуспешно: Ключа за декриптиране липсва във връзката (Да не сте използвали услуга за пренасочване или скъсяване на връзката, което би изрязало части от нея?)", "Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)": "Дешифроването на информацията беше неуспешно: Ключа за декриптиране липсва във връзката (Да не сте използвали услуга за пренасочване или скъсяване на връзката, което би изрязало части от нея?)",
@ -174,10 +199,10 @@
"Could not decrypt data. Did you enter a wrong password? Retry with the button at the top.": "Could not decrypt data. Did you enter a wrong password? Retry with the button at the top.", "Could not decrypt data. Did you enter a wrong password? Retry with the button at the top.": "Could not decrypt data. Did you enter a wrong password? Retry with the button at the top.",
"Retry": "Нов опит", "Retry": "Нов опит",
"Showing raw text…": "Showing raw text…", "Showing raw text…": "Showing raw text…",
"Notice:": "Notice:", "Notice:": "Известие:",
"This link will expire after %s.": "This link will expire after %s.", "This link will expire after %s.": "This link will expire after %s.",
"This link can only be accessed once, do not use back or refresh button in your browser.": "This link can only be accessed once, do not use back or refresh button in your browser.", "This link can only be accessed once, do not use back or refresh button in your browser.": "This link can only be accessed once, do not use back or refresh button in your browser.",
"Link:": "Link:", "Link:": "Връзка:",
"Recipient may become aware of your timezone, convert time to UTC?": "Recipient may become aware of your timezone, convert time to UTC?", "Recipient may become aware of your timezone, convert time to UTC?": "Recipient may become aware of your timezone, convert time to UTC?",
"Use Current Timezone": "Use Current Timezone", "Use Current Timezone": "Use Current Timezone",
"Convert To UTC": "Convert To UTC", "Convert To UTC": "Convert To UTC",
@ -189,5 +214,18 @@
"Your IP is not authorized to create pastes.": "Your IP is not authorized to create pastes.", "Your IP is not authorized to create pastes.": "Your IP is not authorized to create pastes.",
"Trying to shorten a URL that isn't pointing at our instance.": "Trying to shorten a URL that isn't pointing at our instance.", "Trying to shorten a URL that isn't pointing at our instance.": "Trying to shorten a URL that isn't pointing at our instance.",
"Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".": "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".", "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".": "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".",
"Error parsing YOURLS response.": "Error parsing YOURLS response." "Error parsing YOURLS response.": "Error parsing YOURLS response.",
"This secret message can only be displayed once. Would you like to see it now?": "This secret message can only be displayed once. Would you like to see it now?",
"Yes, see it": "Yes, see it",
"Dark Mode": "Dark Mode",
"Error compressing paste, due to missing WebAssembly support.": "Error compressing paste, due to missing WebAssembly support.",
"Error decompressing paste, your browser does not support WebAssembly. Please use another browser to view this paste.": "Error decompressing paste, your browser does not support WebAssembly. Please use another browser to view this paste.",
"Start over": "Start over",
"Paste copied to clipboard": "Paste copied to clipboard",
"To copy paste press on the copy button or use the clipboard shortcut <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>": "To copy paste press on the copy button or use the clipboard shortcut <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>",
"Copy link": "Copy link",
"Link copied to clipboard": "Link copied to clipboard",
"Paste text": "Paste text",
"Tabulator key serves as character (Hit <kbd>Ctrl</kbd>+<kbd>m</kbd> or <kbd>Esc</kbd> to toggle)": "Tabulator key serves as character (Hit <kbd>Ctrl</kbd>+<kbd>m</kbd> or <kbd>Esc</kbd> to toggle)",
"Theme": "Theme"
} }

View File

@ -3,15 +3,16 @@
"%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.": "%s és un pastebin en línia de codi obert i minimalista on el servidor no té coneixement de les dades enganxades. Les dades estan encriptades/desxifrades %sen el navegador%s utilitzant AES de 256 bits.", "%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.": "%s és un pastebin en línia de codi obert i minimalista on el servidor no té coneixement de les dades enganxades. Les dades estan encriptades/desxifrades %sen el navegador%s utilitzant AES de 256 bits.",
"More information on the <a href=\"https://privatebin.info/\">project page</a>.": "Més informació a la <a href=\"https://privatebin.info/\">pàgina del projecte</a>.", "More information on the <a href=\"https://privatebin.info/\">project page</a>.": "Més informació a la <a href=\"https://privatebin.info/\">pàgina del projecte</a>.",
"Because ignorance is bliss": "Perquè la ignorància és felicitat", "Because ignorance is bliss": "Perquè la ignorància és felicitat",
"en": "ca",
"Paste does not exist, has expired or has been deleted.": "El paste no existeix, ha caducat o s'ha eliminat.", "Paste does not exist, has expired or has been deleted.": "El paste no existeix, ha caducat o s'ha eliminat.",
"%s requires php %s or above to work. Sorry.": "%s requereix php %s o superior per funcionar. Ho sento.", "%s requires php %s or above to work. Sorry.": "%s requereix php %s o superior per funcionar. Ho sento.",
"%s requires configuration section [%s] to be present in configuration file.": "%s requereix que la secció de configuració [%s] sigui present al fitxer de configuració.", "%s requires configuration section [%s] to be present in configuration file.": "%s requereix que la secció de configuració [%s] sigui present al fitxer de configuració.",
"Please wait %d seconds between each post.": [ "Please wait %d seconds between each post.": [
"Espereu %d segon entre cada entrada.", "Espereu %d segon entre cada entrada.",
"Espereu %d segons entre cada entrada.", "Espereu %d segons entre cada entrada.",
"Please wait %d seconds between each post. (2nd plural)", "Espereu %d segons entre cada entrada.",
"Please wait %d seconds between each post. (3rd plural)" "Espereu %d segons entre cada entrada.",
"Espereu %d segons entre cada entrada.",
"Espereu %d segons entre cada entrada."
], ],
"Paste is limited to %s of encrypted data.": "L'enganxat està limitat a %s de dades encriptades.", "Paste is limited to %s of encrypted data.": "L'enganxat està limitat a %s de dades encriptades.",
"Invalid data.": "Dades no vàlides.", "Invalid data.": "Dades no vàlides.",
@ -19,13 +20,13 @@
"Error saving comment. Sorry.": "S'ha produït un error en desar el comentari. Ho sento.", "Error saving comment. Sorry.": "S'ha produït un error en desar el comentari. Ho sento.",
"Error saving paste. Sorry.": "S'ha produït un error en desar l'enganxat. Ho sento.", "Error saving paste. Sorry.": "S'ha produït un error en desar l'enganxat. Ho sento.",
"Invalid paste ID.": "Identificador d'enganxament no vàlid.", "Invalid paste ID.": "Identificador d'enganxament no vàlid.",
"Paste is not of burn-after-reading type.": "Paste is not of burn-after-reading type.", "Paste is not of burn-after-reading type.": "La nota no és del tipus eliminar després de llegir.",
"Wrong deletion token. Paste was not deleted.": "El token d'eliminació és incorrecte. El Paste no s'ha eliminat.", "Wrong deletion token. Paste was not deleted.": "El token d'eliminació és incorrecte. El Paste no s'ha eliminat.",
"Paste was properly deleted.": "El Paste s'ha esborrat correctament.", "Paste was properly deleted.": "El Paste s'ha esborrat correctament.",
"JavaScript is required for %s to work. Sorry for the inconvenience.": "Cal JavaScript perquè %s funcioni. Em sap greu les molèsties.", "JavaScript is required for %s to work. Sorry for the inconvenience.": "Cal JavaScript perquè %s funcioni. Em sap greu les molèsties.",
"%s requires a modern browser to work.": "%s requereix un navegador modern per funcionar.", "%s requires a modern browser to work.": "%s requereix un navegador modern per funcionar.",
"New": "Nou", "New": "Nou",
"Send": "Enviar", "Create": "Crear",
"Clone": "Clona", "Clone": "Clona",
"Raw text": "Text sense processar", "Raw text": "Text sense processar",
"Expires": "Caducitat", "Expires": "Caducitat",
@ -37,75 +38,99 @@
"%d seconds": [ "%d seconds": [
"%d segon", "%d segon",
"%d segons", "%d segons",
"%d seconds (2nd plural)", "%d segons",
"%d seconds (3rd plural)" "%d segons",
"%d segons",
"%d segons"
], ],
"%d minutes": [ "%d minutes": [
"%d minut", "%d minut",
"%d minuts", "%d minuts",
"%d minutes (2nd plural)", "%d minutes (2nd plural)",
"%d minutes (3rd plural)" "%d minutes (3rd plural)",
"%d minuts",
"%d minuts"
], ],
"%d hours": [ "%d hours": [
"%d hora", "%d hora",
"%d hores", "%d hores",
"%d hours (2nd plural)", "%d hours (2nd plural)",
"%d hours (3rd plural)" "%d hours (3rd plural)",
"%d hores",
"%d hores"
], ],
"%d days": [ "%d days": [
"%d dia", "%d dia",
"%d dies", "%d dies",
"%d days (2nd plural)", "%d dies",
"%d days (3rd plural)" "%d dies",
"%d dies",
"%d dies"
], ],
"%d weeks": [ "%d weeks": [
"%d setmana", "%d setmana",
"%d setmanes", "%d setmanes",
"%d weeks (2nd plural)", "%d setmanes",
"%d weeks (3rd plural)" "%d setmanes",
"%d setmanes",
"%d setmanes"
], ],
"%d months": [ "%d months": [
"%d mes", "%d mes",
"%d mesos", "%d mesos",
"%d months (2nd plural)", "%d mesos",
"%d months (3rd plural)" "%d mesos",
"%d mesos",
"%d mesos"
], ],
"%d years": [ "%d years": [
"%d any", "%d any",
"%d anys", "%d anys",
"%d years (2nd plural)", "%d anys",
"%d years (3rd plural)" "%d anys",
"%d anys",
"%d anys"
], ],
"Never": "Mai", "Never": "Mai",
"Note: This is a test service: Data may be deleted anytime. Kittens will die if you abuse this service.": "Note: This is a test service: Data may be deleted anytime. Kittens will die if you abuse this service.", "Note: This is a test service: Data may be deleted anytime. Kittens will die if you abuse this service.": "Nota: Aquest és un servei de prova. Les dades s'eliminaran. Molts gatets moriran si abuses d'aquest servei.",
"This document will expire in %d seconds.": [ "This document will expire in %d seconds.": [
"Aquest document caducarà d'aquí %d segon.", "Aquest document caducarà d'aquí %d segon.",
"Aquest document caducarà d'aquí %d segons.", "Aquest document caducarà d'aquí %d segons.",
"Aquest document caducarà d'aquí %d segons.", "Aquest document caducarà d'aquí %d segons.",
"Aquest document caducarà d'aquí %d segons.",
"Aquest document caducarà d'aquí %d segons.",
"Aquest document caducarà d'aquí %d segons." "Aquest document caducarà d'aquí %d segons."
], ],
"This document will expire in %d minutes.": [ "This document will expire in %d minutes.": [
"Aquest document caducarà d'aquí %d minut.", "Aquest document caducarà d'aquí %d minut.",
"Aquest document caducarà d'aquí %d minuts.", "Aquest document caducarà d'aquí %d minuts.",
"Aquest document caducarà d'aquí %d minuts.", "Aquest document caducarà d'aquí %d minuts.",
"Aquest document caducarà d'aquí %d minuts.",
"Aquest document caducarà d'aquí %d minuts.",
"Aquest document caducarà d'aquí %d minuts." "Aquest document caducarà d'aquí %d minuts."
], ],
"This document will expire in %d hours.": [ "This document will expire in %d hours.": [
"Aquest document caducarà d'aquí %d hora.", "Aquest document caducarà d'aquí %d hora.",
"Aquest document caducarà d'aquí %d hores.", "Aquest document caducarà d'aquí %d hores.",
"Aquest document caducarà d'aquí %d hores.", "Aquest document caducarà d'aquí %d hores.",
"Aquest document caducarà d'aquí %d hores.",
"Aquest document caducarà d'aquí %d hores.",
"Aquest document caducarà d'aquí %d hores." "Aquest document caducarà d'aquí %d hores."
], ],
"This document will expire in %d days.": [ "This document will expire in %d days.": [
"Aquest document caducarà d'aquí %d dia.", "Aquest document caducarà d'aquí %d dia.",
"Aquest document caducarà d'aquí %d dies.", "Aquest document caducarà d'aquí %d dies.",
"Aquest document caducarà d'aquí %d dies.", "Aquest document caducarà d'aquí %d dies.",
"Aquest document caducarà d'aquí %d dies.",
"Aquest document caducarà d'aquí %d dies.",
"Aquest document caducarà d'aquí %d dies." "Aquest document caducarà d'aquí %d dies."
], ],
"This document will expire in %d months.": [ "This document will expire in %d months.": [
"Aquest document caducarà d'aquí %d mes.", "Aquest document caducarà d'aquí %d mes.",
"Aquest document caducarà d'aquí %d mesos.", "Aquest document caducarà d'aquí %d mesos.",
"Aquest document caducarà d'aquí %d mesos.", "Aquest document caducarà d'aquí %d mesos.",
"Aquest document caducarà d'aquí %d mesos.",
"Aquest document caducarà d'aquí %d mesos.",
"Aquest document caducarà d'aquí %d mesos." "Aquest document caducarà d'aquí %d mesos."
], ],
"Please enter the password for this paste:": "Si us plau, introdueix la contrasenya per aquest paste:", "Please enter the password for this paste:": "Si us plau, introdueix la contrasenya per aquest paste:",
@ -126,10 +151,10 @@
"server error or not responding": "server error or not responding", "server error or not responding": "server error or not responding",
"Could not post comment: %s": "No s'ha pogut publicar el comentari: %s", "Could not post comment: %s": "No s'ha pogut publicar el comentari: %s",
"Sending paste…": "Enviant paste…", "Sending paste…": "Enviant paste…",
"Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit [Ctrl]+[c] to copy)</span>": "Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit [Ctrl]+[c] to copy)</span>", "Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit <kbd>Ctrl</kbd>+<kbd>c</kbd> to copy)</span>": "Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit <kbd>Ctrl</kbd>+<kbd>c</kbd> to copy)</span>",
"Delete data": "Esborrar les dades", "Delete data": "Esborrar les dades",
"Could not create paste: %s": "Could not create paste: %s", "Could not create paste: %s": "Could not create paste: %s",
"Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)": "Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)", "Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)": "No es pot desxifrar la nota: falta la clau de desxifrat a l'URL (vau utilitzar un adreçament o un escurçador d'URL que elimina part de l'URL?)",
"B": "B", "B": "B",
"KiB": "KiB", "KiB": "KiB",
"MiB": "MiB", "MiB": "MiB",
@ -147,8 +172,8 @@
"Cloned: '%s'": "Cloned: '%s'", "Cloned: '%s'": "Cloned: '%s'",
"The cloned file '%s' was attached to this paste.": "The cloned file '%s' was attached to this paste.", "The cloned file '%s' was attached to this paste.": "The cloned file '%s' was attached to this paste.",
"Attach a file": "Adjuntar un fitxer", "Attach a file": "Adjuntar un fitxer",
"alternatively drag & drop a file or paste an image from the clipboard": "alternatively drag & drop a file or paste an image from the clipboard", "alternatively drag & drop a file or paste an image from the clipboard": "alternativament, pots arrossegar i deixar anar un fitxer o enganxar una imatge des del porta-retalls",
"File too large, to display a preview. Please download the attachment.": "File too large, to display a preview. Please download the attachment.", "File too large, to display a preview. Please download the attachment.": "El fitxer és massa gran per fer una vista prèvia. Si us plau, descarrega l'adjunt.",
"Remove attachment": "Remove attachment", "Remove attachment": "Remove attachment",
"Your browser does not support uploading encrypted files. Please use a newer browser.": "Your browser does not support uploading encrypted files. Please use a newer browser.", "Your browser does not support uploading encrypted files. Please use a newer browser.": "Your browser does not support uploading encrypted files. Please use a newer browser.",
"Invalid attachment.": "Invalid attachment.", "Invalid attachment.": "Invalid attachment.",
@ -186,8 +211,21 @@
"Visit this link to see the note. Giving the URL to anyone allows them to access the note, too.": "Visit this link to see the note. Giving the URL to anyone allows them to access the note, too.", "Visit this link to see the note. Giving the URL to anyone allows them to access the note, too.": "Visit this link to see the note. Giving the URL to anyone allows them to access the note, too.",
"URL shortener may expose your decrypt key in URL.": "URL shortener may expose your decrypt key in URL.", "URL shortener may expose your decrypt key in URL.": "URL shortener may expose your decrypt key in URL.",
"Save paste": "Save paste", "Save paste": "Save paste",
"Your IP is not authorized to create pastes.": "Your IP is not authorized to create pastes.", "Your IP is not authorized to create pastes.": "La teva IP no està autoritzada a crear notes.",
"Trying to shorten a URL that isn't pointing at our instance.": "Trying to shorten a URL that isn't pointing at our instance.", "Trying to shorten a URL that isn't pointing at our instance.": "S'està intentant escurçar un URL que no apunta a la nostra instància.",
"Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".": "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".", "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".": "Error en la crida a YOURLS. Probablement és un problema de configuració, com ara \"apiurl\" o \"signature\" incorrectes o que falten.",
"Error parsing YOURLS response.": "Error parsing YOURLS response." "Error parsing YOURLS response.": "Error parsing YOURLS response.",
"This secret message can only be displayed once. Would you like to see it now?": "Aquest missatge secret sols es pot veure una vegada. Vols obrir-ho ara?",
"Yes, see it": "Yes, see it",
"Dark Mode": "Dark Mode",
"Error compressing paste, due to missing WebAssembly support.": "Error de compressió de la nota, no hi ha suport de WebAssembly.",
"Error decompressing paste, your browser does not support WebAssembly. Please use another browser to view this paste.": "Error decompressing paste, your browser does not support WebAssembly. Please use another browser to view this paste.",
"Start over": "Start over",
"Paste copied to clipboard": "Paste copied to clipboard",
"To copy paste press on the copy button or use the clipboard shortcut <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>": "To copy paste press on the copy button or use the clipboard shortcut <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>",
"Copy link": "Copy link",
"Link copied to clipboard": "Link copied to clipboard",
"Paste text": "Paste text",
"Tabulator key serves as character (Hit <kbd>Ctrl</kbd>+<kbd>m</kbd> or <kbd>Esc</kbd> to toggle)": "Tabulator key serves as character (Hit <kbd>Ctrl</kbd>+<kbd>m</kbd> or <kbd>Esc</kbd> to toggle)",
"Theme": "Theme"
} }

View File

@ -3,7 +3,6 @@
"%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.": "%s hè un serviziu in linea di tipu « pastebin » (ghjestiunariu dappiccicu di pezzi di testu è di codice di fonte) minimalistu è à fonte aperta induve u servitore ùn hà micca cunnuscenza di i dati mandati. I dati sò cifrati è dicifrati %sin u navigatore%s cù una cifratura AES di 256 bit.", "%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.": "%s hè un serviziu in linea di tipu « pastebin » (ghjestiunariu dappiccicu di pezzi di testu è di codice di fonte) minimalistu è à fonte aperta induve u servitore ùn hà micca cunnuscenza di i dati mandati. I dati sò cifrati è dicifrati %sin u navigatore%s cù una cifratura AES di 256 bit.",
"More information on the <a href=\"https://privatebin.info/\">project page</a>.": "Più dinfurmazione annantà a <a href=\"https://privatebin.info/\">pagina di u prughjettu</a>.", "More information on the <a href=\"https://privatebin.info/\">project page</a>.": "Più dinfurmazione annantà a <a href=\"https://privatebin.info/\">pagina di u prughjettu</a>.",
"Because ignorance is bliss": "Perchè lignurenza hè una campa", "Because ignorance is bliss": "Perchè lignurenza hè una campa",
"en": "co",
"Paste does not exist, has expired or has been deleted.": "Lappiccicu ùn esiste micca, hè scadutu o hè statu squassatu.", "Paste does not exist, has expired or has been deleted.": "Lappiccicu ùn esiste micca, hè scadutu o hè statu squassatu.",
"%s requires php %s or above to work. Sorry.": "Per disgrazzia, %s richiede php %s o più recente per funziunà.", "%s requires php %s or above to work. Sorry.": "Per disgrazzia, %s richiede php %s o più recente per funziunà.",
"%s requires configuration section [%s] to be present in configuration file.": "%s richiede a presenza di a sezzione di cunfigurazione [%s] in a schedariu di cunfigurazione.", "%s requires configuration section [%s] to be present in configuration file.": "%s richiede a presenza di a sezzione di cunfigurazione [%s] in a schedariu di cunfigurazione.",
@ -11,6 +10,8 @@
"Aspettate %d seconda trà dui publicazioni.", "Aspettate %d seconda trà dui publicazioni.",
"Aspettate %d seconde trà dui publicazioni.", "Aspettate %d seconde trà dui publicazioni.",
"Aspettate %d seconde trà dui publicazioni.", "Aspettate %d seconde trà dui publicazioni.",
"Aspettate %d seconde trà dui publicazioni.",
"Aspettate %d seconde trà dui publicazioni.",
"Aspettate %d seconde trà dui publicazioni." "Aspettate %d seconde trà dui publicazioni."
], ],
"Paste is limited to %s of encrypted data.": "Lappiccicu hè limitatu à %s di dati cifrati.", "Paste is limited to %s of encrypted data.": "Lappiccicu hè limitatu à %s di dati cifrati.",
@ -25,55 +26,69 @@
"JavaScript is required for %s to work. Sorry for the inconvenience.": "JavaScript hè richiestu per fà funziunà %s. Scusate per stu penseru.", "JavaScript is required for %s to work. Sorry for the inconvenience.": "JavaScript hè richiestu per fà funziunà %s. Scusate per stu penseru.",
"%s requires a modern browser to work.": "%s richiede un navigatore mudernu per funziunà.", "%s requires a modern browser to work.": "%s richiede un navigatore mudernu per funziunà.",
"New": "Novu", "New": "Novu",
"Send": "Mandà", "Create": "Creà",
"Clone": "Duppione", "Clone": "Duppione",
"Raw text": "Testu grossu", "Raw text": "Testu grossu",
"Expires": "Scadenza", "Expires": "Scadenza",
"Burn after reading": "Squassà dopu a lettura", "Burn after reading": "Squassà dopu a lettura",
"Open discussion": "Apre una chjachjarata", "Open discussion": "Apre una chjachjerata",
"Password (recommended)": "Parolla dintesa (ricumandata)", "Password (recommended)": "Parolla dintesa (ricumandata)",
"Discussion": "Chjachjarata", "Discussion": "Chjachjerata",
"Toggle navigation": "Invertisce a navigazione", "Toggle navigation": "Invertisce a navigazione",
"%d seconds": [ "%d seconds": [
"%d seconda", "%d seconda",
"%d seconde", "%d seconde",
"%d seconde", "%d seconde",
"%d seconde",
"%d seconde",
"%d seconde" "%d seconde"
], ],
"%d minutes": [ "%d minutes": [
"%d minutu", "%d minutu",
"%d minuti", "%d minuti",
"%d minuti", "%d minuti",
"%d minuti",
"%d minuti",
"%d minuti" "%d minuti"
], ],
"%d hours": [ "%d hours": [
"%d ora", "%d ora",
"%d ore", "%d ore",
"%d ore", "%d ore",
"%d ore",
"%d ore",
"%d ore" "%d ore"
], ],
"%d days": [ "%d days": [
"%d ghjornu", "%d ghjornu",
"%d ghjorni", "%d ghjorni",
"%d ghjorni", "%d ghjorni",
"%d ghjorni",
"%d ghjorni",
"%d ghjorni" "%d ghjorni"
], ],
"%d weeks": [ "%d weeks": [
"%d settimana", "%d settimana",
"%d settimane", "%d settimane",
"%d settimane", "%d settimane",
"%d settimane",
"%d settimane",
"%d settimane" "%d settimane"
], ],
"%d months": [ "%d months": [
"%d mese", "%d mese",
"%d mesi", "%d mesi",
"%d mesi", "%d mesi",
"%d mesi",
"%d mesi",
"%d mesi" "%d mesi"
], ],
"%d years": [ "%d years": [
"%d annu", "%d annu",
"%d anni", "%d anni",
"%d anni", "%d anni",
"%d anni",
"%d anni",
"%d anni" "%d anni"
], ],
"Never": "Mai", "Never": "Mai",
@ -82,30 +97,40 @@
"Stu ducumentu serà scadutu in %d seconda.", "Stu ducumentu serà scadutu in %d seconda.",
"Stu ducumentu serà scadutu in %d seconde.", "Stu ducumentu serà scadutu in %d seconde.",
"Stu ducumentu serà scadutu in %d seconde.", "Stu ducumentu serà scadutu in %d seconde.",
"Stu ducumentu serà scadutu in %d seconde.",
"Stu ducumentu serà scadutu in %d seconde.",
"Stu ducumentu serà scadutu in %d seconde." "Stu ducumentu serà scadutu in %d seconde."
], ],
"This document will expire in %d minutes.": [ "This document will expire in %d minutes.": [
"Stu ducumentu serà scadutu in %d minutu.", "Stu ducumentu serà scadutu in %d minutu.",
"Stu ducumentu serà scadutu in %d minuti.", "Stu ducumentu serà scadutu in %d minuti.",
"Stu ducumentu serà scadutu in %d minuti.", "Stu ducumentu serà scadutu in %d minuti.",
"Stu ducumentu serà scadutu in %d minuti.",
"Stu ducumentu serà scadutu in %d minuti.",
"Stu ducumentu serà scadutu in %d minuti." "Stu ducumentu serà scadutu in %d minuti."
], ],
"This document will expire in %d hours.": [ "This document will expire in %d hours.": [
"Stu ducumentu serà scadutu in %d ora.", "Stu ducumentu serà scadutu in %d ora.",
"Stu ducumentu serà scadutu in %d ore.", "Stu ducumentu serà scadutu in %d ore.",
"Stu ducumentu serà scadutu in %d ore.", "Stu ducumentu serà scadutu in %d ore.",
"Stu ducumentu serà scadutu in %d ore.",
"Stu ducumentu serà scadutu in %d ore.",
"Stu ducumentu serà scadutu in %d ore." "Stu ducumentu serà scadutu in %d ore."
], ],
"This document will expire in %d days.": [ "This document will expire in %d days.": [
"Stu ducumentu serà scadutu in %d ghjornu.", "Stu ducumentu serà scadutu in %d ghjornu.",
"Stu ducumentu serà scadutu in %d ghjorni.", "Stu ducumentu serà scadutu in %d ghjorni.",
"Stu ducumentu serà scadutu in %d ghjorni.", "Stu ducumentu serà scadutu in %d ghjorni.",
"Stu ducumentu serà scadutu in %d ghjorni.",
"Stu ducumentu serà scadutu in %d ghjorni.",
"Stu ducumentu serà scadutu in %d ghjorni." "Stu ducumentu serà scadutu in %d ghjorni."
], ],
"This document will expire in %d months.": [ "This document will expire in %d months.": [
"Stu ducumentu serà scadutu in %d mese.", "Stu ducumentu serà scadutu in %d mese.",
"Stu ducumentu serà scadutu in %d mesi.", "Stu ducumentu serà scadutu in %d mesi.",
"Stu ducumentu serà scadutu in %d mesi.", "Stu ducumentu serà scadutu in %d mesi.",
"Stu ducumentu serà scadutu in %d mesi.",
"Stu ducumentu serà scadutu in %d mesi.",
"Stu ducumentu serà scadutu in %d mesi." "Stu ducumentu serà scadutu in %d mesi."
], ],
"Please enter the password for this paste:": "Stampittate a parolla dintesa per stappiccicu :", "Please enter the password for this paste:": "Stampittate a parolla dintesa per stappiccicu :",
@ -126,7 +151,7 @@
"server error or not responding": "sbagliu di u servitore o u servitore ùn risponde micca", "server error or not responding": "sbagliu di u servitore o u servitore ùn risponde micca",
"Could not post comment: %s": "Ùn si pò micca impustà u cummentu : %s", "Could not post comment: %s": "Ùn si pò micca impustà u cummentu : %s",
"Sending paste…": "Inviu di lappiccicu…", "Sending paste…": "Inviu di lappiccicu…",
"Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit [Ctrl]+[c] to copy)</span>": "U vostru appiccicu si trova à lindirizzu<a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Appughjate [Ctrl]+[c] per cupià u liame)</span>", "Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit <kbd>Ctrl</kbd>+<kbd>c</kbd> to copy)</span>": "U vostru appiccicu si trova à lindirizzu <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Appughjate nantà <kbd>Ctrl</kbd>+<kbd>c</kbd> per cupià u liame)</span>",
"Delete data": "Squassà i dati", "Delete data": "Squassà i dati",
"Could not create paste: %s": "Ùn si pò micca creà lappiccicu : %s", "Could not create paste: %s": "Ùn si pò micca creà lappiccicu : %s",
"Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)": "Ùn si pò micca dicifrà lappiccicu : A chjave di dicifratura hè assente in lindirizzu. Averiate impiegatu un orientadore dindirizzu o un riduttore chì ammuzzeghja una parte di lindirizzu ?", "Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)": "Ùn si pò micca dicifrà lappiccicu : A chjave di dicifratura hè assente in lindirizzu. Averiate impiegatu un orientadore dindirizzu o un riduttore chì ammuzzeghja una parte di lindirizzu ?",
@ -143,15 +168,15 @@
"Plain Text": "Testu in chjaru", "Plain Text": "Testu in chjaru",
"Source Code": "Codice di fonte", "Source Code": "Codice di fonte",
"Markdown": "Markdown", "Markdown": "Markdown",
"Download attachment": "Scaricà a pezza aghjunta", "Download attachment": "Scaricà a pezza ghjunta",
"Cloned: '%s'": "Duppiatu : « %s »", "Cloned: '%s'": "Duppiatu : « %s »",
"The cloned file '%s' was attached to this paste.": "U schedariu duppiatu « %s » hè statu aghjuntu à stappiccicu.", "The cloned file '%s' was attached to this paste.": "U schedariu duppiatu « %s » hè statu aghjuntu à stappiccicu.",
"Attach a file": "Aghjunghje un schedariu", "Attach a file": "Aghjunghje un schedariu",
"alternatively drag & drop a file or paste an image from the clipboard": "in alternanza, sguillà è depone un schedariu o incullà una fiura da u premepapei", "alternatively drag & drop a file or paste an image from the clipboard": "in alternanza, sguillà è depone un schedariu o incullà una fiura da u premepapei",
"File too large, to display a preview. Please download the attachment.": "Schedariu troppu maiò per affissà una fighjulata. Scaricate a pezza aghjunta.", "File too large, to display a preview. Please download the attachment.": "Schedariu troppu maiò per affissà una fighjulata. Scaricate a pezza ghjunta.",
"Remove attachment": "Caccià a pezza aghjunta", "Remove attachment": "Caccià a pezza ghjunta",
"Your browser does not support uploading encrypted files. Please use a newer browser.": "U vostru navigatore ùn accetta micca linviu di i schedarii cifrati. Impiegate un navigatore più recente.", "Your browser does not support uploading encrypted files. Please use a newer browser.": "U vostru navigatore ùn accetta micca linviu di i schedarii cifrati. Impiegate un navigatore più recente.",
"Invalid attachment.": "A pezza aghjunta hè inaccettevule.", "Invalid attachment.": "A pezza ghjunta hè inaccettevule.",
"Options": "Ozzioni", "Options": "Ozzioni",
"Shorten URL": "Ammuzzà lindirizzu", "Shorten URL": "Ammuzzà lindirizzu",
"Editor": "Editore", "Editor": "Editore",
@ -188,6 +213,19 @@
"Save paste": "Arregistrà lappiccicu", "Save paste": "Arregistrà lappiccicu",
"Your IP is not authorized to create pastes.": "U vostru indirizzu IP ùn hè micca auturizatu à creà lappiccichi.", "Your IP is not authorized to create pastes.": "U vostru indirizzu IP ùn hè micca auturizatu à creà lappiccichi.",
"Trying to shorten a URL that isn't pointing at our instance.": "Pruvate dammuzzà un indirizzu web chì ùn punta micca versu a vostra instanza.", "Trying to shorten a URL that isn't pointing at our instance.": "Pruvate dammuzzà un indirizzu web chì ùn punta micca versu a vostra instanza.",
"Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".": "Sbagliu à a chjama di YOURLS. Seria forse una cunfigurazione gattiva, tale una \"apiurl\" o \"signature\" falsa o assente.", "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".": "Sbagliu à a chjama di YOURLS. Seria forse una cunfigurazione gattiva, tale una « apiurl » o « signature » falsa o assente.",
"Error parsing YOURLS response.": "Sbagliu durante lanalisa di a risposta di YOURLS." "Error parsing YOURLS response.": "Sbagliu durante lanalisa di a risposta di YOURLS.",
"This secret message can only be displayed once. Would you like to see it now?": "Stu messaghju secretu pò esse affissatu solu una volta. Vulete fighjallu subitu ?",
"Yes, see it": "Iè, fighjallu",
"Dark Mode": "Modu scuru",
"Error compressing paste, due to missing WebAssembly support.": "Sbagliu durante a cumpressione di lappiccicu, perchè WebAssembly ùn hè micca accettatu.",
"Error decompressing paste, your browser does not support WebAssembly. Please use another browser to view this paste.": "Sbagliu durante a scumpressione di lappiccicu, perchè u vostru navigatore ùn accetteghja micca WebAssembly. Ci vole à impiegà un altru navigatore per affissà stappiccicu.",
"Start over": "Principià torna",
"Paste copied to clipboard": "Lappiccicu hè statu cupiatu in u premepapei",
"To copy paste press on the copy button or use the clipboard shortcut <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>": "Per cupià lappiccicu, appughjate nantà u buttone di copia o impiegate laccurtatoghju di u premepapei <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>",
"Copy link": "Cupià u liame",
"Link copied to clipboard": "U liame hè statu cupiatu in u premepapei",
"Paste text": "Testu di lappiccicu",
"Tabulator key serves as character (Hit <kbd>Ctrl</kbd>+<kbd>m</kbd> or <kbd>Esc</kbd> to toggle)": "U tastu di tabulazione ghjova cumè un caratteru (Appughjate nantà <kbd>Ctrl</kbd>+<kbd>m</kbd> o <kbd>Scapp</kbd> per scambià)",
"Theme": "Tema"
} }

View File

@ -1,33 +1,34 @@
{ {
"PrivateBin": "PrivateBin", "PrivateBin": "PrivateBin",
"%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.": "%s je minimalistický open source 'pastebin' server, který neanalyzuje vložená data. Data jsou šifrována %sv prohlížeči%s pomocí 256 bitů AES.", "%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.": "%s je minimalistický open source 'pastebin' server, který nemá přístup ke vloženým datům. Data jsou šifrována %sv prohlížeči%s pomocí 256bitového AES.",
"More information on the <a href=\"https://privatebin.info/\">project page</a>.": "Více informací na <a href=\"https://privatebin.info/\">stránce projektu</a>.", "More information on the <a href=\"https://privatebin.info/\">project page</a>.": "Více informací na <a href=\"https://privatebin.info/\">stránce projektu</a>.",
"Because ignorance is bliss": "Protože nevědomost je sladká", "Because ignorance is bliss": "Protože nevědomost je sladká",
"en": "cs",
"Paste does not exist, has expired or has been deleted.": "Vložený text neexistuje, expiroval nebo byl odstraněn.", "Paste does not exist, has expired or has been deleted.": "Vložený text neexistuje, expiroval nebo byl odstraněn.",
"%s requires php %s or above to work. Sorry.": "%s vyžaduje php %s nebo vyšší. Lituji.", "%s requires php %s or above to work. Sorry.": "%s vyžaduje php %s nebo vyšší. Lituji.",
"%s requires configuration section [%s] to be present in configuration file.": "%s vyžaduje, aby byla v konfiguračním souboru přítomna sekce [%s].", "%s requires configuration section [%s] to be present in configuration file.": "%s vyžaduje, aby byla v konfiguračním souboru přítomna sekce [%s].",
"Please wait %d seconds between each post.": [ "Please wait %d seconds between each post.": [
"Počet sekund do dalšího příspěvku: %d.", "Vyčkejte prosím %d sekundu mezi následujícími příspěvky.",
"Počet sekund do dalšího příspěvku: %d.", "Vyčkejte prosím %d sekundy mezi následujícími příspěvky.",
"Počet sekund do dalšího příspěvku: %d.", "Vyčkejte prosím %d sekund mezi následujícími příspěvky.",
"Počet sekund do dalšího příspěvku: %d." "Vyčkejte prosím %d sekund mezi následujícími příspěvky.",
"Vyčkejte prosím %d sekund mezi následujícími příspěvky.",
"Vyčkejte prosím %d sekund mezi následujícími příspěvky."
], ],
"Paste is limited to %s of encrypted data.": "Příspěvek je limitován na %s šífrovaných dat", "Paste is limited to %s of encrypted data.": "Příspěvek je limitován na %s šífrovaných dat",
"Invalid data.": "Chybná data.", "Invalid data.": "Chybná data.",
"You are unlucky. Try again.": "Lituji, zkuste to znovu.", "You are unlucky. Try again.": "Lituji, zkuste to znovu.",
"Error saving comment. Sorry.": "Chyba při ukládání komentáře.", "Error saving comment. Sorry.": "Chyba při ukládání komentáře. Promiňte.",
"Error saving paste. Sorry.": "Chyba při ukládání příspěvku.", "Error saving paste. Sorry.": "Chyba při ukládání příspěvku. Promiňte.",
"Invalid paste ID.": "Chybně vložené ID.", "Invalid paste ID.": "Chybné ID příspěvku.",
"Paste is not of burn-after-reading type.": "Příspěvek není nastaven na smazaní po přečtení.", "Paste is not of burn-after-reading type.": "Příspěvek není nastaven na smazání po přečtení.",
"Wrong deletion token. Paste was not deleted.": "Chybný token pro odstranění. Příspěvek nebyl smazán.", "Wrong deletion token. Paste was not deleted.": "Chybný token pro odstranění. Příspěvek nebyl smazán.",
"Paste was properly deleted.": "Příspěvek byl řádně smazán.", "Paste was properly deleted.": "Příspěvek byl řádně smazán.",
"JavaScript is required for %s to work. Sorry for the inconvenience.": "Pro fungování %s je vyžadován JavaScript. Omlouváme se za nepříjemnosti.", "JavaScript is required for %s to work. Sorry for the inconvenience.": "Pro fungování %s je vyžadován JavaScript. Omlouváme se za nepříjemnosti.",
"%s requires a modern browser to work.": "%%s requires a modern browser to work.", "%s requires a modern browser to work.": "Pro fungování %s je vyžadován moderní prohlížeč.",
"New": "Nový", "New": "Nový",
"Send": "Odeslat", "Create": "Vytvořit",
"Clone": "Klonovat", "Clone": "Klonovat",
"Raw text": "Pouze Text", "Raw text": "Čistý text",
"Expires": "Expirace", "Expires": "Expirace",
"Burn after reading": "Po přečtení smazat", "Burn after reading": "Po přečtení smazat",
"Open discussion": "Povolit komentáře", "Open discussion": "Povolit komentáře",
@ -35,89 +36,113 @@
"Discussion": "Komentáře", "Discussion": "Komentáře",
"Toggle navigation": "Přepnout navigaci", "Toggle navigation": "Přepnout navigaci",
"%d seconds": [ "%d seconds": [
"%d sekuda", "%d sekunda",
"%d sekundy", "%d sekundy",
"%d sekund", "%d sekund",
"%d seconds (3rd plural)" "%d sekund",
"%d sekund",
"%d sekund"
], ],
"%d minutes": [ "%d minutes": [
"%d minuta", "%d minuta",
"%d minuty", "%d minuty",
"%d minut", "%d minut",
"%d minutes (3rd plural)" "%d minut",
"%d minut",
"%d minut"
], ],
"%d hours": [ "%d hours": [
"%d hodina", "%d hodina",
"%d hodiny", "%d hodiny",
"%d hodin", "%d hodin",
"%d hours (3rd plural)" "%d hodin",
"%d hodin",
"%d hodin"
], ],
"%d days": [ "%d days": [
"%d den", "%d den",
"%d dny", "%d dny",
"%d dní", "%d dní",
"%d days (3rd plural)" "%d dní",
"%d dní",
"%d dní"
], ],
"%d weeks": [ "%d weeks": [
"%d týden", "%d týden",
"%d týdeny", "%d týdny",
"%d týdnů", "%d týdnů",
"%d weeks (3rd plural)" "%d týdnů",
"%d týdnů",
"%d týdnů"
], ],
"%d months": [ "%d months": [
"%d měsíc", "%d měsíc",
"%d měsíce", "%d měsíce",
"%d měsíců", "%d měsíců",
"%d months (3rd plural)" "%d měsíců",
"%d měsíců",
"%d měsíců"
], ],
"%d years": [ "%d years": [
"%d rok", "%d rok",
"%d roky", "%d roky",
"%d roků", "%d let",
"%d years (3rd plural)" "%d let",
"%d let",
"%d let"
], ],
"Never": "Nikdy", "Never": "Nikdy",
"Note: This is a test service: Data may be deleted anytime. Kittens will die if you abuse this service.": "Poznámka: Tato služba slouží k vyzkoušení: Data mohou být kdykoliv smazána. Při zneužití této služby zemřou koťátka.", "Note: This is a test service: Data may be deleted anytime. Kittens will die if you abuse this service.": "Poznámka: Toto je testovací služba: Data mohou být kdykoliv smazána. Při zneužití této služby zemřou koťátka.",
"This document will expire in %d seconds.": [ "This document will expire in %d seconds.": [
"Tento dokument expiruje za %d sekundu.", "Tento dokument expiruje za %d sekundu.",
"Tento dokument expiruje za %d sekundy.", "Tento dokument expiruje za %d sekundy.",
"Tento dokument expiruje za %d sekund.", "Tento dokument expiruje za %d sekund.",
"Tento dokument expiruje za %d sekund." "Tento dokument expiruje za %d sekund.",
"Tento dokument expiruje za %d sekund.",
"Tento dokument expiruje za %d sekund."
], ],
"This document will expire in %d minutes.": [ "This document will expire in %d minutes.": [
"Tento dokument expiruje za %d minutu.", "Tento dokument expiruje za %d minutu.",
"Tento dokument expiruje za %d minuty.", "Tento dokument expiruje za %d minuty.",
"Tento dokument expiruje za %d minut.", "Tento dokument expiruje za %d minut.",
"Tento dokument expiruje za %d minut." "Tento dokument expiruje za %d minut.",
"Tento dokument expiruje za %d minut.",
"Tento dokument expiruje za %d minut."
], ],
"This document will expire in %d hours.": [ "This document will expire in %d hours.": [
"Tento dokument expiruje za %d hodinu.", "Tento dokument expiruje za %d hodinu.",
"Tento dokument expiruje za %d hodiny.", "Tento dokument expiruje za %d hodiny.",
"Tento dokument expiruje za %d hodin.", "Tento dokument expiruje za %d hodin.",
"Tento dokument expiruje za %d hodin." "Tento dokument expiruje za %d hodin.",
"Tento dokument expiruje za %d hodin.",
"Tento dokument expiruje za %d hodin."
], ],
"This document will expire in %d days.": [ "This document will expire in %d days.": [
"Tento dokument expiruje za %d den.", "Tento dokument expiruje za %d den.",
"Tento dokument expiruje za %d dny.", "Tento dokument expiruje za %d dny.",
"Tento dokument expiruje za %d dny.", "Tento dokument expiruje za %d dní.",
"Tento dokument expiruje za %d dny." "Tento dokument expiruje za %d dní.",
"Tento dokument expiruje za %d dní.",
"Tento dokument expiruje za %d dní."
], ],
"This document will expire in %d months.": [ "This document will expire in %d months.": [
"Tento dokument expiruje za %d měsíc.", "Tento dokument expiruje za %d měsíc.",
"Tento dokument expiruje za %d měsíce.", "Tento dokument expiruje za %d měsíce.",
"Tento dokument expiruje za %d měsíců.", "Tento dokument expiruje za %d měsíců.",
"Tento dokument expiruje za %d měsíců." "Tento dokument expiruje za %d měsíců.",
"Tento dokument expiruje za %d měsíců.",
"Tento dokument expiruje za %d měsíců."
], ],
"Please enter the password for this paste:": "Zadejte prosím heslo:", "Please enter the password for this paste:": "Zadejte prosím heslo k tomuto příspěvku:",
"Could not decrypt data (Wrong key?)": "Nepodařilo se dešifrovat data (Špatný klíč?)", "Could not decrypt data (Wrong key?)": "Nepodařilo se dešifrovat data (Špatný klíč?)",
"Could not delete the paste, it was not stored in burn after reading mode.": "Nepodařilo se odstranit příspěvek, nebyl uložen v režimu smazání po přečtení.", "Could not delete the paste, it was not stored in burn after reading mode.": "Nepodařilo se odstranit příspěvek, nebyl uložen v režimu smazání po přečtení.",
"FOR YOUR EYES ONLY. Don't close this window, this message can't be displayed again.": "POUZE PRO VAŠE OČI. Nezavírejte toto okno, tuto zprávu nelze znovu zobrazit.", "FOR YOUR EYES ONLY. Don't close this window, this message can't be displayed again.": "POUZE PRO VAŠE OČI. Nezavírejte toto okno, tuto zprávu nelze znovu zobrazit.",
"Could not decrypt comment; Wrong key?": "Nepodařilo se dešifrovat komentář; Špatný klíč?", "Could not decrypt comment; Wrong key?": "Nepodařilo se dešifrovat komentář; Špatný klíč?",
"Reply": "Odpovědět", "Reply": "Odpovědět",
"Anonymous": "Anonym", "Anonymous": "Anonym",
"Avatar generated from IP address": "Avatar vygenerován z IP adresy", "Avatar generated from IP address": "Avatar vygenerován podle IP adresy",
"Add comment": "Přidat komentář", "Add comment": "Přidat komentář",
"Optional nickname…": "Volitelný nickname…", "Optional nickname…": "Nepovinná přezdívka…",
"Post comment": "Odeslat komentář", "Post comment": "Odeslat komentář",
"Sending comment…": "Odesílání komentáře…", "Sending comment…": "Odesílání komentáře…",
"Comment posted.": "Komentář odeslán.", "Comment posted.": "Komentář odeslán.",
@ -126,10 +151,10 @@
"server error or not responding": "Chyba na serveru nebo server neodpovídá", "server error or not responding": "Chyba na serveru nebo server neodpovídá",
"Could not post comment: %s": "Nelze odeslat komentář: %s", "Could not post comment: %s": "Nelze odeslat komentář: %s",
"Sending paste…": "Odesílání příspěvku…", "Sending paste…": "Odesílání příspěvku…",
"Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit [Ctrl]+[c] to copy)</span>": "Váš link je <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Stiskněte [Ctrl]+[c] pro zkopírování)</span>", "Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit <kbd>Ctrl</kbd>+<kbd>c</kbd> to copy)</span>": "Váš příspěvek je <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Stiskněte <kbd>Ctrl</kbd>+<kbd>c</kbd> pro zkopírování)</span>",
"Delete data": "Odstranit data", "Delete data": "Odstranit data",
"Could not create paste: %s": "Nelze vytvořit příspěvek: %s", "Could not create paste: %s": "Nepodařilo se vytvořit příspěvek: %s",
"Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)": "Nepodařilo se dešifrovat příspěvek: V adrese chybí dešifrovací klíč (Možnou příčinou může být URL shortener?)", "Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)": "Nepodařilo se dešifrovat příspěvek: V adrese chybí dešifrovací klíč (Nepoužili jste přesměrovač nebo zkracovač URL, který maže části URL?)",
"B": "B", "B": "B",
"KiB": "KiB", "KiB": "KiB",
"MiB": "MiB", "MiB": "MiB",
@ -140,54 +165,67 @@
"ZiB": "ZiB", "ZiB": "ZiB",
"YiB": "YiB", "YiB": "YiB",
"Format": "Formát", "Format": "Formát",
"Plain Text": "Prostý Text", "Plain Text": "Prostý text",
"Source Code": "Zdrojový kód", "Source Code": "Zdrojový kód",
"Markdown": "Markdown", "Markdown": "Markdown",
"Download attachment": "Stáhnout přílohu", "Download attachment": "Stáhnout přílohu",
"Cloned: '%s'": "Klonováno: '%s'", "Cloned: '%s'": "Naklonováno: '%s'",
"The cloned file '%s' was attached to this paste.": "Naklonovaný soubor '%s' byl připojen k tomuto příspěvku.", "The cloned file '%s' was attached to this paste.": "Naklonovaný soubor „%s“ byl připojen k tomuto příspěvku.",
"Attach a file": "Připojit soubor", "Attach a file": "Připojit soubor",
"alternatively drag & drop a file or paste an image from the clipboard": "alternativně přetáhněte soubor nebo vložte obrázek ze schránky", "alternatively drag & drop a file or paste an image from the clipboard": "případně přetáhněte soubor nebo vložte obrázek ze schránky",
"File too large, to display a preview. Please download the attachment.": "Soubor je příliš velký pro zobrazení náhledu. Stáhněte si přílohu.", "File too large, to display a preview. Please download the attachment.": "Soubor je příliš velký pro zobrazení náhledu. Stáhněte si přílohu.",
"Remove attachment": "Odstranit přílohu", "Remove attachment": "Odstranit přílohu",
"Your browser does not support uploading encrypted files. Please use a newer browser.": "Váš prohlížeč nepodporuje nahrávání šifrovaných souborů. Použijte modernější verzi prohlížeče.", "Your browser does not support uploading encrypted files. Please use a newer browser.": "Váš prohlížeč nepodporuje nahrávání šifrovaných souborů. Použijte modernější verzi prohlížeče.",
"Invalid attachment.": "Chybná příloha.", "Invalid attachment.": "Chybná příloha.",
"Options": "Volby", "Options": "Možnosti",
"Shorten URL": "Zkrátit URL", "Shorten URL": "Zkrátit URL",
"Editor": "Editor", "Editor": "Editor",
"Preview": "Náhled", "Preview": "Náhled",
"%s requires the PATH to end in a \"%s\". Please update the PATH in your index.php.": "%s vyžaduje, aby PATH skončil s \"%s\". Aktualizujte PATH ve vašem souboru index.php.", "%s requires the PATH to end in a \"%s\". Please update the PATH in your index.php.": "%s vyžaduje, aby PATH končilo na „%s“. Aktualizujte PATH ve vašem souboru index.php.",
"Decrypt": "Dešifrovat", "Decrypt": "Dešifrovat",
"Enter password": "Zadejte heslo", "Enter password": "Zadejte heslo",
"Loading…": "Načítání…", "Loading…": "Načítání…",
"Decrypting paste…": "Dešifruji příspěvek…", "Decrypting paste…": "Dešifruji příspěvek…",
"Preparing new paste…": "Připravuji nový příspěvek…", "Preparing new paste…": "Připravuji nový příspěvek…",
"In case this message never disappears please have a look at <a href=\"%s\">this FAQ for information to troubleshoot</a>.": "V případě, že tato zpráva nezmizí, se podívejte na <a href=\"%s\">tyto často kladené otázky pro řešení</a>.", "In case this message never disappears please have a look at <a href=\"%s\">this FAQ for information to troubleshoot</a>.": "Pokud tato zpráva nezmizí, podívejte se na <a href=\"%s\">tyto často kladené otázky pro řešení problémů</a>.",
"+++ no paste text +++": "+++ žádný vložený text +++", "+++ no paste text +++": "+++ žádný text příspěvku +++",
"Could not get paste data: %s": "Nepodařilo se získat data příspěvku: %s", "Could not get paste data: %s": "Nepodařilo se získat data příspěvku: %s",
"QR code": "QR kód", "QR code": "QR kód",
"This website is using an insecure HTTP connection! Please use it only for testing.": "Tato stránka používá nezabezpečený připojení HTTP! Použijte ji prosím jen pro testování.", "This website is using an insecure HTTP connection! Please use it only for testing.": "Tato stránka používá nezabezpečené HTTP připojení! Použijte ji prosím jen pro testování.",
"For more information <a href=\"%s\">see this FAQ entry</a>.": "Více informací naleznete <a href=\"%s\">v této položce FAQ</a>.", "For more information <a href=\"%s\">see this FAQ entry</a>.": "Více informací naleznete <a href=\"%s\">v této položce FAQ</a>.",
"Your browser may require an HTTPS connection to support the WebCrypto API. Try <a href=\"%s\">switching to HTTPS</a>.": "Váš prohlížeč může vyžadovat připojení HTTPS pro podporu WebCrypto API. Zkuste <a href=\"%s\">přepnout na HTTPS</a>.", "Your browser may require an HTTPS connection to support the WebCrypto API. Try <a href=\"%s\">switching to HTTPS</a>.": "Váš prohlížeč může vyžadovat připojení HTTPS pro podporu WebCrypto API. Zkuste <a href=\"%s\">přepnout na HTTPS</a>.",
"Your browser doesn't support WebAssembly, used for zlib compression. You can create uncompressed documents, but can't read compressed ones.": "Váš prohlížeč nepodporuje WebAssembly, který se používá pro zlib kompresi. Můžete vytvořit nekomprimované dokumenty, ale nebudete moct číst ty komprimované.", "Your browser doesn't support WebAssembly, used for zlib compression. You can create uncompressed documents, but can't read compressed ones.": "Váš prohlížeč nepodporuje WebAssembly, které se používá pro zlib kompresi. Můžete vytvořit nekomprimované dokumenty, ale nebudete moct číst ty komprimované.",
"waiting on user to provide a password": "čekám na zadání hesla", "waiting on user to provide a password": "čekám na zadání hesla",
"Could not decrypt data. Did you enter a wrong password? Retry with the button at the top.": "Nepodařilo se dešifrovat data. Zadali jste špatné heslo? Zkuste to znovu pomocí tlačítka nahoře.", "Could not decrypt data. Did you enter a wrong password? Retry with the button at the top.": "Nepodařilo se dešifrovat data. Zadali jste špatné heslo? Zkuste to znovu pomocí tlačítka nahoře.",
"Retry": "Opakovat", "Retry": "Opakovat",
"Showing raw text…": "Zobrazuji surový text…", "Showing raw text…": "Zobrazuji čistý text…",
"Notice:": "Upozornění:", "Notice:": "Upozornění:",
"This link will expire after %s.": "Tento odkaz vyprší za %s.", "This link will expire after %s.": "Tento odkaz vyprší za %s.",
"This link can only be accessed once, do not use back or refresh button in your browser.": "Tento odkaz je přístupný pouze jednou, nepoužívejte tlačítko zpět ani neobnovujte tuto stránku ve vašem prohlížeči.", "This link can only be accessed once, do not use back or refresh button in your browser.": "Tento odkaz je přístupný pouze jednou, nepoužívejte tlačítko zpět ani neobnovujte tuto stránku v prohlížeči.",
"Link:": "Odkaz:", "Link:": "Odkaz:",
"Recipient may become aware of your timezone, convert time to UTC?": "Příjemce se může dozvědět o vašem časovém pásmu, převést čas na UTC?", "Recipient may become aware of your timezone, convert time to UTC?": "Příjemce může zjistit vaše časové pásmo, převést čas na UTC?",
"Use Current Timezone": "Použít aktuální časové pásmo", "Use Current Timezone": "Použít aktuální časové pásmo",
"Convert To UTC": "Převést na UTC", "Convert To UTC": "Převést na UTC",
"Close": "Zavřít", "Close": "Zavřít",
"Encrypted note on %s": "Šifrovaná poznámka ve službě %s", "Encrypted note on %s": "Šifrovaná poznámka ve službě %s",
"Visit this link to see the note. Giving the URL to anyone allows them to access the note, too.": "Navštivte tento odkaz pro zobrazení poznámky. Přeposláním URL umožníte také jiným lidem přístup.", "Visit this link to see the note. Giving the URL to anyone allows them to access the note, too.": "Pro zobrazení poznámky navštivte tento odkaz. Přeposláním URL umožníte přístup také jiným lidem.",
"URL shortener may expose your decrypt key in URL.": "Zkracovač URL může odhalit váš dešifrovací klíč v URL.", "URL shortener may expose your decrypt key in URL.": "Zkracovač URL může prozradit váš dešifrovací klíč v URL.",
"Save paste": "Uložit příspěvek", "Save paste": "Uložit příspěvek",
"Your IP is not authorized to create pastes.": "Vaše IP adresa nemá oprávnění k vytvoření vložení.", "Your IP is not authorized to create pastes.": "Vaše IP adresa nemá oprávnění k vytváření příspěvků.",
"Trying to shorten a URL that isn't pointing at our instance.": "Trying to shorten a URL that isn't pointing at our instance.", "Trying to shorten a URL that isn't pointing at our instance.": "Pokus o zkrácení URL, které neodkazuje na naši instanci.",
"Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".": "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".", "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".": "Chyba volání YOURLS. Pravděpodobně chyba konfigurace, např. nesprávné či chybějící „apiurl“ nebo „signature“.",
"Error parsing YOURLS response.": "Error parsing YOURLS response." "Error parsing YOURLS response.": "Chyba čtení odpovědi YOURLS.",
"This secret message can only be displayed once. Would you like to see it now?": "Tuto tajnou zprávu lze zobrazit pouze jednou. Chcete si ji prohlédnout teď?",
"Yes, see it": "Ano, zobrazit",
"Dark Mode": "Tmavý režim",
"Error compressing paste, due to missing WebAssembly support.": "Chyba při komprimování příspěvku kvůli chybějící podpoře WebAssembly.",
"Error decompressing paste, your browser does not support WebAssembly. Please use another browser to view this paste.": "Chyba při dekomprimování příspěvku, váš prohlížeč nepodporuje WebAssembly. Pro zobrazení tohoto příspěvku prosím použijte jiný prohlížeč.",
"Start over": "Start over",
"Paste copied to clipboard": "Paste copied to clipboard",
"To copy paste press on the copy button or use the clipboard shortcut <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>": "To copy paste press on the copy button or use the clipboard shortcut <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>",
"Copy link": "Copy link",
"Link copied to clipboard": "Link copied to clipboard",
"Paste text": "Paste text",
"Tabulator key serves as character (Hit <kbd>Ctrl</kbd>+<kbd>m</kbd> or <kbd>Esc</kbd> to toggle)": "Tabulator key serves as character (Hit <kbd>Ctrl</kbd>+<kbd>m</kbd> or <kbd>Esc</kbd> to toggle)",
"Theme": "Theme"
} }

View File

@ -2,8 +2,7 @@
"PrivateBin": "PrivateBin", "PrivateBin": "PrivateBin",
"%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.": "%s ist ein minimalistischer, quelloffener \"Pastebin\"-artiger Dienst, bei dem der Server keinerlei Kenntnis der Inhalte hat. Die Daten werden %sim Browser%s mit 256 Bit AES ver- und entschlüsselt.", "%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.": "%s ist ein minimalistischer, quelloffener \"Pastebin\"-artiger Dienst, bei dem der Server keinerlei Kenntnis der Inhalte hat. Die Daten werden %sim Browser%s mit 256 Bit AES ver- und entschlüsselt.",
"More information on the <a href=\"https://privatebin.info/\">project page</a>.": "Weitere Informationen sind auf der <a href=\"https://privatebin.info/\">Projektseite</a> zu finden.", "More information on the <a href=\"https://privatebin.info/\">project page</a>.": "Weitere Informationen sind auf der <a href=\"https://privatebin.info/\">Projektseite</a> zu finden.",
"Because ignorance is bliss": "Unwissenheit ist ein Segen", "Because ignorance is bliss": "Was ich nicht weiß, macht mich nicht heiß",
"en": "de",
"Paste does not exist, has expired or has been deleted.": "Diesen Text gibt es nicht, er ist abgelaufen oder wurde gelöscht.", "Paste does not exist, has expired or has been deleted.": "Diesen Text gibt es nicht, er ist abgelaufen oder wurde gelöscht.",
"%s requires php %s or above to work. Sorry.": "%s benötigt PHP %s oder höher, um zu funktionieren. Sorry.", "%s requires php %s or above to work. Sorry.": "%s benötigt PHP %s oder höher, um zu funktionieren. Sorry.",
"%s requires configuration section [%s] to be present in configuration file.": "%s benötigt den Konfigurationsabschnitt [%s] in der Konfigurationsdatei um zu funktionieren.", "%s requires configuration section [%s] to be present in configuration file.": "%s benötigt den Konfigurationsabschnitt [%s] in der Konfigurationsdatei um zu funktionieren.",
@ -11,6 +10,8 @@
"Bitte warte eine Sekunde zwischen dem Absenden zweier Beiträge.", "Bitte warte eine Sekunde zwischen dem Absenden zweier Beiträge.",
"Bitte warte %d Sekunden zwischen dem Absenden zweier Beiträge.", "Bitte warte %d Sekunden zwischen dem Absenden zweier Beiträge.",
"Bitte warte %d Sekunden zwischen dem Absenden zweier Beiträge.", "Bitte warte %d Sekunden zwischen dem Absenden zweier Beiträge.",
"Bitte warte %d Sekunden zwischen dem Absenden zweier Beiträge.",
"Bitte warte %d Sekunden zwischen dem Absenden zweier Beiträge.",
"Bitte warte %d Sekunden zwischen dem Absenden zweier Beiträge." "Bitte warte %d Sekunden zwischen dem Absenden zweier Beiträge."
], ],
"Paste is limited to %s of encrypted data.": "Texte sind auf %s verschlüsselte Datenmenge beschränkt.", "Paste is limited to %s of encrypted data.": "Texte sind auf %s verschlüsselte Datenmenge beschränkt.",
@ -25,7 +26,7 @@
"JavaScript is required for %s to work. Sorry for the inconvenience.": "JavaScript ist eine Voraussetzung, um %s zu nutzen. Bitte entschuldige die Unannehmlichkeiten.", "JavaScript is required for %s to work. Sorry for the inconvenience.": "JavaScript ist eine Voraussetzung, um %s zu nutzen. Bitte entschuldige die Unannehmlichkeiten.",
"%s requires a modern browser to work.": "%s setzt einen modernen Browser voraus, um funktionieren zu können.", "%s requires a modern browser to work.": "%s setzt einen modernen Browser voraus, um funktionieren zu können.",
"New": "Neu", "New": "Neu",
"Send": "Senden", "Create": "Erstellen",
"Clone": "Klonen", "Clone": "Klonen",
"Raw text": "Reiner Text", "Raw text": "Reiner Text",
"Expires": "Ablaufzeit", "Expires": "Ablaufzeit",
@ -37,44 +38,58 @@
"%d seconds": [ "%d seconds": [
"%d Sekunde", "%d Sekunde",
"%d Sekunden", "%d Sekunden",
"%d seconds (2nd plural)", "%d Sekunden",
"%d seconds (3rd plural)" "%d Sekunden",
"%d Sekunden",
"%d Sekunden"
], ],
"%d minutes": [ "%d minutes": [
"%d Minute", "%d Minute",
"%d Minuten", "%d Minuten",
"%d minutes (2nd plural)", "%d Minuten",
"%d minutes (3rd plural)" "%d Minuten",
"%d Minuten",
"%d Minuten"
], ],
"%d hours": [ "%d hours": [
"%d Stunde", "%d Stunde",
"%d Stunden", "%d Stunden",
"%d hours (2nd plural)", "%d Stunden",
"%d hours (3rd plural)" "%d Stunden",
"%d Stunden",
"%d Stunden"
], ],
"%d days": [ "%d days": [
"%d Tag", "%d Tag",
"%d Tage", "%d Tage",
"%d days (2nd plural)", "%d Tage",
"%d days (3rd plural)" "%d Tage",
"%d Tage",
"%d Tage"
], ],
"%d weeks": [ "%d weeks": [
"%d Woche", "%d Woche",
"%d Wochen", "%d Wochen",
"%d weeks (2nd plural)", "%d Wochen",
"%d weeks (3rd plural)" "%d Wochen",
"%d Wochen",
"%d Wochen"
], ],
"%d months": [ "%d months": [
"%d Monat", "%d Monat",
"%d Monate", "%d Monate",
"%d months (2nd plural)", "%d Monate",
"%d months (3rd plural)" "%d Monate",
"%d Monate",
"%d Monate"
], ],
"%d years": [ "%d years": [
"%d Jahr", "%d Jahr",
"%d Jahre", "%d Jahre",
"%d years (2nd plural)", "%d Monate",
"%d years (3rd plural)" "%d Monate",
"%d Monate",
"%d Monate"
], ],
"Never": "Nie", "Never": "Nie",
"Note: This is a test service: Data may be deleted anytime. Kittens will die if you abuse this service.": "Hinweis: Dies ist ein Versuchsdienst. Daten können jederzeit gelöscht werden. Kätzchen werden sterben, wenn du diesen Dienst missbrauchst.", "Note: This is a test service: Data may be deleted anytime. Kittens will die if you abuse this service.": "Hinweis: Dies ist ein Versuchsdienst. Daten können jederzeit gelöscht werden. Kätzchen werden sterben, wenn du diesen Dienst missbrauchst.",
@ -82,30 +97,40 @@
"Dieses Dokument läuft in einer Sekunde ab.", "Dieses Dokument läuft in einer Sekunde ab.",
"Dieses Dokument läuft in %d Sekunden ab.", "Dieses Dokument läuft in %d Sekunden ab.",
"Dieses Dokument läuft in %d Sekunden ab.", "Dieses Dokument läuft in %d Sekunden ab.",
"Dieses Dokument läuft in %d Sekunden ab.",
"Dieses Dokument läuft in %d Sekunden ab.",
"Dieses Dokument läuft in %d Sekunden ab." "Dieses Dokument läuft in %d Sekunden ab."
], ],
"This document will expire in %d minutes.": [ "This document will expire in %d minutes.": [
"Dieses Dokument läuft in einer Minute ab.", "Dieses Dokument läuft in einer Minute ab.",
"Dieses Dokument läuft in %d Minuten ab.", "Dieses Dokument läuft in %d Minuten ab.",
"Dieses Dokument läuft in %d Minuten ab.", "Dieses Dokument läuft in %d Minuten ab.",
"Dieses Dokument läuft in %d Minuten ab.",
"Dieses Dokument läuft in %d Minuten ab.",
"Dieses Dokument läuft in %d Minuten ab." "Dieses Dokument läuft in %d Minuten ab."
], ],
"This document will expire in %d hours.": [ "This document will expire in %d hours.": [
"Dieses Dokument läuft in einer Stunde ab.", "Dieses Dokument läuft in einer Stunde ab.",
"Dieses Dokument läuft in %d Stunden ab.", "Dieses Dokument läuft in %d Stunden ab.",
"This document will expire in %d hours (2nd plural)", "Dieses Dokument läuft in %d Stunden ab.",
"This document will expire in %d hours (3rd plural)" "Dieses Dokument läuft in %d Stunden ab.",
"Dieses Dokument läuft in %d Stunden ab.",
"Dieses Dokument läuft in %d Stunden ab."
], ],
"This document will expire in %d days.": [ "This document will expire in %d days.": [
"Dieses Dokument läuft in einem Tag ab.", "Dieses Dokument läuft in einem Tag ab.",
"Dieses Dokument läuft in %d Tagen ab.", "Dieses Dokument läuft in %d Tagen ab.",
"Dieses Dokument läuft in %d Tagen ab.", "Dieses Dokument läuft in %d Tagen ab.",
"Dieses Dokument läuft in %d Tagen ab.",
"Dieses Dokument läuft in %d Tagen ab.",
"Dieses Dokument läuft in %d Tagen ab." "Dieses Dokument läuft in %d Tagen ab."
], ],
"This document will expire in %d months.": [ "This document will expire in %d months.": [
"Dieses Dokument läuft in einem Monat ab.", "Dieses Dokument läuft in einem Monat ab.",
"Dieses Dokument läuft in %d Monaten ab.", "Dieses Dokument läuft in %d Monaten ab.",
"Dieses Dokument läuft in %d Monaten ab.", "Dieses Dokument läuft in %d Monaten ab.",
"Dieses Dokument läuft in %d Monaten ab.",
"Dieses Dokument läuft in %d Monaten ab.",
"Dieses Dokument läuft in %d Monaten ab." "Dieses Dokument läuft in %d Monaten ab."
], ],
"Please enter the password for this paste:": "Bitte gib das Passwort für diesen Text ein:", "Please enter the password for this paste:": "Bitte gib das Passwort für diesen Text ein:",
@ -126,7 +151,7 @@
"server error or not responding": "Fehler auf dem Server oder keine Antwort vom Server", "server error or not responding": "Fehler auf dem Server oder keine Antwort vom Server",
"Could not post comment: %s": "Konnte Kommentar nicht senden: %s", "Could not post comment: %s": "Konnte Kommentar nicht senden: %s",
"Sending paste…": "Sende Paste…", "Sending paste…": "Sende Paste…",
"Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit [Ctrl]+[c] to copy)</span>": "Dein Text ist unter <a id=\"pasteurl\" href=\"%s\">%s</a> zu finden <span id=\"copyhint\">(Drücke [Strg]+[c] um den Link zu kopieren)</span>", "Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit <kbd>Ctrl</kbd>+<kbd>c</kbd> to copy)</span>": "Dein Text ist unter <a id=\"pasteurl\" href=\"%s\">%s</a> zu finden <span id=\"copyhint\">(Drücke <kbd>Strg</kbd>+<kbd>c</kbd> um den Link zu kopieren)</span>",
"Delete data": "Lösche Daten", "Delete data": "Lösche Daten",
"Could not create paste: %s": "Text konnte nicht erstellt werden: %s", "Could not create paste: %s": "Text konnte nicht erstellt werden: %s",
"Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)": "Konnte Paste nicht entschlüsseln: Der Schlüssel fehlt in der Adresse (Hast du eine Umleitung oder einen URL-Verkürzer benutzt, der Teile der Adresse entfernt?)", "Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)": "Konnte Paste nicht entschlüsseln: Der Schlüssel fehlt in der Adresse (Hast du eine Umleitung oder einen URL-Verkürzer benutzt, der Teile der Adresse entfernt?)",
@ -189,5 +214,18 @@
"Your IP is not authorized to create pastes.": "Deine IP ist nicht berechtigt, Texte zu erstellen.", "Your IP is not authorized to create pastes.": "Deine IP ist nicht berechtigt, Texte zu erstellen.",
"Trying to shorten a URL that isn't pointing at our instance.": "Versuch eine URL zu verkürzen, die nicht auf unsere Instanz zeigt.", "Trying to shorten a URL that isn't pointing at our instance.": "Versuch eine URL zu verkürzen, die nicht auf unsere Instanz zeigt.",
"Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".": "Fehler beim Aufruf von YOURLS. Wahrscheinlich ein Konfigurationsproblem, wie eine falsche oder fehlende \"apiurl\" oder \"signature\".", "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".": "Fehler beim Aufruf von YOURLS. Wahrscheinlich ein Konfigurationsproblem, wie eine falsche oder fehlende \"apiurl\" oder \"signature\".",
"Error parsing YOURLS response.": "Fehler beim Verarbeiten der YOURLS-Antwort." "Error parsing YOURLS response.": "Fehler beim Verarbeiten der YOURLS-Antwort.",
"This secret message can only be displayed once. Would you like to see it now?": "Texte des \"Einmal\"-Typs können nach dem Öffnen nur einmal angezeigt werden. Möchtest Du ihn jetzt einsehen?",
"Yes, see it": "Ja, jetzt einsehen",
"Dark Mode": "Nachtmodus",
"Error compressing paste, due to missing WebAssembly support.": "Fehler beim Komprimieren des Textes, da WebAssembly-Unterstützung fehlt.",
"Error decompressing paste, your browser does not support WebAssembly. Please use another browser to view this paste.": "Fehler beim Dekomprimieren des Textes. Dein Browser unterstützt WebAssembly nicht. Bitte verwende einen anderen Browser, um diesen Text anzuzeigen.",
"Start over": "Neuen Text erstellen",
"Paste copied to clipboard": "Text wurde in Zwischenablage kopiert.",
"To copy paste press on the copy button or use the clipboard shortcut <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>": "Zum Kopieren des Textes drücken Sie die Kopieren-Schaltfläche oder verwenden Sie die Tastenkombination <kbd>Strg</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>",
"Copy link": "Verknüpfung kopieren",
"Link copied to clipboard": "Verknüpfung wurde in die Zwischenablage kopiert.",
"Paste text": "Text",
"Tabulator key serves as character (Hit <kbd>Ctrl</kbd>+<kbd>m</kbd> or <kbd>Esc</kbd> to toggle)": "Tabulatortaste als Zeichen interpretieren (Umschalten durch <kbd>Strg</kbd>+<kbd>m</kbd> oder <kbd>Esc</kbd>)",
"Theme": "Theme"
} }

View File

@ -1,9 +1,8 @@
{ {
"PrivateBin": "PrivateBin", "PrivateBin": "PrivateBin",
"%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.": "%s είναι ένα λιτό, ανοικτού λογισμικού διαδικτυακής υπηρεσίας επικόλλησης όπου ο διακομιστής έχει πλήρη άγνια του περιεχομένου που επικολλήθηκαν. Τα Δεδομένα κρυπτογραφούνται και αποκρυπτογραφούνται %sστον φιλομετρητή (browser)%s χρησιμοποιόντας 256 bits AES.", "%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.": "Το %s αποτελεί ένα εργαλείο επικόλλησης δεδομένων στο διαδίκτυο, που βασίζεται σε λογισμικό ανοιχτού κώδικα. Ο διακομιστής έχει πλήρη άγνοια αυτών των δεδομένων, τα οποία από/κρυπτογραφούνται %sστο πρόγραμμα περιήγησης%s, χρησιμοποιώντας τη μέθοδο 256-bits AES.",
"More information on the <a href=\"https://privatebin.info/\">project page</a>.": "Περισσότερες πληροφορίες στον <a href=\"https://privatebin.info/\">ιστότοπο του εργαλείου</a>.", "More information on the <a href=\"https://privatebin.info/\">project page</a>.": "Περισσότερες πληροφορίες στον <a href=\"https://privatebin.info/\">ιστότοπο του εργαλείου</a>.",
"Because ignorance is bliss": "Επειδή η άγνοια είναι ευτυχία", "Because ignorance is bliss": "Επειδή η άγνοια είναι ευτυχία",
"en": "el",
"Paste does not exist, has expired or has been deleted.": "Η επικόλληση δεν υπάρχει, έληξε ή διαγράφηκε", "Paste does not exist, has expired or has been deleted.": "Η επικόλληση δεν υπάρχει, έληξε ή διαγράφηκε",
"%s requires php %s or above to work. Sorry.": "%s απαιτεί php %s ή νεότερη για να λειτουργήσει. Συγγνώμη.", "%s requires php %s or above to work. Sorry.": "%s απαιτεί php %s ή νεότερη για να λειτουργήσει. Συγγνώμη.",
"%s requires configuration section [%s] to be present in configuration file.": "%s απαιτεί οι ρυθμίσεις [%s] να υπάρχουν στο αρχείο ρυθμίσεων.", "%s requires configuration section [%s] to be present in configuration file.": "%s απαιτεί οι ρυθμίσεις [%s] να υπάρχουν στο αρχείο ρυθμίσεων.",
@ -11,6 +10,8 @@
"Παρακαλώ περιμένετε %d δευτερόλεπτο μεταξύ κάθε επικόλλησης.", "Παρακαλώ περιμένετε %d δευτερόλεπτο μεταξύ κάθε επικόλλησης.",
"Παρακαλώ περιμένετε %d δευτερόλεπτα μεταξύ κάθε επικόλλησης.", "Παρακαλώ περιμένετε %d δευτερόλεπτα μεταξύ κάθε επικόλλησης.",
"Παρακαλώ περιμένετε %d δευτερόλεπτα μεταξύ κάθε επικόλλησης.", "Παρακαλώ περιμένετε %d δευτερόλεπτα μεταξύ κάθε επικόλλησης.",
"Παρακαλώ περιμένετε %d δευτερόλεπτα μεταξύ κάθε επικόλλησης.",
"Παρακαλώ περιμένετε %d δευτερόλεπτα μεταξύ κάθε επικόλλησης.",
"Παρακαλώ περιμένετε %d δευτερόλεπτα μεταξύ κάθε επικόλλησης." "Παρακαλώ περιμένετε %d δευτερόλεπτα μεταξύ κάθε επικόλλησης."
], ],
"Paste is limited to %s of encrypted data.": "Η επικόλληση είναι περιορισμένη σε %s κρυπτογραφημένων δεδομένων.", "Paste is limited to %s of encrypted data.": "Η επικόλληση είναι περιορισμένη σε %s κρυπτογραφημένων δεδομένων.",
@ -25,7 +26,7 @@
"JavaScript is required for %s to work. Sorry for the inconvenience.": "Η JavaScript είναι απαραίτητη για να λειτουργήσει το %s. Συγγνώμη για την ταλαιπωρία.", "JavaScript is required for %s to work. Sorry for the inconvenience.": "Η JavaScript είναι απαραίτητη για να λειτουργήσει το %s. Συγγνώμη για την ταλαιπωρία.",
"%s requires a modern browser to work.": "%s απαιτεί σύγχρονο φυλλομετρητή (browser) για να λειτουργήσει.", "%s requires a modern browser to work.": "%s απαιτεί σύγχρονο φυλλομετρητή (browser) για να λειτουργήσει.",
"New": "Νέο", "New": "Νέο",
"Send": "Αποστολή", "Create": "Δημιουργία",
"Clone": "Κλωνοποίηση", "Clone": "Κλωνοποίηση",
"Raw text": "Κείμενο", "Raw text": "Κείμενο",
"Expires": "Λήγει", "Expires": "Λήγει",
@ -38,42 +39,56 @@
"%d δευτερόλεπτο", "%d δευτερόλεπτο",
"%d δευτερόλεπτα", "%d δευτερόλεπτα",
"%d δευτερόλεπτα", "%d δευτερόλεπτα",
"%d δευτερόλεπτα",
"%d δευτερόλεπτα",
"%d δευτερόλεπτα" "%d δευτερόλεπτα"
], ],
"%d minutes": [ "%d minutes": [
"%d λεπτό", "%d λεπτό",
"%d λεπτά", "%d λεπτά",
"%d λεπτά", "%d λεπτά",
"%d λεπτά",
"%d λεπτά",
"%d λεπτά" "%d λεπτά"
], ],
"%d hours": [ "%d hours": [
"%d ώρα", "%d ώρα",
"%d ώρες", "%d ώρες",
"%d ώρες", "%d ώρες",
"%d ώρες",
"%d ώρες",
"%d ώρες" "%d ώρες"
], ],
"%d days": [ "%d days": [
"%d ημέρα", "%d ημέρα",
"%d ημέρες", "%d ημέρες",
"%d ημέρες", "%d ημέρες",
"%d ημέρες",
"%d ημέρες",
"%d ημέρες" "%d ημέρες"
], ],
"%d weeks": [ "%d weeks": [
"%d εβδομάδα", "%d εβδομάδα",
"%d εβδομάδες", "%d εβδομάδες",
"%d εβδομάδες", "%d εβδομάδες",
"%d εβδομάδες",
"%d εβδομάδες",
"%d εβδομάδες" "%d εβδομάδες"
], ],
"%d months": [ "%d months": [
"%d μήνας", "%d μήνας",
"%d μήνες", "%d μήνες",
"%d μήνες", "%d μήνες",
"%d μήνες",
"%d μήνες",
"%d μήνες" "%d μήνες"
], ],
"%d years": [ "%d years": [
"%d χρόνο", "%d χρόνο",
"%d χρόνια", "%d χρόνια",
"%d χρόνια", "%d χρόνια",
"%d χρόνια",
"%d χρόνια",
"%d χρόνια" "%d χρόνια"
], ],
"Never": "Ποτέ", "Never": "Ποτέ",
@ -82,30 +97,40 @@
"Αυτό το έγγραφο θα λήξει σε %d δευτερόλεπτο.", "Αυτό το έγγραφο θα λήξει σε %d δευτερόλεπτο.",
"Αυτό το έγγραφο θα λήξει σε %d δευτερόλεπτα.", "Αυτό το έγγραφο θα λήξει σε %d δευτερόλεπτα.",
"Αυτό το έγγραφο θα λήξει σε %d δευτερόλεπτα.", "Αυτό το έγγραφο θα λήξει σε %d δευτερόλεπτα.",
"Αυτό το έγγραφο θα λήξει σε %d δευτερόλεπτα.",
"Αυτό το έγγραφο θα λήξει σε %d δευτερόλεπτα.",
"Αυτό το έγγραφο θα λήξει σε %d δευτερόλεπτα." "Αυτό το έγγραφο θα λήξει σε %d δευτερόλεπτα."
], ],
"This document will expire in %d minutes.": [ "This document will expire in %d minutes.": [
"Αυτό το έγγραφο θα λήξει σε %d λεπτό.", "Αυτό το έγγραφο θα λήξει σε %d λεπτό.",
"Αυτό το έγγραφο θα λήξει σε %d λεπτά.", "Αυτό το έγγραφο θα λήξει σε %d λεπτά.",
"Αυτό το έγγραφο θα λήξει σε %d λεπτά.", "Αυτό το έγγραφο θα λήξει σε %d λεπτά.",
"Αυτό το έγγραφο θα λήξει σε %d λεπτά.",
"Αυτό το έγγραφο θα λήξει σε %d λεπτά.",
"Αυτό το έγγραφο θα λήξει σε %d λεπτά." "Αυτό το έγγραφο θα λήξει σε %d λεπτά."
], ],
"This document will expire in %d hours.": [ "This document will expire in %d hours.": [
"Αυτό το έγγραφο θα λήξει σε %d ώρα.", "Αυτό το έγγραφο θα λήξει σε %d ώρα.",
"Αυτό το έγγραφο θα λήξει σε %d ώρες.", "Αυτό το έγγραφο θα λήξει σε %d ώρες.",
"Αυτό το έγγραφο θα λήξει σε %d ώρες.", "Αυτό το έγγραφο θα λήξει σε %d ώρες.",
"Αυτό το έγγραφο θα λήξει σε %d ώρες.",
"Αυτό το έγγραφο θα λήξει σε %d ώρες.",
"Αυτό το έγγραφο θα λήξει σε %d ώρες." "Αυτό το έγγραφο θα λήξει σε %d ώρες."
], ],
"This document will expire in %d days.": [ "This document will expire in %d days.": [
"Αυτό το έγγραφο θα λήξει σε %d ημέρα.", "Αυτό το έγγραφο θα λήξει σε %d ημέρα.",
"Αυτό το έγγραφο θα λήξει σε %d ημέρες.", "Αυτό το έγγραφο θα λήξει σε %d ημέρες.",
"Αυτό το έγγραφο θα λήξει σε %d ημέρες.", "Αυτό το έγγραφο θα λήξει σε %d ημέρες.",
"Αυτό το έγγραφο θα λήξει σε %d ημέρες.",
"Αυτό το έγγραφο θα λήξει σε %d ημέρες.",
"Αυτό το έγγραφο θα λήξει σε %d ημέρες." "Αυτό το έγγραφο θα λήξει σε %d ημέρες."
], ],
"This document will expire in %d months.": [ "This document will expire in %d months.": [
"Αυτό το έγγραφο θα λήξει σε %d μήνα.", "Αυτό το έγγραφο θα λήξει σε %d μήνα.",
"Αυτό το έγγραφο θα λήξει σε %d μήνες.", "Αυτό το έγγραφο θα λήξει σε %d μήνες.",
"Αυτό το έγγραφο θα λήξει σε %d μήνες.", "Αυτό το έγγραφο θα λήξει σε %d μήνες.",
"Αυτό το έγγραφο θα λήξει σε %d μήνες.",
"Αυτό το έγγραφο θα λήξει σε %d μήνες.",
"Αυτό το έγγραφο θα λήξει σε %d μήνες." "Αυτό το έγγραφο θα λήξει σε %d μήνες."
], ],
"Please enter the password for this paste:": "Παρακαλώ εισάγετε τον κωδικό για αυτή την επικόληση:", "Please enter the password for this paste:": "Παρακαλώ εισάγετε τον κωδικό για αυτή την επικόληση:",
@ -126,7 +151,7 @@
"server error or not responding": "Πρόβλημα του διακομιστή ή δεν υπάρχει απάντηση", "server error or not responding": "Πρόβλημα του διακομιστή ή δεν υπάρχει απάντηση",
"Could not post comment: %s": "Δεν ήταν δυνατή η δημοσίευση του σχολίου: %s", "Could not post comment: %s": "Δεν ήταν δυνατή η δημοσίευση του σχολίου: %s",
"Sending paste…": "Η επικόλληση αποστέλλεται…", "Sending paste…": "Η επικόλληση αποστέλλεται…",
"Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit [Ctrl]+[c] to copy)</span>": "Η επικόλλησή σας είναι <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Πληκτρολογήστε [Ctrl]+[c] για αντιγραφή)</span>", "Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit <kbd>Ctrl</kbd>+<kbd>c</kbd> to copy)</span>": "Η επικόλλησή σας είναι <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Πληκτρολογήστε <kbd>Ctrl</kbd>+<kbd>c</kbd> για αντιγραφή)</span>",
"Delete data": "Διαγραφή δεδομένων", "Delete data": "Διαγραφή δεδομένων",
"Could not create paste: %s": "Δεν ήταν δυνατή η δημιουργία επικόλλησης: %s", "Could not create paste: %s": "Δεν ήταν δυνατή η δημιουργία επικόλλησης: %s",
"Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)": "Δεν ήταν δυνατή η αποκρυπτογράφηση της επικόλλησης: Το κλειδί αποκρυπτογράφησης λείπει από τον σύνδεσμο (Μήπως χρησιμοποιήσατε ανακατεύθυνση συνδέσμου ή υπηρεσία συντόμευσης συνδέσμου;)", "Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)": "Δεν ήταν δυνατή η αποκρυπτογράφηση της επικόλλησης: Το κλειδί αποκρυπτογράφησης λείπει από τον σύνδεσμο (Μήπως χρησιμοποιήσατε ανακατεύθυνση συνδέσμου ή υπηρεσία συντόμευσης συνδέσμου;)",
@ -187,7 +212,20 @@
"URL shortener may expose your decrypt key in URL.": "Συντομευτές συνδέσμων πιθανώς να δημοσιοποιήσουν το κλειδί αποκρυπτογράφισης στον σύνδεσμο.", "URL shortener may expose your decrypt key in URL.": "Συντομευτές συνδέσμων πιθανώς να δημοσιοποιήσουν το κλειδί αποκρυπτογράφισης στον σύνδεσμο.",
"Save paste": "Αποθήκευση επικόλλησης", "Save paste": "Αποθήκευση επικόλλησης",
"Your IP is not authorized to create pastes.": "Η IP σας δεν επιτρέπεται να δημιουργεί επικολλήσεις.", "Your IP is not authorized to create pastes.": "Η IP σας δεν επιτρέπεται να δημιουργεί επικολλήσεις.",
"Trying to shorten a URL that isn't pointing at our instance.": "Trying to shorten a URL that isn't pointing at our instance.", "Trying to shorten a URL that isn't pointing at our instance.": "Έγινε προσπάθεια συντόμευσης ενός URL που δε δείχνει προς τη δική μας υπηρεσία.",
"Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".": "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".", "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".": "Σφάλμα κατά την κλήση YOURLS. Πιθανώς ένα ζήτημα διαμόρφωσης, όπως λάθος ή λείπει \"apiurl\" ή \"υπογραφή\".",
"Error parsing YOURLS response.": "Error parsing YOURLS response." "Error parsing YOURLS response.": "Σφάλμα ανάλυσης της απόκρισης YOURLS.",
"This secret message can only be displayed once. Would you like to see it now?": "Αυτό το μυστικό μήνυμα μπορεί να εμφανιστεί μόνο μία φορά. Θα θέλατε να το δείτε τώρα;",
"Yes, see it": "Ναι, δείτε το",
"Dark Mode": "Σκοτεινό Θέμα",
"Error compressing paste, due to missing WebAssembly support.": "Σφάλμα συμπίεσης επικόλλησης, λόγω έλλειψης υποστήριξης WebAssembly.",
"Error decompressing paste, your browser does not support WebAssembly. Please use another browser to view this paste.": "Σφάλμα αποσυμπίεσης της επικόλλησης, ο περιηγητής σας δεν υποστηρίζει WebAssembly. Παρακαλούμε χρησιμοποιήστε έναν άλλο περιηγητή για να δείτε αυτή την επικόλληση.",
"Start over": "Start over",
"Paste copied to clipboard": "Paste copied to clipboard",
"To copy paste press on the copy button or use the clipboard shortcut <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>": "To copy paste press on the copy button or use the clipboard shortcut <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>",
"Copy link": "Copy link",
"Link copied to clipboard": "Link copied to clipboard",
"Paste text": "Paste text",
"Tabulator key serves as character (Hit <kbd>Ctrl</kbd>+<kbd>m</kbd> or <kbd>Esc</kbd> to toggle)": "Tabulator key serves as character (Hit <kbd>Ctrl</kbd>+<kbd>m</kbd> or <kbd>Esc</kbd> to toggle)",
"Theme": "Theme"
} }

View File

@ -3,7 +3,6 @@
"%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.": "%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.", "%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.": "%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.",
"More information on the <a href=\"https://privatebin.info/\">project page</a>.": "More information on the <a href=\"https://privatebin.info/\">project page</a>.", "More information on the <a href=\"https://privatebin.info/\">project page</a>.": "More information on the <a href=\"https://privatebin.info/\">project page</a>.",
"Because ignorance is bliss": "Because ignorance is bliss", "Because ignorance is bliss": "Because ignorance is bliss",
"en": "en",
"Paste does not exist, has expired or has been deleted.": "Paste does not exist, has expired or has been deleted.", "Paste does not exist, has expired or has been deleted.": "Paste does not exist, has expired or has been deleted.",
"%s requires php %s or above to work. Sorry.": "%s requires php %s or above to work. Sorry.", "%s requires php %s or above to work. Sorry.": "%s requires php %s or above to work. Sorry.",
"%s requires configuration section [%s] to be present in configuration file.": "%s requires configuration section [%s] to be present in configuration file.", "%s requires configuration section [%s] to be present in configuration file.": "%s requires configuration section [%s] to be present in configuration file.",
@ -11,7 +10,9 @@
"Please wait %d second between each post. (singular)", "Please wait %d second between each post. (singular)",
"Please wait %d seconds between each post. (1st plural)", "Please wait %d seconds between each post. (1st plural)",
"Please wait %d seconds between each post. (2nd plural)", "Please wait %d seconds between each post. (2nd plural)",
"Please wait %d seconds between each post. (3rd plural)" "Please wait %d seconds between each post. (3rd plural)",
"Please wait %d seconds between each post. (4th plural)",
"Please wait %d seconds between each post. (5th plural)"
], ],
"Paste is limited to %s of encrypted data.": "Paste is limited to %s of encrypted data.", "Paste is limited to %s of encrypted data.": "Paste is limited to %s of encrypted data.",
"Invalid data.": "Invalid data.", "Invalid data.": "Invalid data.",
@ -25,7 +26,7 @@
"JavaScript is required for %s to work. Sorry for the inconvenience.": "JavaScript is required for %s to work. Sorry for the inconvenience.", "JavaScript is required for %s to work. Sorry for the inconvenience.": "JavaScript is required for %s to work. Sorry for the inconvenience.",
"%s requires a modern browser to work.": "%s requires a modern browser to work.", "%s requires a modern browser to work.": "%s requires a modern browser to work.",
"New": "New", "New": "New",
"Send": "Send", "Create": "Create",
"Clone": "Clone", "Clone": "Clone",
"Raw text": "Raw text", "Raw text": "Raw text",
"Expires": "Expires", "Expires": "Expires",
@ -38,43 +39,57 @@
"%d second (singular)", "%d second (singular)",
"%d seconds (1st plural)", "%d seconds (1st plural)",
"%d seconds (2nd plural)", "%d seconds (2nd plural)",
"%d seconds (3rd plural)" "%d seconds (3rd plural)",
"%d seconds (4th plural)",
"%d seconds (5th plural)"
], ],
"%d minutes": [ "%d minutes": [
"%d minute (singular)", "%d minute (singular)",
"%d minutes (1st plural)", "%d minutes (1st plural)",
"%d minutes (2nd plural)", "%d minutes (2nd plural)",
"%d minutes (3rd plural)" "%d minutes (3rd plural)",
"%d minutes (4th plural)",
"%d minutes (5th plural)"
], ],
"%d hours": [ "%d hours": [
"%d hour (singular)", "%d hour (singular)",
"%d hours (1st plural)", "%d hours (1st plural)",
"%d hours (2nd plural)", "%d hours (2nd plural)",
"%d hours (3rd plural)" "%d hours (3rd plural)",
"%d hours (4th plural)",
"%d hours (5th plural)"
], ],
"%d days": [ "%d days": [
"%d day (singular)", "%d day (singular)",
"%d days (1st plural)", "%d days (1st plural)",
"%d days (2nd plural)", "%d days (2nd plural)",
"%d days (3rd plural)" "%d days (3rd plural)",
"%d days (4th plural)",
"%d days (5th plural)"
], ],
"%d weeks": [ "%d weeks": [
"%d week (singular)", "%d week (singular)",
"%d weeks (1st plural)", "%d weeks (1st plural)",
"%d weeks (2nd plural)", "%d weeks (2nd plural)",
"%d weeks (3rd plural)" "%d weeks (3rd plural)",
"%d weeks (4th plural)",
"%d weeks (5th plural)"
], ],
"%d months": [ "%d months": [
"%d month (singular)", "%d month (singular)",
"%d months (1st plural)", "%d months (1st plural)",
"%d months (2nd plural)", "%d months (2nd plural)",
"%d months (3rd plural)" "%d months (3rd plural)",
"%d months (4th plural)",
"%d months (5th plural)"
], ],
"%d years": [ "%d years": [
"%d year (singular)", "%d year (singular)",
"%d years (1st plural)", "%d years (1st plural)",
"%d years (2nd plural)", "%d years (2nd plural)",
"%d years (3rd plural)" "%d years (3rd plural)",
"%d years (4th plural)",
"%d years (5th plural)"
], ],
"Never": "Never", "Never": "Never",
"Note: This is a test service: Data may be deleted anytime. Kittens will die if you abuse this service.": "Note: This is a test service: Data may be deleted anytime. Kittens will die if you abuse this service.", "Note: This is a test service: Data may be deleted anytime. Kittens will die if you abuse this service.": "Note: This is a test service: Data may be deleted anytime. Kittens will die if you abuse this service.",
@ -82,31 +97,41 @@
"This document will expire in %d second. (singular)", "This document will expire in %d second. (singular)",
"This document will expire in %d seconds. (1st plural)", "This document will expire in %d seconds. (1st plural)",
"This document will expire in %d seconds. (2nd plural)", "This document will expire in %d seconds. (2nd plural)",
"This document will expire in %d seconds. (3rd plural)" "This document will expire in %d seconds. (3rd plural)",
"This document will expire in %d seconds. (4th plural)",
"This document will expire in %d seconds. (5th plural)"
], ],
"This document will expire in %d minutes.": [ "This document will expire in %d minutes.": [
"This document will expire in %d minute. (singular)", "This document will expire in %d minute. (singular)",
"This document will expire in %d minutes. (1st plural)", "This document will expire in %d minutes. (1st plural)",
"This document will expire in %d minutes. (2nd plural)", "This document will expire in %d minutes. (2nd plural)",
"This document will expire in %d minutes. (3rd plural)" "This document will expire in %d minutes. (3rd plural)",
"This document will expire in %d minutes. (4th plural)",
"This document will expire in %d minutes. (5th plural)"
], ],
"This document will expire in %d hours.": [ "This document will expire in %d hours.": [
"This document will expire in %d hour. (singular)", "This document will expire in %d hour. (singular)",
"This document will expire in %d hours. (1st plural)", "This document will expire in %d hours. (1st plural)",
"This document will expire in %d hours. (2nd plural)", "This document will expire in %d hours. (2nd plural)",
"This document will expire in %d hours. (3rd plural)" "This document will expire in %d hours. (3rd plural)",
"This document will expire in %d hours. (4th plural)",
"This document will expire in %d hours. (5th plural)"
], ],
"This document will expire in %d days.": [ "This document will expire in %d days.": [
"This document will expire in %d day. (singular)", "This document will expire in %d day. (singular)",
"This document will expire in %d days. (1st plural)", "This document will expire in %d days. (1st plural)",
"This document will expire in %d days. (2nd plural)", "This document will expire in %d days. (2nd plural)",
"This document will expire in %d days. (3rd plural)" "This document will expire in %d days. (3rd plural)",
"This document will expire in %d days. (4th plural)",
"This document will expire in %d days. (5th plural)"
], ],
"This document will expire in %d months.": [ "This document will expire in %d months.": [
"This document will expire in %d month. (singular)", "This document will expire in %d month. (singular)",
"This document will expire in %d months. (1st plural)", "This document will expire in %d months. (1st plural)",
"This document will expire in %d months. (2nd plural)", "This document will expire in %d months. (2nd plural)",
"This document will expire in %d months. (3rd plural)" "This document will expire in %d months. (3rd plural)",
"This document will expire in %d months. (4th plural)",
"This document will expire in %d months. (5th plural)"
], ],
"Please enter the password for this paste:": "Please enter the password for this paste:", "Please enter the password for this paste:": "Please enter the password for this paste:",
"Could not decrypt data (Wrong key?)": "Could not decrypt data (Wrong key?)", "Could not decrypt data (Wrong key?)": "Could not decrypt data (Wrong key?)",
@ -126,7 +151,7 @@
"server error or not responding": "server error or not responding", "server error or not responding": "server error or not responding",
"Could not post comment: %s": "Could not post comment: %s", "Could not post comment: %s": "Could not post comment: %s",
"Sending paste…": "Sending paste…", "Sending paste…": "Sending paste…",
"Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit [Ctrl]+[c] to copy)</span>": "Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit [Ctrl]+[c] to copy)</span>", "Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit <kbd>Ctrl</kbd>+<kbd>c</kbd> to copy)</span>": "Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit <kbd>Ctrl</kbd>+<kbd>c</kbd> to copy)</span>",
"Delete data": "Delete data", "Delete data": "Delete data",
"Could not create paste: %s": "Could not create paste: %s", "Could not create paste: %s": "Could not create paste: %s",
"Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)": "Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)", "Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)": "Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)",
@ -189,5 +214,18 @@
"Your IP is not authorized to create pastes.": "Your IP is not authorized to create pastes.", "Your IP is not authorized to create pastes.": "Your IP is not authorized to create pastes.",
"Trying to shorten a URL that isn't pointing at our instance.": "Trying to shorten a URL that isn't pointing at our instance.", "Trying to shorten a URL that isn't pointing at our instance.": "Trying to shorten a URL that isn't pointing at our instance.",
"Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".": "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".", "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".": "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".",
"Error parsing YOURLS response.": "Error parsing YOURLS response." "Error parsing YOURLS response.": "Error parsing YOURLS response.",
"This secret message can only be displayed once. Would you like to see it now?": "This secret message can only be displayed once. Would you like to see it now?",
"Yes, see it": "Yes, see it",
"Dark Mode": "Dark Mode",
"Error compressing paste, due to missing WebAssembly support.": "Error compressing paste, due to missing WebAssembly support.",
"Error decompressing paste, your browser does not support WebAssembly. Please use another browser to view this paste.": "Error decompressing paste, your browser does not support WebAssembly. Please use another browser to view this paste.",
"Start over": "Start over",
"Paste copied to clipboard": "Paste copied to clipboard",
"To copy paste press on the copy button or use the clipboard shortcut <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>": "To copy paste press on the copy button or use the clipboard shortcut <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>",
"Copy link": "Copy link",
"Link copied to clipboard": "Link copied to clipboard",
"Paste text": "Paste text",
"Tabulator key serves as character (Hit <kbd>Ctrl</kbd>+<kbd>m</kbd> or <kbd>Esc</kbd> to toggle)": "Tabulator key serves as character (Hit <kbd>Ctrl</kbd>+<kbd>m</kbd> or <kbd>Esc</kbd> to toggle)",
"Theme": "Theme"
} }

View File

@ -3,7 +3,6 @@
"%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.": "%s es un \"pastebin\" en línea minimalista de código abierto, donde el servidor no tiene ningún conocimiento de los datos guardados. Los datos son cifrados/descifrados %sen el navegador%s usando 256 bits AES.", "%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.": "%s es un \"pastebin\" en línea minimalista de código abierto, donde el servidor no tiene ningún conocimiento de los datos guardados. Los datos son cifrados/descifrados %sen el navegador%s usando 256 bits AES.",
"More information on the <a href=\"https://privatebin.info/\">project page</a>.": "Más información en la <a href=\"https://privatebin.info/\">página del proyecto</a>.", "More information on the <a href=\"https://privatebin.info/\">project page</a>.": "Más información en la <a href=\"https://privatebin.info/\">página del proyecto</a>.",
"Because ignorance is bliss": "Porque la ignorancia es felicidad", "Because ignorance is bliss": "Porque la ignorancia es felicidad",
"en": "es",
"Paste does not exist, has expired or has been deleted.": "El \"paste\" no existe, ha caducado o ha sido eliminado.", "Paste does not exist, has expired or has been deleted.": "El \"paste\" no existe, ha caducado o ha sido eliminado.",
"%s requires php %s or above to work. Sorry.": "%s requiere php %s o superior para funcionar. Lo siento.", "%s requires php %s or above to work. Sorry.": "%s requiere php %s o superior para funcionar. Lo siento.",
"%s requires configuration section [%s] to be present in configuration file.": "%s requiere que la sección de configuración [%s] esté presente en el archivo de configuración.", "%s requires configuration section [%s] to be present in configuration file.": "%s requiere que la sección de configuración [%s] esté presente en el archivo de configuración.",
@ -11,6 +10,8 @@
"Por favor espere %d segundo entre cada publicación.", "Por favor espere %d segundo entre cada publicación.",
"Por favor espere %d segundos entre cada publicación.", "Por favor espere %d segundos entre cada publicación.",
"Por favor espere %d segundos entre cada publicación.", "Por favor espere %d segundos entre cada publicación.",
"Por favor espere %d segundos entre cada publicación.",
"Por favor espere %d segundos entre cada publicación.",
"Por favor espere %d segundos entre cada publicación." "Por favor espere %d segundos entre cada publicación."
], ],
"Paste is limited to %s of encrypted data.": "El \"paste\" está limitado a %s de datos cifrados.", "Paste is limited to %s of encrypted data.": "El \"paste\" está limitado a %s de datos cifrados.",
@ -25,7 +26,7 @@
"JavaScript is required for %s to work. Sorry for the inconvenience.": "JavaScript es necesario para que %s funcione. Sentimos los inconvenientes ocasionados.", "JavaScript is required for %s to work. Sorry for the inconvenience.": "JavaScript es necesario para que %s funcione. Sentimos los inconvenientes ocasionados.",
"%s requires a modern browser to work.": "%s requiere un navegador moderno para funcionar.", "%s requires a modern browser to work.": "%s requiere un navegador moderno para funcionar.",
"New": "Nuevo", "New": "Nuevo",
"Send": "Enviar", "Create": "Crear",
"Clone": "Clonar", "Clone": "Clonar",
"Raw text": "Texto sin formato", "Raw text": "Texto sin formato",
"Expires": "Caducar en", "Expires": "Caducar en",
@ -38,42 +39,56 @@
"%d segundo", "%d segundo",
"%d segundos", "%d segundos",
"%d segundos", "%d segundos",
"%d segundos",
"%d segundos",
"%d segundos" "%d segundos"
], ],
"%d minutes": [ "%d minutes": [
"%d minuto", "%d minuto",
"%d minutos", "%d minutos",
"%d minutos", "%d minutos",
"%d minutos",
"%d minutos",
"%d minutos" "%d minutos"
], ],
"%d hours": [ "%d hours": [
"%d hora", "%d hora",
"%d horas", "%d horas",
"%d horas", "%d horas",
"%d horas",
"%d horas",
"%d horas" "%d horas"
], ],
"%d days": [ "%d days": [
"%d día", "%d día",
"%d días", "%d días",
"%d días", "%d días",
"%d días",
"%d días",
"%d días" "%d días"
], ],
"%d weeks": [ "%d weeks": [
"%d semana", "%d semana",
"%d semanas", "%d semanas",
"%d semanas", "%d semanas",
"%d semanas",
"%d semanas",
"%d semanas" "%d semanas"
], ],
"%d months": [ "%d months": [
"%d mes", "%d mes",
"%d meses", "%d meses",
"%d minutos", "%d meses",
"%d meses",
"%d meses",
"%d meses" "%d meses"
], ],
"%d years": [ "%d years": [
"%d año", "%d año",
"%d años", "%d años",
"%d años", "%d años",
"%d años",
"%d años",
"%d años" "%d años"
], ],
"Never": "Nunca", "Never": "Nunca",
@ -82,30 +97,40 @@
"Este documento caducará en un segundo.", "Este documento caducará en un segundo.",
"Este documento caducará en %d segundos.", "Este documento caducará en %d segundos.",
"Este documento caducará en %d segundos", "Este documento caducará en %d segundos",
"Este documento caducará en %d segundos",
"Este documento caducará en %d segundos",
"Este documento caducará en %d segundos" "Este documento caducará en %d segundos"
], ],
"This document will expire in %d minutes.": [ "This document will expire in %d minutes.": [
"Este documento caducará en un minuto.", "Este documento caducará en un minuto.",
"Este documento caducará en %d minutos.", "Este documento caducará en %d minutos.",
"Este documento caducará en %d minutos", "Este documento caducará en %d minutos",
"Este documento caducará en %d minutos",
"Este documento caducará en %d minutos",
"Este documento caducará en %d minutos" "Este documento caducará en %d minutos"
], ],
"This document will expire in %d hours.": [ "This document will expire in %d hours.": [
"Este documento caducará en una hora.", "Este documento caducará en una hora.",
"Este documento caducará en %d horas.", "Este documento caducará en %d horas.",
"Este documento caducará en %d horas", "Este documento caducará en %d horas",
"Este documento caducará en %d horas",
"Este documento caducará en %d horas",
"Este documento caducará en %d horas" "Este documento caducará en %d horas"
], ],
"This document will expire in %d days.": [ "This document will expire in %d days.": [
"Este documento caducará en un día.", "Este documento caducará en un día.",
"Este documento caducará en %d días.", "Este documento caducará en %d días.",
"Este documento caducará en %d días", "Este documento caducará en %d días",
"Este documento caducará en %d días",
"Este documento caducará en %d días",
"Este documento caducará en %d días" "Este documento caducará en %d días"
], ],
"This document will expire in %d months.": [ "This document will expire in %d months.": [
"Este documento caducará en un mes.", "Este documento caducará en un mes.",
"Este documento caducará en %d meses.", "Este documento caducará en %d meses.",
"Este documento caducará en %d meses", "Este documento caducará en %d meses",
"Este documento caducará en %d meses",
"Este documento caducará en %d meses",
"Este documento caducará en %d meses" "Este documento caducará en %d meses"
], ],
"Please enter the password for this paste:": "Por favor ingrese la contraseña para este \"paste\":", "Please enter the password for this paste:": "Por favor ingrese la contraseña para este \"paste\":",
@ -126,7 +151,7 @@
"server error or not responding": "Error del servidor o el servidor no responde", "server error or not responding": "Error del servidor o el servidor no responde",
"Could not post comment: %s": "No fue posible publicar comentario: %s", "Could not post comment: %s": "No fue posible publicar comentario: %s",
"Sending paste…": "Enviando \"paste\"…", "Sending paste…": "Enviando \"paste\"…",
"Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit [Ctrl]+[c] to copy)</span>": "Su texto está en <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Presione [Ctrl]+[c] para copiar)</span>", "Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit <kbd>Ctrl</kbd>+<kbd>c</kbd> to copy)</span>": "Su texto está en <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Presione <kbd>Ctrl</kbd>+<kbd>c</kbd> para copiar)</span>",
"Delete data": "Eliminar datos", "Delete data": "Eliminar datos",
"Could not create paste: %s": "No fue posible crear el archivo: %s", "Could not create paste: %s": "No fue posible crear el archivo: %s",
"Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)": "No es posible descifrar el documento: Falta la clave de descifrado en la URL (¿Utilizó un redirector o un acortador de URL que quite parte de la URL?)", "Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)": "No es posible descifrar el documento: Falta la clave de descifrado en la URL (¿Utilizó un redirector o un acortador de URL que quite parte de la URL?)",
@ -187,7 +212,20 @@
"URL shortener may expose your decrypt key in URL.": "El acortador de URL puede exponer su clave de descifrado en el URL.", "URL shortener may expose your decrypt key in URL.": "El acortador de URL puede exponer su clave de descifrado en el URL.",
"Save paste": "Guardar \"paste\"", "Save paste": "Guardar \"paste\"",
"Your IP is not authorized to create pastes.": "Tu IP no está autorizada para crear contenido.", "Your IP is not authorized to create pastes.": "Tu IP no está autorizada para crear contenido.",
"Trying to shorten a URL that isn't pointing at our instance.": "Trying to shorten a URL that isn't pointing at our instance.", "Trying to shorten a URL that isn't pointing at our instance.": "Intentando acortar una URL que no apunta a nuestra instancia.",
"Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".": "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".", "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".": "Error llamando a YOURLS. Probablemente un problema de configuración, como error o falta \"apiurl\" o \"signature\".",
"Error parsing YOURLS response.": "Error parsing YOURLS response." "Error parsing YOURLS response.": "Error al analizar la respuesta de YOURLS.",
"This secret message can only be displayed once. Would you like to see it now?": "Este mensaje secreto sólo se puede mostrar una vez. ¿Quieres verlo ahora?",
"Yes, see it": "Sí, verlo",
"Dark Mode": "Modo nocturno",
"Error compressing paste, due to missing WebAssembly support.": "Error compressing paste, due to missing WebAssembly support.",
"Error decompressing paste, your browser does not support WebAssembly. Please use another browser to view this paste.": "Error decompressing paste, your browser does not support WebAssembly. Please use another browser to view this paste.",
"Start over": "Start over",
"Paste copied to clipboard": "Paste copied to clipboard",
"To copy paste press on the copy button or use the clipboard shortcut <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>": "To copy paste press on the copy button or use the clipboard shortcut <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>",
"Copy link": "Copy link",
"Link copied to clipboard": "Link copied to clipboard",
"Paste text": "Paste text",
"Tabulator key serves as character (Hit <kbd>Ctrl</kbd>+<kbd>m</kbd> or <kbd>Esc</kbd> to toggle)": "Tabulator key serves as character (Hit <kbd>Ctrl</kbd>+<kbd>m</kbd> or <kbd>Esc</kbd> to toggle)",
"Theme": "Theme"
} }

View File

@ -3,7 +3,6 @@
"%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.": "%s on minimalistlik, avatud lähtekoodiga online pastebin, kus serveril pole kleebitud andmete kohta teadmist. Andmed krüpteeritakse/dekrüpteeritakse %sbrauseris%s kasutades 256-bitist AES-i.", "%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.": "%s on minimalistlik, avatud lähtekoodiga online pastebin, kus serveril pole kleebitud andmete kohta teadmist. Andmed krüpteeritakse/dekrüpteeritakse %sbrauseris%s kasutades 256-bitist AES-i.",
"More information on the <a href=\"https://privatebin.info/\">project page</a>.": "Lisateave <a href=\"https://privatebin.info/\">projekti lehel</a>.", "More information on the <a href=\"https://privatebin.info/\">project page</a>.": "Lisateave <a href=\"https://privatebin.info/\">projekti lehel</a>.",
"Because ignorance is bliss": "Kuna teadmatus on õndsus", "Because ignorance is bliss": "Kuna teadmatus on õndsus",
"en": "et",
"Paste does not exist, has expired or has been deleted.": "Kleebet ei eksisteeri, on aegunud või on kustutatud.", "Paste does not exist, has expired or has been deleted.": "Kleebet ei eksisteeri, on aegunud või on kustutatud.",
"%s requires php %s or above to work. Sorry.": "%s vajab, et oleks php %s või kõrgem, et töötada. Vabandame.", "%s requires php %s or above to work. Sorry.": "%s vajab, et oleks php %s või kõrgem, et töötada. Vabandame.",
"%s requires configuration section [%s] to be present in configuration file.": "%s vajab, et [%s] seadistamise jaotis oleks olemas konfiguratsioonifailis.", "%s requires configuration section [%s] to be present in configuration file.": "%s vajab, et [%s] seadistamise jaotis oleks olemas konfiguratsioonifailis.",
@ -11,6 +10,8 @@
"Palun oota %d sekund iga postituse vahel.", "Palun oota %d sekund iga postituse vahel.",
"Palun oota %d sekundit iga postituse vahel.", "Palun oota %d sekundit iga postituse vahel.",
"Palun oota %d sekundit iga postituse vahel.", "Palun oota %d sekundit iga postituse vahel.",
"Palun oota %d sekundit iga postituse vahel.",
"Palun oota %d sekundit iga postituse vahel.",
"Palun oota %d sekundit iga postituse vahel." "Palun oota %d sekundit iga postituse vahel."
], ],
"Paste is limited to %s of encrypted data.": "Kleepe limiit on %s krüpteeritud andmeid.", "Paste is limited to %s of encrypted data.": "Kleepe limiit on %s krüpteeritud andmeid.",
@ -25,7 +26,7 @@
"JavaScript is required for %s to work. Sorry for the inconvenience.": "JavaScript on vajalik %s'i töötamiseks. Vabandame ebamugavuste pärast.", "JavaScript is required for %s to work. Sorry for the inconvenience.": "JavaScript on vajalik %s'i töötamiseks. Vabandame ebamugavuste pärast.",
"%s requires a modern browser to work.": "%s vajab töötamiseks kaasaegset brauserit.", "%s requires a modern browser to work.": "%s vajab töötamiseks kaasaegset brauserit.",
"New": "Uus", "New": "Uus",
"Send": "Saada", "Create": "Loo",
"Clone": "Klooni", "Clone": "Klooni",
"Raw text": "Lähtetekst", "Raw text": "Lähtetekst",
"Expires": "Aegub", "Expires": "Aegub",
@ -38,71 +39,95 @@
"%d sekund", "%d sekund",
"%d sekundit", "%d sekundit",
"%d sekundit", "%d sekundit",
"%d sekundit",
"%d sekundit",
"%d sekundit" "%d sekundit"
], ],
"%d minutes": [ "%d minutes": [
"%d minut", "%d minut",
"%d minutit", "%d minutit",
"%d minutit", "%d minutit",
"%d minutit",
"%d minutit",
"%d minutit" "%d minutit"
], ],
"%d hours": [ "%d hours": [
"%d tund", "%d tund",
"%d tundi", "%d tundi",
"%d tundi", "%d tundi",
"%d tundi",
"%d tundi",
"%d tundi" "%d tundi"
], ],
"%d days": [ "%d days": [
"%d päev", "%d päev",
"%d päeva", "%d päeva",
"%d päeva", "%d päeva",
"%d päeva",
"%d päeva",
"%d päeva" "%d päeva"
], ],
"%d weeks": [ "%d weeks": [
"%d nädal", "%d nädal",
"%d nädalat", "%d nädalat",
"%d nädalat", "%d nädalat",
"%d nädalat",
"%d nädalat",
"%d nädalat" "%d nädalat"
], ],
"%d months": [ "%d months": [
"%d kuu", "%d kuu",
"%d kuud", "%d kuud",
"%d kuud", "%d kuud",
"%d kuud",
"%d kuud",
"%d kuud" "%d kuud"
], ],
"%d years": [ "%d years": [
"%d aasta", "%d aasta",
"%d aastat", "%d aastat",
"%d aastat", "%d aastat",
"%d aastat",
"%d aastat",
"%d aastat" "%d aastat"
], ],
"Never": "Mitte kunagi", "Never": "Mitte kunagi",
"Note: This is a test service: Data may be deleted anytime. Kittens will die if you abuse this service.": "Märge: See on testimisteenus: Andmeid võidakse igal ajal kustutada. Kiisupojad hukuvad, kui seda teenust kuritarvitad.", "Note: This is a test service: Data may be deleted anytime. Kittens will die if you abuse this service.": "Märge: See on testimisteenus: Andmeid võidakse igal ajal kustutada. Kiisupojad hukuvad, kui seda teenust kuritarvitad.",
"This document will expire in %d seconds.": [ "This document will expire in %d seconds.": [
"See dokument aegub %d sekundi pärast.",
"See dokument aegub %d sekundi pärast.",
"See dokument aegub %d sekundi pärast.", "See dokument aegub %d sekundi pärast.",
"See dokument aegub %d sekundi pärast.", "See dokument aegub %d sekundi pärast.",
"See dokument aegub %d sekundi pärast.", "See dokument aegub %d sekundi pärast.",
"See dokument aegub %d sekundi pärast." "See dokument aegub %d sekundi pärast."
], ],
"This document will expire in %d minutes.": [ "This document will expire in %d minutes.": [
"See dokument aegub %d minuti pärast.",
"See dokument aegub %d minuti pärast.",
"See dokument aegub %d minuti pärast.", "See dokument aegub %d minuti pärast.",
"See dokument aegub %d minuti pärast.", "See dokument aegub %d minuti pärast.",
"See dokument aegub %d minuti pärast.", "See dokument aegub %d minuti pärast.",
"See dokument aegub %d minuti pärast." "See dokument aegub %d minuti pärast."
], ],
"This document will expire in %d hours.": [ "This document will expire in %d hours.": [
"See dokument aegub %d tunni pärast.",
"See dokument aegub %d tunni pärast.",
"See dokument aegub %d tunni pärast.", "See dokument aegub %d tunni pärast.",
"See dokument aegub %d tunni pärast.", "See dokument aegub %d tunni pärast.",
"See dokument aegub %d tunni pärast.", "See dokument aegub %d tunni pärast.",
"See dokument aegub %d tunni pärast." "See dokument aegub %d tunni pärast."
], ],
"This document will expire in %d days.": [ "This document will expire in %d days.": [
"See dokument aegub %d päeva pärast.",
"See dokument aegub %d päeva pärast.",
"See dokument aegub %d päeva pärast.", "See dokument aegub %d päeva pärast.",
"See dokument aegub %d päeva pärast.", "See dokument aegub %d päeva pärast.",
"See dokument aegub %d päeva pärast.", "See dokument aegub %d päeva pärast.",
"See dokument aegub %d päeva pärast." "See dokument aegub %d päeva pärast."
], ],
"This document will expire in %d months.": [ "This document will expire in %d months.": [
"See dokument aegub %d kuu pärast.",
"See dokument aegub %d kuu pärast.",
"See dokument aegub %d kuu pärast.", "See dokument aegub %d kuu pärast.",
"See dokument aegub %d kuu pärast.", "See dokument aegub %d kuu pärast.",
"See dokument aegub %d kuu pärast.", "See dokument aegub %d kuu pärast.",
@ -126,7 +151,7 @@
"server error or not responding": "serveri viga või ei vasta", "server error or not responding": "serveri viga või ei vasta",
"Could not post comment: %s": "Ei suutnud kommentaari postitada: %s", "Could not post comment: %s": "Ei suutnud kommentaari postitada: %s",
"Sending paste…": "Kleepe saatmine…", "Sending paste…": "Kleepe saatmine…",
"Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit [Ctrl]+[c] to copy)</span>": "Sinu kleebe on <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Kopeerimiseks vajuta [Ctrl]+[c])</span>", "Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit <kbd>Ctrl</kbd>+<kbd>c</kbd> to copy)</span>": "Sinu kleebe on <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Kopeerimiseks vajuta <kbd>Ctrl</kbd>+<kbd>c</kbd>)</span>",
"Delete data": "Kustuta andmed", "Delete data": "Kustuta andmed",
"Could not create paste: %s": "Ei suutnud kleebet luua: %s", "Could not create paste: %s": "Ei suutnud kleebet luua: %s",
"Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)": "Ei suutnud kleebet dekrüpteerida: Dekrüpteerimisvõti on URL-ist puudu (Kas kasutasid ümbersuunajat või URL-i lühendajat, mis eemaldab osa URL-ist?)", "Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)": "Ei suutnud kleebet dekrüpteerida: Dekrüpteerimisvõti on URL-ist puudu (Kas kasutasid ümbersuunajat või URL-i lühendajat, mis eemaldab osa URL-ist?)",
@ -186,8 +211,21 @@
"Visit this link to see the note. Giving the URL to anyone allows them to access the note, too.": "Kirja nägemiseks külasta seda linki. Teistele URL-i andmine lubab ka neil ligi pääseda kirjale.", "Visit this link to see the note. Giving the URL to anyone allows them to access the note, too.": "Kirja nägemiseks külasta seda linki. Teistele URL-i andmine lubab ka neil ligi pääseda kirjale.",
"URL shortener may expose your decrypt key in URL.": "URL-i lühendaja võib paljastada sinu dekrüpteerimisvõtme URL-is.", "URL shortener may expose your decrypt key in URL.": "URL-i lühendaja võib paljastada sinu dekrüpteerimisvõtme URL-is.",
"Save paste": "Salvesta kleebe", "Save paste": "Salvesta kleebe",
"Your IP is not authorized to create pastes.": "Your IP is not authorized to create pastes.", "Your IP is not authorized to create pastes.": "Su IP-l ei ole lubatud kleepeid luua.",
"Trying to shorten a URL that isn't pointing at our instance.": "Trying to shorten a URL that isn't pointing at our instance.", "Trying to shorten a URL that isn't pointing at our instance.": "Püüame lühendada URL-i, mis ei viita meie instantsile.",
"Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".": "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".", "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".": "Viga YOURLS-i kutsumisel. Tõenäoliselt konfiguratsiooniprobleem, näiteks vale või puuduv \"apiurl\" või \"signature\".",
"Error parsing YOURLS response.": "Error parsing YOURLS response." "Error parsing YOURLS response.": "Viga YOURLS vastuse parsimisel.",
"This secret message can only be displayed once. Would you like to see it now?": "Seda turvalist sõnumit saab kuvada vaid ühe korra. \nKas soovid seda näha nüüd?",
"Yes, see it": "Jah, vaata seda",
"Dark Mode": "Tume režiim",
"Error compressing paste, due to missing WebAssembly support.": "Error compressing paste, due to missing WebAssembly support.",
"Error decompressing paste, your browser does not support WebAssembly. Please use another browser to view this paste.": "Error decompressing paste, your browser does not support WebAssembly. Please use another browser to view this paste.",
"Start over": "Alusta uuesti",
"Paste copied to clipboard": "Kleebe kopeeriti lõikelauale",
"To copy paste press on the copy button or use the clipboard shortcut <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>": "To copy paste press on the copy button or use the clipboard shortcut <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>",
"Copy link": "Kopeeri link",
"Link copied to clipboard": "Link kopeeriti lõikelauale",
"Paste text": "Kleebi tekst",
"Tabulator key serves as character (Hit <kbd>Ctrl</kbd>+<kbd>m</kbd> or <kbd>Esc</kbd> to toggle)": "Tabulator key serves as character (Hit <kbd>Ctrl</kbd>+<kbd>m</kbd> or <kbd>Esc</kbd> to toggle)",
"Theme": "Teema"
} }

View File

@ -3,7 +3,6 @@
"%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.": "%s on minimalistinen, avoimen lähdekoodin online pastebin jossa palvelimella ei ole tietoa syötetystä datasta. Data salataan/puretaan %sselaimessa%s käyttäen 256-bittistä AES:ää.", "%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.": "%s on minimalistinen, avoimen lähdekoodin online pastebin jossa palvelimella ei ole tietoa syötetystä datasta. Data salataan/puretaan %sselaimessa%s käyttäen 256-bittistä AES:ää.",
"More information on the <a href=\"https://privatebin.info/\">project page</a>.": "Lisää tietoa <a href=\"https://privatebin.info/\">projektisivulla</a>.", "More information on the <a href=\"https://privatebin.info/\">project page</a>.": "Lisää tietoa <a href=\"https://privatebin.info/\">projektisivulla</a>.",
"Because ignorance is bliss": "Koska tieto lisää tuskaa", "Because ignorance is bliss": "Koska tieto lisää tuskaa",
"en": "fi",
"Paste does not exist, has expired or has been deleted.": "Pastea ei ole olemassa, se on vanhentunut tai se on poistettu.", "Paste does not exist, has expired or has been deleted.": "Pastea ei ole olemassa, se on vanhentunut tai se on poistettu.",
"%s requires php %s or above to work. Sorry.": "%s vaatii php:n %s-version tai uudemman toimiakseen. Anteeksi.", "%s requires php %s or above to work. Sorry.": "%s vaatii php:n %s-version tai uudemman toimiakseen. Anteeksi.",
"%s requires configuration section [%s] to be present in configuration file.": "%s vaatii konfiguraatio-osion [%s] olevan läsnä konfiguraatiotiedostossa.", "%s requires configuration section [%s] to be present in configuration file.": "%s vaatii konfiguraatio-osion [%s] olevan läsnä konfiguraatiotiedostossa.",
@ -11,6 +10,8 @@
"Odotathan %d sekuntin jokaisen lähetyksen välillä.", "Odotathan %d sekuntin jokaisen lähetyksen välillä.",
"Odotathan %d sekuntia jokaisen lähetyksen välillä.", "Odotathan %d sekuntia jokaisen lähetyksen välillä.",
"Odotathan %d sekuntia jokaisen lähetyksen välillä.", "Odotathan %d sekuntia jokaisen lähetyksen välillä.",
"Odotathan %d sekuntia jokaisen lähetyksen välillä.",
"Odotathan %d sekuntia jokaisen lähetyksen välillä.",
"Odotathan %d sekuntia jokaisen lähetyksen välillä." "Odotathan %d sekuntia jokaisen lähetyksen välillä."
], ],
"Paste is limited to %s of encrypted data.": "Paste on rajoitettu kokoon %s salattua dataa.", "Paste is limited to %s of encrypted data.": "Paste on rajoitettu kokoon %s salattua dataa.",
@ -25,7 +26,7 @@
"JavaScript is required for %s to work. Sorry for the inconvenience.": "%s vaatii JavaScriptiä toimiakseen. Anteeksi haitasta.", "JavaScript is required for %s to work. Sorry for the inconvenience.": "%s vaatii JavaScriptiä toimiakseen. Anteeksi haitasta.",
"%s requires a modern browser to work.": "%s vaatii modernin selaimen toimiakseen.", "%s requires a modern browser to work.": "%s vaatii modernin selaimen toimiakseen.",
"New": "Uusi", "New": "Uusi",
"Send": "Lähetä", "Create": "Luo",
"Clone": "Kloonaa", "Clone": "Kloonaa",
"Raw text": "Raaka teksti", "Raw text": "Raaka teksti",
"Expires": "Vanhenee", "Expires": "Vanhenee",
@ -38,42 +39,56 @@
"%d sekunti", "%d sekunti",
"%d sekuntia", "%d sekuntia",
"%d sekuntia", "%d sekuntia",
"%d sekuntia",
"%d sekuntia",
"%d sekuntia" "%d sekuntia"
], ],
"%d minutes": [ "%d minutes": [
"%d minuutti", "%d minuutti",
"%d minuuttia", "%d minuuttia",
"%d minuuttia", "%d minuuttia",
"%d minuuttia",
"%d minuuttia",
"%d minuuttia" "%d minuuttia"
], ],
"%d hours": [ "%d hours": [
"%d tunti", "%d tunti",
"%d tuntia", "%d tuntia",
"%d tuntia", "%d tuntia",
"%d tuntia",
"%d tuntia",
"%d tuntia" "%d tuntia"
], ],
"%d days": [ "%d days": [
"%d päivä", "%d päivä",
"%d päivää", "%d päivää",
"%d päivää", "%d päivää",
"%d päivää",
"%d päivää",
"%d päivää" "%d päivää"
], ],
"%d weeks": [ "%d weeks": [
"%d viikko", "%d viikko",
"%d viikkoa", "%d viikkoa",
"%d viikkoa", "%d viikkoa",
"%d viikkoa",
"%d viikkoa",
"%d viikkoa" "%d viikkoa"
], ],
"%d months": [ "%d months": [
"%d kuukausi", "%d kuukausi",
"%d kuukautta", "%d kuukautta",
"%d kuukautta", "%d kuukautta",
"%d kuukautta",
"%d kuukautta",
"%d kuukautta" "%d kuukautta"
], ],
"%d years": [ "%d years": [
"%d vuosi", "%d vuosi",
"%d vuotta", "%d vuotta",
"%d vuotta", "%d vuotta",
"%d vuotta",
"%d vuotta",
"%d vuotta" "%d vuotta"
], ],
"Never": "Ei koskaan", "Never": "Ei koskaan",
@ -82,27 +97,37 @@
"Tämä dokumentti vanhenee %d sekuntissa.", "Tämä dokumentti vanhenee %d sekuntissa.",
"Tämä dokumentti vanhenee %d sekunnissa.", "Tämä dokumentti vanhenee %d sekunnissa.",
"Tämä dokumentti vanhenee %d sekunnissa.", "Tämä dokumentti vanhenee %d sekunnissa.",
"Tämä dokumentti vanhenee %d sekunnissa.",
"Tämä dokumentti vanhenee %d sekunnissa.",
"Tämä dokumentti vanhenee %d sekunnissa." "Tämä dokumentti vanhenee %d sekunnissa."
], ],
"This document will expire in %d minutes.": [ "This document will expire in %d minutes.": [
"Tämä dokumentti vanhenee %d minuutissa.",
"Tämä dokumentti vanhenee %d minuutissa.",
"Tämä dokumentti vanhenee %d minuutissa.", "Tämä dokumentti vanhenee %d minuutissa.",
"Tämä dokumentti vanhenee %d minuutissa.", "Tämä dokumentti vanhenee %d minuutissa.",
"Tämä dokumentti vanhenee %d minuutissa.", "Tämä dokumentti vanhenee %d minuutissa.",
"Tämä dokumentti vanhenee %d minuutissa." "Tämä dokumentti vanhenee %d minuutissa."
], ],
"This document will expire in %d hours.": [ "This document will expire in %d hours.": [
"Tämä dokumentti vanhenee %d tunnissa.",
"Tämä dokumentti vanhenee %d tunnissa.",
"Tämä dokumentti vanhenee %d tunnissa.", "Tämä dokumentti vanhenee %d tunnissa.",
"Tämä dokumentti vanhenee %d tunnissa.", "Tämä dokumentti vanhenee %d tunnissa.",
"Tämä dokumentti vanhenee %d tunnissa.", "Tämä dokumentti vanhenee %d tunnissa.",
"Tämä dokumentti vanhenee %d tunnissa." "Tämä dokumentti vanhenee %d tunnissa."
], ],
"This document will expire in %d days.": [ "This document will expire in %d days.": [
"Tämä dokumentti vanhenee %d päivässä.",
"Tämä dokumentti vanhenee %d päivässä.",
"Tämä dokumentti vanhenee %d päivässä.", "Tämä dokumentti vanhenee %d päivässä.",
"Tämä dokumentti vanhenee %d päivässä.", "Tämä dokumentti vanhenee %d päivässä.",
"Tämä dokumentti vanhenee %d päivässä.", "Tämä dokumentti vanhenee %d päivässä.",
"Tämä dokumentti vanhenee %d päivässä." "Tämä dokumentti vanhenee %d päivässä."
], ],
"This document will expire in %d months.": [ "This document will expire in %d months.": [
"Tämä dokumentti vanhenee %d kuukaudessa.",
"Tämä dokumentti vanhenee %d kuukaudessa.",
"Tämä dokumentti vanhenee %d kuukaudessa.", "Tämä dokumentti vanhenee %d kuukaudessa.",
"Tämä dokumentti vanhenee %d kuukaudessa.", "Tämä dokumentti vanhenee %d kuukaudessa.",
"Tämä dokumentti vanhenee %d kuukaudessa.", "Tämä dokumentti vanhenee %d kuukaudessa.",
@ -126,7 +151,7 @@
"server error or not responding": "palvelinvirhe tai palvelin ei vastaa", "server error or not responding": "palvelinvirhe tai palvelin ei vastaa",
"Could not post comment: %s": "Kommenttia ei voitu lähettää: %s", "Could not post comment: %s": "Kommenttia ei voitu lähettää: %s",
"Sending paste…": "Lähetetään pastea…", "Sending paste…": "Lähetetään pastea…",
"Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit [Ctrl]+[c] to copy)</span>": "Pastesi on <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Paina [Ctrl]+[c] kopioidaksesi)</span>", "Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit <kbd>Ctrl</kbd>+<kbd>c</kbd> to copy)</span>": "Pastesi on <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Paina <kbd>Ctrl</kbd>+<kbd>c</kbd> kopioidaksesi)</span>",
"Delete data": "Poista data", "Delete data": "Poista data",
"Could not create paste: %s": "Pastea ei voitu luoda: %s", "Could not create paste: %s": "Pastea ei voitu luoda: %s",
"Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)": "Pastea ei voitu purkaa: Purkausavain puuttuu URL:stä (Käytitkö uudelleenohjaajaa tai URL-lyhentäjää joka poistaa osan URL:stä?)", "Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)": "Pastea ei voitu purkaa: Purkausavain puuttuu URL:stä (Käytitkö uudelleenohjaajaa tai URL-lyhentäjää joka poistaa osan URL:stä?)",
@ -183,11 +208,24 @@
"Convert To UTC": "Muuta UTC:ksi", "Convert To UTC": "Muuta UTC:ksi",
"Close": "Sulje", "Close": "Sulje",
"Encrypted note on %s": "Salattu viesti %sissä", "Encrypted note on %s": "Salattu viesti %sissä",
"Visit this link to see the note. Giving the URL to anyone allows them to access the note, too.": "Käy tässä linkissä nähdäksesi viestin. URL:n antaminen kenellekään antaa heidänkin päästä katsomeen viestiä. ", "Visit this link to see the note. Giving the URL to anyone allows them to access the note, too.": "Vieraile tässä linkissä nähdäksesi viestin. URL:n antaminen kenellekään antaa heidänkin päästä katsomaan viestiä.",
"URL shortener may expose your decrypt key in URL.": "URL-lyhentäjä voi paljastaa purkuavaimesi URL:ssä.", "URL shortener may expose your decrypt key in URL.": "URL-lyhentäjä voi paljastaa purkuavaimesi URL:ssä.",
"Save paste": "Tallenna paste", "Save paste": "Tallenna paste",
"Your IP is not authorized to create pastes.": "IP:llesi ei ole annettu oikeutta luoda pasteja.", "Your IP is not authorized to create pastes.": "IP:llesi ei ole annettu oikeutta luoda pasteja.",
"Trying to shorten a URL that isn't pointing at our instance.": "Trying to shorten a URL that isn't pointing at our instance.", "Trying to shorten a URL that isn't pointing at our instance.": "Yritetään lyhentää URL-osoite, joka ei osoita meidän instanssiiin.",
"Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".": "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".", "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".": "Virhe kutsuttaessa YOURLS. Luultavasti asetusongelma kuten väärä tai puuttuuva \"apiurl\" tai \"signature\".",
"Error parsing YOURLS response.": "Error parsing YOURLS response." "Error parsing YOURLS response.": "Virhe jäsennettäessä YOURLS-vastausta.",
"This secret message can only be displayed once. Would you like to see it now?": "Tämä salainen viesti voidaan näyttää vain kerran. Haluatko nähdä sen nyt?",
"Yes, see it": "Kyllä, näet sen",
"Dark Mode": "Tumma tila",
"Error compressing paste, due to missing WebAssembly support.": "Virhe pakattaessa pastea, koska WebAssembly-tuki puuttuu.",
"Error decompressing paste, your browser does not support WebAssembly. Please use another browser to view this paste.": "Virhe pasten purkamisessa, selaimesi ei tue WebAssemblyä. Ole hyvä ja käytä toista selainta nähdäksesi tämä paste.",
"Start over": "Aloita alusta",
"Paste copied to clipboard": "Paste kopioitu leikepöydälle",
"To copy paste press on the copy button or use the clipboard shortcut <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>": "Voit kopioida pasten painamalla kopioi-painiketta tai käyttämällä leikepöydän oikotietä <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>",
"Copy link": "Kopioi linkki",
"Link copied to clipboard": "Linkki kopioitu leikepöydälle",
"Paste text": "Liitä teksti",
"Tabulator key serves as character (Hit <kbd>Ctrl</kbd>+<kbd>m</kbd> or <kbd>Esc</kbd> to toggle)": "Tabulaattori toimii merkkinä (Paina <kbd>Ctrl</kbd>+<kbd>m</kbd> tai <kbd>Esc</kbd> vaihtaaksesi)",
"Theme": "Teema"
} }

View File

@ -3,7 +3,6 @@
"%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.": "%s est un 'pastebin' (ou gestionnaire d'extraits de texte et de code source) minimaliste et open source, dans lequel le serveur n'a aucune connaissance des données envoyées. Les données sont chiffrées/déchiffrées %sdans le navigateur%s par un chiffrement AES 256 bits.", "%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.": "%s est un 'pastebin' (ou gestionnaire d'extraits de texte et de code source) minimaliste et open source, dans lequel le serveur n'a aucune connaissance des données envoyées. Les données sont chiffrées/déchiffrées %sdans le navigateur%s par un chiffrement AES 256 bits.",
"More information on the <a href=\"https://privatebin.info/\">project page</a>.": "Plus d'informations sur <a href=\"https://privatebin.info/\">la page du projet</a>.", "More information on the <a href=\"https://privatebin.info/\">project page</a>.": "Plus d'informations sur <a href=\"https://privatebin.info/\">la page du projet</a>.",
"Because ignorance is bliss": "Vivons heureux, vivons cachés", "Because ignorance is bliss": "Vivons heureux, vivons cachés",
"en": "fr",
"Paste does not exist, has expired or has been deleted.": "Le paste n'existe pas, a expiré, ou a été supprimé.", "Paste does not exist, has expired or has been deleted.": "Le paste n'existe pas, a expiré, ou a été supprimé.",
"%s requires php %s or above to work. Sorry.": "Désolé, %s nécessite php %s ou supérieur pour fonctionner.", "%s requires php %s or above to work. Sorry.": "Désolé, %s nécessite php %s ou supérieur pour fonctionner.",
"%s requires configuration section [%s] to be present in configuration file.": "%s a besoin de la section de configuration [%s] dans le fichier de configuration pour fonctionner.", "%s requires configuration section [%s] to be present in configuration file.": "%s a besoin de la section de configuration [%s] dans le fichier de configuration pour fonctionner.",
@ -11,6 +10,8 @@
"Merci d'attendre %d seconde entre chaque publication.", "Merci d'attendre %d seconde entre chaque publication.",
"Merci d'attendre %d secondes entre chaque publication.", "Merci d'attendre %d secondes entre chaque publication.",
"Merci d'attendre %d secondes entre chaque publication.", "Merci d'attendre %d secondes entre chaque publication.",
"Merci d'attendre %d secondes entre chaque publication.",
"Merci d'attendre %d secondes entre chaque publication.",
"Merci d'attendre %d secondes entre chaque publication." "Merci d'attendre %d secondes entre chaque publication."
], ],
"Paste is limited to %s of encrypted data.": "Le paste est limité à %s de données chiffrées.", "Paste is limited to %s of encrypted data.": "Le paste est limité à %s de données chiffrées.",
@ -25,7 +26,7 @@
"JavaScript is required for %s to work. Sorry for the inconvenience.": "JavaScript est requis pour faire fonctionner %s. Désolé pour cet inconvénient.", "JavaScript is required for %s to work. Sorry for the inconvenience.": "JavaScript est requis pour faire fonctionner %s. Désolé pour cet inconvénient.",
"%s requires a modern browser to work.": "%s nécessite un navigateur moderne pour fonctionner.", "%s requires a modern browser to work.": "%s nécessite un navigateur moderne pour fonctionner.",
"New": "Nouveau", "New": "Nouveau",
"Send": "Envoyer", "Create": "Créer",
"Clone": "Cloner", "Clone": "Cloner",
"Raw text": "Texte brut", "Raw text": "Texte brut",
"Expires": "Expire", "Expires": "Expire",
@ -37,72 +38,96 @@
"%d seconds": [ "%d seconds": [
"%d seconde", "%d seconde",
"%d secondes", "%d secondes",
"%d seconds (2nd plural)", "%d secondes",
"%d seconds (3rd plural)" "%d secondes",
"%d secondes",
"%d secondes"
], ],
"%d minutes": [ "%d minutes": [
"%d minute", "%d minute",
"%d minutes", "%d minutes",
"%d minutes (2nd plural)", "%d minutes",
"%d minutes (3rd plural)" "%d minutes",
"%d minutes",
"%d minutes"
], ],
"%d hours": [ "%d hours": [
"%d heure", "%d heure",
"%d heures", "%d heures",
"%d hours (2nd plural)", "%d heures",
"%d hours (3rd plural)" "%d heures",
"%d heures",
"%d heures"
], ],
"%d days": [ "%d days": [
"%d jour", "%d jour",
"%d jours", "%d jours",
"%d days (2nd plural)", "%d jours",
"%d days (3rd plural)" "%d jours",
"%d jours",
"%d jours"
], ],
"%d weeks": [ "%d weeks": [
"%d semaine", "%d semaine",
"%d semaines", "%d semaines",
"%d weeks (2nd plural)", "%d semaines",
"%d weeks (3rd plural)" "%d semaines",
"%d semaines",
"%d semaines"
], ],
"%d months": [ "%d months": [
"%d mois", "%d mois",
"%d mois", "%d mois",
"%d months (2nd plural)", "%d mois",
"%d months (3rd plural)" "%d mois",
"%d mois",
"%d mois"
], ],
"%d years": [ "%d years": [
"%d an", "%d an",
"%d ans", "%d ans",
"%d years (2nd plural)", "%d ans",
"%d years (3rd plural)" "%d ans",
"%d ans",
"%d ans"
], ],
"Never": "Jamais", "Never": "Jamais",
"Note: This is a test service: Data may be deleted anytime. Kittens will die if you abuse this service.": "Note : Ceci est un service de test : les données peuvent être supprimées à tout moment. Des chatons mourront si vous utilisez ce service de manière abusive.", "Note: This is a test service: Data may be deleted anytime. Kittens will die if you abuse this service.": "Note : Ceci est un service de test : les données peuvent être supprimées à tout moment. Des chatons mourront si vous utilisez ce service de manière abusive.",
"This document will expire in %d seconds.": [ "This document will expire in %d seconds.": [
"Ce document expirera dans %d seconde.", "Ce document expirera dans %d seconde.",
"Ce document expirera dans %d secondes.", "Ce document expirera dans %d secondes.",
"This document will expire in %d seconds (2nd plural)", "Ce document expirera dans %d secondes.",
"This document will expire in %d seconds (3rd plural)" "Ce document expirera dans %d secondes.",
"Ce document expirera dans %d secondes.",
"Ce document expirera dans %d secondes."
], ],
"This document will expire in %d minutes.": [ "This document will expire in %d minutes.": [
"Ce document expirera dans %d minute.", "Ce document expirera dans %d minute.",
"Ce document expirera dans %d minutes.", "Ce document expirera dans %d minutes.",
"Ce document expirera dans %d minutes.", "Ce document expirera dans %d minutes.",
"Ce document expirera dans %d minutes.",
"Ce document expirera dans %d minutes.",
"Ce document expirera dans %d minutes." "Ce document expirera dans %d minutes."
], ],
"This document will expire in %d hours.": [ "This document will expire in %d hours.": [
"Ce document expirera dans %d heure.", "Ce document expirera dans %d heure.",
"Ce document expirera dans %d heures.", "Ce document expirera dans %d heures.",
"Ce document expirera dans %d heures.", "Ce document expirera dans %d heures.",
"Ce document expirera dans %d heures.",
"Ce document expirera dans %d heures.",
"Ce document expirera dans %d heures." "Ce document expirera dans %d heures."
], ],
"This document will expire in %d days.": [ "This document will expire in %d days.": [
"Ce document expirera dans %d jour.", "Ce document expirera dans %d jour.",
"Ce document expirera dans %d jours.", "Ce document expirera dans %d jours.",
"Ce document expirera dans %d jours.", "Ce document expirera dans %d jours.",
"Ce document expirera dans %d jours.",
"Ce document expirera dans %d jours.",
"Ce document expirera dans %d jours." "Ce document expirera dans %d jours."
], ],
"This document will expire in %d months.": [ "This document will expire in %d months.": [
"Ce document expirera dans %d mois.",
"Ce document expirera dans %d mois.",
"Ce document expirera dans %d mois.", "Ce document expirera dans %d mois.",
"Ce document expirera dans %d mois.", "Ce document expirera dans %d mois.",
"Ce document expirera dans %d mois.", "Ce document expirera dans %d mois.",
@ -126,7 +151,7 @@
"server error or not responding": "Le serveur ne répond pas ou a rencontré une erreur", "server error or not responding": "Le serveur ne répond pas ou a rencontré une erreur",
"Could not post comment: %s": "Impossible de poster le commentaire : %s", "Could not post comment: %s": "Impossible de poster le commentaire : %s",
"Sending paste…": "Envoi du paste…", "Sending paste…": "Envoi du paste…",
"Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit [Ctrl]+[c] to copy)</span>": "Votre paste est disponible à l'adresse <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Appuyez sur [Ctrl]+[c] pour copier)</span>", "Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit <kbd>Ctrl</kbd>+<kbd>c</kbd> to copy)</span>": "Votre paste est disponible à l'adresse <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Appuyez sur <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd> pour copier)</span>",
"Delete data": "Supprimer les données du paste", "Delete data": "Supprimer les données du paste",
"Could not create paste: %s": "Impossible de créer le paste : %s", "Could not create paste: %s": "Impossible de créer le paste : %s",
"Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)": "Impossible de déchiffrer le paste : Clé de déchiffrement manquante dans l'URL (Avez-vous utilisé un redirecteur ou un site de réduction d'URL qui supprime une partie de l'URL ?)", "Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)": "Impossible de déchiffrer le paste : Clé de déchiffrement manquante dans l'URL (Avez-vous utilisé un redirecteur ou un site de réduction d'URL qui supprime une partie de l'URL ?)",
@ -187,7 +212,20 @@
"URL shortener may expose your decrypt key in URL.": "Raccourcir l'URL peut exposer votre clé de déchiffrement dans l'URL.", "URL shortener may expose your decrypt key in URL.": "Raccourcir l'URL peut exposer votre clé de déchiffrement dans l'URL.",
"Save paste": "Sauver le paste", "Save paste": "Sauver le paste",
"Your IP is not authorized to create pastes.": "Votre adresse IP n'est pas autorisée à créer des pastes.", "Your IP is not authorized to create pastes.": "Votre adresse IP n'est pas autorisée à créer des pastes.",
"Trying to shorten a URL that isn't pointing at our instance.": "Trying to shorten a URL that isn't pointing at our instance.", "Trying to shorten a URL that isn't pointing at our instance.": "Tentative de raccourcir une URL qui ne pointe pas vers notre instance.",
"Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".": "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".", "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".": "Erreur lors de l'appel de YOURLS. Peut-être un problème de configuration, comme \"apiurl\" ou \"signature\" manquant.",
"Error parsing YOURLS response.": "Error parsing YOURLS response." "Error parsing YOURLS response.": "Erreur d'analyse de la réponse YOURLS.",
"This secret message can only be displayed once. Would you like to see it now?": "Les pastes de type \"Effacer après la lecture\" ne peuvent être affichés qu'une seule fois. Voulez-vous le voir maintenant ?",
"Yes, see it": "Oui, le voir",
"Dark Mode": "Mode Sombre",
"Error compressing paste, due to missing WebAssembly support.": "Erreur lors de la compression du paste, en raison du support de WebAssembly manquant.",
"Error decompressing paste, your browser does not support WebAssembly. Please use another browser to view this paste.": "Erreur lors de la décompression du paste, votre navigateur ne supporte pas WebAssembly. Veuillez utiliser un autre navigateur pour voir ce paste.",
"Start over": "Recommencer",
"Paste copied to clipboard": "Paste copié dans le presse-papier",
"To copy paste press on the copy button or use the clipboard shortcut <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>": "Pour copier-coller appuyer sur le bouton To copy paste press on the copy button or use the clipboard shortcut <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>",
"Copy link": "Copier le lien",
"Link copied to clipboard": "Lien copié dans le presse-papier",
"Paste text": "Texte du paste",
"Tabulator key serves as character (Hit <kbd>Ctrl</kbd>+<kbd>m</kbd> or <kbd>Esc</kbd> to toggle)": "La touche de tabulation sert de caractère (Presser <kbd>Ctrl</kbd>+<kbd>m</kbd> ou <kbd>Esc</kbd> pour basculer)",
"Theme": "Theme"
} }

View File

@ -1,9 +1,8 @@
{ {
"PrivateBin": "PrivateBin", "PrivateBin": "PrivateBin",
"%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.": "%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.", "%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.": "%s הוא שירות pastebin מקוון, מינימליסטי וקוד פתוח, שבו לשרת אין כל ידע על המידע שהודבק. הנתונים מוצפנים ומפוענחים %sבדפדפן%s באמצעות הצפנת AES ב-256 סיביות.",
"More information on the <a href=\"https://privatebin.info/\">project page</a>.": "More information on the <a href=\"https://privatebin.info/\">project page</a>.", "More information on the <a href=\"https://privatebin.info/\">project page</a>.": "מידע נוסף בדף <a href=\"https://privatebin.info/\">הפרויקט</a>.",
"Because ignorance is bliss": "כיוון שבורות היא ברכה", "Because ignorance is bliss": "כיוון שבורות היא ברכה",
"en": "he",
"Paste does not exist, has expired or has been deleted.": "ההדבקה לא קיימת, פגה או נמחקה.", "Paste does not exist, has expired or has been deleted.": "ההדבקה לא קיימת, פגה או נמחקה.",
"%s requires php %s or above to work. Sorry.": "%s דורש PHP %s כדי לפעול.", "%s requires php %s or above to work. Sorry.": "%s דורש PHP %s כדי לפעול.",
"%s requires configuration section [%s] to be present in configuration file.": "%s דורש שסעיף ההגדרות [%s] יהיה קיים בקובץ ההגדרות.", "%s requires configuration section [%s] to be present in configuration file.": "%s דורש שסעיף ההגדרות [%s] יהיה קיים בקובץ ההגדרות.",
@ -11,6 +10,8 @@
"נא להמתין שנייה אחת בין פרסום לפרסום.", "נא להמתין שנייה אחת בין פרסום לפרסום.",
"נא להמתין %d שניות בין פרסום לפרסום.", "נא להמתין %d שניות בין פרסום לפרסום.",
"נא להמתין %d שניות בין פרסום לפרסום.", "נא להמתין %d שניות בין פרסום לפרסום.",
"נא להמתין %d שניות בין פרסום לפרסום.",
"נא להמתין %d שניות בין פרסום לפרסום.",
"נא להמתין %d שניות בין פרסום לפרסום." "נא להמתין %d שניות בין פרסום לפרסום."
], ],
"Paste is limited to %s of encrypted data.": "ההדבקה מוגבלת ל־%s של נתונים מוצפנים.", "Paste is limited to %s of encrypted data.": "ההדבקה מוגבלת ל־%s של נתונים מוצפנים.",
@ -25,10 +26,10 @@
"JavaScript is required for %s to work. Sorry for the inconvenience.": "צריך JavaScript כדי לאפשר ל־%s לפעול. סליחה על חוסר הנוחות.", "JavaScript is required for %s to work. Sorry for the inconvenience.": "צריך JavaScript כדי לאפשר ל־%s לפעול. סליחה על חוסר הנוחות.",
"%s requires a modern browser to work.": "%s דורש דפדפן מודרני כדי לפעול.", "%s requires a modern browser to work.": "%s דורש דפדפן מודרני כדי לפעול.",
"New": "חדש", "New": "חדש",
"Send": "שליחה", "Create": "צור",
"Clone": "שכפול", "Clone": "שכפול",
"Raw text": "טקסט גולמי", "Raw text": "טקסט גולמי",
"Expires": "Expires", "Expires": "יפוג ב",
"Burn after reading": "קוראים-שורפים", "Burn after reading": "קוראים-שורפים",
"Open discussion": "פתיחת דיון", "Open discussion": "פתיחת דיון",
"Password (recommended)": "ססמה (מומלץ)", "Password (recommended)": "ססמה (מומלץ)",
@ -37,76 +38,100 @@
"%d seconds": [ "%d seconds": [
"שנייה אחת", "שנייה אחת",
"%d שניות", "%d שניות",
"%d שניות (צורת ריבוי 2)", "%d שניות",
"%d שניות",
"%d שניות",
"%d שניות" "%d שניות"
], ],
"%d minutes": [ "%d minutes": [
"דקה אחת", "דקה אחת",
"%d דקות", "%d דקות",
"%d דקות", "%d דקות",
"%d דקות",
"%d דקות",
"%d דקות" "%d דקות"
], ],
"%d hours": [ "%d hours": [
"שעה אחת", "שעה אחת",
"%d hours (1st plural)", "%d שעות",
"%d hours (2nd plural)", "%d שעות",
"%d hours (3rd plural)" "%d שעות",
"%d שעות",
"%d שעות"
], ],
"%d days": [ "%d days": [
"יום אחד", "יום אחד",
"%d ימים", "%d ימים",
"%d ימים", "%d ימים",
"%d ימים",
"%d ימים",
"%d ימים" "%d ימים"
], ],
"%d weeks": [ "%d weeks": [
"שבוע אחד", "שבוע אחד",
"%d שבועות", "%d שבועות",
"%d שבועות", "%d שבועות",
"%d שבועות",
"%d שבועות",
"%d שבועות" "%d שבועות"
], ],
"%d months": [ "%d months": [
"חודש אחד", "חודש אחד",
"%d חודשים", "%d חודשים",
"%d חודשים", "%d חודשים",
"%d חודשים",
"%d חודשים",
"%d חודשים" "%d חודשים"
], ],
"%d years": [ "%d years": [
"שנה אחת", "שנה אחת",
"%d שנים", "%d שנים",
"%d שנים", "%d שנים",
"%d שנים",
"%d שנים",
"%d שנים" "%d שנים"
], ],
"Never": "לעולם לא", "Never": "לעולם לא",
"Note: This is a test service: Data may be deleted anytime. Kittens will die if you abuse this service.": "הערה: זהו שירות בדקה: המידע לא ישמר.", "Note: This is a test service: Data may be deleted anytime. Kittens will die if you abuse this service.": "הערה: זהו שירות בדקה: המידע לא ישמר.",
"This document will expire in %d seconds.": [ "This document will expire in %d seconds.": [
"This document will expire in %d second. (singular)", "מסמך זה יפוג בעוד שנייה אחת.",
"This document will expire in %d seconds. (1st plural)", "מסמך זה יפוג בעוד %d שניות.",
"This document will expire in %d seconds. (2nd plural)", "מסמך זה יפוג בעוד %d שניות.",
"This document will expire in %d seconds. (3rd plural)" "מסמך זה יפוג בעוד %d שניות.",
"מסמך זה יפוג בעוד %d שניות.",
"מסמך זה יפוג בעוד %d שניות."
], ],
"This document will expire in %d minutes.": [ "This document will expire in %d minutes.": [
"This document will expire in %d minute. (singular)", "מסמך זה יפוג בעוד דקה אחת.",
"This document will expire in %d minutes. (1st plural)", "מסמך זה יפוג בעוד %d דקות.",
"This document will expire in %d minutes. (2nd plural)", "מסמך זה יפוג בעוד %d דקות.",
"This document will expire in %d minutes. (3rd plural)" "מסמך זה יפוג בעוד %d דקות.",
"מסמך זה יפוג בעוד %d דקות.",
"מסמך זה יפוג בעוד %d דקות."
], ],
"This document will expire in %d hours.": [ "This document will expire in %d hours.": [
"This document will expire in %d hour. (singular)", "מסמך זה יפוג בעוד שעה אחת.",
"This document will expire in %d hours. (1st plural)", "מסמך זה יפוג בעוד %d שעות.",
"This document will expire in %d hours. (2nd plural)", "מסמך זה יפוג בעוד %d שעות.",
"This document will expire in %d hours. (3rd plural)" "מסמך זה יפוג בעוד %d שעות.",
"מסמך זה יפוג בעוד %d שעות.",
"מסמך זה יפוג בעוד %d שעות."
], ],
"This document will expire in %d days.": [ "This document will expire in %d days.": [
"This document will expire in %d day. (singular)", "מסמך זה יפוג בעוד יום אחד.",
"This document will expire in %d days. (1st plural)", "מסמך זה יפוג בעוד %d ימים.",
"This document will expire in %d days. (2nd plural)", "מסמך זה יפוג בעוד %d ימים.",
"This document will expire in %d days. (3rd plural)" "מסמך זה יפוג בעוד %d ימים.",
"מסמך זה יפוג בעוד %d ימים.",
"מסמך זה יפוג בעוד %d ימים."
], ],
"This document will expire in %d months.": [ "This document will expire in %d months.": [
"This document will expire in %d month. (singular)", "מסמך זה יפוג בעוד חודש אחד.",
"This document will expire in %d months. (1st plural)", "מסמך זה יפוג בעוד %d חודשים.",
"This document will expire in %d months. (2nd plural)", "מסמך זה יפוג בעוד %d חודשים.",
"This document will expire in %d months. (3rd plural)" "מסמך זה יפוג בעוד %d חודשים.",
"מסמך זה יפוג בעוד %d חודשים.",
"מסמך זה יפוג בעוד %d חודשים."
], ],
"Please enter the password for this paste:": "נא למלא את הססמה להדבקה הזו:", "Please enter the password for this paste:": "נא למלא את הססמה להדבקה הזו:",
"Could not decrypt data (Wrong key?)": "לא ניתן לפענח את הנתונים (מפתח שגוי?)", "Could not decrypt data (Wrong key?)": "לא ניתן לפענח את הנתונים (מפתח שגוי?)",
@ -126,7 +151,7 @@
"server error or not responding": "שגיאת שרת או שהשרת לא מגיב", "server error or not responding": "שגיאת שרת או שהשרת לא מגיב",
"Could not post comment: %s": "לא ניתן לפרסם תגובה: %s", "Could not post comment: %s": "לא ניתן לפרסם תגובה: %s",
"Sending paste…": "ההדבקה נשלחת…", "Sending paste…": "ההדבקה נשלחת…",
"Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit [Ctrl]+[c] to copy)</span>": "ההדבקה שלך היא <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(יש ללחוץ [Ctrl]+[c] כדי להעתיק)</span>", "Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit <kbd>Ctrl</kbd>+<kbd>c</kbd> to copy)</span>": "ההדבקה שלך היא <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(יש ללחוץ <kbd>Ctrl</kbd>+<kbd>c</kbd> כדי להעתיק)</span>",
"Delete data": "מחיקת נתונים", "Delete data": "מחיקת נתונים",
"Could not create paste: %s": "לא ניתן ליצור הדבקה: %s", "Could not create paste: %s": "לא ניתן ליצור הדבקה: %s",
"Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)": "לא ניתן לפענח הדבקה: מפתח הפענוח חסר בכתובת (השתמשת במערכת הפנייה או מקצר כתובות שחותכים חלק מהכתובת?)", "Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)": "לא ניתן לפענח הדבקה: מפתח הפענוח חסר בכתובת (השתמשת במערכת הפנייה או מקצר כתובות שחותכים חלק מהכתובת?)",
@ -145,29 +170,29 @@
"Markdown": "Markdown", "Markdown": "Markdown",
"Download attachment": "הורדת קובץ מצורף", "Download attachment": "הורדת קובץ מצורף",
"Cloned: '%s'": "שוכפל: '%s'", "Cloned: '%s'": "שוכפל: '%s'",
"The cloned file '%s' was attached to this paste.": "The cloned file '%s' was attached to this paste.", "The cloned file '%s' was attached to this paste.": "הקובץ '%s' שהועתק צורף להדבקה זו.",
"Attach a file": "צירוף קובץ", "Attach a file": "צירוף קובץ",
"alternatively drag & drop a file or paste an image from the clipboard": "alternatively drag & drop a file or paste an image from the clipboard", "alternatively drag & drop a file or paste an image from the clipboard": "לחלופין, ניתן לגרור ולשחרר קובץ או להדביק תמונה מהלוח.",
"File too large, to display a preview. Please download the attachment.": "File too large, to display a preview. Please download the attachment.", "File too large, to display a preview. Please download the attachment.": "הקובץ גדול מדי כדי להציג תצוגה מקדימה. אנא הורד את הקובץ המצורף.",
"Remove attachment": "Remove attachment", "Remove attachment": "הסר קובץ מצורף",
"Your browser does not support uploading encrypted files. Please use a newer browser.": "Your browser does not support uploading encrypted files. Please use a newer browser.", "Your browser does not support uploading encrypted files. Please use a newer browser.": "הדפדפן שלך אינו תומך בהעלאת קבצים מוצפנים. אנא השתמש בדפדפן עדכני יותר.",
"Invalid attachment.": "קובץ מצורף שגוי.", "Invalid attachment.": "קובץ מצורף שגוי.",
"Options": "אפשרויות", "Options": "אפשרויות",
"Shorten URL": "קיצור כתובת", "Shorten URL": "קיצור כתובת",
"Editor": "עורך", "Editor": "עורך",
"Preview": "תצוגה מקדימה", "Preview": "תצוגה מקדימה",
"%s requires the PATH to end in a \"%s\". Please update the PATH in your index.php.": "%s requires the PATH to end in a \"%s\". Please update the PATH in your index.php.", "%s requires the PATH to end in a \"%s\". Please update the PATH in your index.php.": "%s דורש שה-PATH יסתיים ב-\"%s\". אנא עדכן את ה-PATH בקובץ index.php שלך.",
"Decrypt": "פענוח", "Decrypt": "פענוח",
"Enter password": "נא למלא ססמה", "Enter password": "נא למלא ססמה",
"Loading…": "בטעינה…", "Loading…": "בטעינה…",
"Decrypting paste…": "ההדבקה מפוענחת…", "Decrypting paste…": "ההדבקה מפוענחת…",
"Preparing new paste…": "ההדבקה החדשה בהכנות…", "Preparing new paste…": "ההדבקה החדשה בהכנות…",
"In case this message never disappears please have a look at <a href=\"%s\">this FAQ for information to troubleshoot</a>.": "In case this message never disappears please have a look at <a href=\"%s\">this FAQ for information to troubleshoot</a>.", "In case this message never disappears please have a look at <a href=\"%s\">this FAQ for information to troubleshoot</a>.": "אם הודעה זו לא נעלמת, אנא עיין ב- <a href=\"%s\">שאלות נפוצות אלה למידע לפתרון בעיות</a>.",
"+++ no paste text +++": "+++ אין טקסט להדבקה +++", "+++ no paste text +++": "+++ אין טקסט להדבקה +++",
"Could not get paste data: %s": "לא ניתן לקבל את נתוני ההדבקה: %s", "Could not get paste data: %s": "לא ניתן לקבל את נתוני ההדבקה: %s",
"QR code": "קוד QR", "QR code": "קוד QR",
"This website is using an insecure HTTP connection! Please use it only for testing.": "האתר הזה משתמש בחיבור HTTP בלתי מאובטח! נא להשתמש בזה לבדיקות בלבד.", "This website is using an insecure HTTP connection! Please use it only for testing.": "האתר הזה משתמש בחיבור HTTP בלתי מאובטח! נא להשתמש בזה לבדיקות בלבד.",
"For more information <a href=\"%s\">see this FAQ entry</a>.": "יש מידע נוסף <a href=\"%s\">ברשומה הזאת בשו״ת</a>.", "For more information <a href=\"%s\">see this FAQ entry</a>.": "לפרטים נוספים <a href=\"%s\">עיין ברשומת שאלות נפוצות זו</a>.",
"Your browser may require an HTTPS connection to support the WebCrypto API. Try <a href=\"%s\">switching to HTTPS</a>.": "יכול להיות שהדפדפן שלך ידרוש חיבור HTTPS כדי לתמוך ב־API של WebCrypto. כדי לנסות <a href=\"%s\">לעבור ל־HTTPS</a>.", "Your browser may require an HTTPS connection to support the WebCrypto API. Try <a href=\"%s\">switching to HTTPS</a>.": "יכול להיות שהדפדפן שלך ידרוש חיבור HTTPS כדי לתמוך ב־API של WebCrypto. כדי לנסות <a href=\"%s\">לעבור ל־HTTPS</a>.",
"Your browser doesn't support WebAssembly, used for zlib compression. You can create uncompressed documents, but can't read compressed ones.": "הדפדפן שלך לא תומך ב־WebAssembly שמשמש לדחיסת zlib. אפשר ליצור מסמכים בלתי מוצפנים אך אין אפשרות לקרוא מסמכים מוצפנים.", "Your browser doesn't support WebAssembly, used for zlib compression. You can create uncompressed documents, but can't read compressed ones.": "הדפדפן שלך לא תומך ב־WebAssembly שמשמש לדחיסת zlib. אפשר ליצור מסמכים בלתי מוצפנים אך אין אפשרות לקרוא מסמכים מוצפנים.",
"waiting on user to provide a password": "בהמתנה למילוי הססמה מצד המשתמש", "waiting on user to provide a password": "בהמתנה למילוי הססמה מצד המשתמש",
@ -184,10 +209,23 @@
"Close": "סגירה", "Close": "סגירה",
"Encrypted note on %s": "%sהערה מוצפנת ב־", "Encrypted note on %s": "%sהערה מוצפנת ב־",
"Visit this link to see the note. Giving the URL to anyone allows them to access the note, too.": "נא לבקר בקישור כדי לצפות בהערה. מסירת הקישור לאנשים כלשהם תאפשר גם להם לגשת להערה.", "Visit this link to see the note. Giving the URL to anyone allows them to access the note, too.": "נא לבקר בקישור כדי לצפות בהערה. מסירת הקישור לאנשים כלשהם תאפשר גם להם לגשת להערה.",
"URL shortener may expose your decrypt key in URL.": "URL shortener may expose your decrypt key in URL.", "URL shortener may expose your decrypt key in URL.": "שירות קיצור כתובת URL עשוי לחשוף את מפתח הפענוח שלך בכתובת ה-URL.",
"Save paste": "Save paste", "Save paste": "שמור הדבקה",
"Your IP is not authorized to create pastes.": "Your IP is not authorized to create pastes.", "Your IP is not authorized to create pastes.": "ה-IP שלך אינו מורשה ליצור הדבקות.",
"Trying to shorten a URL that isn't pointing at our instance.": "Trying to shorten a URL that isn't pointing at our instance.", "Trying to shorten a URL that isn't pointing at our instance.": "מנסים לקצר כתובת URL שאינה מצביעה על המערכת שלנו.",
"Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".": "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".", "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".": "שגיאה בעת קריאה ל-YOURLS. כנראה מדובר בבעיה בהגדרות, כמו \"apiurl\" או \"signature\" שגויים או חסרים.",
"Error parsing YOURLS response.": "Error parsing YOURLS response." "Error parsing YOURLS response.": "שגיאה בניתוח התגובה מ-YOURLS.",
"This secret message can only be displayed once. Would you like to see it now?": "ההודעה הסודית הזו יכולה להוצג רק פעם אחת. האם תרצה לראות אותה עכשיו?",
"Yes, see it": "כן, ראה אותה",
"Dark Mode": "מצב כהה",
"Error compressing paste, due to missing WebAssembly support.": "שגיאה בדחיסת ההדבקה, עקב חוסר תמיכה ב-WebAssembly.",
"Error decompressing paste, your browser does not support WebAssembly. Please use another browser to view this paste.": "שגיאה בהפקת ההדבקה, הדפדפן שלך לא תומך ב-WebAssembly. אנא השתמש בדפדפן אחר כדי לצפות בהדבקה זו.",
"Start over": "להתחיל מחדש",
"Paste copied to clipboard": "ההדבקה הועתקה ללוח",
"To copy paste press on the copy button or use the clipboard shortcut <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>": "על מנת להעתיק את ההדבקה, לחץ על כפתור ההעתקה או השתמש בקיצור הדרך ללוח <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>",
"Copy link": "העתק קישור",
"Link copied to clipboard": "הקישור הועתק ללוח",
"Paste text": "הדבק טקסט",
"Tabulator key serves as character (Hit <kbd>Ctrl</kbd>+<kbd>m</kbd> or <kbd>Esc</kbd> to toggle)": "משטח ה-tab פועל כמקש תו (לחץ על <kbd>Ctrl</kbd>+<kbd>m</kbd> או <kbd>Esc</kbd> להחלפה)",
"Theme": "נושא"
} }

View File

@ -3,7 +3,6 @@
"%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.": "%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.", "%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.": "%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.",
"More information on the <a href=\"https://privatebin.info/\">project page</a>.": "More information on the <a href=\"https://privatebin.info/\">project page</a>.", "More information on the <a href=\"https://privatebin.info/\">project page</a>.": "More information on the <a href=\"https://privatebin.info/\">project page</a>.",
"Because ignorance is bliss": "Because ignorance is bliss", "Because ignorance is bliss": "Because ignorance is bliss",
"en": "hi",
"Paste does not exist, has expired or has been deleted.": "Paste does not exist, has expired or has been deleted.", "Paste does not exist, has expired or has been deleted.": "Paste does not exist, has expired or has been deleted.",
"%s requires php %s or above to work. Sorry.": "%s requires php %s or above to work. Sorry.", "%s requires php %s or above to work. Sorry.": "%s requires php %s or above to work. Sorry.",
"%s requires configuration section [%s] to be present in configuration file.": "%s requires configuration section [%s] to be present in configuration file.", "%s requires configuration section [%s] to be present in configuration file.": "%s requires configuration section [%s] to be present in configuration file.",
@ -11,7 +10,9 @@
"Please wait %d second between each post. (singular)", "Please wait %d second between each post. (singular)",
"Please wait %d seconds between each post. (1st plural)", "Please wait %d seconds between each post. (1st plural)",
"Please wait %d seconds between each post. (2nd plural)", "Please wait %d seconds between each post. (2nd plural)",
"Please wait %d seconds between each post. (3rd plural)" "Please wait %d seconds between each post. (3rd plural)",
"Please wait %d seconds between each post. (4th plural)",
"Please wait %d seconds between each post. (5th plural)"
], ],
"Paste is limited to %s of encrypted data.": "Paste is limited to %s of encrypted data.", "Paste is limited to %s of encrypted data.": "Paste is limited to %s of encrypted data.",
"Invalid data.": "Invalid data.", "Invalid data.": "Invalid data.",
@ -25,7 +26,7 @@
"JavaScript is required for %s to work. Sorry for the inconvenience.": "JavaScript is required for %s to work. Sorry for the inconvenience.", "JavaScript is required for %s to work. Sorry for the inconvenience.": "JavaScript is required for %s to work. Sorry for the inconvenience.",
"%s requires a modern browser to work.": "%s requires a modern browser to work.", "%s requires a modern browser to work.": "%s requires a modern browser to work.",
"New": "New", "New": "New",
"Send": "Send", "Create": "Create",
"Clone": "Clone", "Clone": "Clone",
"Raw text": "Raw text", "Raw text": "Raw text",
"Expires": "Expires", "Expires": "Expires",
@ -38,43 +39,57 @@
"%d second (singular)", "%d second (singular)",
"%d seconds (1st plural)", "%d seconds (1st plural)",
"%d seconds (2nd plural)", "%d seconds (2nd plural)",
"%d seconds (3rd plural)" "%d seconds (3rd plural)",
"%d seconds (4th plural)",
"%d seconds (5th plural)"
], ],
"%d minutes": [ "%d minutes": [
"%d minute (singular)", "%d minute (singular)",
"%d minutes (1st plural)", "%d minutes (1st plural)",
"%d minutes (2nd plural)", "%d minutes (2nd plural)",
"%d minutes (3rd plural)" "%d minutes (3rd plural)",
"%d minutes (4th plural)",
"%d minutes (5th plural)"
], ],
"%d hours": [ "%d hours": [
"%d hour (singular)", "%d hour (singular)",
"%d hours (1st plural)", "%d hours (1st plural)",
"%d hours (2nd plural)", "%d hours (2nd plural)",
"%d hours (3rd plural)" "%d hours (3rd plural)",
"%d hours (4th plural)",
"%d hours (5th plural)"
], ],
"%d days": [ "%d days": [
"%d day (singular)", "%d day (singular)",
"%d days (1st plural)", "%d days (1st plural)",
"%d days (2nd plural)", "%d days (2nd plural)",
"%d days (3rd plural)" "%d days (3rd plural)",
"%d days (4th plural)",
"%d days (5th plural)"
], ],
"%d weeks": [ "%d weeks": [
"%d week (singular)", "%d week (singular)",
"%d weeks (1st plural)", "%d weeks (1st plural)",
"%d weeks (2nd plural)", "%d weeks (2nd plural)",
"%d weeks (3rd plural)" "%d weeks (3rd plural)",
"%d weeks (4th plural)",
"%d weeks (5th plural)"
], ],
"%d months": [ "%d months": [
"%d month (singular)", "%d month (singular)",
"%d months (1st plural)", "%d months (1st plural)",
"%d months (2nd plural)", "%d months (2nd plural)",
"%d months (3rd plural)" "%d months (3rd plural)",
"%d months (4th plural)",
"%d months (5th plural)"
], ],
"%d years": [ "%d years": [
"%d year (singular)", "%d year (singular)",
"%d years (1st plural)", "%d years (1st plural)",
"%d years (2nd plural)", "%d years (2nd plural)",
"%d years (3rd plural)" "%d years (3rd plural)",
"%d years (4th plural)",
"%d years (5th plural)"
], ],
"Never": "Never", "Never": "Never",
"Note: This is a test service: Data may be deleted anytime. Kittens will die if you abuse this service.": "Note: This is a test service: Data may be deleted anytime. Kittens will die if you abuse this service.", "Note: This is a test service: Data may be deleted anytime. Kittens will die if you abuse this service.": "Note: This is a test service: Data may be deleted anytime. Kittens will die if you abuse this service.",
@ -82,31 +97,41 @@
"This document will expire in %d second. (singular)", "This document will expire in %d second. (singular)",
"This document will expire in %d seconds. (1st plural)", "This document will expire in %d seconds. (1st plural)",
"This document will expire in %d seconds. (2nd plural)", "This document will expire in %d seconds. (2nd plural)",
"This document will expire in %d seconds. (3rd plural)" "This document will expire in %d seconds. (3rd plural)",
"This document will expire in %d seconds. (4th plural)",
"This document will expire in %d seconds. (5th plural)"
], ],
"This document will expire in %d minutes.": [ "This document will expire in %d minutes.": [
"This document will expire in %d minute. (singular)", "This document will expire in %d minute. (singular)",
"This document will expire in %d minutes. (1st plural)", "This document will expire in %d minutes. (1st plural)",
"This document will expire in %d minutes. (2nd plural)", "This document will expire in %d minutes. (2nd plural)",
"This document will expire in %d minutes. (3rd plural)" "This document will expire in %d minutes. (3rd plural)",
"This document will expire in %d minutes. (4th plural)",
"This document will expire in %d minutes. (5th plural)"
], ],
"This document will expire in %d hours.": [ "This document will expire in %d hours.": [
"This document will expire in %d hour. (singular)", "This document will expire in %d hour. (singular)",
"This document will expire in %d hours. (1st plural)", "This document will expire in %d hours. (1st plural)",
"This document will expire in %d hours. (2nd plural)", "This document will expire in %d hours. (2nd plural)",
"This document will expire in %d hours. (3rd plural)" "This document will expire in %d hours. (3rd plural)",
"This document will expire in %d hours. (4th plural)",
"This document will expire in %d hours. (5th plural)"
], ],
"This document will expire in %d days.": [ "This document will expire in %d days.": [
"This document will expire in %d day. (singular)", "This document will expire in %d day. (singular)",
"This document will expire in %d days. (1st plural)", "This document will expire in %d days. (1st plural)",
"This document will expire in %d days. (2nd plural)", "This document will expire in %d days. (2nd plural)",
"This document will expire in %d days. (3rd plural)" "This document will expire in %d days. (3rd plural)",
"This document will expire in %d days. (4th plural)",
"This document will expire in %d days. (5th plural)"
], ],
"This document will expire in %d months.": [ "This document will expire in %d months.": [
"This document will expire in %d month. (singular)", "This document will expire in %d month. (singular)",
"This document will expire in %d months. (1st plural)", "This document will expire in %d months. (1st plural)",
"This document will expire in %d months. (2nd plural)", "This document will expire in %d months. (2nd plural)",
"This document will expire in %d months. (3rd plural)" "This document will expire in %d months. (3rd plural)",
"This document will expire in %d months. (4th plural)",
"This document will expire in %d months. (5th plural)"
], ],
"Please enter the password for this paste:": "Please enter the password for this paste:", "Please enter the password for this paste:": "Please enter the password for this paste:",
"Could not decrypt data (Wrong key?)": "Could not decrypt data (Wrong key?)", "Could not decrypt data (Wrong key?)": "Could not decrypt data (Wrong key?)",
@ -126,7 +151,7 @@
"server error or not responding": "server error or not responding", "server error or not responding": "server error or not responding",
"Could not post comment: %s": "Could not post comment: %s", "Could not post comment: %s": "Could not post comment: %s",
"Sending paste…": "Sending paste…", "Sending paste…": "Sending paste…",
"Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit [Ctrl]+[c] to copy)</span>": "Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit [Ctrl]+[c] to copy)</span>", "Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit <kbd>Ctrl</kbd>+<kbd>c</kbd> to copy)</span>": "Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit <kbd>Ctrl</kbd>+<kbd>c</kbd> to copy)</span>",
"Delete data": "Delete data", "Delete data": "Delete data",
"Could not create paste: %s": "Could not create paste: %s", "Could not create paste: %s": "Could not create paste: %s",
"Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)": "Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)", "Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)": "Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)",
@ -189,5 +214,18 @@
"Your IP is not authorized to create pastes.": "Your IP is not authorized to create pastes.", "Your IP is not authorized to create pastes.": "Your IP is not authorized to create pastes.",
"Trying to shorten a URL that isn't pointing at our instance.": "Trying to shorten a URL that isn't pointing at our instance.", "Trying to shorten a URL that isn't pointing at our instance.": "Trying to shorten a URL that isn't pointing at our instance.",
"Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".": "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".", "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".": "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".",
"Error parsing YOURLS response.": "Error parsing YOURLS response." "Error parsing YOURLS response.": "Error parsing YOURLS response.",
"This secret message can only be displayed once. Would you like to see it now?": "This secret message can only be displayed once. Would you like to see it now?",
"Yes, see it": "Yes, see it",
"Dark Mode": "Dark Mode",
"Error compressing paste, due to missing WebAssembly support.": "Error compressing paste, due to missing WebAssembly support.",
"Error decompressing paste, your browser does not support WebAssembly. Please use another browser to view this paste.": "Error decompressing paste, your browser does not support WebAssembly. Please use another browser to view this paste.",
"Start over": "Start over",
"Paste copied to clipboard": "Paste copied to clipboard",
"To copy paste press on the copy button or use the clipboard shortcut <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>": "To copy paste press on the copy button or use the clipboard shortcut <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>",
"Copy link": "Copy link",
"Link copied to clipboard": "Link copied to clipboard",
"Paste text": "Paste text",
"Tabulator key serves as character (Hit <kbd>Ctrl</kbd>+<kbd>m</kbd> or <kbd>Esc</kbd> to toggle)": "Tabulator key serves as character (Hit <kbd>Ctrl</kbd>+<kbd>m</kbd> or <kbd>Esc</kbd> to toggle)",
"Theme": "Theme"
} }

View File

@ -3,11 +3,12 @@
"%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.": "A %s egy minimalista, nyílt forráskódú adattároló szoftver, ahol a szerver semmilyen információt nem tárol a feltett adatról. Azt ugyanis a %sböngésződ%s segítségével titkosítja és oldja fel 256 bit hosszú titkosítási kulcsú AES-t használva.", "%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.": "A %s egy minimalista, nyílt forráskódú adattároló szoftver, ahol a szerver semmilyen információt nem tárol a feltett adatról. Azt ugyanis a %sböngésződ%s segítségével titkosítja és oldja fel 256 bit hosszú titkosítási kulcsú AES-t használva.",
"More information on the <a href=\"https://privatebin.info/\">project page</a>.": "További információt a <a href=\"https://privatebin.info/\">projekt oldalán</a> találsz.", "More information on the <a href=\"https://privatebin.info/\">project page</a>.": "További információt a <a href=\"https://privatebin.info/\">projekt oldalán</a> találsz.",
"Because ignorance is bliss": "A titok egyfajta hatalom.", "Because ignorance is bliss": "A titok egyfajta hatalom.",
"en": "hu",
"Paste does not exist, has expired or has been deleted.": "A bejegyzés nem létezik, lejárt vagy törölve lett.", "Paste does not exist, has expired or has been deleted.": "A bejegyzés nem létezik, lejárt vagy törölve lett.",
"%s requires php %s or above to work. Sorry.": "Bocs, de a %s működéséhez %s vagy ezt meghaladó verziójú php-s környezet szükséges.", "%s requires php %s or above to work. Sorry.": "Bocs, de a %s működéséhez %s vagy ezt meghaladó verziójú php-s környezet szükséges.",
"%s requires configuration section [%s] to be present in configuration file.": "A %s megfelelő működéséhez a konfigurációs fájlban a [%s] résznek léteznie kell.", "%s requires configuration section [%s] to be present in configuration file.": "A %s megfelelő működéséhez a konfigurációs fájlban a [%s] résznek léteznie kell.",
"Please wait %d seconds between each post.": [ "Please wait %d seconds between each post.": [
"Kérlek várj %d másodpercet két beküldés között.",
"Kérlek várj %d másodpercet két beküldés között.",
"Kérlek várj %d másodpercet két beküldés között.", "Kérlek várj %d másodpercet két beküldés között.",
"Kérlek várj %d másodpercet két beküldés között.", "Kérlek várj %d másodpercet két beküldés között.",
"Kérlek várj %d másodpercet két beküldés között.", "Kérlek várj %d másodpercet két beküldés között.",
@ -25,7 +26,7 @@
"JavaScript is required for %s to work. Sorry for the inconvenience.": "JavaScript szükséges a %s működéséhez. Elnézést a fennakadásért.", "JavaScript is required for %s to work. Sorry for the inconvenience.": "JavaScript szükséges a %s működéséhez. Elnézést a fennakadásért.",
"%s requires a modern browser to work.": "A %s működéséhez a jelenleginél újabb böngészőre van szükség.", "%s requires a modern browser to work.": "A %s működéséhez a jelenleginél újabb böngészőre van szükség.",
"New": "Új", "New": "Új",
"Send": "Beküldöm!", "Create": "Létrehozás",
"Clone": "Másol", "Clone": "Másol",
"Raw text": "A nyers szöveg", "Raw text": "A nyers szöveg",
"Expires": "Lejárati idő", "Expires": "Lejárati idő",
@ -37,72 +38,96 @@
"%d seconds": [ "%d seconds": [
"%d másodperc", "%d másodperc",
"%d másodperc", "%d másodperc",
"%d seconds (2nd plural)", "%d másodperc",
"%d seconds (3rd plural)" "%d másodperc",
"%d másodperc",
"%d másodperc"
], ],
"%d minutes": [ "%d minutes": [
"%d perc", "%d perc",
"%d perc", "%d perc",
"%d minutes (2nd plural)", "%d perc",
"%d minutes (3rd plural)" "%d perc",
"%d perc",
"%d perc"
], ],
"%d hours": [ "%d hours": [
"%d óra", "%d óra",
"%d óra", "%d óra",
"%d hours (2nd plural)", "%d óra",
"%d hours (3rd plural)" "%d óra",
"%d óra",
"%d óra"
], ],
"%d days": [ "%d days": [
"%d nap", "%d nap",
"%d nap", "%d nap",
"%d days (2nd plural)", "%d nap",
"%d days (3rd plural)" "%d nap",
"%d nap",
"%d nap"
], ],
"%d weeks": [ "%d weeks": [
"%d hét", "%d hét",
"%d hét", "%d hét",
"%d weeks (2nd plural)", "%d hét",
"%d weeks (3rd plural)" "%d hét",
"%d hét",
"%d hét"
], ],
"%d months": [ "%d months": [
"%d hónap", "%d hónap",
"%d hónap", "%d hónap",
"%d months (2nd plural)", "%d hónap",
"%d months (3rd plural)" "%d hónap",
"%d hónap",
"%d hónap"
], ],
"%d years": [ "%d years": [
"%d év", "%d év",
"%d év", "%d év",
"%d years (2nd plural)", "%d év",
"%d years (3rd plural)" "%d év",
"%d év",
"%d év"
], ],
"Never": "Soha", "Never": "Soha",
"Note: This is a test service: Data may be deleted anytime. Kittens will die if you abuse this service.": "Megjegyzés: ez egy teszt szolgáltatás, az adatok bármikor törlődhetnek. Ha visszaélsz vele, kiscicák bánhatják! :)", "Note: This is a test service: Data may be deleted anytime. Kittens will die if you abuse this service.": "Megjegyzés: ez egy teszt szolgáltatás, az adatok bármikor törlődhetnek. Ha visszaélsz vele, kiscicák bánhatják! :)",
"This document will expire in %d seconds.": [ "This document will expire in %d seconds.": [
"Ez a bejegyzés %d másodperc múlva megsemmisül.",
"Ez a bejegyzés %d másodperc múlva megsemmisül.",
"Ez a bejegyzés %d másodperc múlva megsemmisül.", "Ez a bejegyzés %d másodperc múlva megsemmisül.",
"Ez a bejegyzés %d másodperc múlva megsemmisül.", "Ez a bejegyzés %d másodperc múlva megsemmisül.",
"Ez a bejegyzés %d másodperc múlva megsemmisül.", "Ez a bejegyzés %d másodperc múlva megsemmisül.",
"Ez a bejegyzés %d másodperc múlva megsemmisül." "Ez a bejegyzés %d másodperc múlva megsemmisül."
], ],
"This document will expire in %d minutes.": [ "This document will expire in %d minutes.": [
"Ez a bejegyzés %d perc múlva megsemmisül.",
"Ez a bejegyzés %d perc múlva megsemmisül.",
"Ez a bejegyzés %d perc múlva megsemmisül.", "Ez a bejegyzés %d perc múlva megsemmisül.",
"Ez a bejegyzés %d perc múlva megsemmisül.", "Ez a bejegyzés %d perc múlva megsemmisül.",
"Ez a bejegyzés %d perc múlva megsemmisül.", "Ez a bejegyzés %d perc múlva megsemmisül.",
"Ez a bejegyzés %d perc múlva megsemmisül." "Ez a bejegyzés %d perc múlva megsemmisül."
], ],
"This document will expire in %d hours.": [ "This document will expire in %d hours.": [
"Ez a bejegyzés %d óra múlva megsemmisül.",
"Ez a bejegyzés %d óra múlva megsemmisül.",
"Ez a bejegyzés %d óra múlva megsemmisül.", "Ez a bejegyzés %d óra múlva megsemmisül.",
"Ez a bejegyzés %d óra múlva megsemmisül.", "Ez a bejegyzés %d óra múlva megsemmisül.",
"Ez a bejegyzés %d óra múlva megsemmisül.", "Ez a bejegyzés %d óra múlva megsemmisül.",
"Ez a bejegyzés %d óra múlva megsemmisül." "Ez a bejegyzés %d óra múlva megsemmisül."
], ],
"This document will expire in %d days.": [ "This document will expire in %d days.": [
"Ez a bejegyzés %d nap múlva megsemmisül.",
"Ez a bejegyzés %d nap múlva megsemmisül.",
"Ez a bejegyzés %d nap múlva megsemmisül.", "Ez a bejegyzés %d nap múlva megsemmisül.",
"Ez a bejegyzés %d nap múlva megsemmisül.", "Ez a bejegyzés %d nap múlva megsemmisül.",
"Ez a bejegyzés %d nap múlva megsemmisül.", "Ez a bejegyzés %d nap múlva megsemmisül.",
"Ez a bejegyzés %d nap múlva megsemmisül." "Ez a bejegyzés %d nap múlva megsemmisül."
], ],
"This document will expire in %d months.": [ "This document will expire in %d months.": [
"Ez a bejegyzés %d hónap múlva megsemmisül.",
"Ez a bejegyzés %d hónap múlva megsemmisül.",
"Ez a bejegyzés %d hónap múlva megsemmisül.", "Ez a bejegyzés %d hónap múlva megsemmisül.",
"Ez a bejegyzés %d hónap múlva megsemmisül.", "Ez a bejegyzés %d hónap múlva megsemmisül.",
"Ez a bejegyzés %d hónap múlva megsemmisül.", "Ez a bejegyzés %d hónap múlva megsemmisül.",
@ -126,7 +151,7 @@
"server error or not responding": "A szerveren hiba lépett fel vagy nem válaszol.", "server error or not responding": "A szerveren hiba lépett fel vagy nem válaszol.",
"Could not post comment: %s": "Nem tudtuk beküldeni a hozzászólást: %s", "Could not post comment: %s": "Nem tudtuk beküldeni a hozzászólást: %s",
"Sending paste…": "Bejegyzés elküldése...", "Sending paste…": "Bejegyzés elküldése...",
"Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit [Ctrl]+[c] to copy)</span>": "A bejegyzésed a <a id=\"pasteurl\" href=\"%s\">%s</a> címen elérhető. <span id=\"copyhint\"> [Ctrl]+[c]-vel tudod vágólapra másolni.</span>", "Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit <kbd>Ctrl</kbd>+<kbd>c</kbd> to copy)</span>": "A bejegyzésed a <a id=\"pasteurl\" href=\"%s\">%s</a> címen elérhető. <span id=\"copyhint\"> <kbd>Ctrl</kbd>+<kbd>c</kbd>-vel tudod vágólapra másolni.</span>",
"Delete data": "Adat törlése", "Delete data": "Adat törlése",
"Could not create paste: %s": "Nem tudtuk létrehozni a bejegyzést: %s", "Could not create paste: %s": "Nem tudtuk létrehozni a bejegyzést: %s",
"Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)": "Nem tudjuk visszafejteni a bejegyzést: a dekódoláshoz szükséges kulcs hiányzik a címből. Talán URL rövidítőt használtál ami kivágta azt belőle?", "Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)": "Nem tudjuk visszafejteni a bejegyzést: a dekódoláshoz szükséges kulcs hiányzik a címből. Talán URL rövidítőt használtál ami kivágta azt belőle?",
@ -189,5 +214,18 @@
"Your IP is not authorized to create pastes.": "Your IP is not authorized to create pastes.", "Your IP is not authorized to create pastes.": "Your IP is not authorized to create pastes.",
"Trying to shorten a URL that isn't pointing at our instance.": "Trying to shorten a URL that isn't pointing at our instance.", "Trying to shorten a URL that isn't pointing at our instance.": "Trying to shorten a URL that isn't pointing at our instance.",
"Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".": "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".", "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".": "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".",
"Error parsing YOURLS response.": "Error parsing YOURLS response." "Error parsing YOURLS response.": "Error parsing YOURLS response.",
"This secret message can only be displayed once. Would you like to see it now?": "This secret message can only be displayed once. Would you like to see it now?",
"Yes, see it": "Yes, see it",
"Dark Mode": "Sötét mód",
"Error compressing paste, due to missing WebAssembly support.": "Error compressing paste, due to missing WebAssembly support.",
"Error decompressing paste, your browser does not support WebAssembly. Please use another browser to view this paste.": "Error decompressing paste, your browser does not support WebAssembly. Please use another browser to view this paste.",
"Start over": "Start over",
"Paste copied to clipboard": "Paste copied to clipboard",
"To copy paste press on the copy button or use the clipboard shortcut <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>": "To copy paste press on the copy button or use the clipboard shortcut <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>",
"Copy link": "Copy link",
"Link copied to clipboard": "Link copied to clipboard",
"Paste text": "Paste text",
"Tabulator key serves as character (Hit <kbd>Ctrl</kbd>+<kbd>m</kbd> or <kbd>Esc</kbd> to toggle)": "Tabulator key serves as character (Hit <kbd>Ctrl</kbd>+<kbd>m</kbd> or <kbd>Esc</kbd> to toggle)",
"Theme": "Theme"
} }

View File

@ -3,11 +3,12 @@
"%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.": "%s adalah sebuah pastebin online sumber terbuka dan minimalis, dimana servernya tersebut tidak punya pengetahuan tentang data yang ditempelkan. Data tersebut di enkrip/dekrip %sdi dalam browser%s menggunakan metode enkrip AES 256 bit.", "%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.": "%s adalah sebuah pastebin online sumber terbuka dan minimalis, dimana servernya tersebut tidak punya pengetahuan tentang data yang ditempelkan. Data tersebut di enkrip/dekrip %sdi dalam browser%s menggunakan metode enkrip AES 256 bit.",
"More information on the <a href=\"https://privatebin.info/\">project page</a>.": "Infomasi lebih lanjut pada <a href=\"https://privatebin.info/\">halaman proyek</a>.", "More information on the <a href=\"https://privatebin.info/\">project page</a>.": "Infomasi lebih lanjut pada <a href=\"https://privatebin.info/\">halaman proyek</a>.",
"Because ignorance is bliss": "Karena ketidaktahuan adalah kebahagiaan, gitu loh", "Because ignorance is bliss": "Karena ketidaktahuan adalah kebahagiaan, gitu loh",
"en": "id",
"Paste does not exist, has expired or has been deleted.": "Paste tidak ada, telah kedaluwarsa atau telah dihapus.", "Paste does not exist, has expired or has been deleted.": "Paste tidak ada, telah kedaluwarsa atau telah dihapus.",
"%s requires php %s or above to work. Sorry.": "%s memerlukan php %s atau versi diatasnya untuk dapat dijalankan. Maaf.", "%s requires php %s or above to work. Sorry.": "%s memerlukan php %s atau versi diatasnya untuk dapat dijalankan. Maaf.",
"%s requires configuration section [%s] to be present in configuration file.": "%s membutuhkan bagian konfigurasi [%s] untuk ada di file konfigurasi.", "%s requires configuration section [%s] to be present in configuration file.": "%s membutuhkan bagian konfigurasi [%s] untuk ada di file konfigurasi.",
"Please wait %d seconds between each post.": [ "Please wait %d seconds between each post.": [
"Silahkan menunggu %d detik antara masing-masing postingan.",
"Silahkan menunggu %d detik antara masing-masing postingan.",
"Silahkan menunggu %d detik antara masing-masing postingan.", "Silahkan menunggu %d detik antara masing-masing postingan.",
"Silahkan menunggu %d detik antara masing-masing postingan.", "Silahkan menunggu %d detik antara masing-masing postingan.",
"Silahkan menunggu %d detik antara masing-masing postingan.", "Silahkan menunggu %d detik antara masing-masing postingan.",
@ -25,7 +26,7 @@
"JavaScript is required for %s to work. Sorry for the inconvenience.": "JavaScript diperlukan agar %s bekerja. Maaf untuk ketidaknyamanannya.", "JavaScript is required for %s to work. Sorry for the inconvenience.": "JavaScript diperlukan agar %s bekerja. Maaf untuk ketidaknyamanannya.",
"%s requires a modern browser to work.": "%s memerlukan sebuah browser modern untuk bekerja.", "%s requires a modern browser to work.": "%s memerlukan sebuah browser modern untuk bekerja.",
"New": "Baru", "New": "Baru",
"Send": "Kirim", "Create": "Buat baru",
"Clone": "Klon", "Clone": "Klon",
"Raw text": "Teks mentah", "Raw text": "Teks mentah",
"Expires": "Kadaluarsa", "Expires": "Kadaluarsa",
@ -35,42 +36,56 @@
"Discussion": "Diskusi", "Discussion": "Diskusi",
"Toggle navigation": "Alihkan navigasi", "Toggle navigation": "Alihkan navigasi",
"%d seconds": [ "%d seconds": [
"%d detik",
"%d detik",
"%d detik", "%d detik",
"%d detik", "%d detik",
"%d detik", "%d detik",
"%d detik" "%d detik"
], ],
"%d minutes": [ "%d minutes": [
"%d menit",
"%d menit",
"%d menit", "%d menit",
"%d menit", "%d menit",
"%d menit", "%d menit",
"%d menit" "%d menit"
], ],
"%d hours": [ "%d hours": [
"%d jam",
"%d jam",
"%d jam", "%d jam",
"%d jam", "%d jam",
"%d jam", "%d jam",
"%d jam" "%d jam"
], ],
"%d days": [ "%d days": [
"%d hari",
"%d hari",
"%d hari", "%d hari",
"%d hari", "%d hari",
"%d hari", "%d hari",
"%d hari" "%d hari"
], ],
"%d weeks": [ "%d weeks": [
"%d minggu",
"%d minggu",
"%d minggu", "%d minggu",
"%d minggu", "%d minggu",
"%d minggu", "%d minggu",
"%d minggu" "%d minggu"
], ],
"%d months": [ "%d months": [
"%d bulan",
"%d bulan",
"%d bulan", "%d bulan",
"%d bulan", "%d bulan",
"%d bulan", "%d bulan",
"%d bulan" "%d bulan"
], ],
"%d years": [ "%d years": [
"%d tahun",
"%d tahun",
"%d tahun", "%d tahun",
"%d tahun", "%d tahun",
"%d tahun", "%d tahun",
@ -79,30 +94,40 @@
"Never": "Jangan pernah", "Never": "Jangan pernah",
"Note: This is a test service: Data may be deleted anytime. Kittens will die if you abuse this service.": "Catatan: Ini adalah layanan percobaan: Data mungkin bisa terhapus kapanpun juga. Anak-anak kucing akan mati jika Anda mengekploitasi layanan ini.", "Note: This is a test service: Data may be deleted anytime. Kittens will die if you abuse this service.": "Catatan: Ini adalah layanan percobaan: Data mungkin bisa terhapus kapanpun juga. Anak-anak kucing akan mati jika Anda mengekploitasi layanan ini.",
"This document will expire in %d seconds.": [ "This document will expire in %d seconds.": [
"Dokumen ini kadaluarsa dalam %d detik.",
"Dokumen ini kadaluarsa dalam %d detik.",
"Dokumen ini kadaluarsa dalam %d detik.", "Dokumen ini kadaluarsa dalam %d detik.",
"Dokumen ini kadaluarsa dalam %d detik.", "Dokumen ini kadaluarsa dalam %d detik.",
"Dokumen ini kadaluarsa dalam %d detik.", "Dokumen ini kadaluarsa dalam %d detik.",
"Dokumen ini kadaluarsa dalam %d detik." "Dokumen ini kadaluarsa dalam %d detik."
], ],
"This document will expire in %d minutes.": [ "This document will expire in %d minutes.": [
"Dokumen ini akan kadaluarsa dalam %d menit.",
"Dokumen ini akan kadaluarsa dalam %d menit.",
"Dokumen ini akan kadaluarsa dalam %d menit.", "Dokumen ini akan kadaluarsa dalam %d menit.",
"Dokumen ini akan kadaluarsa dalam %d menit.", "Dokumen ini akan kadaluarsa dalam %d menit.",
"Dokumen ini akan kadaluarsa dalam %d menit.", "Dokumen ini akan kadaluarsa dalam %d menit.",
"Dokumen ini akan kadaluarsa dalam %d menit." "Dokumen ini akan kadaluarsa dalam %d menit."
], ],
"This document will expire in %d hours.": [ "This document will expire in %d hours.": [
"Dokumen ini akan kadaluarsa dalam %d jam.",
"Dokumen ini akan kadaluarsa dalam %d jam.",
"Dokumen ini akan kadaluarsa dalam %d jam.", "Dokumen ini akan kadaluarsa dalam %d jam.",
"Dokumen ini akan kadaluarsa dalam %d jam.", "Dokumen ini akan kadaluarsa dalam %d jam.",
"Dokumen ini akan kadaluarsa dalam %d jam.", "Dokumen ini akan kadaluarsa dalam %d jam.",
"Dokumen ini akan kadaluarsa dalam %d jam." "Dokumen ini akan kadaluarsa dalam %d jam."
], ],
"This document will expire in %d days.": [ "This document will expire in %d days.": [
"Dokumen ini akan kadaluarsa dalam %d hari.",
"Dokumen ini akan kadaluarsa dalam %d hari.",
"Dokumen ini akan kadaluarsa dalam %d hari.", "Dokumen ini akan kadaluarsa dalam %d hari.",
"Dokumen ini akan kadaluarsa dalam %d hari.", "Dokumen ini akan kadaluarsa dalam %d hari.",
"Dokumen ini akan kadaluarsa dalam %d hari.", "Dokumen ini akan kadaluarsa dalam %d hari.",
"Dokumen ini akan kadaluarsa dalam %d hari." "Dokumen ini akan kadaluarsa dalam %d hari."
], ],
"This document will expire in %d months.": [ "This document will expire in %d months.": [
"Dokumen ini akan kadaluarsa dalam %d bulan.",
"Dokumen ini akan kadaluarsa dalam %d bulan.",
"Dokumen ini akan kadaluarsa dalam %d bulan.", "Dokumen ini akan kadaluarsa dalam %d bulan.",
"Dokumen ini akan kadaluarsa dalam %d bulan.", "Dokumen ini akan kadaluarsa dalam %d bulan.",
"Dokumen ini akan kadaluarsa dalam %d bulan.", "Dokumen ini akan kadaluarsa dalam %d bulan.",
@ -126,7 +151,7 @@
"server error or not responding": "kesalahan server atau server tidak merespon", "server error or not responding": "kesalahan server atau server tidak merespon",
"Could not post comment: %s": "Tidak dapat memposting komentar: %s", "Could not post comment: %s": "Tidak dapat memposting komentar: %s",
"Sending paste…": "Mengirim paste…", "Sending paste…": "Mengirim paste…",
"Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit [Ctrl]+[c] to copy)</span>": "Paste Anda adalah <a id=\"pasteurl\" href=\"%s\">%s</a><span id=\"copyhint\">(Tekan [Ctrl]+[c] untuk menyalin)</span>", "Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit <kbd>Ctrl</kbd>+<kbd>c</kbd> to copy)</span>": "Paste Anda adalah <a id=\"pasteurl\" href=\"%s\">%s</a><span id=\"copyhint\">(Tekan <kbd>Ctrl</kbd>+<kbd>c</kbd> untuk menyalin)</span>",
"Delete data": "Hapus data", "Delete data": "Hapus data",
"Could not create paste: %s": "Tidak dapat membuat paste: %s", "Could not create paste: %s": "Tidak dapat membuat paste: %s",
"Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)": "Tidak dapat mendekripsi paste: Kunci dekripsi tidak ada di URL (Apakah Anda menggunakan redirector atau penyingkat URL yang menghapus bagian dari URL?)", "Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)": "Tidak dapat mendekripsi paste: Kunci dekripsi tidak ada di URL (Apakah Anda menggunakan redirector atau penyingkat URL yang menghapus bagian dari URL?)",
@ -189,5 +214,18 @@
"Your IP is not authorized to create pastes.": "Your IP is not authorized to create pastes.", "Your IP is not authorized to create pastes.": "Your IP is not authorized to create pastes.",
"Trying to shorten a URL that isn't pointing at our instance.": "Trying to shorten a URL that isn't pointing at our instance.", "Trying to shorten a URL that isn't pointing at our instance.": "Trying to shorten a URL that isn't pointing at our instance.",
"Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".": "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".", "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".": "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".",
"Error parsing YOURLS response.": "Error parsing YOURLS response." "Error parsing YOURLS response.": "Error parsing YOURLS response.",
"This secret message can only be displayed once. Would you like to see it now?": "This secret message can only be displayed once. Would you like to see it now?",
"Yes, see it": "Yes, see it",
"Dark Mode": "Mode Gelap",
"Error compressing paste, due to missing WebAssembly support.": "Error compressing paste, due to missing WebAssembly support.",
"Error decompressing paste, your browser does not support WebAssembly. Please use another browser to view this paste.": "Error decompressing paste, your browser does not support WebAssembly. Please use another browser to view this paste.",
"Start over": "Start over",
"Paste copied to clipboard": "Paste copied to clipboard",
"To copy paste press on the copy button or use the clipboard shortcut <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>": "To copy paste press on the copy button or use the clipboard shortcut <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>",
"Copy link": "Copy link",
"Link copied to clipboard": "Link copied to clipboard",
"Paste text": "Paste text",
"Tabulator key serves as character (Hit <kbd>Ctrl</kbd>+<kbd>m</kbd> or <kbd>Esc</kbd> to toggle)": "Tabulator key serves as character (Hit <kbd>Ctrl</kbd>+<kbd>m</kbd> or <kbd>Esc</kbd> to toggle)",
"Theme": "Theme"
} }

View File

@ -3,7 +3,6 @@
"%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.": "%s è un sistema di tipo \"Pastebin\" online, open source, minimalista. Il server non possiede alcuna conoscenza (\"Zero Knowledge\") del contenuto dei dati inviati. I dati sono cifrati/decifrati %snel Browser%s con algoritmo AES a 256 Bit.", "%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.": "%s è un sistema di tipo \"Pastebin\" online, open source, minimalista. Il server non possiede alcuna conoscenza (\"Zero Knowledge\") del contenuto dei dati inviati. I dati sono cifrati/decifrati %snel Browser%s con algoritmo AES a 256 Bit.",
"More information on the <a href=\"https://privatebin.info/\">project page</a>.": "Per ulteriori informazioni, vedi <a href=\"https://privatebin.info/\">Sito del progetto</a>.", "More information on the <a href=\"https://privatebin.info/\">project page</a>.": "Per ulteriori informazioni, vedi <a href=\"https://privatebin.info/\">Sito del progetto</a>.",
"Because ignorance is bliss": "Perché l'ignoranza è una benedizione (Because ignorance is bliss)", "Because ignorance is bliss": "Perché l'ignoranza è una benedizione (Because ignorance is bliss)",
"en": "it",
"Paste does not exist, has expired or has been deleted.": "Questo messaggio non esiste, è scaduto o è stato cancellato.", "Paste does not exist, has expired or has been deleted.": "Questo messaggio non esiste, è scaduto o è stato cancellato.",
"%s requires php %s or above to work. Sorry.": "%s richiede php %s o superiore per funzionare. Ci spiace.", "%s requires php %s or above to work. Sorry.": "%s richiede php %s o superiore per funzionare. Ci spiace.",
"%s requires configuration section [%s] to be present in configuration file.": "%s richiede la presenza della sezione [%s] nei file di configurazione.", "%s requires configuration section [%s] to be present in configuration file.": "%s richiede la presenza della sezione [%s] nei file di configurazione.",
@ -11,6 +10,8 @@
"Attendi per favore un secondo prima di ciascun invio.", "Attendi per favore un secondo prima di ciascun invio.",
"Attendi per favore %d secondi prima di ciascun invio.", "Attendi per favore %d secondi prima di ciascun invio.",
"Attendi per favore %d secondi prima di ciascun invio.", "Attendi per favore %d secondi prima di ciascun invio.",
"Attendi per favore %d secondi prima di ciascun invio.",
"Attendi per favore %d secondi prima di ciascun invio.",
"Attendi per favore %d secondi prima di ciascun invio." "Attendi per favore %d secondi prima di ciascun invio."
], ],
"Paste is limited to %s of encrypted data.": "La dimensione del messaggio è limitata a %s di dati cifrati.", "Paste is limited to %s of encrypted data.": "La dimensione del messaggio è limitata a %s di dati cifrati.",
@ -25,7 +26,7 @@
"JavaScript is required for %s to work. Sorry for the inconvenience.": "%s funziona solo con JavaScript attivo. Ci dispiace per l'inconveniente.", "JavaScript is required for %s to work. Sorry for the inconvenience.": "%s funziona solo con JavaScript attivo. Ci dispiace per l'inconveniente.",
"%s requires a modern browser to work.": "%s richiede un browser moderno e aggiornato per funzionare.", "%s requires a modern browser to work.": "%s richiede un browser moderno e aggiornato per funzionare.",
"New": "Nuovo", "New": "Nuovo",
"Send": "Invia", "Create": "Crea",
"Clone": "Clona", "Clone": "Clona",
"Raw text": "Testo Raw", "Raw text": "Testo Raw",
"Expires": "Scade", "Expires": "Scade",
@ -37,44 +38,58 @@
"%d seconds": [ "%d seconds": [
"%d secondo", "%d secondo",
"%d secondi", "%d secondi",
"%d seconds (2nd plural)", "%d secondi",
"%d seconds (3rd plural)" "%d secondi",
"%d secondi",
"%d secondi"
], ],
"%d minutes": [ "%d minutes": [
"%d minuto", "%d minuto",
"%d minuti", "%d minuti",
"%d minutes (2nd plural)", "%d minuti",
"%d minutes (3rd plural)" "%d minuti",
"%d minuti",
"%d minuti"
], ],
"%d hours": [ "%d hours": [
"%d ora", "%d ora",
"%d ore", "%d ore",
"%d hours (2nd plural)", "%d ore",
"%d hours (3rd plural)" "%d ore",
"%d ore",
"%d ore"
], ],
"%d days": [ "%d days": [
"%d giorno", "%d giorno",
"%d giorni", "%d giorni",
"%d days (2nd plural)", "%d giorni",
"%d days (3rd plural)" "%d giorni",
"%d giorni",
"%d giorni"
], ],
"%d weeks": [ "%d weeks": [
"%d settimana", "%d settimana",
"%d settimane", "%d settimane",
"%d weeks (2nd plural)", "%d settimane",
"%d weeks (3rd plural)" "%d settimane",
"%d settimane",
"%d settimane"
], ],
"%d months": [ "%d months": [
"%d mese", "%d mese",
"%d mesi", "%d mesi",
"%d months (2nd plural)", "%d mesi",
"%d months (3rd plural)" "%d mesi",
"%d mesi",
"%d mesi"
], ],
"%d years": [ "%d years": [
"%d anno", "%d anno",
"%d anni", "%d anni",
"%d years (2nd plural)", "%d anni",
"%d years (3rd plural)" "%d anni",
"%d anni",
"%d anni"
], ],
"Never": "Mai", "Never": "Mai",
"Note: This is a test service: Data may be deleted anytime. Kittens will die if you abuse this service.": "Nota: questo è un servizio di prova, i messaggi salvati possono essere cancellati in qualsiasi momento. Moriranno dei gattini se abuserai di questo servizio.", "Note: This is a test service: Data may be deleted anytime. Kittens will die if you abuse this service.": "Nota: questo è un servizio di prova, i messaggi salvati possono essere cancellati in qualsiasi momento. Moriranno dei gattini se abuserai di questo servizio.",
@ -82,30 +97,40 @@
"Questo documento scadrà tra un secondo.", "Questo documento scadrà tra un secondo.",
"Questo documento scadrà in %d secondi.", "Questo documento scadrà in %d secondi.",
"Questo documento scadrà in %d secondi.", "Questo documento scadrà in %d secondi.",
"Questo documento scadrà in %d secondi.",
"Questo documento scadrà in %d secondi.",
"Questo documento scadrà in %d secondi." "Questo documento scadrà in %d secondi."
], ],
"This document will expire in %d minutes.": [ "This document will expire in %d minutes.": [
"Questo documento scadrà tra un minuto.", "Questo documento scadrà tra un minuto.",
"Questo documento scadrà in %d minuti.", "Questo documento scadrà in %d minuti.",
"Questo documento scadrà in %d minuti.", "Questo documento scadrà in %d minuti.",
"Questo documento scadrà in %d minuti.",
"Questo documento scadrà in %d minuti.",
"Questo documento scadrà in %d minuti." "Questo documento scadrà in %d minuti."
], ],
"This document will expire in %d hours.": [ "This document will expire in %d hours.": [
"Questo documento scadrà tra un'ora.", "Questo documento scadrà tra un'ora.",
"Questo documento scadrà in %d ore.", "Questo documento scadrà in %d ore.",
"Questo documento scadrà in %d ore.", "Questo documento scadrà in %d ore.",
"Questo documento scadrà in %d ore.",
"Questo documento scadrà in %d ore.",
"Questo documento scadrà in %d ore." "Questo documento scadrà in %d ore."
], ],
"This document will expire in %d days.": [ "This document will expire in %d days.": [
"Questo documento scadrà tra un giorno.", "Questo documento scadrà tra un giorno.",
"Questo documento scadrà in %d giorni.", "Questo documento scadrà in %d giorni.",
"Questo documento scadrà in %d giorni.", "Questo documento scadrà in %d giorni.",
"Questo documento scadrà in %d giorni.",
"Questo documento scadrà in %d giorni.",
"Questo documento scadrà in %d giorni." "Questo documento scadrà in %d giorni."
], ],
"This document will expire in %d months.": [ "This document will expire in %d months.": [
"Questo documento scadrà tra un mese.", "Questo documento scadrà tra un mese.",
"Questo documento scadrà in %d mesi.", "Questo documento scadrà in %d mesi.",
"Questo documento scadrà in %d mesi.", "Questo documento scadrà in %d mesi.",
"Questo documento scadrà in %d mesi.",
"Questo documento scadrà in %d mesi.",
"Questo documento scadrà in %d mesi." "Questo documento scadrà in %d mesi."
], ],
"Please enter the password for this paste:": "Inserisci la password per questo messaggio:", "Please enter the password for this paste:": "Inserisci la password per questo messaggio:",
@ -126,7 +151,7 @@
"server error or not responding": "errore o mancata risposta dal server", "server error or not responding": "errore o mancata risposta dal server",
"Could not post comment: %s": "Impossibile inviare il commento: %s", "Could not post comment: %s": "Impossibile inviare il commento: %s",
"Sending paste…": "Messaggio in fase di invio…", "Sending paste…": "Messaggio in fase di invio…",
"Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit [Ctrl]+[c] to copy)</span>": "Il tuo messaggio è qui: <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Premi [Ctrl]+[c] (Windows) o [Cmd]+[c] (Mac) per copiare il link)</span>", "Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit <kbd>Ctrl</kbd>+<kbd>c</kbd> to copy)</span>": "Il tuo messaggio è qui: <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Premi <kbd>Ctrl</kbd>+<kbd>c</kbd> (Windows) o [Cmd]+[c] (Mac) per copiare il link)</span>",
"Delete data": "Cancella i dati", "Delete data": "Cancella i dati",
"Could not create paste: %s": "Non riesco a creare il messaggio: %s", "Could not create paste: %s": "Non riesco a creare il messaggio: %s",
"Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)": "Non riesco a decifrare il messaggio: manca la chiave di decifrazione nell'URL (La chiave è parte integrante dell'URL. Per caso hai usato un Redirector o un altro servizio che ha rimosso una parte dell'URL?)", "Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)": "Non riesco a decifrare il messaggio: manca la chiave di decifrazione nell'URL (La chiave è parte integrante dell'URL. Per caso hai usato un Redirector o un altro servizio che ha rimosso una parte dell'URL?)",
@ -189,5 +214,18 @@
"Your IP is not authorized to create pastes.": "Il tuo IP non è autorizzato a creare dei messaggi.", "Your IP is not authorized to create pastes.": "Il tuo IP non è autorizzato a creare dei messaggi.",
"Trying to shorten a URL that isn't pointing at our instance.": "Tantativo in corso di accorciare un URL che non punta alla nostra istanza.", "Trying to shorten a URL that isn't pointing at our instance.": "Tantativo in corso di accorciare un URL che non punta alla nostra istanza.",
"Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".": "Errore nella chiamata a YOURLS. Probabilmente un problema di configurazione, come un \"apiurl\" o una \"signature\" sbagliati o mancanti.", "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".": "Errore nella chiamata a YOURLS. Probabilmente un problema di configurazione, come un \"apiurl\" o una \"signature\" sbagliati o mancanti.",
"Error parsing YOURLS response.": "Errore nell'analizzare la risposta YOURLS." "Error parsing YOURLS response.": "Errore nell'analizzare la risposta YOURLS.",
"This secret message can only be displayed once. Would you like to see it now?": "Questo messaggio di tipo Distruggi-dopo-lettura può essere visualizzato solo una volta. Vuoi vederlo ora?",
"Yes, see it": "Sì, visualizzalo",
"Dark Mode": "Tema Scuro",
"Error compressing paste, due to missing WebAssembly support.": "Errore nella compressione dell messaggio, a causa del supporto WebAssembly mancante.",
"Error decompressing paste, your browser does not support WebAssembly. Please use another browser to view this paste.": "Errore nella decompressione dell messaggio, il tuo browser non supporta WebAssembly. Utilizza un altro browser per visualizzare questo messaggio.",
"Start over": "Ricominciare",
"Paste copied to clipboard": "Messaggio copiato",
"To copy paste press on the copy button or use the clipboard shortcut <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>": "To copy paste press on the copy button or use the clipboard shortcut <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>",
"Copy link": "Copia il link",
"Link copied to clipboard": "Link copied to clipboard",
"Paste text": "Testo del messaggio",
"Tabulator key serves as character (Hit <kbd>Ctrl</kbd>+<kbd>m</kbd> or <kbd>Esc</kbd> to toggle)": "Tabulator key serves as character (Hit <kbd>Ctrl</kbd>+<kbd>m</kbd> or <kbd>Esc</kbd> to toggle)",
"Theme": "Theme"
} }

View File

@ -1,135 +1,160 @@
{ {
"PrivateBin": "PrivateBin", "PrivateBin": "PrivateBin",
"%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.": "%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.", "%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.": "%s はミニマリストで、オープンソースのオンラインデータ貼り付けサービスです。サーバーに、貼り付けられたデータの中身を読み取ることはできません。データは、256ビットのAESを用いて%sブラウザー上で%s暗号化、または復号化されます。",
"More information on the <a href=\"https://privatebin.info/\">project page</a>.": "More information on the <a href=\"https://privatebin.info/\">project page</a>.", "More information on the <a href=\"https://privatebin.info/\">project page</a>.": "詳細については<a href=\"https://privatebin.info/\">プロジェクトのページ</a>をご覧ください。",
"Because ignorance is bliss": "Because ignorance is bliss", "Because ignorance is bliss": "知らぬが仏",
"en": "ja", "Paste does not exist, has expired or has been deleted.": "ペーストが存在しないか、期限切れ、または削除されました。",
"Paste does not exist, has expired or has been deleted.": "Paste does not exist, has expired or has been deleted.", "%s requires php %s or above to work. Sorry.": "%s の動作には php %s 以上が必要です。申し訳ありません。",
"%s requires php %s or above to work. Sorry.": "%s requires php %s or above to work. Sorry.", "%s requires configuration section [%s] to be present in configuration file.": "%sには設定ファイルに[%s]の設定セクションが必要です。",
"%s requires configuration section [%s] to be present in configuration file.": "%s requires configuration section [%s] to be present in configuration file.",
"Please wait %d seconds between each post.": [ "Please wait %d seconds between each post.": [
"Please wait %d second between each post. (singular)", "投稿ごとに%d秒間お待ちください。",
"Please wait %d seconds between each post. (1st plural)", "投稿ごとに%d秒間お待ちください。",
"Please wait %d seconds between each post. (2nd plural)", "投稿ごとに%d秒間お待ちください。",
"Please wait %d seconds between each post. (3rd plural)" "投稿ごとに%d秒間お待ちください。",
"投稿ごとに%d秒間お待ちください。",
"投稿ごとに%d秒間お待ちください。"
], ],
"Paste is limited to %s of encrypted data.": "Paste is limited to %s of encrypted data.", "Paste is limited to %s of encrypted data.": "ペーストは暗号化されたデータの%sに制限されています。",
"Invalid data.": "Invalid data.", "Invalid data.": "無効なデータです。",
"You are unlucky. Try again.": "You are unlucky. Try again.", "You are unlucky. Try again.": "何か問題が発生しました。もう一度やり直してください。",
"Error saving comment. Sorry.": "Error saving comment. Sorry.", "Error saving comment. Sorry.": "コメントの保存中にエラーが発生しました。申し訳ありません。",
"Error saving paste. Sorry.": "Error saving paste. Sorry.", "Error saving paste. Sorry.": "ペーストの保存中にエラーが発生しました。申し訳ありません。",
"Invalid paste ID.": "Invalid paste ID.", "Invalid paste ID.": "無効なペーストIDです。",
"Paste is not of burn-after-reading type.": "Paste is not of burn-after-reading type.", "Paste is not of burn-after-reading type.": "ペーストは、読み込んだ後に消去される種類のものではありません。",
"Wrong deletion token. Paste was not deleted.": "Wrong deletion token. Paste was not deleted.", "Wrong deletion token. Paste was not deleted.": "不正な削除トークンです。ペーストは削除されませんでした。",
"Paste was properly deleted.": "Paste was properly deleted.", "Paste was properly deleted.": "ペーストが正しく削除されました。",
"JavaScript is required for %s to work. Sorry for the inconvenience.": "JavaScript is required for %s to work. Sorry for the inconvenience.", "JavaScript is required for %s to work. Sorry for the inconvenience.": "%s の動作にはJavaScriptが必要です。ご迷惑をおかけして申し訳ありません。",
"%s requires a modern browser to work.": "%s requires a modern browser to work.", "%s requires a modern browser to work.": "%s の動作には最近のブラウザが必要です。",
"New": "New", "New": "新規",
"Send": "Send", "Create": "作成",
"Clone": "Clone", "Clone": "複製",
"Raw text": "Raw text", "Raw text": "未加工テキスト",
"Expires": "Expires", "Expires": "有効期限",
"Burn after reading": "Burn after reading", "Burn after reading": "読み込んだ後に消去",
"Open discussion": "Open discussion", "Open discussion": "ディスカッションを開く",
"Password (recommended)": "Password (recommended)", "Password (recommended)": "パスワード(推奨)",
"Discussion": "Discussion", "Discussion": "ディスカッション",
"Toggle navigation": "Toggle navigation", "Toggle navigation": "ナビゲーションを切り替え",
"%d seconds": [ "%d seconds": [
"%d second (singular)", "%d秒",
"%d seconds (1st plural)", "%d秒",
"%d seconds (2nd plural)", "%d秒",
"%d seconds (3rd plural)" "%d秒",
"%d秒",
"%d秒"
], ],
"%d minutes": [ "%d minutes": [
"%d minute (singular)", "%d分",
"%d minutes (1st plural)", "%d分",
"%d minutes (2nd plural)", "%d分",
"%d minutes (3rd plural)" "%d分",
"%d分",
"%d分"
], ],
"%d hours": [ "%d hours": [
"%d hour (singular)", "%d時間",
"%d hours (1st plural)", "%d時間",
"%d hours (2nd plural)", "%d時間",
"%d hours (3rd plural)" "%d時間",
"%d時間",
"%d 時間"
], ],
"%d days": [ "%d days": [
"%d day (singular)", "%d 日",
"%d days (1st plural)", "%d 日",
"%d days (2nd plural)", "%d 日",
"%d days (3rd plural)" "%d 日",
"%d 日",
"%d 日"
], ],
"%d weeks": [ "%d weeks": [
"%d week (singular)", "%d週間",
"%d weeks (1st plural)", "%d週間",
"%d weeks (2nd plural)", "%d週間",
"%d weeks (3rd plural)" "%d週間",
"%d週間",
"%d週間"
], ],
"%d months": [ "%d months": [
"%d month (singular)", "%dか月",
"%d months (1st plural)", "%dか月",
"%d months (2nd plural)", "%dか月",
"%d months (3rd plural)" "%dか月",
"%dか月",
"%dか月"
], ],
"%d years": [ "%d years": [
"%d year (singular)", "%d年",
"%d years (1st plural)", "%d年",
"%d years (2nd plural)", "%d年",
"%d years (3rd plural)" "%d年",
"%d年",
"%d年"
], ],
"Never": "Never", "Never": "無期限",
"Note: This is a test service: Data may be deleted anytime. Kittens will die if you abuse this service.": "Note: This is a test service: Data may be deleted anytime. Kittens will die if you abuse this service.", "Note: This is a test service: Data may be deleted anytime. Kittens will die if you abuse this service.": "注意これはテストサービスです。データはいつでも削除される可能性があります。このサービスを悪用するとKittensの動作は停止します。",
"This document will expire in %d seconds.": [ "This document will expire in %d seconds.": [
"This document will expire in %d second. (singular)", "このドキュメントは%d秒後に失効します。",
"This document will expire in %d seconds. (1st plural)", "このドキュメントは%d秒後に失効します。",
"This document will expire in %d seconds. (2nd plural)", "このドキュメントは%d秒後に失効します。",
"This document will expire in %d seconds. (3rd plural)" "このドキュメントは%d秒後に失効します。",
"このドキュメントは%d秒後に失効します。",
"このドキュメントは%d秒後に失効します。"
], ],
"This document will expire in %d minutes.": [ "This document will expire in %d minutes.": [
"This document will expire in %d minute. (singular)", "このドキュメントは%d分後に失効します。",
"This document will expire in %d minutes. (1st plural)", "このドキュメントは%d分後に失効します。",
"This document will expire in %d minutes. (2nd plural)", "このドキュメントは%d分後に失効します。",
"This document will expire in %d minutes. (3rd plural)" "このドキュメントは%d分後に失効します。",
"このドキュメントは%d分後に失効します。",
"このドキュメントは%d分後に失効します。"
], ],
"This document will expire in %d hours.": [ "This document will expire in %d hours.": [
"This document will expire in %d hour. (singular)", "このドキュメントは%d時間後に失効します。",
"This document will expire in %d hours. (1st plural)", "このドキュメントは%d時間後に失効します。",
"This document will expire in %d hours. (2nd plural)", "このドキュメントは%d時間後に失効します。",
"This document will expire in %d hours. (3rd plural)" "このドキュメントは%d時間後に失効します。",
"このドキュメントは%d時間後に失効します。",
"このドキュメントは%d時間後に失効します。"
], ],
"This document will expire in %d days.": [ "This document will expire in %d days.": [
"This document will expire in %d day. (singular)", "このドキュメントは%d日後に失効します。",
"This document will expire in %d days. (1st plural)", "このドキュメントは%d日後に失効します。",
"This document will expire in %d days. (2nd plural)", "このドキュメントは%d日後に失効します。",
"This document will expire in %d days. (3rd plural)" "このドキュメントは%d日後に失効します。",
"このドキュメントは%d日後に失効します。",
"このドキュメントは%d日後に失効します。"
], ],
"This document will expire in %d months.": [ "This document will expire in %d months.": [
"This document will expire in %d month. (singular)", "このドキュメントは%dか月後に失効します。",
"This document will expire in %d months. (1st plural)", "このドキュメントは%dか月後に失効します。",
"This document will expire in %d months. (2nd plural)", "このドキュメントは%dか月後に失効します。",
"This document will expire in %d months. (3rd plural)" "このドキュメントは%dか月後に失効します。",
"このドキュメントは%dか月後に失効します。",
"このドキュメントは%dか月後に失効します。"
], ],
"Please enter the password for this paste:": "Please enter the password for this paste:", "Please enter the password for this paste:": "このペーストのパスワードを入力してください。",
"Could not decrypt data (Wrong key?)": "Could not decrypt data (Wrong key?)", "Could not decrypt data (Wrong key?)": "データを復号することができませんでした(間違った鍵ですか?)",
"Could not delete the paste, it was not stored in burn after reading mode.": "Could not delete the paste, it was not stored in burn after reading mode.", "Could not delete the paste, it was not stored in burn after reading mode.": "ペーストを削除できませんでした。このペーストは、読み込んだ後に消去するモードでは保存されませんでした。",
"FOR YOUR EYES ONLY. Don't close this window, this message can't be displayed again.": "FOR YOUR EYES ONLY. Don't close this window, this message can't be displayed again.", "FOR YOUR EYES ONLY. Don't close this window, this message can't be displayed again.": "このウィンドウを閉じないでください。このメッセージはもう表示できません。",
"Could not decrypt comment; Wrong key?": "Could not decrypt comment; Wrong key?", "Could not decrypt comment; Wrong key?": "コメントを復号することができませんでした。間違った鍵ですか?",
"Reply": "Reply", "Reply": "返信",
"Anonymous": "Anonymous", "Anonymous": "匿名",
"Avatar generated from IP address": "Avatar generated from IP address", "Avatar generated from IP address": "IPアドレスから生成したアバター",
"Add comment": "Add comment", "Add comment": "コメントを追加",
"Optional nickname…": "Optional nickname…", "Optional nickname…": "任意のニックネーム…",
"Post comment": "Post comment", "Post comment": "コメントを投稿",
"Sending comment…": "Sending comment…", "Sending comment…": "コメントを送信しています…",
"Comment posted.": "Comment posted.", "Comment posted.": "コメントを投稿しました。",
"Could not refresh display: %s": "Could not refresh display: %s", "Could not refresh display: %s": "表示を更新できませんでした:%s",
"unknown status": "unknown status", "unknown status": "不明な状態",
"server error or not responding": "server error or not responding", "server error or not responding": "サーバーエラーまたは応答しません",
"Could not post comment: %s": "Could not post comment: %s", "Could not post comment: %s": "コメントを投稿できませんでした:%s",
"Sending paste…": "Sending paste…", "Sending paste…": "ペーストを送信しています…",
"Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit [Ctrl]+[c] to copy)</span>": "Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit [Ctrl]+[c] to copy)</span>", "Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit <kbd>Ctrl</kbd>+<kbd>c</kbd> to copy)</span>": "ペーストは<a id=\"pasteurl\" href=\"%s\">%s</a>です<span id=\"copyhint\">(コピーするには<kbd>Ctrl</kbd>+<kbd>c</kbd>を押してください)</span>",
"Delete data": "Delete data", "Delete data": "データを削除",
"Could not create paste: %s": "Could not create paste: %s", "Could not create paste: %s": "ペーストを作成できませんでした:%s",
"Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)": "Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)", "Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)": "ペーストを復号化できません復号化キーがURLにありませんURLの一部を削除するリダイレクト機能またはURLの短縮アプリケーションを使いましたか",
"B": "B", "B": "B",
"KiB": "KiB", "KiB": "KiB",
"MiB": "MiB", "MiB": "MiB",
@ -139,55 +164,68 @@
"EiB": "EiB", "EiB": "EiB",
"ZiB": "ZiB", "ZiB": "ZiB",
"YiB": "YiB", "YiB": "YiB",
"Format": "Format", "Format": "形式",
"Plain Text": "Plain Text", "Plain Text": "プレーンテキスト",
"Source Code": "Source Code", "Source Code": "ソースコード",
"Markdown": "Markdown", "Markdown": "Markdown",
"Download attachment": "Download attachment", "Download attachment": "添付ファイルをダウンロード",
"Cloned: '%s'": "Cloned: '%s'", "Cloned: '%s'": "複製済:'%s'",
"The cloned file '%s' was attached to this paste.": "The cloned file '%s' was attached to this paste.", "The cloned file '%s' was attached to this paste.": "複製されたファイル '%s' がこのペーストに添付されました。",
"Attach a file": "Attach a file", "Attach a file": "ファイルを添付",
"alternatively drag & drop a file or paste an image from the clipboard": "alternatively drag & drop a file or paste an image from the clipboard", "alternatively drag & drop a file or paste an image from the clipboard": "代わりに、ファイルをドラッグ&ドロップまたはクリップボードから画像を貼り付け",
"File too large, to display a preview. Please download the attachment.": "File too large, to display a preview. Please download the attachment.", "File too large, to display a preview. Please download the attachment.": "ファイルが大きすぎるため、プレビューを表示できません。ダウンロードしてください。",
"Remove attachment": "Remove attachment", "Remove attachment": "添付ファイルを削除",
"Your browser does not support uploading encrypted files. Please use a newer browser.": "Your browser does not support uploading encrypted files. Please use a newer browser.", "Your browser does not support uploading encrypted files. Please use a newer browser.": "お使いのブラウザーは暗号化されたファイルのアップロードをサポートしていません。新しいブラウザーを使用してください。",
"Invalid attachment.": "Invalid attachment.", "Invalid attachment.": "不正な添付ファイルです。",
"Options": "Options", "Options": "設定",
"Shorten URL": "Shorten URL", "Shorten URL": "URLを短縮",
"Editor": "Editor", "Editor": "エディター",
"Preview": "Preview", "Preview": "プレビュー",
"%s requires the PATH to end in a \"%s\". Please update the PATH in your index.php.": "%s requires the PATH to end in a \"%s\". Please update the PATH in your index.php.", "%s requires the PATH to end in a \"%s\". Please update the PATH in your index.php.": "%s は「%s」で終わるPATHが必要です。index.phpのPATHを更新してください。",
"Decrypt": "Decrypt", "Decrypt": "復号化",
"Enter password": "Enter password", "Enter password": "パスワードを入力",
"Loading…": "Loading…", "Loading…": "読み込んでいます…",
"Decrypting paste…": "Decrypting paste…", "Decrypting paste…": "ペーストを復号化しています…",
"Preparing new paste…": "Preparing new paste…", "Preparing new paste…": "新しいペーストを準備しています…",
"In case this message never disappears please have a look at <a href=\"%s\">this FAQ for information to troubleshoot</a>.": "In case this message never disappears please have a look at <a href=\"%s\">this FAQ for information to troubleshoot</a>.", "In case this message never disappears please have a look at <a href=\"%s\">this FAQ for information to troubleshoot</a>.": "このメッセージが消去されない場合、<a href=\"%s\">トラブルシュート用のFAQ</a>をご確認ください。",
"+++ no paste text +++": "+++ no paste text +++", "+++ no paste text +++": "+++ ペーストのテキストはありません +++",
"Could not get paste data: %s": "Could not get paste data: %s", "Could not get paste data: %s": "ペーストのデータを取得できませんでした:%s",
"QR code": "QR code", "QR code": "QRコード",
"This website is using an insecure HTTP connection! Please use it only for testing.": "This website is using an insecure HTTP connection! Please use it only for testing.", "This website is using an insecure HTTP connection! Please use it only for testing.": "このウェブサイトは安全でない HTTP 接続を使用しています!テストにのみ使用してください。",
"For more information <a href=\"%s\">see this FAQ entry</a>.": "For more information <a href=\"%s\">see this FAQ entry</a>.", "For more information <a href=\"%s\">see this FAQ entry</a>.": "詳細については、<a href=\"%s\">こちらのFAQエントリー</a>をご覧ください。",
"Your browser may require an HTTPS connection to support the WebCrypto API. Try <a href=\"%s\">switching to HTTPS</a>.": "Your browser may require an HTTPS connection to support the WebCrypto API. Try <a href=\"%s\">switching to HTTPS</a>.", "Your browser may require an HTTPS connection to support the WebCrypto API. Try <a href=\"%s\">switching to HTTPS</a>.": "お使いのブラウザーはWebCrypto APIのサポートにHTTPS接続を必要とするかもしれません。<a href=\"%s\">HTTPS接続に切り替えてみてください</a>。",
"Your browser doesn't support WebAssembly, used for zlib compression. You can create uncompressed documents, but can't read compressed ones.": "Your browser doesn't support WebAssembly, used for zlib compression. You can create uncompressed documents, but can't read compressed ones.", "Your browser doesn't support WebAssembly, used for zlib compression. You can create uncompressed documents, but can't read compressed ones.": "お使いのブラウザーはzlib圧縮に必要なWebAssemblyをサポートしていません。圧縮されていないドキュメントを作成することはできますが、圧縮されたドキュメントを読み込むことはできません。",
"waiting on user to provide a password": "waiting on user to provide a password", "waiting on user to provide a password": "ユーザーがパスワードを入力するのを待機しています",
"Could not decrypt data. Did you enter a wrong password? Retry with the button at the top.": "Could not decrypt data. Did you enter a wrong password? Retry with the button at the top.", "Could not decrypt data. Did you enter a wrong password? Retry with the button at the top.": "データを復号できませんでした。パスワードが間違っていましたか? 上部のボタンで再試行してください。",
"Retry": "Retry", "Retry": "再試行",
"Showing raw text…": "Showing raw text…", "Showing raw text…": "未加工テキストを表示しています…",
"Notice:": "Notice:", "Notice:": "注意:",
"This link will expire after %s.": "This link will expire after %s.", "This link will expire after %s.": "このリンクは%s後に期限切れになります。",
"This link can only be accessed once, do not use back or refresh button in your browser.": "This link can only be accessed once, do not use back or refresh button in your browser.", "This link can only be accessed once, do not use back or refresh button in your browser.": "このリンクは一度だけアクセスできます。ブラウザで戻ったり更新したりしないでください。",
"Link:": "Link:", "Link:": "リンク:",
"Recipient may become aware of your timezone, convert time to UTC?": "Recipient may become aware of your timezone, convert time to UTC?", "Recipient may become aware of your timezone, convert time to UTC?": "受信する人はあなたのタイムゾーンに気づくかもしれません。時間をUTCに変換しますか",
"Use Current Timezone": "Use Current Timezone", "Use Current Timezone": "現在のタイムゾーンを使用",
"Convert To UTC": "Convert To UTC", "Convert To UTC": "UTCに変換",
"Close": "Close", "Close": "閉じる",
"Encrypted note on %s": "Encrypted note on %s", "Encrypted note on %s": "%sの暗号化されたメモ",
"Visit this link to see the note. Giving the URL to anyone allows them to access the note, too.": "Visit this link to see the note. Giving the URL to anyone allows them to access the note, too.", "Visit this link to see the note. Giving the URL to anyone allows them to access the note, too.": "メモを見るには、このリンクを参照してください。誰でもURLからこのメモにアクセスできます。",
"URL shortener may expose your decrypt key in URL.": "URL shortener may expose your decrypt key in URL.", "URL shortener may expose your decrypt key in URL.": "URLの短縮アプリケーションを使うと、復号用のキーが漏洩するおそれがあります。",
"Save paste": "Save paste", "Save paste": "ペーストを保存",
"Your IP is not authorized to create pastes.": "Your IP is not authorized to create pastes.", "Your IP is not authorized to create pastes.": "あなたのIPアドレスにはペーストを作成する権限がありません。",
"Trying to shorten a URL that isn't pointing at our instance.": "Trying to shorten a URL that isn't pointing at our instance.", "Trying to shorten a URL that isn't pointing at our instance.": "このインスタンスを指していないURLを短縮しようとしています。",
"Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".": "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".", "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".": "YOURLSの呼び出し中にエラーが発生しました。\"apiurl\"または\"signature\"等の設定に問題がある可能性があります。",
"Error parsing YOURLS response.": "Error parsing YOURLS response." "Error parsing YOURLS response.": "YOURLSレスポンスの解析中にエラーが発生しました。",
"This secret message can only be displayed once. Would you like to see it now?": "This secret message can only be displayed once. Would you like to see it now?",
"Yes, see it": "はい、使用します",
"Dark Mode": "ダークモード",
"Error compressing paste, due to missing WebAssembly support.": "Error compressing paste, due to missing WebAssembly support.",
"Error decompressing paste, your browser does not support WebAssembly. Please use another browser to view this paste.": "Error decompressing paste, your browser does not support WebAssembly. Please use another browser to view this paste.",
"Start over": "Start over",
"Paste copied to clipboard": "Paste copied to clipboard",
"To copy paste press on the copy button or use the clipboard shortcut <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>": "To copy paste press on the copy button or use the clipboard shortcut <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>",
"Copy link": "Copy link",
"Link copied to clipboard": "Link copied to clipboard",
"Paste text": "Paste text",
"Tabulator key serves as character (Hit <kbd>Ctrl</kbd>+<kbd>m</kbd> or <kbd>Esc</kbd> to toggle)": "Tabulator key serves as character (Hit <kbd>Ctrl</kbd>+<kbd>m</kbd> or <kbd>Esc</kbd> to toggle)",
"Theme": "Theme"
} }

View File

@ -3,7 +3,6 @@
"%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.": ".i la %s mupli lo sorcu lo'e se setca kibro .i ji'a zo'e se zancari gi'e fingubni .i lo samse'u na djuno lo datni selru'e cu .i ba'e %sle brauzero%s ku mipri le do datni ku fi la'oi AES poi bitni li 256", "%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.": ".i la %s mupli lo sorcu lo'e se setca kibro .i ji'a zo'e se zancari gi'e fingubni .i lo samse'u na djuno lo datni selru'e cu .i ba'e %sle brauzero%s ku mipri le do datni ku fi la'oi AES poi bitni li 256",
"More information on the <a href=\"https://privatebin.info/\">project page</a>.": "More information on the <a href=\"https://privatebin.info/\">project page</a>.", "More information on the <a href=\"https://privatebin.info/\">project page</a>.": "More information on the <a href=\"https://privatebin.info/\">project page</a>.",
"Because ignorance is bliss": ".i ki'u le ka na djuno cu ka saxfri", "Because ignorance is bliss": ".i ki'u le ka na djuno cu ka saxfri",
"en": "jbo",
"Paste does not exist, has expired or has been deleted.": "Paste does not exist, has expired or has been deleted.", "Paste does not exist, has expired or has been deleted.": "Paste does not exist, has expired or has been deleted.",
"%s requires php %s or above to work. Sorry.": "%s requires php %s or above to work. Sorry.", "%s requires php %s or above to work. Sorry.": "%s requires php %s or above to work. Sorry.",
"%s requires configuration section [%s] to be present in configuration file.": "%s requires configuration section [%s] to be present in configuration file.", "%s requires configuration section [%s] to be present in configuration file.": "%s requires configuration section [%s] to be present in configuration file.",
@ -11,7 +10,9 @@
"Please wait %d second between each post. (singular)", "Please wait %d second between each post. (singular)",
"Please wait %d seconds between each post. (1st plural)", "Please wait %d seconds between each post. (1st plural)",
"Please wait %d seconds between each post. (2nd plural)", "Please wait %d seconds between each post. (2nd plural)",
"Please wait %d seconds between each post. (3rd plural)" "Please wait %d seconds between each post. (3rd plural)",
"Please wait %d seconds between each post. (4th plural)",
"Please wait %d seconds between each post. (5th plural)"
], ],
"Paste is limited to %s of encrypted data.": "Paste is limited to %s of encrypted data.", "Paste is limited to %s of encrypted data.": "Paste is limited to %s of encrypted data.",
"Invalid data.": ".i le selru'e cu na drani", "Invalid data.": ".i le selru'e cu na drani",
@ -25,7 +26,7 @@
"JavaScript is required for %s to work. Sorry for the inconvenience.": "JavaScript is required for %s to work. Sorry for the inconvenience.", "JavaScript is required for %s to work. Sorry for the inconvenience.": "JavaScript is required for %s to work. Sorry for the inconvenience.",
"%s requires a modern browser to work.": "%s requires a modern browser to work.", "%s requires a modern browser to work.": "%s requires a modern browser to work.",
"New": "cnino", "New": "cnino",
"Send": "benji", "Create": "benji",
"Clone": "fukpi", "Clone": "fukpi",
"Raw text": "vlapoi nalselrucyzu'e", "Raw text": "vlapoi nalselrucyzu'e",
"Expires": "vimcu", "Expires": "vimcu",
@ -38,43 +39,57 @@
"%d second (singular)", "%d second (singular)",
"%d seconds (1st plural)", "%d seconds (1st plural)",
"%d seconds (2nd plural)", "%d seconds (2nd plural)",
"%d seconds (3rd plural)" "%d seconds (3rd plural)",
"%d seconds (4th plural)",
"%d seconds (5th plural)"
], ],
"%d minutes": [ "%d minutes": [
"%d minute (singular)", "%d minute (singular)",
"%d minutes (1st plural)", "%d minutes (1st plural)",
"%d minutes (2nd plural)", "%d minutes (2nd plural)",
"%d minutes (3rd plural)" "%d minutes (3rd plural)",
"%d minutes (4th plural)",
"%d minutes (5th plural)"
], ],
"%d hours": [ "%d hours": [
"%d hour (singular)", "%d hour (singular)",
"%d hours (1st plural)", "%d hours (1st plural)",
"%d hours (2nd plural)", "%d hours (2nd plural)",
"%d hours (3rd plural)" "%d hours (3rd plural)",
"%d hours (4th plural)",
"%d hours (5th plural)"
], ],
"%d days": [ "%d days": [
"%d day (singular)", "%d day (singular)",
"%d days (1st plural)", "%d days (1st plural)",
"%d days (2nd plural)", "%d days (2nd plural)",
"%d days (3rd plural)" "%d days (3rd plural)",
"%d days (4th plural)",
"%d days (5th plural)"
], ],
"%d weeks": [ "%d weeks": [
"%d week (singular)", "%d week (singular)",
"%d weeks (1st plural)", "%d weeks (1st plural)",
"%d weeks (2nd plural)", "%d weeks (2nd plural)",
"%d weeks (3rd plural)" "%d weeks (3rd plural)",
"%d weeks (4th plural)",
"%d weeks (5th plural)"
], ],
"%d months": [ "%d months": [
"%d month (singular)", "%d month (singular)",
"%d months (1st plural)", "%d months (1st plural)",
"%d months (2nd plural)", "%d months (2nd plural)",
"%d months (3rd plural)" "%d months (3rd plural)",
"%d months (4th plural)",
"%d months (5th plural)"
], ],
"%d years": [ "%d years": [
"%d year (singular)", "%d year (singular)",
"%d years (1st plural)", "%d years (1st plural)",
"%d years (2nd plural)", "%d years (2nd plural)",
"%d years (3rd plural)" "%d years (3rd plural)",
"%d years (4th plural)",
"%d years (5th plural)"
], ],
"Never": "Never", "Never": "Never",
"Note: This is a test service: Data may be deleted anytime. Kittens will die if you abuse this service.": "Note: This is a test service: Data may be deleted anytime. Kittens will die if you abuse this service.", "Note: This is a test service: Data may be deleted anytime. Kittens will die if you abuse this service.": "Note: This is a test service: Data may be deleted anytime. Kittens will die if you abuse this service.",
@ -82,31 +97,41 @@
"This document will expire in %d second. (singular)", "This document will expire in %d second. (singular)",
"This document will expire in %d seconds. (1st plural)", "This document will expire in %d seconds. (1st plural)",
"This document will expire in %d seconds. (2nd plural)", "This document will expire in %d seconds. (2nd plural)",
"This document will expire in %d seconds. (3rd plural)" "This document will expire in %d seconds. (3rd plural)",
"This document will expire in %d seconds. (4th plural)",
"This document will expire in %d seconds. (5th plural)"
], ],
"This document will expire in %d minutes.": [ "This document will expire in %d minutes.": [
"This document will expire in %d minute. (singular)", "This document will expire in %d minute. (singular)",
"This document will expire in %d minutes. (1st plural)", "This document will expire in %d minutes. (1st plural)",
"This document will expire in %d minutes. (2nd plural)", "This document will expire in %d minutes. (2nd plural)",
"This document will expire in %d minutes. (3rd plural)" "This document will expire in %d minutes. (3rd plural)",
"This document will expire in %d minutes. (4th plural)",
"This document will expire in %d minutes. (5th plural)"
], ],
"This document will expire in %d hours.": [ "This document will expire in %d hours.": [
"This document will expire in %d hour. (singular)", "This document will expire in %d hour. (singular)",
"This document will expire in %d hours. (1st plural)", "This document will expire in %d hours. (1st plural)",
"This document will expire in %d hours. (2nd plural)", "This document will expire in %d hours. (2nd plural)",
"This document will expire in %d hours. (3rd plural)" "This document will expire in %d hours. (3rd plural)",
"This document will expire in %d hours. (4th plural)",
"This document will expire in %d hours. (5th plural)"
], ],
"This document will expire in %d days.": [ "This document will expire in %d days.": [
"This document will expire in %d day. (singular)", "This document will expire in %d day. (singular)",
"This document will expire in %d days. (1st plural)", "This document will expire in %d days. (1st plural)",
"This document will expire in %d days. (2nd plural)", "This document will expire in %d days. (2nd plural)",
"This document will expire in %d days. (3rd plural)" "This document will expire in %d days. (3rd plural)",
"This document will expire in %d days. (4th plural)",
"This document will expire in %d days. (5th plural)"
], ],
"This document will expire in %d months.": [ "This document will expire in %d months.": [
"This document will expire in %d month. (singular)", "This document will expire in %d month. (singular)",
"This document will expire in %d months. (1st plural)", "This document will expire in %d months. (1st plural)",
"This document will expire in %d months. (2nd plural)", "This document will expire in %d months. (2nd plural)",
"This document will expire in %d months. (3rd plural)" "This document will expire in %d months. (3rd plural)",
"This document will expire in %d months. (4th plural)",
"This document will expire in %d months. (5th plural)"
], ],
"Please enter the password for this paste:": "Please enter the password for this paste:", "Please enter the password for this paste:": "Please enter the password for this paste:",
"Could not decrypt data (Wrong key?)": "Could not decrypt data (Wrong key?)", "Could not decrypt data (Wrong key?)": "Could not decrypt data (Wrong key?)",
@ -126,7 +151,7 @@
"server error or not responding": "server error or not responding", "server error or not responding": "server error or not responding",
"Could not post comment: %s": "Could not post comment: %s", "Could not post comment: %s": "Could not post comment: %s",
"Sending paste…": "Sending paste…", "Sending paste…": "Sending paste…",
"Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit [Ctrl]+[c] to copy)</span>": "Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit [Ctrl]+[c] to copy)</span>", "Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit <kbd>Ctrl</kbd>+<kbd>c</kbd> to copy)</span>": "Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit <kbd>Ctrl</kbd>+<kbd>c</kbd> to copy)</span>",
"Delete data": "Delete data", "Delete data": "Delete data",
"Could not create paste: %s": "Could not create paste: %s", "Could not create paste: %s": "Could not create paste: %s",
"Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)": "Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)", "Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)": "Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)",
@ -189,5 +214,18 @@
"Your IP is not authorized to create pastes.": "Your IP is not authorized to create pastes.", "Your IP is not authorized to create pastes.": "Your IP is not authorized to create pastes.",
"Trying to shorten a URL that isn't pointing at our instance.": "Trying to shorten a URL that isn't pointing at our instance.", "Trying to shorten a URL that isn't pointing at our instance.": "Trying to shorten a URL that isn't pointing at our instance.",
"Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".": "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".", "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".": "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".",
"Error parsing YOURLS response.": "Error parsing YOURLS response." "Error parsing YOURLS response.": "Error parsing YOURLS response.",
"This secret message can only be displayed once. Would you like to see it now?": "This secret message can only be displayed once. Would you like to see it now?",
"Yes, see it": "Yes, see it",
"Dark Mode": "Dark Mode",
"Error compressing paste, due to missing WebAssembly support.": "Error compressing paste, due to missing WebAssembly support.",
"Error decompressing paste, your browser does not support WebAssembly. Please use another browser to view this paste.": "Error decompressing paste, your browser does not support WebAssembly. Please use another browser to view this paste.",
"Start over": "Start over",
"Paste copied to clipboard": "Paste copied to clipboard",
"To copy paste press on the copy button or use the clipboard shortcut <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>": "To copy paste press on the copy button or use the clipboard shortcut <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>",
"Copy link": "Copy link",
"Link copied to clipboard": "Link copied to clipboard",
"Paste text": "Paste text",
"Tabulator key serves as character (Hit <kbd>Ctrl</kbd>+<kbd>m</kbd> or <kbd>Esc</kbd> to toggle)": "Tabulator key serves as character (Hit <kbd>Ctrl</kbd>+<kbd>m</kbd> or <kbd>Esc</kbd> to toggle)",
"Theme": "Theme"
} }

231
i18n/ko.json Normal file
View File

@ -0,0 +1,231 @@
{
"PrivateBin": "PrivateBin",
"%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.": "%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.",
"More information on the <a href=\"https://privatebin.info/\">project page</a>.": "More information on the <a href=\"https://privatebin.info/\">project page</a>.",
"Because ignorance is bliss": "Because ignorance is bliss",
"Paste does not exist, has expired or has been deleted.": "Paste does not exist, has expired or has been deleted.",
"%s requires php %s or above to work. Sorry.": "%s requires php %s or above to work. Sorry.",
"%s requires configuration section [%s] to be present in configuration file.": "%s requires configuration section [%s] to be present in configuration file.",
"Please wait %d seconds between each post.": [
"Please wait %d second between each post. (singular)",
"Please wait %d seconds between each post. (1st plural)",
"Please wait %d seconds between each post. (2nd plural)",
"Please wait %d seconds between each post. (3rd plural)",
"Please wait %d seconds between each post. (4th plural)",
"Please wait %d seconds between each post. (5th plural)"
],
"Paste is limited to %s of encrypted data.": "Paste is limited to %s of encrypted data.",
"Invalid data.": "Invalid data.",
"You are unlucky. Try again.": "You are unlucky. Try again.",
"Error saving comment. Sorry.": "Error saving comment. Sorry.",
"Error saving paste. Sorry.": "Error saving paste. Sorry.",
"Invalid paste ID.": "Invalid paste ID.",
"Paste is not of burn-after-reading type.": "Paste is not of burn-after-reading type.",
"Wrong deletion token. Paste was not deleted.": "Wrong deletion token. Paste was not deleted.",
"Paste was properly deleted.": "Paste was properly deleted.",
"JavaScript is required for %s to work. Sorry for the inconvenience.": "JavaScript is required for %s to work. Sorry for the inconvenience.",
"%s requires a modern browser to work.": "%s requires a modern browser to work.",
"New": "New",
"Create": "Create",
"Clone": "Clone",
"Raw text": "Raw text",
"Expires": "Expires",
"Burn after reading": "Burn after reading",
"Open discussion": "Open discussion",
"Password (recommended)": "Password (recommended)",
"Discussion": "Discussion",
"Toggle navigation": "Toggle navigation",
"%d seconds": [
"%d second (singular)",
"%d seconds (1st plural)",
"%d seconds (2nd plural)",
"%d seconds (3rd plural)",
"%d seconds (4th plural)",
"%d seconds (5th plural)"
],
"%d minutes": [
"%d minute (singular)",
"%d minutes (1st plural)",
"%d minutes (2nd plural)",
"%d minutes (3rd plural)",
"%d minutes (4th plural)",
"%d minutes (5th plural)"
],
"%d hours": [
"%d hour (singular)",
"%d hours (1st plural)",
"%d hours (2nd plural)",
"%d hours (3rd plural)",
"%d hours (4th plural)",
"%d hours (5th plural)"
],
"%d days": [
"%d day (singular)",
"%d days (1st plural)",
"%d days (2nd plural)",
"%d days (3rd plural)",
"%d days (4th plural)",
"%d days (5th plural)"
],
"%d weeks": [
"%d week (singular)",
"%d weeks (1st plural)",
"%d weeks (2nd plural)",
"%d weeks (3rd plural)",
"%d weeks (4th plural)",
"%d weeks (5th plural)"
],
"%d months": [
"%d month (singular)",
"%d months (1st plural)",
"%d months (2nd plural)",
"%d months (3rd plural)",
"%d months (4th plural)",
"%d months (5th plural)"
],
"%d years": [
"%d year (singular)",
"%d years (1st plural)",
"%d years (2nd plural)",
"%d years (3rd plural)",
"%d years (4th plural)",
"%d years (5th plural)"
],
"Never": "Never",
"Note: This is a test service: Data may be deleted anytime. Kittens will die if you abuse this service.": "Note: This is a test service: Data may be deleted anytime. Kittens will die if you abuse this service.",
"This document will expire in %d seconds.": [
"This document will expire in %d second. (singular)",
"This document will expire in %d seconds. (1st plural)",
"This document will expire in %d seconds. (2nd plural)",
"This document will expire in %d seconds. (3rd plural)",
"This document will expire in %d seconds. (4th plural)",
"This document will expire in %d seconds. (5th plural)"
],
"This document will expire in %d minutes.": [
"This document will expire in %d minute. (singular)",
"This document will expire in %d minutes. (1st plural)",
"This document will expire in %d minutes. (2nd plural)",
"This document will expire in %d minutes. (3rd plural)",
"This document will expire in %d minutes. (4th plural)",
"This document will expire in %d minutes. (5th plural)"
],
"This document will expire in %d hours.": [
"This document will expire in %d hour. (singular)",
"This document will expire in %d hours. (1st plural)",
"This document will expire in %d hours. (2nd plural)",
"This document will expire in %d hours. (3rd plural)",
"This document will expire in %d hours. (4th plural)",
"This document will expire in %d hours. (5th plural)"
],
"This document will expire in %d days.": [
"This document will expire in %d day. (singular)",
"This document will expire in %d days. (1st plural)",
"This document will expire in %d days. (2nd plural)",
"This document will expire in %d days. (3rd plural)",
"This document will expire in %d days. (4th plural)",
"This document will expire in %d days. (5th plural)"
],
"This document will expire in %d months.": [
"This document will expire in %d month. (singular)",
"This document will expire in %d months. (1st plural)",
"This document will expire in %d months. (2nd plural)",
"This document will expire in %d months. (3rd plural)",
"This document will expire in %d months. (4th plural)",
"This document will expire in %d months. (5th plural)"
],
"Please enter the password for this paste:": "Please enter the password for this paste:",
"Could not decrypt data (Wrong key?)": "Could not decrypt data (Wrong key?)",
"Could not delete the paste, it was not stored in burn after reading mode.": "Could not delete the paste, it was not stored in burn after reading mode.",
"FOR YOUR EYES ONLY. Don't close this window, this message can't be displayed again.": "FOR YOUR EYES ONLY. Don't close this window, this message can't be displayed again.",
"Could not decrypt comment; Wrong key?": "Could not decrypt comment; Wrong key?",
"Reply": "Reply",
"Anonymous": "Anonymous",
"Avatar generated from IP address": "Avatar generated from IP address",
"Add comment": "Add comment",
"Optional nickname…": "Optional nickname…",
"Post comment": "Post comment",
"Sending comment…": "Sending comment…",
"Comment posted.": "Comment posted.",
"Could not refresh display: %s": "Could not refresh display: %s",
"unknown status": "unknown status",
"server error or not responding": "server error or not responding",
"Could not post comment: %s": "Could not post comment: %s",
"Sending paste…": "Sending paste…",
"Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit <kbd>Ctrl</kbd>+<kbd>c</kbd> to copy)</span>": "Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit <kbd>Ctrl</kbd>+<kbd>c</kbd> to copy)</span>",
"Delete data": "Delete data",
"Could not create paste: %s": "Could not create paste: %s",
"Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)": "Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)",
"B": "B",
"KiB": "KiB",
"MiB": "MiB",
"GiB": "GiB",
"TiB": "TiB",
"PiB": "PiB",
"EiB": "EiB",
"ZiB": "ZiB",
"YiB": "YiB",
"Format": "Format",
"Plain Text": "Plain Text",
"Source Code": "Source Code",
"Markdown": "Markdown",
"Download attachment": "Download attachment",
"Cloned: '%s'": "Cloned: '%s'",
"The cloned file '%s' was attached to this paste.": "The cloned file '%s' was attached to this paste.",
"Attach a file": "Attach a file",
"alternatively drag & drop a file or paste an image from the clipboard": "alternatively drag & drop a file or paste an image from the clipboard",
"File too large, to display a preview. Please download the attachment.": "File too large, to display a preview. Please download the attachment.",
"Remove attachment": "Remove attachment",
"Your browser does not support uploading encrypted files. Please use a newer browser.": "Your browser does not support uploading encrypted files. Please use a newer browser.",
"Invalid attachment.": "Invalid attachment.",
"Options": "Options",
"Shorten URL": "Shorten URL",
"Editor": "Editor",
"Preview": "Preview",
"%s requires the PATH to end in a \"%s\". Please update the PATH in your index.php.": "%s requires the PATH to end in a \"%s\". Please update the PATH in your index.php.",
"Decrypt": "Decrypt",
"Enter password": "Enter password",
"Loading…": "Loading…",
"Decrypting paste…": "Decrypting paste…",
"Preparing new paste…": "Preparing new paste…",
"In case this message never disappears please have a look at <a href=\"%s\">this FAQ for information to troubleshoot</a>.": "In case this message never disappears please have a look at <a href=\"%s\">this FAQ for information to troubleshoot</a>.",
"+++ no paste text +++": "+++ no paste text +++",
"Could not get paste data: %s": "Could not get paste data: %s",
"QR code": "QR code",
"This website is using an insecure HTTP connection! Please use it only for testing.": "This website is using an insecure HTTP connection! Please use it only for testing.",
"For more information <a href=\"%s\">see this FAQ entry</a>.": "For more information <a href=\"%s\">see this FAQ entry</a>.",
"Your browser may require an HTTPS connection to support the WebCrypto API. Try <a href=\"%s\">switching to HTTPS</a>.": "Your browser may require an HTTPS connection to support the WebCrypto API. Try <a href=\"%s\">switching to HTTPS</a>.",
"Your browser doesn't support WebAssembly, used for zlib compression. You can create uncompressed documents, but can't read compressed ones.": "Your browser doesn't support WebAssembly, used for zlib compression. You can create uncompressed documents, but can't read compressed ones.",
"waiting on user to provide a password": "waiting on user to provide a password",
"Could not decrypt data. Did you enter a wrong password? Retry with the button at the top.": "Could not decrypt data. Did you enter a wrong password? Retry with the button at the top.",
"Retry": "Retry",
"Showing raw text…": "Showing raw text…",
"Notice:": "Notice:",
"This link will expire after %s.": "This link will expire after %s.",
"This link can only be accessed once, do not use back or refresh button in your browser.": "This link can only be accessed once, do not use back or refresh button in your browser.",
"Link:": "Link:",
"Recipient may become aware of your timezone, convert time to UTC?": "Recipient may become aware of your timezone, convert time to UTC?",
"Use Current Timezone": "Use Current Timezone",
"Convert To UTC": "Convert To UTC",
"Close": "Close",
"Encrypted note on %s": "Encrypted note on %s",
"Visit this link to see the note. Giving the URL to anyone allows them to access the note, too.": "Visit this link to see the note. Giving the URL to anyone allows them to access the note, too.",
"URL shortener may expose your decrypt key in URL.": "URL shortener may expose your decrypt key in URL.",
"Save paste": "Save paste",
"Your IP is not authorized to create pastes.": "Your IP is not authorized to create pastes.",
"Trying to shorten a URL that isn't pointing at our instance.": "Trying to shorten a URL that isn't pointing at our instance.",
"Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".": "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".",
"Error parsing YOURLS response.": "Error parsing YOURLS response.",
"This secret message can only be displayed once. Would you like to see it now?": "This secret message can only be displayed once. Would you like to see it now?",
"Yes, see it": "Yes, see it",
"Dark Mode": "Dark Mode",
"Error compressing paste, due to missing WebAssembly support.": "Error compressing paste, due to missing WebAssembly support.",
"Error decompressing paste, your browser does not support WebAssembly. Please use another browser to view this paste.": "Error decompressing paste, your browser does not support WebAssembly. Please use another browser to view this paste.",
"Start over": "Start over",
"Paste copied to clipboard": "Paste copied to clipboard",
"To copy paste press on the copy button or use the clipboard shortcut <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>": "To copy paste press on the copy button or use the clipboard shortcut <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>",
"Copy link": "Copy link",
"Link copied to clipboard": "Link copied to clipboard",
"Paste text": "Paste text",
"Tabulator key serves as character (Hit <kbd>Ctrl</kbd>+<kbd>m</kbd> or <kbd>Esc</kbd> to toggle)": "Tabulator key serves as character (Hit <kbd>Ctrl</kbd>+<kbd>m</kbd> or <kbd>Esc</kbd> to toggle)",
"Theme": "Theme"
}

View File

@ -3,7 +3,6 @@
"%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.": "%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.", "%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.": "%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.",
"More information on the <a href=\"https://privatebin.info/\">project page</a>.": "More information on the <a href=\"https://privatebin.info/\">project page</a>.", "More information on the <a href=\"https://privatebin.info/\">project page</a>.": "More information on the <a href=\"https://privatebin.info/\">project page</a>.",
"Because ignorance is bliss": "Because ignorance is bliss", "Because ignorance is bliss": "Because ignorance is bliss",
"en": "ku",
"Paste does not exist, has expired or has been deleted.": "Paste does not exist, has expired or has been deleted.", "Paste does not exist, has expired or has been deleted.": "Paste does not exist, has expired or has been deleted.",
"%s requires php %s or above to work. Sorry.": "%s requires php %s or above to work. Sorry.", "%s requires php %s or above to work. Sorry.": "%s requires php %s or above to work. Sorry.",
"%s requires configuration section [%s] to be present in configuration file.": "%s requires configuration section [%s] to be present in configuration file.", "%s requires configuration section [%s] to be present in configuration file.": "%s requires configuration section [%s] to be present in configuration file.",
@ -11,7 +10,9 @@
"Please wait %d second between each post. (singular)", "Please wait %d second between each post. (singular)",
"Please wait %d seconds between each post. (1st plural)", "Please wait %d seconds between each post. (1st plural)",
"Please wait %d seconds between each post. (2nd plural)", "Please wait %d seconds between each post. (2nd plural)",
"Please wait %d seconds between each post. (3rd plural)" "Please wait %d seconds between each post. (3rd plural)",
"Please wait %d seconds between each post. (4th plural)",
"Please wait %d seconds between each post. (5th plural)"
], ],
"Paste is limited to %s of encrypted data.": "Paste is limited to %s of encrypted data.", "Paste is limited to %s of encrypted data.": "Paste is limited to %s of encrypted data.",
"Invalid data.": "Invalid data.", "Invalid data.": "Invalid data.",
@ -25,7 +26,7 @@
"JavaScript is required for %s to work. Sorry for the inconvenience.": "JavaScript is required for %s to work. Sorry for the inconvenience.", "JavaScript is required for %s to work. Sorry for the inconvenience.": "JavaScript is required for %s to work. Sorry for the inconvenience.",
"%s requires a modern browser to work.": "%s requires a modern browser to work.", "%s requires a modern browser to work.": "%s requires a modern browser to work.",
"New": "New", "New": "New",
"Send": "Send", "Create": "Create",
"Clone": "Clone", "Clone": "Clone",
"Raw text": "Raw text", "Raw text": "Raw text",
"Expires": "Expires", "Expires": "Expires",
@ -38,43 +39,57 @@
"%d second (singular)", "%d second (singular)",
"%d seconds (1st plural)", "%d seconds (1st plural)",
"%d seconds (2nd plural)", "%d seconds (2nd plural)",
"%d seconds (3rd plural)" "%d seconds (3rd plural)",
"%d seconds (4th plural)",
"%d seconds (5th plural)"
], ],
"%d minutes": [ "%d minutes": [
"%d minute (singular)", "%d minute (singular)",
"%d minutes (1st plural)", "%d minutes (1st plural)",
"%d minutes (2nd plural)", "%d minutes (2nd plural)",
"%d minutes (3rd plural)" "%d minutes (3rd plural)",
"%d minutes (4th plural)",
"%d minutes (5th plural)"
], ],
"%d hours": [ "%d hours": [
"%d hour (singular)", "%d hour (singular)",
"%d hours (1st plural)", "%d hours (1st plural)",
"%d hours (2nd plural)", "%d hours (2nd plural)",
"%d hours (3rd plural)" "%d hours (3rd plural)",
"%d hours (4th plural)",
"%d hours (5th plural)"
], ],
"%d days": [ "%d days": [
"%d day (singular)", "%d day (singular)",
"%d days (1st plural)", "%d days (1st plural)",
"%d days (2nd plural)", "%d days (2nd plural)",
"%d days (3rd plural)" "%d days (3rd plural)",
"%d days (4th plural)",
"%d days (5th plural)"
], ],
"%d weeks": [ "%d weeks": [
"%d week (singular)", "%d week (singular)",
"%d weeks (1st plural)", "%d weeks (1st plural)",
"%d weeks (2nd plural)", "%d weeks (2nd plural)",
"%d weeks (3rd plural)" "%d weeks (3rd plural)",
"%d weeks (4th plural)",
"%d weeks (5th plural)"
], ],
"%d months": [ "%d months": [
"%d month (singular)", "%d month (singular)",
"%d months (1st plural)", "%d months (1st plural)",
"%d months (2nd plural)", "%d months (2nd plural)",
"%d months (3rd plural)" "%d months (3rd plural)",
"%d months (4th plural)",
"%d months (5th plural)"
], ],
"%d years": [ "%d years": [
"%d year (singular)", "%d year (singular)",
"%d years (1st plural)", "%d years (1st plural)",
"%d years (2nd plural)", "%d years (2nd plural)",
"%d years (3rd plural)" "%d years (3rd plural)",
"%d years (4th plural)",
"%d years (5th plural)"
], ],
"Never": "Never", "Never": "Never",
"Note: This is a test service: Data may be deleted anytime. Kittens will die if you abuse this service.": "Note: This is a test service: Data may be deleted anytime. Kittens will die if you abuse this service.", "Note: This is a test service: Data may be deleted anytime. Kittens will die if you abuse this service.": "Note: This is a test service: Data may be deleted anytime. Kittens will die if you abuse this service.",
@ -82,31 +97,41 @@
"This document will expire in %d second. (singular)", "This document will expire in %d second. (singular)",
"This document will expire in %d seconds. (1st plural)", "This document will expire in %d seconds. (1st plural)",
"This document will expire in %d seconds. (2nd plural)", "This document will expire in %d seconds. (2nd plural)",
"This document will expire in %d seconds. (3rd plural)" "This document will expire in %d seconds. (3rd plural)",
"This document will expire in %d seconds. (4th plural)",
"This document will expire in %d seconds. (5th plural)"
], ],
"This document will expire in %d minutes.": [ "This document will expire in %d minutes.": [
"This document will expire in %d minute. (singular)", "This document will expire in %d minute. (singular)",
"This document will expire in %d minutes. (1st plural)", "This document will expire in %d minutes. (1st plural)",
"This document will expire in %d minutes. (2nd plural)", "This document will expire in %d minutes. (2nd plural)",
"This document will expire in %d minutes. (3rd plural)" "This document will expire in %d minutes. (3rd plural)",
"This document will expire in %d minutes. (4th plural)",
"This document will expire in %d minutes. (5th plural)"
], ],
"This document will expire in %d hours.": [ "This document will expire in %d hours.": [
"This document will expire in %d hour. (singular)", "This document will expire in %d hour. (singular)",
"This document will expire in %d hours. (1st plural)", "This document will expire in %d hours. (1st plural)",
"This document will expire in %d hours. (2nd plural)", "This document will expire in %d hours. (2nd plural)",
"This document will expire in %d hours. (3rd plural)" "This document will expire in %d hours. (3rd plural)",
"This document will expire in %d hours. (4th plural)",
"This document will expire in %d hours. (5th plural)"
], ],
"This document will expire in %d days.": [ "This document will expire in %d days.": [
"This document will expire in %d day. (singular)", "This document will expire in %d day. (singular)",
"This document will expire in %d days. (1st plural)", "This document will expire in %d days. (1st plural)",
"This document will expire in %d days. (2nd plural)", "This document will expire in %d days. (2nd plural)",
"This document will expire in %d days. (3rd plural)" "This document will expire in %d days. (3rd plural)",
"This document will expire in %d days. (4th plural)",
"This document will expire in %d days. (5th plural)"
], ],
"This document will expire in %d months.": [ "This document will expire in %d months.": [
"This document will expire in %d month. (singular)", "This document will expire in %d month. (singular)",
"This document will expire in %d months. (1st plural)", "This document will expire in %d months. (1st plural)",
"This document will expire in %d months. (2nd plural)", "This document will expire in %d months. (2nd plural)",
"This document will expire in %d months. (3rd plural)" "This document will expire in %d months. (3rd plural)",
"This document will expire in %d months. (4th plural)",
"This document will expire in %d months. (5th plural)"
], ],
"Please enter the password for this paste:": "Please enter the password for this paste:", "Please enter the password for this paste:": "Please enter the password for this paste:",
"Could not decrypt data (Wrong key?)": "Could not decrypt data (Wrong key?)", "Could not decrypt data (Wrong key?)": "Could not decrypt data (Wrong key?)",
@ -126,7 +151,7 @@
"server error or not responding": "server error or not responding", "server error or not responding": "server error or not responding",
"Could not post comment: %s": "Could not post comment: %s", "Could not post comment: %s": "Could not post comment: %s",
"Sending paste…": "Sending paste…", "Sending paste…": "Sending paste…",
"Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit [Ctrl]+[c] to copy)</span>": "Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit [Ctrl]+[c] to copy)</span>", "Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit <kbd>Ctrl</kbd>+<kbd>c</kbd> to copy)</span>": "Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit <kbd>Ctrl</kbd>+<kbd>c</kbd> to copy)</span>",
"Delete data": "Delete data", "Delete data": "Delete data",
"Could not create paste: %s": "Could not create paste: %s", "Could not create paste: %s": "Could not create paste: %s",
"Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)": "Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)", "Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)": "Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)",
@ -189,5 +214,18 @@
"Your IP is not authorized to create pastes.": "Your IP is not authorized to create pastes.", "Your IP is not authorized to create pastes.": "Your IP is not authorized to create pastes.",
"Trying to shorten a URL that isn't pointing at our instance.": "Trying to shorten a URL that isn't pointing at our instance.", "Trying to shorten a URL that isn't pointing at our instance.": "Trying to shorten a URL that isn't pointing at our instance.",
"Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".": "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".", "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".": "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".",
"Error parsing YOURLS response.": "Error parsing YOURLS response." "Error parsing YOURLS response.": "Error parsing YOURLS response.",
"This secret message can only be displayed once. Would you like to see it now?": "This secret message can only be displayed once. Would you like to see it now?",
"Yes, see it": "Yes, see it",
"Dark Mode": "جۆری ڕەش",
"Error compressing paste, due to missing WebAssembly support.": "Error compressing paste, due to missing WebAssembly support.",
"Error decompressing paste, your browser does not support WebAssembly. Please use another browser to view this paste.": "Error decompressing paste, your browser does not support WebAssembly. Please use another browser to view this paste.",
"Start over": "Start over",
"Paste copied to clipboard": "Paste copied to clipboard",
"To copy paste press on the copy button or use the clipboard shortcut <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>": "To copy paste press on the copy button or use the clipboard shortcut <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>",
"Copy link": "Copy link",
"Link copied to clipboard": "Link copied to clipboard",
"Paste text": "Paste text",
"Tabulator key serves as character (Hit <kbd>Ctrl</kbd>+<kbd>m</kbd> or <kbd>Esc</kbd> to toggle)": "Tabulator key serves as character (Hit <kbd>Ctrl</kbd>+<kbd>m</kbd> or <kbd>Esc</kbd> to toggle)",
"Theme": "Theme"
} }

View File

@ -3,7 +3,6 @@
"%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.": "%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.", "%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.": "%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.",
"More information on the <a href=\"https://privatebin.info/\">project page</a>.": "More information on the <a href=\"https://privatebin.info/\">project page</a>.", "More information on the <a href=\"https://privatebin.info/\">project page</a>.": "More information on the <a href=\"https://privatebin.info/\">project page</a>.",
"Because ignorance is bliss": "Because ignorance is bliss", "Because ignorance is bliss": "Because ignorance is bliss",
"en": "la",
"Paste does not exist, has expired or has been deleted.": "Paste does not exist, has expired or has been deleted.", "Paste does not exist, has expired or has been deleted.": "Paste does not exist, has expired or has been deleted.",
"%s requires php %s or above to work. Sorry.": "%s requires php %s or above to work. Sorry.", "%s requires php %s or above to work. Sorry.": "%s requires php %s or above to work. Sorry.",
"%s requires configuration section [%s] to be present in configuration file.": "%s requires configuration section [%s] to be present in configuration file.", "%s requires configuration section [%s] to be present in configuration file.": "%s requires configuration section [%s] to be present in configuration file.",
@ -11,7 +10,9 @@
"Please wait %d second between each post. (singular)", "Please wait %d second between each post. (singular)",
"Please wait %d seconds between each post. (1st plural)", "Please wait %d seconds between each post. (1st plural)",
"Please wait %d seconds between each post. (2nd plural)", "Please wait %d seconds between each post. (2nd plural)",
"Please wait %d seconds between each post. (3rd plural)" "Please wait %d seconds between each post. (3rd plural)",
"Please wait %d seconds between each post. (4th plural)",
"Please wait %d seconds between each post. (5th plural)"
], ],
"Paste is limited to %s of encrypted data.": "Paste is limited to %s of encrypted data.", "Paste is limited to %s of encrypted data.": "Paste is limited to %s of encrypted data.",
"Invalid data.": "Invalid data.", "Invalid data.": "Invalid data.",
@ -25,7 +26,7 @@
"JavaScript is required for %s to work. Sorry for the inconvenience.": "JavaScript is required for %s to work. Sorry for the inconvenience.", "JavaScript is required for %s to work. Sorry for the inconvenience.": "JavaScript is required for %s to work. Sorry for the inconvenience.",
"%s requires a modern browser to work.": "%s requires a modern browser to work.", "%s requires a modern browser to work.": "%s requires a modern browser to work.",
"New": "New", "New": "New",
"Send": "Send", "Create": "Create",
"Clone": "Clone", "Clone": "Clone",
"Raw text": "Raw text", "Raw text": "Raw text",
"Expires": "Expires", "Expires": "Expires",
@ -38,43 +39,57 @@
"%d second (singular)", "%d second (singular)",
"%d seconds (1st plural)", "%d seconds (1st plural)",
"%d seconds (2nd plural)", "%d seconds (2nd plural)",
"%d seconds (3rd plural)" "%d seconds (3rd plural)",
"%d seconds (4th plural)",
"%d seconds (5th plural)"
], ],
"%d minutes": [ "%d minutes": [
"%d minute (singular)", "%d minute (singular)",
"%d minutes (1st plural)", "%d minutes (1st plural)",
"%d minutes (2nd plural)", "%d minutes (2nd plural)",
"%d minutes (3rd plural)" "%d minutes (3rd plural)",
"%d minutes (4th plural)",
"%d minutes (5th plural)"
], ],
"%d hours": [ "%d hours": [
"%d hour (singular)", "%d hour (singular)",
"%d hours (1st plural)", "%d hours (1st plural)",
"%d hours (2nd plural)", "%d hours (2nd plural)",
"%d hours (3rd plural)" "%d hours (3rd plural)",
"%d hours (4th plural)",
"%d hours (5th plural)"
], ],
"%d days": [ "%d days": [
"%d day (singular)", "%d day (singular)",
"%d days (1st plural)", "%d days (1st plural)",
"%d days (2nd plural)", "%d days (2nd plural)",
"%d days (3rd plural)" "%d days (3rd plural)",
"%d days (4th plural)",
"%d days (5th plural)"
], ],
"%d weeks": [ "%d weeks": [
"%d week (singular)", "%d week (singular)",
"%d weeks (1st plural)", "%d weeks (1st plural)",
"%d weeks (2nd plural)", "%d weeks (2nd plural)",
"%d weeks (3rd plural)" "%d weeks (3rd plural)",
"%d weeks (4th plural)",
"%d weeks (5th plural)"
], ],
"%d months": [ "%d months": [
"%d month (singular)", "%d month (singular)",
"%d months (1st plural)", "%d months (1st plural)",
"%d months (2nd plural)", "%d months (2nd plural)",
"%d months (3rd plural)" "%d months (3rd plural)",
"%d months (4th plural)",
"%d months (5th plural)"
], ],
"%d years": [ "%d years": [
"%d year (singular)", "%d year (singular)",
"%d years (1st plural)", "%d years (1st plural)",
"%d years (2nd plural)", "%d years (2nd plural)",
"%d years (3rd plural)" "%d years (3rd plural)",
"%d years (4th plural)",
"%d years (5th plural)"
], ],
"Never": "Never", "Never": "Never",
"Note: This is a test service: Data may be deleted anytime. Kittens will die if you abuse this service.": "Note: This is a test service: Data may be deleted anytime. Kittens will die if you abuse this service.", "Note: This is a test service: Data may be deleted anytime. Kittens will die if you abuse this service.": "Note: This is a test service: Data may be deleted anytime. Kittens will die if you abuse this service.",
@ -82,31 +97,41 @@
"This document will expire in %d second. (singular)", "This document will expire in %d second. (singular)",
"This document will expire in %d seconds. (1st plural)", "This document will expire in %d seconds. (1st plural)",
"This document will expire in %d seconds. (2nd plural)", "This document will expire in %d seconds. (2nd plural)",
"This document will expire in %d seconds. (3rd plural)" "This document will expire in %d seconds. (3rd plural)",
"This document will expire in %d seconds. (4th plural)",
"This document will expire in %d seconds. (5th plural)"
], ],
"This document will expire in %d minutes.": [ "This document will expire in %d minutes.": [
"This document will expire in %d minute. (singular)", "This document will expire in %d minute. (singular)",
"This document will expire in %d minutes. (1st plural)", "This document will expire in %d minutes. (1st plural)",
"This document will expire in %d minutes. (2nd plural)", "This document will expire in %d minutes. (2nd plural)",
"This document will expire in %d minutes. (3rd plural)" "This document will expire in %d minutes. (3rd plural)",
"This document will expire in %d minutes. (4th plural)",
"This document will expire in %d minutes. (5th plural)"
], ],
"This document will expire in %d hours.": [ "This document will expire in %d hours.": [
"This document will expire in %d hour. (singular)", "This document will expire in %d hour. (singular)",
"This document will expire in %d hours. (1st plural)", "This document will expire in %d hours. (1st plural)",
"This document will expire in %d hours. (2nd plural)", "This document will expire in %d hours. (2nd plural)",
"This document will expire in %d hours. (3rd plural)" "This document will expire in %d hours. (3rd plural)",
"This document will expire in %d hours. (4th plural)",
"This document will expire in %d hours. (5th plural)"
], ],
"This document will expire in %d days.": [ "This document will expire in %d days.": [
"This document will expire in %d day. (singular)", "This document will expire in %d day. (singular)",
"This document will expire in %d days. (1st plural)", "This document will expire in %d days. (1st plural)",
"This document will expire in %d days. (2nd plural)", "This document will expire in %d days. (2nd plural)",
"This document will expire in %d days. (3rd plural)" "This document will expire in %d days. (3rd plural)",
"This document will expire in %d days. (4th plural)",
"This document will expire in %d days. (5th plural)"
], ],
"This document will expire in %d months.": [ "This document will expire in %d months.": [
"This document will expire in %d month. (singular)", "This document will expire in %d month. (singular)",
"This document will expire in %d months. (1st plural)", "This document will expire in %d months. (1st plural)",
"This document will expire in %d months. (2nd plural)", "This document will expire in %d months. (2nd plural)",
"This document will expire in %d months. (3rd plural)" "This document will expire in %d months. (3rd plural)",
"This document will expire in %d months. (4th plural)",
"This document will expire in %d months. (5th plural)"
], ],
"Please enter the password for this paste:": "Please enter the password for this paste:", "Please enter the password for this paste:": "Please enter the password for this paste:",
"Could not decrypt data (Wrong key?)": "Could not decrypt data (Wrong key?)", "Could not decrypt data (Wrong key?)": "Could not decrypt data (Wrong key?)",
@ -126,7 +151,7 @@
"server error or not responding": "server error or not responding", "server error or not responding": "server error or not responding",
"Could not post comment: %s": "Could not post comment: %s", "Could not post comment: %s": "Could not post comment: %s",
"Sending paste…": "Sending paste…", "Sending paste…": "Sending paste…",
"Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit [Ctrl]+[c] to copy)</span>": "Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit [Ctrl]+[c] to copy)</span>", "Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit <kbd>Ctrl</kbd>+<kbd>c</kbd> to copy)</span>": "Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit <kbd>Ctrl</kbd>+<kbd>c</kbd> to copy)</span>",
"Delete data": "Delete data", "Delete data": "Delete data",
"Could not create paste: %s": "Could not create paste: %s", "Could not create paste: %s": "Could not create paste: %s",
"Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)": "Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)", "Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)": "Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)",
@ -189,5 +214,18 @@
"Your IP is not authorized to create pastes.": "Your IP is not authorized to create pastes.", "Your IP is not authorized to create pastes.": "Your IP is not authorized to create pastes.",
"Trying to shorten a URL that isn't pointing at our instance.": "Trying to shorten a URL that isn't pointing at our instance.", "Trying to shorten a URL that isn't pointing at our instance.": "Trying to shorten a URL that isn't pointing at our instance.",
"Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".": "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".", "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".": "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".",
"Error parsing YOURLS response.": "Error parsing YOURLS response." "Error parsing YOURLS response.": "Error parsing YOURLS response.",
"This secret message can only be displayed once. Would you like to see it now?": "This secret message can only be displayed once. Would you like to see it now?",
"Yes, see it": "Yes, see it",
"Dark Mode": "Dark Mode",
"Error compressing paste, due to missing WebAssembly support.": "Error compressing paste, due to missing WebAssembly support.",
"Error decompressing paste, your browser does not support WebAssembly. Please use another browser to view this paste.": "Error decompressing paste, your browser does not support WebAssembly. Please use another browser to view this paste.",
"Start over": "Start over",
"Paste copied to clipboard": "Paste copied to clipboard",
"To copy paste press on the copy button or use the clipboard shortcut <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>": "To copy paste press on the copy button or use the clipboard shortcut <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>",
"Copy link": "Copy link",
"Link copied to clipboard": "Link copied to clipboard",
"Paste text": "Paste text",
"Tabulator key serves as character (Hit <kbd>Ctrl</kbd>+<kbd>m</kbd> or <kbd>Esc</kbd> to toggle)": "Tabulator key serves as character (Hit <kbd>Ctrl</kbd>+<kbd>m</kbd> or <kbd>Esc</kbd> to toggle)",
"Theme": "Theme"
} }

View File

@ -3,15 +3,16 @@
"%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.": "%s yra minimalistinis, atvirojo kodo internetinis įdėjimų dėklas, kurį naudojant, serveris nieko nenutuokia apie įdėtus duomenis. Duomenys yra šifruojami/iššifruojami %snaršyklėje%s naudojant 256 bitų AES.", "%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.": "%s yra minimalistinis, atvirojo kodo internetinis įdėjimų dėklas, kurį naudojant, serveris nieko nenutuokia apie įdėtus duomenis. Duomenys yra šifruojami/iššifruojami %snaršyklėje%s naudojant 256 bitų AES.",
"More information on the <a href=\"https://privatebin.info/\">project page</a>.": "Daugiau informacijos rasite <a href=\"https://privatebin.info/\">projekto puslapyje</a>.", "More information on the <a href=\"https://privatebin.info/\">project page</a>.": "Daugiau informacijos rasite <a href=\"https://privatebin.info/\">projekto puslapyje</a>.",
"Because ignorance is bliss": "Nes nežinojimas yra palaima", "Because ignorance is bliss": "Nes nežinojimas yra palaima",
"en": "lt",
"Paste does not exist, has expired or has been deleted.": "Įdėjimo nėra, jis nebegalioja arba buvo ištrintas.", "Paste does not exist, has expired or has been deleted.": "Įdėjimo nėra, jis nebegalioja arba buvo ištrintas.",
"%s requires php %s or above to work. Sorry.": "%s savo darbui reikalauja php %s arba naujesnės versijos. Apgailestaujame.", "%s requires php %s or above to work. Sorry.": "%s savo darbui reikalauja php %s arba naujesnės versijos. Apgailestaujame.",
"%s requires configuration section [%s] to be present in configuration file.": "%s reikalauja, kad konfigūracijos faile būtų [%s] konfigūracijos sekcija.", "%s requires configuration section [%s] to be present in configuration file.": "%s reikalauja, kad konfigūracijos faile būtų [%s] konfigūracijos sekcija.",
"Please wait %d seconds between each post.": [ "Please wait %d seconds between each post.": [
"Tarp kiekvieno įrašo palaukite %d sekundę.", "Tarp kiekvieno įrašo palaukite %d sekundę.",
"Tarp kiekvieno įrašo palaukite %d sekundes.", "Tarp kiekvieno įrašo palaukite %d sekundės.",
"Tarp kiekvieno įrašo palaukite %d sekundžių.", "Tarp kiekvieno įrašo palaukite %d sekundžių.",
"Tarp kiekvieno įrašo palaukite %d sekundę." "Tarp kiekvieno įrašo palaukite %d sekundžių.",
"Tarp kiekvieno įrašo palaukite %d sekundžių.",
"Tarp kiekvieno įrašo palaukite %d sekundžių."
], ],
"Paste is limited to %s of encrypted data.": "Įdėjimas yra apribotas iki %s šifruotų duomenų.", "Paste is limited to %s of encrypted data.": "Įdėjimas yra apribotas iki %s šifruotų duomenų.",
"Invalid data.": "Neteisingi duomenys.", "Invalid data.": "Neteisingi duomenys.",
@ -25,7 +26,7 @@
"JavaScript is required for %s to work. Sorry for the inconvenience.": "%s darbui reikalinga JavaScript. Atsiprašome už nepatogumus.", "JavaScript is required for %s to work. Sorry for the inconvenience.": "%s darbui reikalinga JavaScript. Atsiprašome už nepatogumus.",
"%s requires a modern browser to work.": "%s savo darbui reikalauja šiuolaikinės naršyklės.", "%s requires a modern browser to work.": "%s savo darbui reikalauja šiuolaikinės naršyklės.",
"New": "Naujas", "New": "Naujas",
"Send": "Siųsti", "Create": "Sukurti",
"Clone": "Dubliuoti", "Clone": "Dubliuoti",
"Raw text": "Neapdorotas tekstas", "Raw text": "Neapdorotas tekstas",
"Expires": "Baigs galioti po", "Expires": "Baigs galioti po",
@ -35,42 +36,56 @@
"Discussion": "Diskusija", "Discussion": "Diskusija",
"Toggle navigation": "Perjungti naršymą", "Toggle navigation": "Perjungti naršymą",
"%d seconds": [ "%d seconds": [
"%d sekundę",
"%d sekundės", "%d sekundės",
"%d sekundžių", "%d sekundžių",
"%d sekundžių", "%d sekundžių",
"%d sekundės" "%d sekundžių",
"%d sekundžių"
], ],
"%d minutes": [ "%d minutes": [
"%d minutės", "%d minutės",
"%d minučių", "%d minučių",
"%d minučių", "%d minučių",
"%d minutės" "%d minučių",
"%d minučių",
"%d minučių"
], ],
"%d hours": [ "%d hours": [
"%d valandos", "%d valandos",
"%d valandų", "%d valandų",
"%d valandų", "%d valandų",
"%d valandos" "%d valandų",
"%d valandų",
"%d valandų"
], ],
"%d days": [ "%d days": [
"%d dienos", "%d dienos",
"%d dienų", "%d dienų",
"%d dienų", "%d dienų",
"%d dienos" "%d dienų",
"%d dienų",
"%d dienų"
], ],
"%d weeks": [ "%d weeks": [
"%d savaitės", "%d savaitės",
"%d savaičių", "%d savaičių",
"%d savaičių", "%d savaičių",
"%d savaitės" "%d savaičių",
"%d savaičių",
"%d savaičių"
], ],
"%d months": [ "%d months": [
"%d mėnesio", "%d mėnesio",
"%d mėnesių", "%d mėnesių",
"%d mėnesių", "%d mėnesių",
"%d mėnesio" "%d mėnesių",
"%d mėnesių",
"%d mėnesių"
], ],
"%d years": [ "%d years": [
"%d metų",
"%d metų",
"%d metų", "%d metų",
"%d metų", "%d metų",
"%d metų", "%d metų",
@ -82,31 +97,41 @@
"Šis dokumentas nustos galioti po %d sekundės.", "Šis dokumentas nustos galioti po %d sekundės.",
"Šis dokumentas nustos galioti po %d sekundžių.", "Šis dokumentas nustos galioti po %d sekundžių.",
"Šis dokumentas nustos galioti po %d sekundžių.", "Šis dokumentas nustos galioti po %d sekundžių.",
"Šis dokumentas nustos galioti po %d sekundės." "Šis dokumentas nustos galioti po %d sekundžių.",
"Šis dokumentas nustos galioti po %d sekundžių.",
"Šis dokumentas nustos galioti po %d sekundžių."
], ],
"This document will expire in %d minutes.": [ "This document will expire in %d minutes.": [
"Šis dokumentas nustos galioti po %d minutės.", "Šis dokumentas nustos galioti po %d minutės.",
"Šis dokumentas nustos galioti po %d minučių.", "Šis dokumentas nustos galioti po %d minučių.",
"Šis dokumentas nustos galioti po %d minučių.", "Šis dokumentas nustos galioti po %d minučių.",
"Šis dokumentas nustos galioti po %d minutės." "Šis dokumentas nustos galioti po %d minučių.",
"Šis dokumentas nustos galioti po %d minučių.",
"Šis dokumentas nustos galioti po %d minučių."
], ],
"This document will expire in %d hours.": [ "This document will expire in %d hours.": [
"Šis dokumentas nustos galioti po %d valandos.", "Šis dokumentas nustos galioti po %d valandos.",
"Šis dokumentas nustos galioti po %d valandų.", "Šis dokumentas nustos galioti po %d valandų.",
"Šis dokumentas nustos galioti po %d valandų.", "Šis dokumentas nustos galioti po %d valandų.",
"Šis dokumentas nustos galioti po %d valandos." "Šis dokumentas nustos galioti po %d valandų.",
"Šis dokumentas nustos galioti po %d valandų.",
"Šis dokumentas nustos galioti po %d valandų."
], ],
"This document will expire in %d days.": [ "This document will expire in %d days.": [
"Šis dokumentas nustos galioti po %d dienos.", "Šis dokumentas nustos galioti po %d dienos.",
"Šis dokumentas nustos galioti po %d dienų.", "Šis dokumentas nustos galioti po %d dienų.",
"Šis dokumentas nustos galioti po %d dienų.", "Šis dokumentas nustos galioti po %d dienų.",
"Šis dokumentas nustos galioti po %d dienos." "Šis dokumentas nustos galioti po %d dienų.",
"Šis dokumentas nustos galioti po %d dienų.",
"Šis dokumentas nustos galioti po %d dienų."
], ],
"This document will expire in %d months.": [ "This document will expire in %d months.": [
"Šis dokumentas nustos galioti po %d mėnesio.", "Šis dokumentas nustos galioti po %d mėnesio.",
"Šis dokumentas nustos galioti po %d mėnesių.", "Šis dokumentas nustos galioti po %d mėnesių.",
"Šis dokumentas nustos galioti po %d mėnesių.", "Šis dokumentas nustos galioti po %d mėnesių.",
"Šis dokumentas nustos galioti po %d mėnesio." "Šis dokumentas nustos galioti po %d mėnesių.",
"Šis dokumentas nustos galioti po %d mėnesių.",
"Šis dokumentas nustos galioti po %d mėnesių."
], ],
"Please enter the password for this paste:": "Įveskite šio įdėjimo slaptažodį:", "Please enter the password for this paste:": "Įveskite šio įdėjimo slaptažodį:",
"Could not decrypt data (Wrong key?)": "Nepavyko iššifruoti duomenų (Neteisingas raktas?)", "Could not decrypt data (Wrong key?)": "Nepavyko iššifruoti duomenų (Neteisingas raktas?)",
@ -126,7 +151,7 @@
"server error or not responding": "serverio klaida arba jis neatsako", "server error or not responding": "serverio klaida arba jis neatsako",
"Could not post comment: %s": "Nepavyko paskelbti komentaro: %s", "Could not post comment: %s": "Nepavyko paskelbti komentaro: %s",
"Sending paste…": "Siunčiamas įdėjimas…", "Sending paste…": "Siunčiamas įdėjimas…",
"Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit [Ctrl]+[c] to copy)</span>": "Jūsų įdėjimas yra <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Paspauskite [Vald]+[c] norėdami nukopijuoti)</span>", "Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit <kbd>Ctrl</kbd>+<kbd>c</kbd> to copy)</span>": "Jūsų įdėjimas yra <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Paspauskite <kbd>Vald</kbd>+<kbd>c</kbd> norėdami nukopijuoti)</span>",
"Delete data": "Ištrinti duomenis", "Delete data": "Ištrinti duomenis",
"Could not create paste: %s": "Nepavyko sukurti įdėjimo: %s", "Could not create paste: %s": "Nepavyko sukurti įdėjimo: %s",
"Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)": "Nepavyksta iššifruoti įdėjimo: URL adrese trūksta iššifravimo rakto (Ar naudojote peradresavimo ar URL trumpinimo įrankį, kuris pašalina URL dalį?)", "Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)": "Nepavyksta iššifruoti įdėjimo: URL adrese trūksta iššifravimo rakto (Ar naudojote peradresavimo ar URL trumpinimo įrankį, kuris pašalina URL dalį?)",
@ -189,5 +214,18 @@
"Your IP is not authorized to create pastes.": "Jūsų IP adresas neturi įgaliojimų kurti įdėjimų.", "Your IP is not authorized to create pastes.": "Jūsų IP adresas neturi įgaliojimų kurti įdėjimų.",
"Trying to shorten a URL that isn't pointing at our instance.": "Bandoma sutrumpinti URL adresą, kuris nenurodo į mūsų egzempliorių.", "Trying to shorten a URL that isn't pointing at our instance.": "Bandoma sutrumpinti URL adresą, kuris nenurodo į mūsų egzempliorių.",
"Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".": "Klaida iškviečiant YOURLS. Tikriausiai, konfigūracijos klaida, pavyzdžiui, neteisingi „apiurl“ ar „signature“, arba jų nėra.", "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".": "Klaida iškviečiant YOURLS. Tikriausiai, konfigūracijos klaida, pavyzdžiui, neteisingi „apiurl“ ar „signature“, arba jų nėra.",
"Error parsing YOURLS response.": "Klaida nagrinėjant YOURLS atsaką." "Error parsing YOURLS response.": "Klaida nagrinėjant YOURLS atsaką.",
"This secret message can only be displayed once. Would you like to see it now?": "Ši slapta žinutė gali būti parodyta tik vieną kartą. Ar norėtumėte ją dabar pamatyti?",
"Yes, see it": "Taip, pamatyti",
"Dark Mode": "Tamsi veiksena",
"Error compressing paste, due to missing WebAssembly support.": "Klaida glaudinant įdėjimą, nes trūksta WebAssembly palaikymo.",
"Error decompressing paste, your browser does not support WebAssembly. Please use another browser to view this paste.": "Klaida išglaudinant įdėjimą, jūsų naršyklė nepalaiko WebAssembly. Norėdami peržiūrėti šį įdėjimą, naudokite kitą naršyklę.",
"Start over": "Start over",
"Paste copied to clipboard": "Paste copied to clipboard",
"To copy paste press on the copy button or use the clipboard shortcut <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>": "To copy paste press on the copy button or use the clipboard shortcut <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>",
"Copy link": "Copy link",
"Link copied to clipboard": "Link copied to clipboard",
"Paste text": "Paste text",
"Tabulator key serves as character (Hit <kbd>Ctrl</kbd>+<kbd>m</kbd> or <kbd>Esc</kbd> to toggle)": "Tabulator key serves as character (Hit <kbd>Ctrl</kbd>+<kbd>m</kbd> or <kbd>Esc</kbd> to toggle)",
"Theme": "Theme"
} }

View File

@ -3,7 +3,6 @@
"%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.": "%s is een minimalistische, open source online pastebin waarbij de server geen kennis heeft van de paste data zelf. Gegevens worden gecodeerd/gedecodeerd %s in de browser %s met behulp van 256-bits AES.", "%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.": "%s is een minimalistische, open source online pastebin waarbij de server geen kennis heeft van de paste data zelf. Gegevens worden gecodeerd/gedecodeerd %s in de browser %s met behulp van 256-bits AES.",
"More information on the <a href=\"https://privatebin.info/\">project page</a>.": "Meer informatie is te vinden op de <a href=\"https://privatebin.info/\">projectpagina</a>.", "More information on the <a href=\"https://privatebin.info/\">project page</a>.": "Meer informatie is te vinden op de <a href=\"https://privatebin.info/\">projectpagina</a>.",
"Because ignorance is bliss": "Onwetendheid is een zegen", "Because ignorance is bliss": "Onwetendheid is een zegen",
"en": "nl",
"Paste does not exist, has expired or has been deleted.": "Paste bestaat niet, is verlopen of verwijderd.", "Paste does not exist, has expired or has been deleted.": "Paste bestaat niet, is verlopen of verwijderd.",
"%s requires php %s or above to work. Sorry.": "%s vereist PHP %s of hoger om te kunnen werken. Sorry", "%s requires php %s or above to work. Sorry.": "%s vereist PHP %s of hoger om te kunnen werken. Sorry",
"%s requires configuration section [%s] to be present in configuration file.": "%s vereist dat de configuratiesectie [%s] aanwezig is in het configuratiebestand", "%s requires configuration section [%s] to be present in configuration file.": "%s vereist dat de configuratiesectie [%s] aanwezig is in het configuratiebestand",
@ -11,12 +10,14 @@
"Alstublieft %d second wachten tussen elk bericht.", "Alstublieft %d second wachten tussen elk bericht.",
"Alstublieft %d seconden wachten tussen elk bericht.", "Alstublieft %d seconden wachten tussen elk bericht.",
"Alstublieft %d seconden wachten tussen elk bericht.", "Alstublieft %d seconden wachten tussen elk bericht.",
"Alstublieft %d seconden wachten tussen elk bericht.",
"Alstublieft %d seconden wachten tussen elk bericht.",
"Alstublieft %d seconden wachten tussen elk bericht." "Alstublieft %d seconden wachten tussen elk bericht."
], ],
"Paste is limited to %s of encrypted data.": "Paste is beperkt tot %s aan versleutelde gegevens.", "Paste is limited to %s of encrypted data.": "Paste is beperkt tot %s aan versleutelde gegevens.",
"Invalid data.": "Ongeldige gegevens.", "Invalid data.": "Ongeldige gegevens.",
"You are unlucky. Try again.": "Helaas. Probeer het nog eens.", "You are unlucky. Try again.": "Helaas. Probeer het nog eens.",
"Error saving comment. Sorry.": "Fout bij het opslaan van het commentaar. Sorry", "Error saving comment. Sorry.": "Fout bij het opslaan van het commentaar. Sorry.",
"Error saving paste. Sorry.": "Fout bij het opslaan van de paste. Sorry.", "Error saving paste. Sorry.": "Fout bij het opslaan van de paste. Sorry.",
"Invalid paste ID.": "Ongeldige ID.", "Invalid paste ID.": "Ongeldige ID.",
"Paste is not of burn-after-reading type.": "Paste is geen 'vernietig na lezen' type.", "Paste is not of burn-after-reading type.": "Paste is geen 'vernietig na lezen' type.",
@ -25,7 +26,7 @@
"JavaScript is required for %s to work. Sorry for the inconvenience.": "JavaScript vereist om %s te laten werken. Sorry voor het ongemak.", "JavaScript is required for %s to work. Sorry for the inconvenience.": "JavaScript vereist om %s te laten werken. Sorry voor het ongemak.",
"%s requires a modern browser to work.": "%s vereist een moderne browser om te kunnen werken.", "%s requires a modern browser to work.": "%s vereist een moderne browser om te kunnen werken.",
"New": "Nieuw", "New": "Nieuw",
"Send": "Verzenden", "Create": "Aanmaken",
"Clone": "Klonen", "Clone": "Klonen",
"Raw text": "Onbewerkte tekst", "Raw text": "Onbewerkte tekst",
"Expires": "Verloopt", "Expires": "Verloopt",
@ -37,44 +38,58 @@
"%d seconds": [ "%d seconds": [
"%d seconde", "%d seconde",
"%d seconden", "%d seconden",
"%d seconds (2nd plural)", "%d seconden",
"%d seconds (3rd plural)" "%d seconden",
"%d seconden",
"%d seconden"
], ],
"%d minutes": [ "%d minutes": [
"%d minuut", "%d minuut",
"%d minuten", "%d minuten",
"%d minutes (2nd plural)", "%d minuten",
"%d minutes (3rd plural)" "%d minuten",
"%d minuten",
"%d minuten"
], ],
"%d hours": [ "%d hours": [
"%d uur", "%d uur",
"%d uren", "%d uren",
"%d hours (2nd plural)", "%d uren",
"%d hours (3rd plural)" "%d uren",
"%d uren",
"%d uren"
], ],
"%d days": [ "%d days": [
"%d dag", "%d dag",
"%d dagen", "%d dagen",
"%d days (2nd plural)", "%d dagen",
"%d days (3rd plural)" "%d dagen",
"%d dagen",
"%d dagen"
], ],
"%d weeks": [ "%d weeks": [
"%d week", "%d week",
"%d weken", "%d weken",
"%d weeks (2nd plural)", "%d weken",
"%d weeks (3rd plural)" "%d weken",
"%d weken",
"%d weken"
], ],
"%d months": [ "%d months": [
"%d maand", "%d maand",
"%d maanden", "%d maanden",
"%d months (2nd plural)", "%d maanden",
"%d months (3rd plural)" "%d maanden",
"%d maanden",
"%d maanden"
], ],
"%d years": [ "%d years": [
"%d jaar", "%d jaar",
"%d jaren", "%d jaren",
"%d years (2nd plural)", "%d jaren",
"%d years (3rd plural)" "%d jaren",
"%d jaren",
"%d jaren"
], ],
"Never": "Nooit", "Never": "Nooit",
"Note: This is a test service: Data may be deleted anytime. Kittens will die if you abuse this service.": "Opmerking: Dit is een testservice: Gegevens kunnen op elk gegeven moment verwijderd worden. Katten zullen doodgaan als je misbruikt maakt van deze service.", "Note: This is a test service: Data may be deleted anytime. Kittens will die if you abuse this service.": "Opmerking: Dit is een testservice: Gegevens kunnen op elk gegeven moment verwijderd worden. Katten zullen doodgaan als je misbruikt maakt van deze service.",
@ -82,30 +97,40 @@
"Dit document verloopt over %d seconde.", "Dit document verloopt over %d seconde.",
"Dit document verloopt over %d seconden.", "Dit document verloopt over %d seconden.",
"Dit document verloopt over %d seconden.", "Dit document verloopt over %d seconden.",
"Dit document verloopt over %d seconden.",
"Dit document verloopt over %d seconden.",
"Dit document verloopt over %d seconden." "Dit document verloopt over %d seconden."
], ],
"This document will expire in %d minutes.": [ "This document will expire in %d minutes.": [
"Dit document verloopt over %d minuut.", "Dit document verloopt over %d minuut.",
"Dit document verloopt over %d minuten.", "Dit document verloopt over %d minuten.",
"Dit document verloopt over %d minuten.", "Dit document verloopt over %d minuten.",
"Dit document verloopt over %d minuten.",
"Dit document verloopt over %d minuten.",
"Dit document verloopt over %d minuten." "Dit document verloopt over %d minuten."
], ],
"This document will expire in %d hours.": [ "This document will expire in %d hours.": [
"Dit document verloopt over %d uur.", "Dit document verloopt over %d uur.",
"Dit document verloopt over %d uren.", "Dit document verloopt over %d uren.",
"Dit document verloopt over %d uren.", "Dit document verloopt over %d uren.",
"Dit document verloopt over %d uren.",
"Dit document verloopt over %d uren.",
"Dit document verloopt over %d uren." "Dit document verloopt over %d uren."
], ],
"This document will expire in %d days.": [ "This document will expire in %d days.": [
"Dit document verloopt over %d dag.", "Dit document verloopt over %d dag.",
"Dit document verloopt over %d dagen.", "Dit document verloopt over %d dagen.",
"Dit document verloopt over %d dagen.", "Dit document verloopt over %d dagen.",
"Dit document verloopt over %d dagen.",
"Dit document verloopt over %d dagen.",
"Dit document verloopt over %d dagen." "Dit document verloopt over %d dagen."
], ],
"This document will expire in %d months.": [ "This document will expire in %d months.": [
"Dit document verloopt over %d maand.", "Dit document verloopt over %d maand.",
"Dit document verloopt over %d maanden.", "Dit document verloopt over %d maanden.",
"Dit document verloopt over %d maanden.", "Dit document verloopt over %d maanden.",
"Dit document verloopt over %d maanden.",
"Dit document verloopt over %d maanden.",
"Dit document verloopt over %d maanden." "Dit document verloopt over %d maanden."
], ],
"Please enter the password for this paste:": "Voer het wachtwoord in voor deze paste:", "Please enter the password for this paste:": "Voer het wachtwoord in voor deze paste:",
@ -118,7 +143,7 @@
"Avatar generated from IP address": "Anonieme avatar (van het IP-adres)", "Avatar generated from IP address": "Anonieme avatar (van het IP-adres)",
"Add comment": "Commentaar toevoegen", "Add comment": "Commentaar toevoegen",
"Optional nickname…": "Optionele bijnaam…", "Optional nickname…": "Optionele bijnaam…",
"Post comment": "Plaats een commentaar", "Post comment": "Plaats commentaar",
"Sending comment…": "Commentaar verzenden…", "Sending comment…": "Commentaar verzenden…",
"Comment posted.": "Commentaar geplaatst.", "Comment posted.": "Commentaar geplaatst.",
"Could not refresh display: %s": "Kon de weergave niet vernieuwen: %s", "Could not refresh display: %s": "Kon de weergave niet vernieuwen: %s",
@ -126,10 +151,10 @@
"server error or not responding": "Serverfout of server reageert niet", "server error or not responding": "Serverfout of server reageert niet",
"Could not post comment: %s": "Kon het commentaar niet plaatsen: %s", "Could not post comment: %s": "Kon het commentaar niet plaatsen: %s",
"Sending paste…": "Paste verzenden…", "Sending paste…": "Paste verzenden…",
"Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit [Ctrl]+[c] to copy)</span>": "Je paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Druk [Ctrl]+[c] om te kopiëren)</span>", "Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit <kbd>Ctrl</kbd>+<kbd>c</kbd> to copy)</span>": "Je paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Druk <kbd>Ctrl</kbd>+<kbd>c</kbd> om te kopiëren)</span>",
"Delete data": "Gegevens wissen", "Delete data": "Gegevens wissen",
"Could not create paste: %s": "Kon de paste niet aanmaken: %s", "Could not create paste: %s": "Kon de paste niet aanmaken: %s",
"Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)": "Kon de paste niet decoderen: Decoderingssleutel ontbreekt in URL (Heb je een redirector of een URL-verkorter gebruikt die een deel van de URL verwijdert?)", "Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)": "Kon de paste niet decoderen: Decoderingssleutel ontbreekt in URL (Heb je een doorverwijzer of een URL-verkorter gebruikt die een deel van de URL verwijdert?)",
"B": "B", "B": "B",
"KiB": "KiB", "KiB": "KiB",
"MiB": "MiB", "MiB": "MiB",
@ -155,14 +180,14 @@
"Options": "Opties", "Options": "Opties",
"Shorten URL": "URL verkorten", "Shorten URL": "URL verkorten",
"Editor": "Editor", "Editor": "Editor",
"Preview": "Preview", "Preview": "Voorbeeld",
"%s requires the PATH to end in a \"%s\". Please update the PATH in your index.php.": "%s vereist dat PATH eindigt in een '%s'. a.u.b. PATH updaten in je index.php.", "%s requires the PATH to end in a \"%s\". Please update the PATH in your index.php.": "%s vereist dat PATH eindigt in een '%s'. a.u.b. PATH updaten in je index.php.",
"Decrypt": "Decoderen", "Decrypt": "Decoderen",
"Enter password": "Voer het wachtwoord in", "Enter password": "Voer het wachtwoord in",
"Loading…": "Laden…", "Loading…": "Laden…",
"Decrypting paste…": "Paste decoderen…", "Decrypting paste…": "Paste decoderen…",
"Preparing new paste…": "Nieuwe paste voorbereiden…", "Preparing new paste…": "Nieuwe paste voorbereiden…",
"In case this message never disappears please have a look at <a href=\"%s\">this FAQ for information to troubleshoot</a>.": "In het geval dat dit bericht nooit verdwijnt, kijkt dan eens naar <a href=\"%s\"> veelgestelde vragen voor informatie over het oplossen van problemen </a>.", "In case this message never disappears please have a look at <a href=\"%s\">this FAQ for information to troubleshoot</a>.": "In het geval dat dit bericht nooit verdwijnt, kijkt dan eens naar <a href=\"%s\"> veelgestelde vragen voor informatie over het oplossen van problemen</a>.",
"+++ no paste text +++": "+++ geen paste tekst +++", "+++ no paste text +++": "+++ geen paste tekst +++",
"Could not get paste data: %s": "Kon geen paste data verkrijgen: %s", "Could not get paste data: %s": "Kon geen paste data verkrijgen: %s",
"QR code": "QR-code", "QR code": "QR-code",
@ -189,5 +214,18 @@
"Your IP is not authorized to create pastes.": "Je IP-adres is niet gemachtigd om pastes te maken.", "Your IP is not authorized to create pastes.": "Je IP-adres is niet gemachtigd om pastes te maken.",
"Trying to shorten a URL that isn't pointing at our instance.": "Proberen om een URL te verkorten dat niet naar ons systeem wijst.", "Trying to shorten a URL that isn't pointing at our instance.": "Proberen om een URL te verkorten dat niet naar ons systeem wijst.",
"Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".": "Foutmelding ophalen YOURLS. Waarschijnlijk een configuratiefout, zoals een verkeerde of missende \"apiurl\" of \"signature\".", "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".": "Foutmelding ophalen YOURLS. Waarschijnlijk een configuratiefout, zoals een verkeerde of missende \"apiurl\" of \"signature\".",
"Error parsing YOURLS response.": "Foutmelding bij parsen van YOURLS respons." "Error parsing YOURLS response.": "Foutmelding bij parsen van YOURLS respons.",
"This secret message can only be displayed once. Would you like to see it now?": "Dit geheime bericht kan maar één keer worden weergegeven. Wil je het nu zien?",
"Yes, see it": "Ja, tonen",
"Dark Mode": "Donkere modus",
"Error compressing paste, due to missing WebAssembly support.": "Fout bij het comprimeren van notitie door ontbrekende ondersteuning voor WebAssembly.",
"Error decompressing paste, your browser does not support WebAssembly. Please use another browser to view this paste.": "Fout bij het decomprimeren van de notitie, uw browser ondersteunt WebAssembly niet. Gebruik een andere browser om deze notitie te bekijken.",
"Start over": "Opnieuw beginnen",
"Paste copied to clipboard": "Notitie gekopieerd naar klembord",
"To copy paste press on the copy button or use the clipboard shortcut <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>": "Om te kopiëren en plakken druk je op de knop Kopiëren of gebruik je de sneltoets op het klembord <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>",
"Copy link": "Kopieer link",
"Link copied to clipboard": "Link gekopieerd naar klembord",
"Paste text": "Tekst plakken",
"Tabulator key serves as character (Hit <kbd>Ctrl</kbd>+<kbd>m</kbd> or <kbd>Esc</kbd> to toggle)": "Tabulatortoets dient als teken (gebruik <kbd>Ctrl</kbd>+<kbd>m</kbd> of <kbd>Esc</kbd> om te schakelen)",
"Theme": "Theme"
} }

View File

@ -3,7 +3,6 @@
"%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.": "%s er en minimalistisk, åpen kildekode, elektronisk tilgjengelig pastebin hvor serveren ikke har kunnskap om dataene som limes inn. Dataene krypteres/dekrypteres %si nettleseren%s ved hjelp av 256 bits AES.", "%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.": "%s er en minimalistisk, åpen kildekode, elektronisk tilgjengelig pastebin hvor serveren ikke har kunnskap om dataene som limes inn. Dataene krypteres/dekrypteres %si nettleseren%s ved hjelp av 256 bits AES.",
"More information on the <a href=\"https://privatebin.info/\">project page</a>.": "Mer informasjon om prosjektet på <a href=\"https://privatebin.info/\">prosjektsiden</a>.", "More information on the <a href=\"https://privatebin.info/\">project page</a>.": "Mer informasjon om prosjektet på <a href=\"https://privatebin.info/\">prosjektsiden</a>.",
"Because ignorance is bliss": "Fordi uvitenhet er lykke", "Because ignorance is bliss": "Fordi uvitenhet er lykke",
"en": "no",
"Paste does not exist, has expired or has been deleted.": "Innlegget eksisterer ikke, er utløpt eller har blitt slettet.", "Paste does not exist, has expired or has been deleted.": "Innlegget eksisterer ikke, er utløpt eller har blitt slettet.",
"%s requires php %s or above to work. Sorry.": "Beklager, %s krever php %s eller nyere for å kjøre.", "%s requires php %s or above to work. Sorry.": "Beklager, %s krever php %s eller nyere for å kjøre.",
"%s requires configuration section [%s] to be present in configuration file.": "%s krever konfigurasjonsdel [%s] å være til stede i konfigurasjonsfilen .", "%s requires configuration section [%s] to be present in configuration file.": "%s krever konfigurasjonsdel [%s] å være til stede i konfigurasjonsfilen .",
@ -11,6 +10,8 @@
"Vennligst vent %d sekund mellom hvert innlegg.", "Vennligst vent %d sekund mellom hvert innlegg.",
"Vennligst vent %d sekunder mellom hvert innlegg.", "Vennligst vent %d sekunder mellom hvert innlegg.",
"Vennligst vent %d sekunder mellom hvert innlegg.", "Vennligst vent %d sekunder mellom hvert innlegg.",
"Vennligst vent %d sekunder mellom hvert innlegg.",
"Vennligst vent %d sekunder mellom hvert innlegg.",
"Vennligst vent %d sekunder mellom hvert innlegg." "Vennligst vent %d sekunder mellom hvert innlegg."
], ],
"Paste is limited to %s of encrypted data.": "Innlegg er begrenset til %s av kryptert data.", "Paste is limited to %s of encrypted data.": "Innlegg er begrenset til %s av kryptert data.",
@ -25,7 +26,7 @@
"JavaScript is required for %s to work. Sorry for the inconvenience.": "Javascript kreves for at %s skal fungere. Beklager.", "JavaScript is required for %s to work. Sorry for the inconvenience.": "Javascript kreves for at %s skal fungere. Beklager.",
"%s requires a modern browser to work.": "%s krever en moderne nettleser for å fungere.", "%s requires a modern browser to work.": "%s krever en moderne nettleser for å fungere.",
"New": "Ny", "New": "Ny",
"Send": "Send", "Create": "Opprette",
"Clone": "Kopier", "Clone": "Kopier",
"Raw text": "Ren tekst", "Raw text": "Ren tekst",
"Expires": "Utgår", "Expires": "Utgår",
@ -38,39 +39,53 @@
"%d sekund", "%d sekund",
"%d sekunder", "%d sekunder",
"%d sekunder", "%d sekunder",
"%d sekunder",
"%d sekunder",
"%d sekunder" "%d sekunder"
], ],
"%d minutes": [ "%d minutes": [
"%d minutt", "%d minutt",
"%d minutter", "%d minutter",
"%d minutter", "%d minutter",
"%d minutter",
"%d minutter",
"%d minutter" "%d minutter"
], ],
"%d hours": [ "%d hours": [
"%d time", "%d time",
"%d timer", "%d timer",
"%d timer", "%d timer",
"%d timer",
"%d timer",
"%d timer" "%d timer"
], ],
"%d days": [ "%d days": [
"%d dag", "%d dag",
"%d dager", "%d dager",
"%d dager", "%d dager",
"%d dager",
"%d dager",
"%d dager" "%d dager"
], ],
"%d weeks": [ "%d weeks": [
"%d uke", "%d uke",
"%d uker", "%d uker",
"%d uker", "%d uker",
"%d uker",
"%d uker",
"%d uker" "%d uker"
], ],
"%d months": [ "%d months": [
"%d måned", "%d måned",
"%d måneder", "%d måneder",
"%d måneder", "%d måneder",
"%d måneder",
"%d måneder",
"%d måneder" "%d måneder"
], ],
"%d years": [ "%d years": [
"%d år",
"%d år",
"%d år", "%d år",
"%d år", "%d år",
"%d år", "%d år",
@ -82,30 +97,40 @@
"Dette dokumentet vil utløpe om %d sekund.", "Dette dokumentet vil utløpe om %d sekund.",
"Dette dokumentet vil utløpe om %d sekunder.", "Dette dokumentet vil utløpe om %d sekunder.",
"Dette dokumentet vil utløpe om %d sekunder.", "Dette dokumentet vil utløpe om %d sekunder.",
"Dette dokumentet vil utløpe om %d sekunder.",
"Dette dokumentet vil utløpe om %d sekunder.",
"Dette dokumentet vil utløpe om %d sekunder." "Dette dokumentet vil utløpe om %d sekunder."
], ],
"This document will expire in %d minutes.": [ "This document will expire in %d minutes.": [
"Dette dokumentet vil utløpe om %d minutt.", "Dette dokumentet vil utløpe om %d minutt.",
"Dette dokumentet vil utløpe om %d minutter.", "Dette dokumentet vil utløpe om %d minutter.",
"Dette dokumentet vil utløpe om %d minutter.", "Dette dokumentet vil utløpe om %d minutter.",
"Dette dokumentet vil utløpe om %d minutter.",
"Dette dokumentet vil utløpe om %d minutter.",
"Dette dokumentet vil utløpe om %d minutter." "Dette dokumentet vil utløpe om %d minutter."
], ],
"This document will expire in %d hours.": [ "This document will expire in %d hours.": [
"Dette dokumentet vil utløpe om %d time.", "Dette dokumentet vil utløpe om %d time.",
"Dette dokumentet vil utløpe om %d timer.", "Dette dokumentet vil utløpe om %d timer.",
"Dette dokumentet vil utløpe om %d timer.", "Dette dokumentet vil utløpe om %d timer.",
"Dette dokumentet vil utløpe om %d timer.",
"Dette dokumentet vil utløpe om %d timer.",
"Dette dokumentet vil utløpe om %d timer." "Dette dokumentet vil utløpe om %d timer."
], ],
"This document will expire in %d days.": [ "This document will expire in %d days.": [
"Dette dokumentet vil utløpe om %d dag.", "Dette dokumentet vil utløpe om %d dag.",
"Dette dokumentet vil utløpe om %d dager.", "Dette dokumentet vil utløpe om %d dager.",
"Dette dokumentet vil utløpe om %d dager.", "Dette dokumentet vil utløpe om %d dager.",
"Dette dokumentet vil utløpe om %d dager.",
"Dette dokumentet vil utløpe om %d dager.",
"Dette dokumentet vil utløpe om %d dager." "Dette dokumentet vil utløpe om %d dager."
], ],
"This document will expire in %d months.": [ "This document will expire in %d months.": [
"Dette dokumentet vil utløpe om %d måned.", "Dette dokumentet vil utløpe om %d måned.",
"Dette dokumentet vil utløpe om %d måneder.", "Dette dokumentet vil utløpe om %d måneder.",
"Dette dokumentet vil utløpe om %d måneder.", "Dette dokumentet vil utløpe om %d måneder.",
"Dette dokumentet vil utløpe om %d måneder.",
"Dette dokumentet vil utløpe om %d måneder.",
"Dette dokumentet vil utløpe om %d måneder." "Dette dokumentet vil utløpe om %d måneder."
], ],
"Please enter the password for this paste:": "Vennligst skriv inn passordet for dette innlegget:", "Please enter the password for this paste:": "Vennligst skriv inn passordet for dette innlegget:",
@ -126,7 +151,7 @@
"server error or not responding": "tjener feilet eller svarer ikke", "server error or not responding": "tjener feilet eller svarer ikke",
"Could not post comment: %s": "Kunne ikke sende kommentar: %s", "Could not post comment: %s": "Kunne ikke sende kommentar: %s",
"Sending paste…": "Sender innlegg…", "Sending paste…": "Sender innlegg…",
"Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit [Ctrl]+[c] to copy)</span>": "Ditt innlegg er <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Trykk [Ctrl]+[c] for å kopiere)</span>", "Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit <kbd>Ctrl</kbd>+<kbd>c</kbd> to copy)</span>": "Ditt innlegg er <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Trykk <kbd>Ctrl</kbd>+<kbd>c</kbd> for å kopiere)</span>",
"Delete data": "Slett data", "Delete data": "Slett data",
"Could not create paste: %s": "Kunne ikke opprette innlegg: %s", "Could not create paste: %s": "Kunne ikke opprette innlegg: %s",
"Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)": "Kan ikke dekryptere innlegg: Dekrypteringsnøkkelen mangler i adressen (Har du bruket en redirector eller en URL forkorter som fjerner en del av addressen?)", "Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)": "Kan ikke dekryptere innlegg: Dekrypteringsnøkkelen mangler i adressen (Har du bruket en redirector eller en URL forkorter som fjerner en del av addressen?)",
@ -142,7 +167,7 @@
"Format": "Format", "Format": "Format",
"Plain Text": "Ren Tekst", "Plain Text": "Ren Tekst",
"Source Code": "Kildekode", "Source Code": "Kildekode",
"Markdown": "Oppmerket", "Markdown": "Markdown",
"Download attachment": "Last ned vedlegg", "Download attachment": "Last ned vedlegg",
"Cloned: '%s'": "Kopiert: '%s'", "Cloned: '%s'": "Kopiert: '%s'",
"The cloned file '%s' was attached to this paste.": "Den klonede filen '%s' var koblet til denne innlimingen.", "The cloned file '%s' was attached to this paste.": "Den klonede filen '%s' var koblet til denne innlimingen.",
@ -186,8 +211,21 @@
"Visit this link to see the note. Giving the URL to anyone allows them to access the note, too.": "Besøk denne lenken for å se notatet. Hvis lenken deles med andre, vil de også kunne se notatet.", "Visit this link to see the note. Giving the URL to anyone allows them to access the note, too.": "Besøk denne lenken for å se notatet. Hvis lenken deles med andre, vil de også kunne se notatet.",
"URL shortener may expose your decrypt key in URL.": "URL forkorter kan avsløre dekrypteringsnøkkelen.", "URL shortener may expose your decrypt key in URL.": "URL forkorter kan avsløre dekrypteringsnøkkelen.",
"Save paste": "Lagre utklipp", "Save paste": "Lagre utklipp",
"Your IP is not authorized to create pastes.": "Your IP is not authorized to create pastes.", "Your IP is not authorized to create pastes.": "Din IP er ikke autorisert til å opprette dokumenter.",
"Trying to shorten a URL that isn't pointing at our instance.": "Trying to shorten a URL that isn't pointing at our instance.", "Trying to shorten a URL that isn't pointing at our instance.": "Prøver å forkorte en URL som ikke peker i vår instans.",
"Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".": "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".", "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".": "Feil ved å besøke YOURLS. Sannsynligvis et konfigurasjonsproblem, eksempelvis feil eller mangler, med \"apiurl\" eller \"signatur\".",
"Error parsing YOURLS response.": "Error parsing YOURLS response." "Error parsing YOURLS response.": "Feil ved analyse av YOURLS svar.",
"This secret message can only be displayed once. Would you like to see it now?": "Denne hemmelige meldingen kan bare vises én gang. Vil du se den nå?",
"Yes, see it": "Ja, se det",
"Dark Mode": "Mørk modus",
"Error compressing paste, due to missing WebAssembly support.": "Error compressing paste, due to missing WebAssembly support.",
"Error decompressing paste, your browser does not support WebAssembly. Please use another browser to view this paste.": "Error decompressing paste, your browser does not support WebAssembly. Please use another browser to view this paste.",
"Start over": "Start over",
"Paste copied to clipboard": "Paste copied to clipboard",
"To copy paste press on the copy button or use the clipboard shortcut <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>": "To copy paste press on the copy button or use the clipboard shortcut <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>",
"Copy link": "Copy link",
"Link copied to clipboard": "Link copied to clipboard",
"Paste text": "Paste text",
"Tabulator key serves as character (Hit <kbd>Ctrl</kbd>+<kbd>m</kbd> or <kbd>Esc</kbd> to toggle)": "Tabulator key serves as character (Hit <kbd>Ctrl</kbd>+<kbd>m</kbd> or <kbd>Esc</kbd> to toggle)",
"Theme": "Theme"
} }

View File

@ -3,7 +3,6 @@
"%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.": "%s es un 'pastebin' (o gestionari dextrachs de tèxte e còdi font) minimalista e open source, dins lo qual lo servidor a pas cap de coneissença de las donadas mandadas. Las donadas son chifradas/deschifradas %sdins lo navigator%s per un chiframent AES 256 bits.", "%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.": "%s es un 'pastebin' (o gestionari dextrachs de tèxte e còdi font) minimalista e open source, dins lo qual lo servidor a pas cap de coneissença de las donadas mandadas. Las donadas son chifradas/deschifradas %sdins lo navigator%s per un chiframent AES 256 bits.",
"More information on the <a href=\"https://privatebin.info/\">project page</a>.": "Mai informacions sus <a href=\"https://privatebin.info/\">la pagina del projècte</a>.", "More information on the <a href=\"https://privatebin.info/\">project page</a>.": "Mai informacions sus <a href=\"https://privatebin.info/\">la pagina del projècte</a>.",
"Because ignorance is bliss": "Perque lo bonaür es lignorància", "Because ignorance is bliss": "Perque lo bonaür es lignorància",
"en": "oc",
"Paste does not exist, has expired or has been deleted.": "Lo tèxte existís pas, a expirat, o es estat suprimit.", "Paste does not exist, has expired or has been deleted.": "Lo tèxte existís pas, a expirat, o es estat suprimit.",
"%s requires php %s or above to work. Sorry.": "O planhèm, %s necessita php %s o superior per foncionar.", "%s requires php %s or above to work. Sorry.": "O planhèm, %s necessita php %s o superior per foncionar.",
"%s requires configuration section [%s] to be present in configuration file.": "%s fa besonh de la seccion de configuracion [%s] dins lo fichièr de configuracion per foncionar.", "%s requires configuration section [%s] to be present in configuration file.": "%s fa besonh de la seccion de configuracion [%s] dins lo fichièr de configuracion per foncionar.",
@ -11,6 +10,8 @@
"Mercés d'esperar %d segonda entre cada publicacion.", "Mercés d'esperar %d segonda entre cada publicacion.",
"Mercés d'esperar %d segondas entre cada publicacion.", "Mercés d'esperar %d segondas entre cada publicacion.",
"Mercés d'esperar %d segondas entre cada publicacion.", "Mercés d'esperar %d segondas entre cada publicacion.",
"Mercés d'esperar %d segondas entre cada publicacion.",
"Mercés d'esperar %d segondas entre cada publicacion.",
"Mercés d'esperar %d segondas entre cada publicacion." "Mercés d'esperar %d segondas entre cada publicacion."
], ],
"Paste is limited to %s of encrypted data.": "Lo tèxte es limitat a %s de donadas chifradas.", "Paste is limited to %s of encrypted data.": "Lo tèxte es limitat a %s de donadas chifradas.",
@ -25,7 +26,7 @@
"JavaScript is required for %s to work. Sorry for the inconvenience.": "JavaScript es requesit per far foncionar %s. O planhèm per linconvenient.", "JavaScript is required for %s to work. Sorry for the inconvenience.": "JavaScript es requesit per far foncionar %s. O planhèm per linconvenient.",
"%s requires a modern browser to work.": "%s requerís un navigator modèrn per foncionar.", "%s requires a modern browser to work.": "%s requerís un navigator modèrn per foncionar.",
"New": "Nòu", "New": "Nòu",
"Send": "Mandar", "Create": "Mandar",
"Clone": "Clonar", "Clone": "Clonar",
"Raw text": "Tèxte brut", "Raw text": "Tèxte brut",
"Expires": "Expira", "Expires": "Expira",
@ -38,42 +39,56 @@
"%d segonda", "%d segonda",
"%d segondas", "%d segondas",
"%d segondas", "%d segondas",
"%d segondas",
"%d segondas",
"%d segondas" "%d segondas"
], ],
"%d minutes": [ "%d minutes": [
"%d minuta", "%d minuta",
"%d minutas", "%d minutas",
"%d minutas", "%d minutas",
"%d minutas",
"%d minutas",
"%d minutas" "%d minutas"
], ],
"%d hours": [ "%d hours": [
"%d ora", "%d ora",
"%d oras", "%d oras",
"%d oras", "%d oras",
"%d oras",
"%d oras",
"%d oras" "%d oras"
], ],
"%d days": [ "%d days": [
"%d jorn", "%d jorn",
"%d jorns", "%d jorns",
"%d jorns", "%d jorns",
"%d jorns",
"%d jorns",
"%d jorns" "%d jorns"
], ],
"%d weeks": [ "%d weeks": [
"%d setmana", "%d setmana",
"%d setmanas", "%d setmanas",
"%d setmanas", "%d setmanas",
"%d setmanas",
"%d setmanas",
"%d setmanas" "%d setmanas"
], ],
"%d months": [ "%d months": [
"%d mes", "%d mes",
"%d meses", "%d meses",
"%d meses", "%d meses",
"%d meses",
"%d meses",
"%d meses" "%d meses"
], ],
"%d years": [ "%d years": [
"%d an", "%d an",
"%d ans", "%d ans",
"%d ans", "%d ans",
"%d ans",
"%d ans",
"%d ans" "%d ans"
], ],
"Never": "Jamai", "Never": "Jamai",
@ -82,30 +97,40 @@
"Aqueste document expirarà daquí %d segonda.", "Aqueste document expirarà daquí %d segonda.",
"Aqueste document expirarà daquí %d segondas.", "Aqueste document expirarà daquí %d segondas.",
"Aqueste document expirarà daquí %d segondas.", "Aqueste document expirarà daquí %d segondas.",
"Aqueste document expirarà daquí %d segondas.",
"Aqueste document expirarà daquí %d segondas.",
"Aqueste document expirarà daquí %d segondas." "Aqueste document expirarà daquí %d segondas."
], ],
"This document will expire in %d minutes.": [ "This document will expire in %d minutes.": [
"Aqueste document expirarà daquí %d minuta.", "Aqueste document expirarà daquí %d minuta.",
"Aqueste document expirarà daquí %d minutas.", "Aqueste document expirarà daquí %d minutas.",
"Aqueste document expirarà daquí %d minutas.", "Aqueste document expirarà daquí %d minutas.",
"Aqueste document expirarà daquí %d minutas.",
"Aqueste document expirarà daquí %d minutas.",
"Aqueste document expirarà daquí %d minutas." "Aqueste document expirarà daquí %d minutas."
], ],
"This document will expire in %d hours.": [ "This document will expire in %d hours.": [
"Aqueste document expirarà daquí %d ora.", "Aqueste document expirarà daquí %d ora.",
"Aqueste document expirarà daquí %d oras.", "Aqueste document expirarà daquí %d oras.",
"Aqueste document expirarà daquí %d oras.", "Aqueste document expirarà daquí %d oras.",
"Aqueste document expirarà daquí %d oras.",
"Aqueste document expirarà daquí %d oras.",
"Aqueste document expirarà daquí %d oras." "Aqueste document expirarà daquí %d oras."
], ],
"This document will expire in %d days.": [ "This document will expire in %d days.": [
"Aqueste document expirarà daquí %d jorn.", "Aqueste document expirarà daquí %d jorn.",
"Aqueste document expirarà daquí %d jorns.", "Aqueste document expirarà daquí %d jorns.",
"Aqueste document expirarà daquí %d jorns.", "Aqueste document expirarà daquí %d jorns.",
"Aqueste document expirarà daquí %d jorns.",
"Aqueste document expirarà daquí %d jorns.",
"Aqueste document expirarà daquí %d jorns." "Aqueste document expirarà daquí %d jorns."
], ],
"This document will expire in %d months.": [ "This document will expire in %d months.": [
"Aqueste document expirarà daquí %d mes.", "Aqueste document expirarà daquí %d mes.",
"Aqueste document expirarà daquí %d meses.", "Aqueste document expirarà daquí %d meses.",
"Aqueste document expirarà daquí %d meses.", "Aqueste document expirarà daquí %d meses.",
"Aqueste document expirarà daquí %d meses.",
"Aqueste document expirarà daquí %d meses.",
"Aqueste document expirarà daquí %d meses." "Aqueste document expirarà daquí %d meses."
], ],
"Please enter the password for this paste:": "Picatz lo senhal per aqueste tèxte:", "Please enter the password for this paste:": "Picatz lo senhal per aqueste tèxte:",
@ -126,7 +151,7 @@
"server error or not responding": "lo servidor respond pas o a rescontrat una error", "server error or not responding": "lo servidor respond pas o a rescontrat una error",
"Could not post comment: %s": "Impossible de mandar lo comentari:%s", "Could not post comment: %s": "Impossible de mandar lo comentari:%s",
"Sending paste…": "Mandadís del tèxte…", "Sending paste…": "Mandadís del tèxte…",
"Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit [Ctrl]+[c] to copy)</span>": "Vòstre tèxte es disponible a ladreça <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Picatz sus [Ctrl]+[c] per copiar)</span>", "Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit <kbd>Ctrl</kbd>+<kbd>c</kbd> to copy)</span>": "Vòstre tèxte es disponible a ladreça <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Picatz sus <kbd>Ctrl</kbd>+<kbd>c</kbd> per copiar)</span>",
"Delete data": "Supprimir las donadas del tèxte", "Delete data": "Supprimir las donadas del tèxte",
"Could not create paste: %s": "Impossible de crear lo tèxte:%s", "Could not create paste: %s": "Impossible de crear lo tèxte:%s",
"Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)": "Impossible de deschifrar lo tèxte:clau de deschiframent absenta de lURL (Avètz utilizat un redirector o un site de reduccion dURL que suprimís una partida de lURL?)", "Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)": "Impossible de deschifrar lo tèxte:clau de deschiframent absenta de lURL (Avètz utilizat un redirector o un site de reduccion dURL que suprimís una partida de lURL?)",
@ -189,5 +214,18 @@
"Your IP is not authorized to create pastes.": "Vòstra adreça IP a pas lautorizacion de crear de tèxtes.", "Your IP is not authorized to create pastes.": "Vòstra adreça IP a pas lautorizacion de crear de tèxtes.",
"Trying to shorten a URL that isn't pointing at our instance.": "Ensag dabracar una URL que mena pas a nòstra instància.", "Trying to shorten a URL that isn't pointing at our instance.": "Ensag dabracar una URL que mena pas a nòstra instància.",
"Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".": "Error en cridant YOURLS. Es probablament un problèma de configuracion, quicòm coma « apirul » o « signature » marrit o absent.", "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".": "Error en cridant YOURLS. Es probablament un problèma de configuracion, quicòm coma « apirul » o « signature » marrit o absent.",
"Error parsing YOURLS response.": "Error d'analisi de la responsa YOURLS." "Error parsing YOURLS response.": "Error d'analisi de la responsa YOURLS.",
"This secret message can only be displayed once. Would you like to see it now?": "Aqueste messatge secrèt se pòt pas qu'afichar un còp. Lo volètz veire ara?",
"Yes, see it": "Òc, afichatz-lo",
"Dark Mode": "Mòde escur",
"Error compressing paste, due to missing WebAssembly support.": "Error al moment de la compression de l'empegatge, a causa de la manca de presa en carga de WebAssembly.",
"Error decompressing paste, your browser does not support WebAssembly. Please use another browser to view this paste.": "Error al moment de descompresar l'empegatge, vòstre navegador pren pas en carga WebAssembly. Mercés d'utilizar un autre navigador per visualizar aquesta pega.",
"Start over": "Start over",
"Paste copied to clipboard": "Paste copied to clipboard",
"To copy paste press on the copy button or use the clipboard shortcut <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>": "To copy paste press on the copy button or use the clipboard shortcut <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>",
"Copy link": "Copy link",
"Link copied to clipboard": "Link copied to clipboard",
"Paste text": "Paste text",
"Tabulator key serves as character (Hit <kbd>Ctrl</kbd>+<kbd>m</kbd> or <kbd>Esc</kbd> to toggle)": "Tabulator key serves as character (Hit <kbd>Ctrl</kbd>+<kbd>m</kbd> or <kbd>Esc</kbd> to toggle)",
"Theme": "Theme"
} }

View File

@ -3,7 +3,6 @@
"%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.": "%s jest minimalistycznym, otwartoźródłowym serwisem typu pastebin, w którym serwer nie ma jakichkolwiek informacji o tym, co jest wklejane. Dane są szyfrowane i deszyfrowane %sw przeglądarce%s z użyciem 256-bitowego klucza AES.", "%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.": "%s jest minimalistycznym, otwartoźródłowym serwisem typu pastebin, w którym serwer nie ma jakichkolwiek informacji o tym, co jest wklejane. Dane są szyfrowane i deszyfrowane %sw przeglądarce%s z użyciem 256-bitowego klucza AES.",
"More information on the <a href=\"https://privatebin.info/\">project page</a>.": "Więcej informacji na <a href=\"https://privatebin.info/\">stronie projektu</a>.", "More information on the <a href=\"https://privatebin.info/\">project page</a>.": "Więcej informacji na <a href=\"https://privatebin.info/\">stronie projektu</a>.",
"Because ignorance is bliss": "Ponieważ ignorancja jest cnotą", "Because ignorance is bliss": "Ponieważ ignorancja jest cnotą",
"en": "pl",
"Paste does not exist, has expired or has been deleted.": "Wklejka nie istnieje, wygasła albo została usunięta.", "Paste does not exist, has expired or has been deleted.": "Wklejka nie istnieje, wygasła albo została usunięta.",
"%s requires php %s or above to work. Sorry.": "%s wymaga PHP w wersji %s lub nowszej. Przykro mi.", "%s requires php %s or above to work. Sorry.": "%s wymaga PHP w wersji %s lub nowszej. Przykro mi.",
"%s requires configuration section [%s] to be present in configuration file.": "%s wymaga obecności sekcji [%s] w pliku konfiguracyjnym.", "%s requires configuration section [%s] to be present in configuration file.": "%s wymaga obecności sekcji [%s] w pliku konfiguracyjnym.",
@ -11,6 +10,8 @@
"Poczekaj %d sekundę pomiędzy każdą wklejką.", "Poczekaj %d sekundę pomiędzy każdą wklejką.",
"Poczekaj %d sekund pomiędzy każdą wklejką.", "Poczekaj %d sekund pomiędzy każdą wklejką.",
"Poczekaj %d sekund pomiędzy każdą wklejką.", "Poczekaj %d sekund pomiędzy każdą wklejką.",
"Poczekaj %d sekund pomiędzy każdą wklejką.",
"Poczekaj %d sekund pomiędzy każdą wklejką.",
"Poczekaj %d sekund pomiędzy każdą wklejką." "Poczekaj %d sekund pomiędzy każdą wklejką."
], ],
"Paste is limited to %s of encrypted data.": "Wklejka jest limitowana do %s zaszyfrowanych danych.", "Paste is limited to %s of encrypted data.": "Wklejka jest limitowana do %s zaszyfrowanych danych.",
@ -25,7 +26,7 @@
"JavaScript is required for %s to work. Sorry for the inconvenience.": "Do działania %sa jest wymagany JavaScript. Przepraszamy za tę niedogodność.", "JavaScript is required for %s to work. Sorry for the inconvenience.": "Do działania %sa jest wymagany JavaScript. Przepraszamy za tę niedogodność.",
"%s requires a modern browser to work.": "%s wymaga do działania nowoczesnej przeglądarki.", "%s requires a modern browser to work.": "%s wymaga do działania nowoczesnej przeglądarki.",
"New": "Nowa", "New": "Nowa",
"Send": "Wyślij", "Create": "Stwórz",
"Clone": "Sklonuj", "Clone": "Sklonuj",
"Raw text": "Czysty tekst", "Raw text": "Czysty tekst",
"Expires": "Wygasa za", "Expires": "Wygasa za",
@ -35,12 +36,16 @@
"Discussion": "Dyskusja", "Discussion": "Dyskusja",
"Toggle navigation": "Przełącz nawigację", "Toggle navigation": "Przełącz nawigację",
"%d seconds": [ "%d seconds": [
"%d second",
"%d second",
"%d second", "%d second",
"%d second", "%d second",
"%d second", "%d second",
"%d second" "%d second"
], ],
"%d minutes": [ "%d minutes": [
"%d minut",
"%d minut",
"%d minut", "%d minut",
"%d minut", "%d minut",
"%d minut", "%d minut",
@ -50,27 +55,37 @@
"%d godzina", "%d godzina",
"%d godzina", "%d godzina",
"%d godzinę", "%d godzinę",
"%d godzinę",
"%d godzinę",
"%d godzinę" "%d godzinę"
], ],
"%d days": [ "%d days": [
"%d dzień",
"%d dzień",
"%d dzień", "%d dzień",
"%d dzień", "%d dzień",
"%d dzień", "%d dzień",
"%d dzień" "%d dzień"
], ],
"%d weeks": [ "%d weeks": [
"%d tydzień",
"%d tydzień",
"%d tydzień", "%d tydzień",
"%d tydzień", "%d tydzień",
"%d tydzień", "%d tydzień",
"%d tydzień" "%d tydzień"
], ],
"%d months": [ "%d months": [
"%d miesiąc",
"%d miesiąc",
"%d miesiąc", "%d miesiąc",
"%d miesiąc", "%d miesiąc",
"%d miesiąc", "%d miesiąc",
"%d miesiąc" "%d miesiąc"
], ],
"%d years": [ "%d years": [
"%d rok",
"%d rok",
"%d rok", "%d rok",
"%d rok", "%d rok",
"%d rok", "%d rok",
@ -82,30 +97,40 @@
"Ten dokument wygaśnie za %d sekundę.", "Ten dokument wygaśnie za %d sekundę.",
"Ten dokument wygaśnie za %d sekund.", "Ten dokument wygaśnie za %d sekund.",
"Ten dokument wygaśnie za %d sekund.", "Ten dokument wygaśnie za %d sekund.",
"Ten dokument wygaśnie za %d sekund.",
"Ten dokument wygaśnie za %d sekund.",
"Ten dokument wygaśnie za %d sekund." "Ten dokument wygaśnie za %d sekund."
], ],
"This document will expire in %d minutes.": [ "This document will expire in %d minutes.": [
"Ten dokument wygaśnie za %d minutę.", "Ten dokument wygaśnie za %d minutę.",
"Ten dokument wygaśnie za %d minut.", "Ten dokument wygaśnie za %d minut.",
"Ten dokument wygaśnie za %d minut.", "Ten dokument wygaśnie za %d minut.",
"Ten dokument wygaśnie za %d minut.",
"Ten dokument wygaśnie za %d minut.",
"Ten dokument wygaśnie za %d minut." "Ten dokument wygaśnie za %d minut."
], ],
"This document will expire in %d hours.": [ "This document will expire in %d hours.": [
"Ten dokument wygaśnie za godzinę.", "Ten dokument wygaśnie za godzinę.",
"Ten dokument wygaśnie za %d godzin.", "Ten dokument wygaśnie za %d godzin.",
"Ten dokument wygaśnie za %d godzin.", "Ten dokument wygaśnie za %d godzin.",
"Ten dokument wygaśnie za %d godzin.",
"Ten dokument wygaśnie za %d godzin.",
"Ten dokument wygaśnie za %d godzin." "Ten dokument wygaśnie za %d godzin."
], ],
"This document will expire in %d days.": [ "This document will expire in %d days.": [
"Ten dokument wygaśnie za %d dzień.", "Ten dokument wygaśnie za %d dzień.",
"Ten dokument wygaśnie za %d dni.", "Ten dokument wygaśnie za %d dni.",
"Ten dokument wygaśnie za %d dni.", "Ten dokument wygaśnie za %d dni.",
"Ten dokument wygaśnie za %d dni.",
"Ten dokument wygaśnie za %d dni.",
"Ten dokument wygaśnie za %d dni." "Ten dokument wygaśnie za %d dni."
], ],
"This document will expire in %d months.": [ "This document will expire in %d months.": [
"Ten dokument wygaśnie za miesiąc.", "Ten dokument wygaśnie za miesiąc.",
"Ten dokument wygaśnie za %d miesięcy.", "Ten dokument wygaśnie za %d miesięcy.",
"Ten dokument wygaśnie za %d miesięcy.", "Ten dokument wygaśnie za %d miesięcy.",
"Ten dokument wygaśnie za %d miesięcy.",
"Ten dokument wygaśnie za %d miesięcy.",
"Ten dokument wygaśnie za %d miesięcy." "Ten dokument wygaśnie za %d miesięcy."
], ],
"Please enter the password for this paste:": "Wpisz hasło dla tej wklejki:", "Please enter the password for this paste:": "Wpisz hasło dla tej wklejki:",
@ -126,7 +151,7 @@
"server error or not responding": "błąd serwera lub brak odpowiedzi", "server error or not responding": "błąd serwera lub brak odpowiedzi",
"Could not post comment: %s": "Nie udało się wysłać komentarza: %s", "Could not post comment: %s": "Nie udało się wysłać komentarza: %s",
"Sending paste…": "Wysyłanie wklejki…", "Sending paste…": "Wysyłanie wklejki…",
"Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit [Ctrl]+[c] to copy)</span>": "Twoja wklejka to <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(wciśnij [Ctrl]+[c] aby skopiować)</span>", "Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit <kbd>Ctrl</kbd>+<kbd>c</kbd> to copy)</span>": "Twoja wklejka to <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(wciśnij <kbd>Ctrl</kbd>+<kbd>c</kbd> aby skopiować)</span>",
"Delete data": "Skasuj dane", "Delete data": "Skasuj dane",
"Could not create paste: %s": "Nie udało się utworzyć wklejki: %s", "Could not create paste: %s": "Nie udało się utworzyć wklejki: %s",
"Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)": "Nie udało się odszyfrować wklejki - brak klucza deszyfrującego w adresie (użyłeś skracacza linków, który ucina część adresu?)", "Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)": "Nie udało się odszyfrować wklejki - brak klucza deszyfrującego w adresie (użyłeś skracacza linków, który ucina część adresu?)",
@ -142,7 +167,7 @@
"Format": "Format", "Format": "Format",
"Plain Text": "Czysty tekst", "Plain Text": "Czysty tekst",
"Source Code": "Kod źródłowy", "Source Code": "Kod źródłowy",
"Markdown": "Markdown", "Markdown": "Znakowanie",
"Download attachment": "Pobierz załącznik", "Download attachment": "Pobierz załącznik",
"Cloned: '%s'": "Sklonowano: '%s'", "Cloned: '%s'": "Sklonowano: '%s'",
"The cloned file '%s' was attached to this paste.": "Sklonowany plik '%s' był dołączony do tej wklejki.", "The cloned file '%s' was attached to this paste.": "Sklonowany plik '%s' był dołączony do tej wklejki.",
@ -156,7 +181,7 @@
"Shorten URL": "Skróć adres URL", "Shorten URL": "Skróć adres URL",
"Editor": "Edytować", "Editor": "Edytować",
"Preview": "Podgląd", "Preview": "Podgląd",
"%s requires the PATH to end in a \"%s\". Please update the PATH in your index.php.": "%s requires the PATH to end in a \"%s\". Please update the PATH in your index.php.", "%s requires the PATH to end in a \"%s\". Please update the PATH in your index.php.": "%s wymaga zmiennej PATH zakończonej w \"%s\". Zaktualizuj zmienną PATH w index.php.",
"Decrypt": "Odszyfruj", "Decrypt": "Odszyfruj",
"Enter password": "Wpisz hasło", "Enter password": "Wpisz hasło",
"Loading…": "Wczytywanie…", "Loading…": "Wczytywanie…",
@ -166,28 +191,41 @@
"+++ no paste text +++": "+++ brak wklejonego tekstu +++", "+++ no paste text +++": "+++ brak wklejonego tekstu +++",
"Could not get paste data: %s": "Nie można było pobrać danych wklejki: %s", "Could not get paste data: %s": "Nie można było pobrać danych wklejki: %s",
"QR code": "Kod QR", "QR code": "Kod QR",
"This website is using an insecure HTTP connection! Please use it only for testing.": "This website is using an insecure HTTP connection! Please use it only for testing.", "This website is using an insecure HTTP connection! Please use it only for testing.": "Ta witryna używa niezabezpieczonego połączenia HTTP! Używaj jej wyłącznie do testowania.",
"For more information <a href=\"%s\">see this FAQ entry</a>.": "For more information <a href=\"%s\">see this FAQ entry</a>.", "For more information <a href=\"%s\">see this FAQ entry</a>.": "Aby uzyskać więcej informacji, <a href=\"%s\">sprawdź to często zadawane pytanie</a>.",
"Your browser may require an HTTPS connection to support the WebCrypto API. Try <a href=\"%s\">switching to HTTPS</a>.": "Your browser may require an HTTPS connection to support the WebCrypto API. Try <a href=\"%s\">switching to HTTPS</a>.", "Your browser may require an HTTPS connection to support the WebCrypto API. Try <a href=\"%s\">switching to HTTPS</a>.": "Twoja przeglądarka może wymagać połączenia HTTPS do obsługi API WebCrypto. Wypróbuj <a href=\"%s\">przełączenie na HTTPS</a>.",
"Your browser doesn't support WebAssembly, used for zlib compression. You can create uncompressed documents, but can't read compressed ones.": "Your browser doesn't support WebAssembly, used for zlib compression. You can create uncompressed documents, but can't read compressed ones.", "Your browser doesn't support WebAssembly, used for zlib compression. You can create uncompressed documents, but can't read compressed ones.": "Twoja przeglądarka nie obsługuje WebAssembly używanego do kompresji zlib. Możesz utworzyć nieskompresowane dokumenty, ale nie możesz odczytać skompresowanych.",
"waiting on user to provide a password": "waiting on user to provide a password", "waiting on user to provide a password": "oczekiwanie na podanie hasła przez użytkownika",
"Could not decrypt data. Did you enter a wrong password? Retry with the button at the top.": "Could not decrypt data. Did you enter a wrong password? Retry with the button at the top.", "Could not decrypt data. Did you enter a wrong password? Retry with the button at the top.": "Błąd odszyfrowywania danych. Czy wprowadzono niepoprawne hasło? Spróbuj ponownie, używając przycisku na górze.",
"Retry": "Retry", "Retry": "Ponów",
"Showing raw text…": "Showing raw text…", "Showing raw text…": "Pokazywanie nieprzetworzonego tekstu…",
"Notice:": "Notice:", "Notice:": "Uwaga:",
"This link will expire after %s.": "This link will expire after %s.", "This link will expire after %s.": "Ten odnośnik wygaśnie po %s.",
"This link can only be accessed once, do not use back or refresh button in your browser.": "This link can only be accessed once, do not use back or refresh button in your browser.", "This link can only be accessed once, do not use back or refresh button in your browser.": "Tego odnośnika można użyć tylko jeden raz. Nie cofaj ani nie odświeżaj strony w przeglądarce.",
"Link:": "Link:", "Link:": "Odnośnik:",
"Recipient may become aware of your timezone, convert time to UTC?": "Recipient may become aware of your timezone, convert time to UTC?", "Recipient may become aware of your timezone, convert time to UTC?": "Odbiorca może uzyskać informację o twojej strefie czasowej. Zamienić czas na UTC?",
"Use Current Timezone": "Use Current Timezone", "Use Current Timezone": "Użyj bieżącej strefy czasowej",
"Convert To UTC": "Convert To UTC", "Convert To UTC": "Zamień na UTC",
"Close": "Close", "Close": "Zamknij",
"Encrypted note on %s": "Encrypted note on %s", "Encrypted note on %s": "Zaszyfrowana notatka na %s",
"Visit this link to see the note. Giving the URL to anyone allows them to access the note, too.": "Visit this link to see the note. Giving the URL to anyone allows them to access the note, too.", "Visit this link to see the note. Giving the URL to anyone allows them to access the note, too.": "Naciśnij tej odnośnik, aby zobaczyć notatkę. Każda osoba z dostępem do tego adresu URL również może zobaczyć tę notatkę.",
"URL shortener may expose your decrypt key in URL.": "URL shortener may expose your decrypt key in URL.", "URL shortener may expose your decrypt key in URL.": "Skrócenie adresu URL może ujawnić Twój klucz odszyfrowujący w adresie URL.",
"Save paste": "Save paste", "Save paste": "Zapisz wklejenie",
"Your IP is not authorized to create pastes.": "Your IP is not authorized to create pastes.", "Your IP is not authorized to create pastes.": "Twój adres IP nie jest upoważniony do tworzenia wklejeń.",
"Trying to shorten a URL that isn't pointing at our instance.": "Trying to shorten a URL that isn't pointing at our instance.", "Trying to shorten a URL that isn't pointing at our instance.": "Próba skrócenia adresu URL wskazującego na inną instancję.",
"Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".": "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".", "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".": "Błąd wywoływania YOURLS. Możliwy błąd konfiguracji, taki jak błędne lub brakujące \"apiurl\" lub \"signature\".",
"Error parsing YOURLS response.": "Error parsing YOURLS response." "Error parsing YOURLS response.": "Błąd przetwarzania odpowiedzi YOURLS.",
"This secret message can only be displayed once. Would you like to see it now?": "Tę tajną wiadomość możesz zobaczyć tylko jeden raz. Czy chcesz to zrobić teraz?",
"Yes, see it": "Tak, pokaż",
"Dark Mode": "Ciemny motyw",
"Error compressing paste, due to missing WebAssembly support.": "Błąd kompresowania wklejenia przez brak obsługi WebAssembly.",
"Error decompressing paste, your browser does not support WebAssembly. Please use another browser to view this paste.": "Błąd dekompresowania wklejenia przez brak obsługi WebAssembly przez przeglądarkę. Użyj innej przeglądarki, aby zobaczyć to wklejenie.",
"Start over": "Zacznij od nowa",
"Paste copied to clipboard": "Wklejka skopiowana do schowka",
"To copy paste press on the copy button or use the clipboard shortcut <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>": "Aby skopiować wklejkę, naciśnij przycisk kopiowania lub użyj skrótu schowka <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>",
"Copy link": "Kopiuj link",
"Link copied to clipboard": "Link został skopiowany do schowka",
"Paste text": "Wklej tekst",
"Tabulator key serves as character (Hit <kbd>Ctrl</kbd>+<kbd>m</kbd> or <kbd>Esc</kbd> to toggle)": "Klawisz Tabulatora służy jako znak (przytrzymaj <kbd>Ctrl</kbd>+<kbd>m</kbd> lub <kbd>Esc</kbd> aby przełączać)",
"Theme": "Motyw"
} }

View File

@ -3,7 +3,6 @@
"%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.": "%s é um serviço minimalista e de código aberto do tipo \"pastebin\", em que o servidor tem zero conhecimento dos dados copiados. Os dados são cifrados e decifrados %sno navegador%s usando 256 bits AES.", "%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.": "%s é um serviço minimalista e de código aberto do tipo \"pastebin\", em que o servidor tem zero conhecimento dos dados copiados. Os dados são cifrados e decifrados %sno navegador%s usando 256 bits AES.",
"More information on the <a href=\"https://privatebin.info/\">project page</a>.": "Mais informações na <a href=\"https://privatebin.info/\">página do projeto</a>.", "More information on the <a href=\"https://privatebin.info/\">project page</a>.": "Mais informações na <a href=\"https://privatebin.info/\">página do projeto</a>.",
"Because ignorance is bliss": "Porque a ignorância é uma benção", "Because ignorance is bliss": "Porque a ignorância é uma benção",
"en": "pt",
"Paste does not exist, has expired or has been deleted.": "A cópia não existe, expirou ou já foi excluída.", "Paste does not exist, has expired or has been deleted.": "A cópia não existe, expirou ou já foi excluída.",
"%s requires php %s or above to work. Sorry.": "%s requer php %s ou superior para funcionar. Desculpa.", "%s requires php %s or above to work. Sorry.": "%s requer php %s ou superior para funcionar. Desculpa.",
"%s requires configuration section [%s] to be present in configuration file.": "%s requer que a seção de configuração [% s] esteja no arquivo de configuração.", "%s requires configuration section [%s] to be present in configuration file.": "%s requer que a seção de configuração [% s] esteja no arquivo de configuração.",
@ -11,6 +10,8 @@
"Por favor espere %d segundo entre cada publicação.", "Por favor espere %d segundo entre cada publicação.",
"Por favor espere %d segundos entre cada publicação.", "Por favor espere %d segundos entre cada publicação.",
"Por favor espere %d segundos entre cada publicação.", "Por favor espere %d segundos entre cada publicação.",
"Por favor espere %d segundos entre cada publicação.",
"Por favor espere %d segundos entre cada publicação.",
"Por favor espere %d segundos entre cada publicação." "Por favor espere %d segundos entre cada publicação."
], ],
"Paste is limited to %s of encrypted data.": "A cópia está limitada a %s de dados cifrados.", "Paste is limited to %s of encrypted data.": "A cópia está limitada a %s de dados cifrados.",
@ -25,7 +26,7 @@
"JavaScript is required for %s to work. Sorry for the inconvenience.": "JavaScript é necessário para que %s funcione. Pedimos desculpas pela inconveniência.", "JavaScript is required for %s to work. Sorry for the inconvenience.": "JavaScript é necessário para que %s funcione. Pedimos desculpas pela inconveniência.",
"%s requires a modern browser to work.": "%s requer um navegador moderno para funcionar.", "%s requires a modern browser to work.": "%s requer um navegador moderno para funcionar.",
"New": "Novo", "New": "Novo",
"Send": "Enviar", "Create": "Criar",
"Clone": "Clonar", "Clone": "Clonar",
"Raw text": "Texto sem formato", "Raw text": "Texto sem formato",
"Expires": "Expirar em", "Expires": "Expirar em",
@ -38,42 +39,56 @@
"%d segundo", "%d segundo",
"%d segundos", "%d segundos",
"%d segundos", "%d segundos",
"%d segundos",
"%d segundos",
"%d segundos" "%d segundos"
], ],
"%d minutes": [ "%d minutes": [
"%d minuto", "%d minuto",
"%d minutos", "%d minutos",
"%d minutos", "%d minutos",
"%d minutos",
"%d minutos",
"%d minutos" "%d minutos"
], ],
"%d hours": [ "%d hours": [
"%d hora", "%d hora",
"%d horas", "%d horas",
"%d horas (2° plural)", "%d horas",
"%d horas",
"%d horas",
"%d horas" "%d horas"
], ],
"%d days": [ "%d days": [
"%d dia", "%d dia",
"%d dias", "%d dias",
"%d dias", "%d dias",
"%d dias",
"%d dias",
"%d dias" "%d dias"
], ],
"%d weeks": [ "%d weeks": [
"%d semana", "%d semana",
"%d semanas", "%d semanas",
"%d semanas", "%d semanas",
"%d semanas",
"%d semanas",
"%d semanas" "%d semanas"
], ],
"%d months": [ "%d months": [
"%d mês", "%d mês",
"%d meses", "%d meses",
"%d meses", "%d meses",
"%d meses",
"%d meses",
"%d meses" "%d meses"
], ],
"%d years": [ "%d years": [
"%d ano", "%d ano",
"%d anos", "%d anos",
"%d anos", "%d anos",
"%d anos",
"%d anos",
"%d anos" "%d anos"
], ],
"Never": "Nunca", "Never": "Nunca",
@ -82,30 +97,40 @@
"Este documento irá expirar em um segundo.", "Este documento irá expirar em um segundo.",
"Este documento irá expirar em %d segundos.", "Este documento irá expirar em %d segundos.",
"Este documento irá expirar em %d segundos.", "Este documento irá expirar em %d segundos.",
"Este documento irá expirar em %d segundos.",
"Este documento irá expirar em %d segundos.",
"Este documento irá expirar em %d segundos." "Este documento irá expirar em %d segundos."
], ],
"This document will expire in %d minutes.": [ "This document will expire in %d minutes.": [
"Este documento irá expirar em um minuto.", "Este documento irá expirar em um minuto.",
"Este documento irá expirar em %d minutos.", "Este documento irá expirar em %d minutos.",
"Este documento irá expirar em %d minutos.", "Este documento irá expirar em %d minutos.",
"Este documento irá expirar em %d minutos.",
"Este documento irá expirar em %d minutos.",
"Este documento irá expirar em %d minutos." "Este documento irá expirar em %d minutos."
], ],
"This document will expire in %d hours.": [ "This document will expire in %d hours.": [
"Este documento irá expirar em uma hora.", "Este documento irá expirar em uma hora.",
"Este documento irá expirar em %d horas.", "Este documento irá expirar em %d horas.",
"Este documento irá expirar em %d horas.", "Este documento irá expirar em %d horas.",
"Este documento irá expirar em %d horas.",
"Este documento irá expirar em %d horas.",
"Este documento irá expirar em %d horas." "Este documento irá expirar em %d horas."
], ],
"This document will expire in %d days.": [ "This document will expire in %d days.": [
"Este documento irá expirar em um dia.", "Este documento irá expirar em um dia.",
"Este documento irá expirar em %d dias.", "Este documento irá expirar em %d dias.",
"Este documento irá expirar em %d dias.", "Este documento irá expirar em %d dias.",
"Este documento irá expirar em %d dias.",
"Este documento irá expirar em %d dias.",
"Este documento irá expirar em %d dias." "Este documento irá expirar em %d dias."
], ],
"This document will expire in %d months.": [ "This document will expire in %d months.": [
"Este documento irá expirar em um mês.", "Este documento irá expirar em um mês.",
"Este documento irá expirar em %d meses.", "Este documento irá expirar em %d meses.",
"Este documento irá expirar em %d meses.", "Este documento irá expirar em %d meses.",
"Este documento irá expirar em %d meses.",
"Este documento irá expirar em %d meses.",
"Este documento irá expirar em %d meses." "Este documento irá expirar em %d meses."
], ],
"Please enter the password for this paste:": "Por favor, digite a senha para essa cópia:", "Please enter the password for this paste:": "Por favor, digite a senha para essa cópia:",
@ -126,7 +151,7 @@
"server error or not responding": "Servidor em erro ou não responsivo", "server error or not responding": "Servidor em erro ou não responsivo",
"Could not post comment: %s": "Não foi possível publicar o comentário: %s", "Could not post comment: %s": "Não foi possível publicar o comentário: %s",
"Sending paste…": "Enviando cópia…", "Sending paste…": "Enviando cópia…",
"Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit [Ctrl]+[c] to copy)</span>": "Sua cópia é <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Pressione [Ctrl]+[c] para copiar)</span>", "Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit <kbd>Ctrl</kbd>+<kbd>c</kbd> to copy)</span>": "Sua cópia é <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Pressione <kbd>Ctrl</kbd>+<kbd>c</kbd> para copiar)</span>",
"Delete data": "Excluir dados", "Delete data": "Excluir dados",
"Could not create paste: %s": "Não foi possível criar cópia: %s", "Could not create paste: %s": "Não foi possível criar cópia: %s",
"Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)": "Não foi possível decifrar a cópia: chave de decriptografia ausente na URL (Você utilizou um redirecionador ou encurtador de URL que removeu parte dela?)", "Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)": "Não foi possível decifrar a cópia: chave de decriptografia ausente na URL (Você utilizou um redirecionador ou encurtador de URL que removeu parte dela?)",
@ -184,10 +209,23 @@
"Close": "Fechar", "Close": "Fechar",
"Encrypted note on %s": "Nota criptografada no %s", "Encrypted note on %s": "Nota criptografada no %s",
"Visit this link to see the note. Giving the URL to anyone allows them to access the note, too.": "Visite esse link para ver a nota. Dar a URL para qualquer um permite que eles também acessem a nota.", "Visit this link to see the note. Giving the URL to anyone allows them to access the note, too.": "Visite esse link para ver a nota. Dar a URL para qualquer um permite que eles também acessem a nota.",
"URL shortener may expose your decrypt key in URL.": "URL shortener may expose your decrypt key in URL.", "URL shortener may expose your decrypt key in URL.": "Encurtador de URL pode expor sua chave de descriptografia em URL.",
"Save paste": "Salvar cópia", "Save paste": "Salvar cópia",
"Your IP is not authorized to create pastes.": "Seu IP não está autorizado a criar cópias.", "Your IP is not authorized to create pastes.": "Seu IP não está autorizado a criar cópias.",
"Trying to shorten a URL that isn't pointing at our instance.": "Tentando encurtar uma URL que não aponta para a nossa instância.", "Trying to shorten a URL that isn't pointing at our instance.": "Tentando encurtar uma URL que não aponta para a nossa instância.",
"Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".": "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".", "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".": "Erro ao chamar YOURLS. Provavelmente um problema de configuração, como errado ou faltando \"apiurl\" ou \"signature\".",
"Error parsing YOURLS response.": "Error parsing YOURLS response." "Error parsing YOURLS response.": "Erro ao analisar a resposta do YOURLS.",
"This secret message can only be displayed once. Would you like to see it now?": "Esta mensagem secreta só pode ser exibida uma vez. Gostaria de vê-la agora?",
"Yes, see it": "Sim, veja",
"Dark Mode": "Modo Noturno",
"Error compressing paste, due to missing WebAssembly support.": "Error compressing paste, due to missing WebAssembly support.",
"Error decompressing paste, your browser does not support WebAssembly. Please use another browser to view this paste.": "Error decompressing paste, your browser does not support WebAssembly. Please use another browser to view this paste.",
"Start over": "Start over",
"Paste copied to clipboard": "Paste copied to clipboard",
"To copy paste press on the copy button or use the clipboard shortcut <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>": "To copy paste press on the copy button or use the clipboard shortcut <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>",
"Copy link": "Copy link",
"Link copied to clipboard": "Link copied to clipboard",
"Paste text": "Paste text",
"Tabulator key serves as character (Hit <kbd>Ctrl</kbd>+<kbd>m</kbd> or <kbd>Esc</kbd> to toggle)": "Tabulator key serves as character (Hit <kbd>Ctrl</kbd>+<kbd>m</kbd> or <kbd>Esc</kbd> to toggle)",
"Theme": "Theme"
} }

231
i18n/ro.json Normal file
View File

@ -0,0 +1,231 @@
{
"PrivateBin": "PrivateBin",
"%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.": "%s este un pastebin online, minimalist și cu sursă deschisă unde serverul are zero acces la datele introduse. Datele sunt criptate/decriptate %sîn browser%s folosind AES cu 256 de biți.",
"More information on the <a href=\"https://privatebin.info/\">project page</a>.": "Mai multe informații pe <a href=\"https://privatebin.info/\">pagina proiectului</a>.",
"Because ignorance is bliss": "Ignoranța este o binecuvântare",
"Paste does not exist, has expired or has been deleted.": "Paste-ul nu există, a expirat sau a fost șters.",
"%s requires php %s or above to work. Sorry.": "%s necesită php %s sau mai nou pentru a funcționa. Scuze.",
"%s requires configuration section [%s] to be present in configuration file.": "%s necesită ca secțiunea de configurare [%s] să fie prezentă în fișierul de configurare.",
"Please wait %d seconds between each post.": [
"Vă rugăm să așteptați %d secundă între fiecare postare",
"Vă rugăm să așteptați %d secunde între fiecare postare",
"Vă rugăm să așteptați %d de secunde între fiecare postare",
"Vă rugăm să așteptați %d de secunde între fiecare postare",
"Vă rugăm să așteptați %d de secunde între fiecare postare",
"Vă rugăm să așteptați %d de secunde între fiecare postare"
],
"Paste is limited to %s of encrypted data.": "Paste-ul este limitat la %s de date criptate.",
"Invalid data.": "Date invalide.",
"You are unlucky. Try again.": "Ați avut ghinion. Încercați din nou.",
"Error saving comment. Sorry.": "Eroare la salvarea comentariului. Ne pare rău.",
"Error saving paste. Sorry.": "Eroare la salvarea paste-ului. Ne pare rău.",
"Invalid paste ID.": "ID paste invalid.",
"Paste is not of burn-after-reading type.": "Paste-ul nu se șterge după citire.",
"Wrong deletion token. Paste was not deleted.": "Token de ștergere incorect. Paste-ul nu a fost șters.",
"Paste was properly deleted.": "Paste-ul a fost șters cu succes.",
"JavaScript is required for %s to work. Sorry for the inconvenience.": "JavaScript este necesar pentru ca %s să funcționeze. Ne cerem scuze pentru neplăceri.",
"%s requires a modern browser to work.": "%s necesită un browser modern pentru a funcționa.",
"New": "Nou",
"Create": "Creați",
"Clone": "Clonați",
"Raw text": "Text brut",
"Expires": "Expiră",
"Burn after reading": "Ștergere după citire",
"Open discussion": "Deschideți discuția",
"Password (recommended)": "Parolă (recomandată)",
"Discussion": "Discuție",
"Toggle navigation": "Comutați navigarea",
"%d seconds": [
"%d secundă",
"%d secunde",
"%d de secunde",
"%d de secunde",
"%d de secunde",
"%d de secunde"
],
"%d minutes": [
"%d minut",
"%d minute",
"%d de minute",
"%d de secunde",
"%d de secunde",
"%d de secunde"
],
"%d hours": [
"%d oră",
"%d ore",
"%d de ore",
"%d de ore",
"%d de ore",
"%d de ore"
],
"%d days": [
"%d zi",
"%d zile",
"%d de zile",
"%d de zile",
"%d de zile",
"%d de zile"
],
"%d weeks": [
"%d săptămână",
"%d săptămână",
"%d săptămâni",
"%d de săptămâni",
"%d de săptămâni",
"%d de săptămâni"
],
"%d months": [
"%d lună",
"%d luni",
"%d de luni",
"%d de luni",
"%d de luni",
"%d de luni"
],
"%d years": [
"%d an",
"%d ani",
"%d de ani",
"%d de ani",
"%d de ani",
"%d de ani"
],
"Never": "Niciodată",
"Note: This is a test service: Data may be deleted anytime. Kittens will die if you abuse this service.": "Notă: Acesta este un serviciu de test: Datele ar putea fi șterse oricând. Vor muri niște pisicuțe dacă abuzați acest serviciu.",
"This document will expire in %d seconds.": [
"Acest document va expira în %d secundă.",
"Acest document va expira în %d secunde.",
"Acest document va expira în %d de secunde.",
"Acest document va expira în %d de secunde.",
"Acest document va expira în %d de secunde.",
"Acest document va expira în %d de secunde."
],
"This document will expire in %d minutes.": [
"Acest document va expira în %d minut.",
"Acest document va expira în %d minute.",
"Acest document va expira în %d de minute.",
"Acest document va expira în %d de minute.",
"Acest document va expira în %d de minute.",
"Acest document va expira în %d de minute."
],
"This document will expire in %d hours.": [
"Acest document va expira în %d oră.",
"Acest document va expira în %d ore.",
"Acest document va expira în %d de ore.",
"Acest document va expira în %d de ore.",
"Acest document va expira în %d de ore.",
"Acest document va expira în %d de ore."
],
"This document will expire in %d days.": [
"Acest document va expira în %d zi.",
"Acest document va expira în %d zile.",
"Acest document va expira în %d de zile.",
"Acest document va expira în %d de zile.",
"Acest document va expira în %d de zile.",
"Acest document va expira în %d de zile."
],
"This document will expire in %d months.": [
"Acest document va expira în %d lună.",
"Acest document va expira în %d luni.",
"Acest document va expira în %d de luni.",
"Acest document va expira în %d de luni.",
"Acest document va expira în %d de luni.",
"Acest document va expira în %d de luni."
],
"Please enter the password for this paste:": "Va rugăm să introduceți parola pentru acest paste:",
"Could not decrypt data (Wrong key?)": "Nu s-au putut decripta datele (Cheie gresită?)",
"Could not delete the paste, it was not stored in burn after reading mode.": "Nu s-a putut șterge paste-ul, nu a fost stocat în modul de ștergere după citire.",
"FOR YOUR EYES ONLY. Don't close this window, this message can't be displayed again.": "NUMAI PENTRU OCHII DVS. Nu închideți această fereastră, acest mesaj nu poate fi afișat din nou.",
"Could not decrypt comment; Wrong key?": "Nu s-a putut decripta comentariul; Cheie greșită?",
"Reply": "Răspundeți",
"Anonymous": "Anonim",
"Avatar generated from IP address": "Avatar generat din adresa IP",
"Add comment": "Adăugați un comentariu",
"Optional nickname…": "Poreclă opțională…",
"Post comment": "Postați comentariul",
"Sending comment…": "Se trimite comentariul…",
"Comment posted.": "Comentariul a fost postat.",
"Could not refresh display: %s": "Nu s-a putut actualiza afișarea: %s",
"unknown status": "stare necunoscută",
"server error or not responding": "eroare de server sau nu răspunde",
"Could not post comment: %s": "Nu s-a putut posta comentariul: %s",
"Sending paste…": "Se trimite paste-ul…",
"Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit <kbd>Ctrl</kbd>+<kbd>c</kbd> to copy)</span>": "Paste-ul dvs. este <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Apăsați <kbd>Ctrl</kbd>+<kbd>c</kbd> pentru a copia)</span>",
"Delete data": "Ștergeți datele",
"Could not create paste: %s": "Nu s-a putut crea paste-ul: %s",
"Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)": "Nu s-a putut decripta paste-ul: Cheia de decriptare lipsește din URL (Ați folosit un redirector sau un scurtător de URL care a tăiat o parte din URL?)",
"B": "B",
"KiB": "KiB",
"MiB": "MiB",
"GiB": "GiB",
"TiB": "TiB",
"PiB": "PiB",
"EiB": "EiB",
"ZiB": "ZiB",
"YiB": "YiB",
"Format": "Formatare",
"Plain Text": "Text neformatat",
"Source Code": "Cod sursă",
"Markdown": "Markdown",
"Download attachment": "Descărcați fișierul atașat",
"Cloned: '%s'": "S-a clonat: '%s'",
"The cloned file '%s' was attached to this paste.": "Fișierul clonat '%s' a fost atașat la acest paste.",
"Attach a file": "Atașați un fișier",
"alternatively drag & drop a file or paste an image from the clipboard": "alternativ, trageți și plasați un fișier sau lipiți o imagine din clipboard",
"File too large, to display a preview. Please download the attachment.": "Fișierul este prea mare pentru a afișa o previzualizare. Vă rugăm să descărcaţi fișierul.",
"Remove attachment": "Eliminați fișierul atașat",
"Your browser does not support uploading encrypted files. Please use a newer browser.": "Browserul dvs. nu acceptă încărcarea fișierelor criptate. Vă rugăm să folosiți un browser mai nou.",
"Invalid attachment.": "Fișier invalid.",
"Options": "Opţiuni",
"Shorten URL": "Scurtați URL-ul",
"Editor": "Editor",
"Preview": "Previzualizare",
"%s requires the PATH to end in a \"%s\". Please update the PATH in your index.php.": "%s necesită ca PATH să se termine cu \"%s\". Vă rugăm să actualizați PATH în index.php.",
"Decrypt": "Decriptare",
"Enter password": "Introduceţi parola",
"Loading…": "Se încarcă…",
"Decrypting paste…": "Se decriptează paste-ul…",
"Preparing new paste…": "Se pregătește un paste nou…",
"In case this message never disappears please have a look at <a href=\"%s\">this FAQ for information to troubleshoot</a>.": "În cazul în care acest mesaj nu dispare niciodată, vă rugăm să aruncaţi o privire la <a href=\"%s\">acest FAQ pentru informații de depanare</a>.",
"+++ no paste text +++": "+++ fără text +++",
"Could not get paste data: %s": "Nu s-a putut obține datele paste-ului: %s",
"QR code": "Cod QR",
"This website is using an insecure HTTP connection! Please use it only for testing.": "Acest website folosește o conexiune HTTP nesigură! Vă rugăm să îl folosiți doar pentru teste.",
"For more information <a href=\"%s\">see this FAQ entry</a>.": "Pentru mai multe informații <a href=\"%s\">a se vedea secțiunea FAQ</a>.",
"Your browser may require an HTTPS connection to support the WebCrypto API. Try <a href=\"%s\">switching to HTTPS</a>.": "Este posibil ca browserul dvs. să necesite o conexiune HTTPS pentru a suporta API-ul WebCrypto. Încercați să <a href=\"%s\">comutați la HTTPS</a>.",
"Your browser doesn't support WebAssembly, used for zlib compression. You can create uncompressed documents, but can't read compressed ones.": "Browserul dvs. nu acceptă WebAssembly folosit pentru compresia zlib. Puteți crea documente necompresate, dar nu le puteți citi pe cele compresate.",
"waiting on user to provide a password": "se așteaptă ca utilizatorul să furnizeze o parolă",
"Could not decrypt data. Did you enter a wrong password? Retry with the button at the top.": "Nu s-au putut decripta datele. Ați introdus parola greșită? Reîncercați folosind butonul de sus.",
"Retry": "Reîncercați",
"Showing raw text…": "Se afișează textul brut…",
"Notice:": "Observaţie:",
"This link will expire after %s.": "Acest link va expira după %s.",
"This link can only be accessed once, do not use back or refresh button in your browser.": "Acest link poate fi accesat o singură dată, nu folosiți butonul înapoi sau reîmprospătare din browserul dvs.",
"Link:": "Link:",
"Recipient may become aware of your timezone, convert time to UTC?": "Destinatarul vă poate afla fusul dvs. orar, convertiți timpul în UTC?",
"Use Current Timezone": "Se folosește fusul orar actual",
"Convert To UTC": "Convertire la UTC",
"Close": "Închideți",
"Encrypted note on %s": "Notă criptată pe %s",
"Visit this link to see the note. Giving the URL to anyone allows them to access the note, too.": "Accesați acest link pentru a vedea nota. Nota poate fi accesată de către oricine care are acest URL.",
"URL shortener may expose your decrypt key in URL.": "Scurtătorul de URL ar putea să vă expună cheia de decriptare din URL.",
"Save paste": "Salvați paste-ul",
"Your IP is not authorized to create pastes.": "Adresa dvs. IP nu este autorizată să creeze paste-uri.",
"Trying to shorten a URL that isn't pointing at our instance.": "Încercarea de a scurta un URL care nu direcționează spre instanța noastră.",
"Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".": "Eroare la apelarea YOURLS. Probabil o problemă de configurare, cum ar fi \"apiurl\" sau \"signature\" greșite sau lipsă.",
"Error parsing YOURLS response.": "Eroare la analizarea răspunsului YOURLS.",
"This secret message can only be displayed once. Would you like to see it now?": "Acest mesaj secret poate fi afișat o singură dată. Doriți să îl vedeți acum?",
"Yes, see it": "Da, vezi",
"Dark Mode": "Mod întunecat",
"Error compressing paste, due to missing WebAssembly support.": "Eroare la compresia paste-ului din cauza incompatibilității cu WebAssembly.",
"Error decompressing paste, your browser does not support WebAssembly. Please use another browser to view this paste.": "Eroare la deschiderea paste-ului, browserul dvs. nu acceptă WebAssembly. Vă rugăm să utilizați un alt browser pentru a vedea acest paste.",
"Start over": "Start over",
"Paste copied to clipboard": "Paste copied to clipboard",
"To copy paste press on the copy button or use the clipboard shortcut <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>": "To copy paste press on the copy button or use the clipboard shortcut <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>",
"Copy link": "Copy link",
"Link copied to clipboard": "Link copied to clipboard",
"Paste text": "Paste text",
"Tabulator key serves as character (Hit <kbd>Ctrl</kbd>+<kbd>m</kbd> or <kbd>Esc</kbd> to toggle)": "Tabulator key serves as character (Hit <kbd>Ctrl</kbd>+<kbd>m</kbd> or <kbd>Esc</kbd> to toggle)",
"Theme": "Theme"
}

View File

@ -3,7 +3,6 @@
"%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.": "%s это минималистичный Open Source проект для создания заметок, где сервер не знает ничего о сохраняемых данных. Данные шифруются/расшифровываются %sв браузере%s с использованием 256 битного шифрования AES.", "%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.": "%s это минималистичный Open Source проект для создания заметок, где сервер не знает ничего о сохраняемых данных. Данные шифруются/расшифровываются %sв браузере%s с использованием 256 битного шифрования AES.",
"More information on the <a href=\"https://privatebin.info/\">project page</a>.": "Подробнее можно узнать на <a href=\"https://privatebin.info/\">сайте проекта</a>.", "More information on the <a href=\"https://privatebin.info/\">project page</a>.": "Подробнее можно узнать на <a href=\"https://privatebin.info/\">сайте проекта</a>.",
"Because ignorance is bliss": "Потому что неведение - благо", "Because ignorance is bliss": "Потому что неведение - благо",
"en": "ru",
"Paste does not exist, has expired or has been deleted.": "Запись не существует, просрочена или была удалена.", "Paste does not exist, has expired or has been deleted.": "Запись не существует, просрочена или была удалена.",
"%s requires php %s or above to work. Sorry.": "Для работы %s требуется php %s или выше. Извините.", "%s requires php %s or above to work. Sorry.": "Для работы %s требуется php %s или выше. Извините.",
"%s requires configuration section [%s] to be present in configuration file.": "%s необходимо наличие секции [%s] в конфигурационном файле.", "%s requires configuration section [%s] to be present in configuration file.": "%s необходимо наличие секции [%s] в конфигурационном файле.",
@ -11,6 +10,8 @@
"Пожалуйста, ожидайте %d секунду между каждыми записями.", "Пожалуйста, ожидайте %d секунду между каждыми записями.",
"Пожалуйста, ожидайте %d секунды между каждыми записями.", "Пожалуйста, ожидайте %d секунды между каждыми записями.",
"Пожалуйста, ожидайте %d секунд между каждыми записями.", "Пожалуйста, ожидайте %d секунд между каждыми записями.",
"Пожалуйста, ожидайте %d секунд между каждыми записями.",
"Пожалуйста, ожидайте %d секунд между каждыми записями.",
"Пожалуйста, ожидайте %d секунд между каждыми записями." "Пожалуйста, ожидайте %d секунд между каждыми записями."
], ],
"Paste is limited to %s of encrypted data.": "Размер записи ограничен %s зашифрованных данных.", "Paste is limited to %s of encrypted data.": "Размер записи ограничен %s зашифрованных данных.",
@ -25,7 +26,7 @@
"JavaScript is required for %s to work. Sorry for the inconvenience.": "Для работы %s требуется включенный JavaScript. Приносим извинения за неудобства.", "JavaScript is required for %s to work. Sorry for the inconvenience.": "Для работы %s требуется включенный JavaScript. Приносим извинения за неудобства.",
"%s requires a modern browser to work.": "Для работы %s требуется более современный браузер.", "%s requires a modern browser to work.": "Для работы %s требуется более современный браузер.",
"New": "Новая запись", "New": "Новая запись",
"Send": "Отправить", "Create": "Создать",
"Clone": "Дублировать", "Clone": "Дублировать",
"Raw text": "Исходный текст", "Raw text": "Исходный текст",
"Expires": "Удалить через", "Expires": "Удалить через",
@ -38,42 +39,56 @@
"%d секунду", "%d секунду",
"%d секунды", "%d секунды",
"%d секунд", "%d секунд",
"%d секунд",
"%d секунд",
"%d секунд" "%d секунд"
], ],
"%d minutes": [ "%d minutes": [
"%d минуту", "%d минуту",
"%d минуты", "%d минуты",
"%d минут", "%d минут",
"%d минут",
"%d минут",
"%d минут" "%d минут"
], ],
"%d hours": [ "%d hours": [
"%d час", "%d час",
"%d часа", "%d часа",
"%d часов", "%d часов",
"%d часов",
"%d часов",
"%d часов" "%d часов"
], ],
"%d days": [ "%d days": [
"%d день", "%d день",
"%d дня", "%d дня",
"%d дней", "%d дней",
"%d дней",
"%d дней",
"%d дней" "%d дней"
], ],
"%d weeks": [ "%d weeks": [
"%d неделю", "%d неделю",
"%d недели", "%d недели",
"%d недель", "%d недель",
"%d недель",
"%d недель",
"%d недель" "%d недель"
], ],
"%d months": [ "%d months": [
"%d месяц", "%d месяц",
"%d месяца", "%d месяца",
"%d месяцев", "%d месяцев",
"%d месяцев",
"%d месяцев",
"%d месяцев" "%d месяцев"
], ],
"%d years": [ "%d years": [
"%d год", "%d год",
"%d года", "%d года",
"%d лет", "%d лет",
"%d лет",
"%d лет",
"%d лет" "%d лет"
], ],
"Never": "Никогда", "Never": "Никогда",
@ -82,30 +97,40 @@
"Документ будет удален через %d секунду.", "Документ будет удален через %d секунду.",
"Документ будет удален через %d секунды.", "Документ будет удален через %d секунды.",
"Документ будет удален через %d секунд.", "Документ будет удален через %d секунд.",
"Документ будет удален через %d секунд.",
"Документ будет удален через %d секунд.",
"Документ будет удален через %d секунд." "Документ будет удален через %d секунд."
], ],
"This document will expire in %d minutes.": [ "This document will expire in %d minutes.": [
"Документ будет удален через %d минуту.", "Документ будет удален через %d минуту.",
"Документ будет удален через %d минуты.", "Документ будет удален через %d минуты.",
"Документ будет удален через %d минут.", "Документ будет удален через %d минут.",
"Документ будет удален через %d минут.",
"Документ будет удален через %d минут.",
"Документ будет удален через %d минут." "Документ будет удален через %d минут."
], ],
"This document will expire in %d hours.": [ "This document will expire in %d hours.": [
"Документ будет удален через %d час.", "Документ будет удален через %d час.",
"Документ будет удален через %d часа.", "Документ будет удален через %d часа.",
"Документ будет удален через %d часов.", "Документ будет удален через %d часов.",
"Документ будет удален через %d часов.",
"Документ будет удален через %d часов.",
"Документ будет удален через %d часов." "Документ будет удален через %d часов."
], ],
"This document will expire in %d days.": [ "This document will expire in %d days.": [
"Документ будет удален через %d день.", "Документ будет удален через %d день.",
"Документ будет удален через %d дня.", "Документ будет удален через %d дня.",
"Документ будет удален через %d дней.", "Документ будет удален через %d дней.",
"Документ будет удален через %d дней.",
"Документ будет удален через %d дней.",
"Документ будет удален через %d дней." "Документ будет удален через %d дней."
], ],
"This document will expire in %d months.": [ "This document will expire in %d months.": [
"Документ будет удален через %d месяц.", "Документ будет удален через %d месяц.",
"Документ будет удален через %d месяца.", "Документ будет удален через %d месяца.",
"Документ будет удален через %d месяцев.", "Документ будет удален через %d месяцев.",
"Документ будет удален через %d месяцев.",
"Документ будет удален через %d месяцев.",
"Документ будет удален через %d месяцев." "Документ будет удален через %d месяцев."
], ],
"Please enter the password for this paste:": "Пожалуйста, введите пароль от записи:", "Please enter the password for this paste:": "Пожалуйста, введите пароль от записи:",
@ -126,7 +151,7 @@
"server error or not responding": "ошибка сервера или нет ответа", "server error or not responding": "ошибка сервера или нет ответа",
"Could not post comment: %s": "Не удалось опубликовать комментарий: %s", "Could not post comment: %s": "Не удалось опубликовать комментарий: %s",
"Sending paste…": "Отправка записи…", "Sending paste…": "Отправка записи…",
"Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit [Ctrl]+[c] to copy)</span>": "Ссылка на запись <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Нажмите [Ctrl]+[c], чтобы скопировать ссылку)</span>", "Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit <kbd>Ctrl</kbd>+<kbd>c</kbd> to copy)</span>": "Ссылка на запись <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Нажмите <kbd>Ctrl</kbd>+<kbd>c</kbd>, чтобы скопировать ссылку)</span>",
"Delete data": "Удалить запись", "Delete data": "Удалить запись",
"Could not create paste: %s": "Не удалось опубликовать запись: %s", "Could not create paste: %s": "Не удалось опубликовать запись: %s",
"Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)": "Невозможно расшифровать запись: Ключ расшифровки отсутствует в ссылке (Может быть, вы используете сокращатель ссылок, который удаляет часть ссылки?)", "Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)": "Невозможно расшифровать запись: Ключ расшифровки отсутствует в ссылке (Может быть, вы используете сокращатель ссылок, который удаляет часть ссылки?)",
@ -187,7 +212,20 @@
"URL shortener may expose your decrypt key in URL.": "Сервис сокращения ссылок может получить ваш ключ расшифровки из ссылки.", "URL shortener may expose your decrypt key in URL.": "Сервис сокращения ссылок может получить ваш ключ расшифровки из ссылки.",
"Save paste": "Сохранить запись", "Save paste": "Сохранить запись",
"Your IP is not authorized to create pastes.": "Вашему IP адресу не разрешено создавать записи.", "Your IP is not authorized to create pastes.": "Вашему IP адресу не разрешено создавать записи.",
"Trying to shorten a URL that isn't pointing at our instance.": "Trying to shorten a URL that isn't pointing at our instance.", "Trying to shorten a URL that isn't pointing at our instance.": "Попытка сократить URL, который указывает не на наш сервер.",
"Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".": "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".", "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".": "Ошибка обращения к YOURLS. Возможно в конфигурации допущена ошибка, например неверный или отсутствующий параметр \"apiurl\" или \"signature\".",
"Error parsing YOURLS response.": "Error parsing YOURLS response." "Error parsing YOURLS response.": "Ошибка разбора ответа от YOURLS.",
"This secret message can only be displayed once. Would you like to see it now?": "Записи, удаляемые после прочтения, могут быть отображены после загрузки только один раз. Вы хотите открыть её сейчас?",
"Yes, see it": "Да, загрузить",
"Dark Mode": "Тёмная",
"Error compressing paste, due to missing WebAssembly support.": "Error compressing paste, due to missing WebAssembly support.",
"Error decompressing paste, your browser does not support WebAssembly. Please use another browser to view this paste.": "Error decompressing paste, your browser does not support WebAssembly. Please use another browser to view this paste.",
"Start over": "Start over",
"Paste copied to clipboard": "Запись скопирована в буфер обмена",
"To copy paste press on the copy button or use the clipboard shortcut <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>": "Чтобы скопировать запись нажмите на кнопку копирования или используйте комбинацию клавиш <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>",
"Copy link": "Скопировать ссылку",
"Link copied to clipboard": "Ссылка скопирована в буфер обмена",
"Paste text": "Paste text",
"Tabulator key serves as character (Hit <kbd>Ctrl</kbd>+<kbd>m</kbd> or <kbd>Esc</kbd> to toggle)": "Tabulator key serves as character (Hit <kbd>Ctrl</kbd>+<kbd>m</kbd> or <kbd>Esc</kbd> to toggle)",
"Theme": "Тема"
} }

View File

@ -3,11 +3,12 @@
"%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.": "%s je minimalistický, open source online pastebin, kde server nemá žiadne znalosti o vložených údajoch. Údaje sú šifrované/dešifrované %sv prehliadači%s pomocou 256-bitového AES.", "%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.": "%s je minimalistický, open source online pastebin, kde server nemá žiadne znalosti o vložených údajoch. Údaje sú šifrované/dešifrované %sv prehliadači%s pomocou 256-bitového AES.",
"More information on the <a href=\"https://privatebin.info/\">project page</a>.": "Viac informácií na <a href=\"https://privatebin.info/\">stránke projektu</a>.", "More information on the <a href=\"https://privatebin.info/\">project page</a>.": "Viac informácií na <a href=\"https://privatebin.info/\">stránke projektu</a>.",
"Because ignorance is bliss": "Pretože nevedomosť je sladká", "Because ignorance is bliss": "Pretože nevedomosť je sladká",
"en": "sk",
"Paste does not exist, has expired or has been deleted.": "Vložený text neexistuje, jeho platnosť vypršala alebo bol vymazaný.", "Paste does not exist, has expired or has been deleted.": "Vložený text neexistuje, jeho platnosť vypršala alebo bol vymazaný.",
"%s requires php %s or above to work. Sorry.": "%s vyžaduje php %s alebo vyššie. Prepáčte.", "%s requires php %s or above to work. Sorry.": "%s vyžaduje php %s alebo vyššie. Prepáčte.",
"%s requires configuration section [%s] to be present in configuration file.": "%s vyžaduje, aby bola v konfiguračnom súbore prítomná sekcia [%s].", "%s requires configuration section [%s] to be present in configuration file.": "%s vyžaduje, aby bola v konfiguračnom súbore prítomná sekcia [%s].",
"Please wait %d seconds between each post.": [ "Please wait %d seconds between each post.": [
"Počet sekúnd do ďalšieho príspevku: %d",
"Počet sekúnd do ďalšieho príspevku: %d",
"Počet sekúnd do ďalšieho príspevku: %d", "Počet sekúnd do ďalšieho príspevku: %d",
"Počet sekúnd do ďalšieho príspevku: %d", "Počet sekúnd do ďalšieho príspevku: %d",
"Počet sekúnd do ďalšieho príspevku: %d", "Počet sekúnd do ďalšieho príspevku: %d",
@ -25,7 +26,7 @@
"JavaScript is required for %s to work. Sorry for the inconvenience.": "Na fungovanie %s je potrebný JavaScript. Ospravedlňujeme sa za nepríjemnosti.", "JavaScript is required for %s to work. Sorry for the inconvenience.": "Na fungovanie %s je potrebný JavaScript. Ospravedlňujeme sa za nepríjemnosti.",
"%s requires a modern browser to work.": "%s vyžaduje na fungovanie moderný prehliadač.", "%s requires a modern browser to work.": "%s vyžaduje na fungovanie moderný prehliadač.",
"New": "Nový", "New": "Nový",
"Send": "Odoslať", "Create": "Vytvoriť",
"Clone": "Klonovať", "Clone": "Klonovať",
"Raw text": "Surový text", "Raw text": "Surový text",
"Expires": "Expirácia", "Expires": "Expirácia",
@ -38,42 +39,56 @@
"%d sekunda", "%d sekunda",
"%d sekundy", "%d sekundy",
"%d sekúnd", "%d sekúnd",
"%d sekúnd",
"%d sekúnd",
"%d sekúnd" "%d sekúnd"
], ],
"%d minutes": [ "%d minutes": [
"%d minúta", "%d minúta",
"%d minúty", "%d minúty",
"%d minút", "%d minút",
"%d minút",
"%d minút",
"%d minút" "%d minút"
], ],
"%d hours": [ "%d hours": [
"%d hodina", "%d hodina",
"%d hodiny", "%d hodiny",
"%d hodín", "%d hodín",
"%d hodín",
"%d hodín",
"%d hodín" "%d hodín"
], ],
"%d days": [ "%d days": [
"%d deň", "%d deň",
"%d dni", "%d dni",
"%d dní", "%d dní",
"%d dní",
"%d dní",
"%d dní" "%d dní"
], ],
"%d weeks": [ "%d weeks": [
"%d týždeň", "%d týždeň",
"%d týždne", "%d týždne",
"%d týždňov", "%d týždňov",
"%d týždňov",
"%d týždňov",
"%d týždňov" "%d týždňov"
], ],
"%d months": [ "%d months": [
"%d mesiac", "%d mesiac",
"%d mesiace", "%d mesiace",
"%d mesiacov", "%d mesiacov",
"%d mesiacov",
"%d mesiacov",
"%d mesiacov" "%d mesiacov"
], ],
"%d years": [ "%d years": [
"%d rok", "%d rok",
"%d roky", "%d roky",
"%d rokov", "%d rokov",
"%d rokov",
"%d rokov",
"%d rokov" "%d rokov"
], ],
"Never": "Nikdy", "Never": "Nikdy",
@ -82,30 +97,40 @@
"Platnosť tohto dokumentu vyprší o %d sekundu.", "Platnosť tohto dokumentu vyprší o %d sekundu.",
"Platnosť tohto dokumentu vyprší o %d sekundy.", "Platnosť tohto dokumentu vyprší o %d sekundy.",
"Platnosť tohto dokumentu vyprší o %d sekúnd.", "Platnosť tohto dokumentu vyprší o %d sekúnd.",
"Platnosť tohto dokumentu vyprší o %d sekúnd.",
"Platnosť tohto dokumentu vyprší o %d sekúnd.",
"Platnosť tohto dokumentu vyprší o %d sekúnd." "Platnosť tohto dokumentu vyprší o %d sekúnd."
], ],
"This document will expire in %d minutes.": [ "This document will expire in %d minutes.": [
"Platnosť tohto dokumentu vyprší o %d minútu.", "Platnosť tohto dokumentu vyprší o %d minútu.",
"Platnosť tohto dokumentu vyprší o %d minúty.", "Platnosť tohto dokumentu vyprší o %d minúty.",
"Platnosť tohto dokumentu vyprší o %d minút.", "Platnosť tohto dokumentu vyprší o %d minút.",
"Platnosť tohto dokumentu vyprší o %d minút.",
"Platnosť tohto dokumentu vyprší o %d minút.",
"Platnosť tohto dokumentu vyprší o %d minút." "Platnosť tohto dokumentu vyprší o %d minút."
], ],
"This document will expire in %d hours.": [ "This document will expire in %d hours.": [
"Platnosť tohto dokumentu vyprší o %d hodinu.", "Platnosť tohto dokumentu vyprší o %d hodinu.",
"Platnosť tohto dokumentu vyprší o %d hodiny.", "Platnosť tohto dokumentu vyprší o %d hodiny.",
"Platnosť tohto dokumentu vyprší o %d hodín.", "Platnosť tohto dokumentu vyprší o %d hodín.",
"Platnosť tohto dokumentu vyprší o %d hodín.",
"Platnosť tohto dokumentu vyprší o %d hodín.",
"Platnosť tohto dokumentu vyprší o %d hodín." "Platnosť tohto dokumentu vyprší o %d hodín."
], ],
"This document will expire in %d days.": [ "This document will expire in %d days.": [
"Platnosť tohto dokumentu vyprší o %d deň.", "Platnosť tohto dokumentu vyprší o %d deň.",
"Platnosť tohto dokumentu vyprší o %d dni.", "Platnosť tohto dokumentu vyprší o %d dni.",
"Platnosť tohto dokumentu vyprší o %d dní.", "Platnosť tohto dokumentu vyprší o %d dní.",
"Platnosť tohto dokumentu vyprší o %d dní.",
"Platnosť tohto dokumentu vyprší o %d dní.",
"Platnosť tohto dokumentu vyprší o %d dní." "Platnosť tohto dokumentu vyprší o %d dní."
], ],
"This document will expire in %d months.": [ "This document will expire in %d months.": [
"Platnosť tohto dokumentu vyprší o %d mesiac.", "Platnosť tohto dokumentu vyprší o %d mesiac.",
"Platnosť tohto dokumentu vyprší o %d mesiace.", "Platnosť tohto dokumentu vyprší o %d mesiace.",
"Platnosť tohto dokumentu vyprší o %d mesiacov.", "Platnosť tohto dokumentu vyprší o %d mesiacov.",
"Platnosť tohto dokumentu vyprší o %d mesiacov.",
"Platnosť tohto dokumentu vyprší o %d mesiacov.",
"Platnosť tohto dokumentu vyprší o %d mesiacov." "Platnosť tohto dokumentu vyprší o %d mesiacov."
], ],
"Please enter the password for this paste:": "Zadajte prosím heslo:", "Please enter the password for this paste:": "Zadajte prosím heslo:",
@ -126,7 +151,7 @@
"server error or not responding": "chyba servera alebo server neodpovedá", "server error or not responding": "chyba servera alebo server neodpovedá",
"Could not post comment: %s": "Nepodarilo sa pridať komentár: %s", "Could not post comment: %s": "Nepodarilo sa pridať komentár: %s",
"Sending paste…": "Odosiela sa príspevok…", "Sending paste…": "Odosiela sa príspevok…",
"Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit [Ctrl]+[c] to copy)</span>": "Váš príspevok je <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(skopírujte stlačením [Ctrl]+[c])</span>", "Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit <kbd>Ctrl</kbd>+<kbd>c</kbd> to copy)</span>": "Váš príspevok je <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(skopírujte stlačením <kbd>Ctrl</kbd>+<kbd>c</kbd>)</span>",
"Delete data": "Odstrániť dáta", "Delete data": "Odstrániť dáta",
"Could not create paste: %s": "Nepodarilo sa vytvoriť príspevok: %s", "Could not create paste: %s": "Nepodarilo sa vytvoriť príspevok: %s",
"Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)": "Nie je možné dešifrovať príspevok: V URL adrese chýba dešifrovací kľúč (Použili ste presmerovač alebo skracovač adresy, ktorý odstráni časť adresy URL?)", "Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)": "Nie je možné dešifrovať príspevok: V URL adrese chýba dešifrovací kľúč (Použili ste presmerovač alebo skracovač adresy, ktorý odstráni časť adresy URL?)",
@ -189,5 +214,18 @@
"Your IP is not authorized to create pastes.": "Vaša IP adresa nie je oprávnená vytvárať príspevky.", "Your IP is not authorized to create pastes.": "Vaša IP adresa nie je oprávnená vytvárať príspevky.",
"Trying to shorten a URL that isn't pointing at our instance.": "Pokúšate sa skrátiť adresu URL, ktorá neukazuje na túto inštanciu.", "Trying to shorten a URL that isn't pointing at our instance.": "Pokúšate sa skrátiť adresu URL, ktorá neukazuje na túto inštanciu.",
"Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".": "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".", "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".": "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".",
"Error parsing YOURLS response.": "Error parsing YOURLS response." "Error parsing YOURLS response.": "Error parsing YOURLS response.",
"This secret message can only be displayed once. Would you like to see it now?": "This secret message can only be displayed once. Would you like to see it now?",
"Yes, see it": "Yes, see it",
"Dark Mode": "Tmavý Režim",
"Error compressing paste, due to missing WebAssembly support.": "Error compressing paste, due to missing WebAssembly support.",
"Error decompressing paste, your browser does not support WebAssembly. Please use another browser to view this paste.": "Error decompressing paste, your browser does not support WebAssembly. Please use another browser to view this paste.",
"Start over": "Start over",
"Paste copied to clipboard": "Paste copied to clipboard",
"To copy paste press on the copy button or use the clipboard shortcut <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>": "To copy paste press on the copy button or use the clipboard shortcut <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>",
"Copy link": "Copy link",
"Link copied to clipboard": "Link copied to clipboard",
"Paste text": "Paste text",
"Tabulator key serves as character (Hit <kbd>Ctrl</kbd>+<kbd>m</kbd> or <kbd>Esc</kbd> to toggle)": "Tabulator key serves as character (Hit <kbd>Ctrl</kbd>+<kbd>m</kbd> or <kbd>Esc</kbd> to toggle)",
"Theme": "Theme"
} }

View File

@ -3,7 +3,6 @@
"%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.": "%s je minimalističen, odprtokodni spletni 'pastebin', kjer server ne ve ničesar o prilepljenih podatkih. Podatki so zakodirani/odkodirani %sv brskalniku%s z uporabo 256 bitnega AES.", "%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.": "%s je minimalističen, odprtokodni spletni 'pastebin', kjer server ne ve ničesar o prilepljenih podatkih. Podatki so zakodirani/odkodirani %sv brskalniku%s z uporabo 256 bitnega AES.",
"More information on the <a href=\"https://privatebin.info/\">project page</a>.": "Več informacij na <a href=\"https://privatebin.info/\">spletni strani projekta.</a>.", "More information on the <a href=\"https://privatebin.info/\">project page</a>.": "Več informacij na <a href=\"https://privatebin.info/\">spletni strani projekta.</a>.",
"Because ignorance is bliss": "Ker kar ne veš ne boli.", "Because ignorance is bliss": "Ker kar ne veš ne boli.",
"en": "sl",
"Paste does not exist, has expired or has been deleted.": "Prilepek ne obstaja, mu je potekla življenjska doba, ali pa je izbrisan.", "Paste does not exist, has expired or has been deleted.": "Prilepek ne obstaja, mu je potekla življenjska doba, ali pa je izbrisan.",
"%s requires php %s or above to work. Sorry.": "Oprosti, %s za delovanje potrebuje vsaj php %s.", "%s requires php %s or above to work. Sorry.": "Oprosti, %s za delovanje potrebuje vsaj php %s.",
"%s requires configuration section [%s] to be present in configuration file.": "%s potrebuje sekcijo konfiguracij [%s] v konfiguracijski datoteki.", "%s requires configuration section [%s] to be present in configuration file.": "%s potrebuje sekcijo konfiguracij [%s] v konfiguracijski datoteki.",
@ -11,6 +10,8 @@
"Prosim počakaj vsaj %d sekundo pred vsako naslednjo objavo.", "Prosim počakaj vsaj %d sekundo pred vsako naslednjo objavo.",
"Prosim počakaj vsaj %d sekundi pred vsako naslednjo objavo.", "Prosim počakaj vsaj %d sekundi pred vsako naslednjo objavo.",
"Prosim počakaj vsaj %d sekunde pred vsako naslednjo objavo.", "Prosim počakaj vsaj %d sekunde pred vsako naslednjo objavo.",
"Prosim počakaj vsaj %d sekund pred vsako naslednjo objavo.",
"Prosim počakaj vsaj %d sekund pred vsako naslednjo objavo.",
"Prosim počakaj vsaj %d sekund pred vsako naslednjo objavo." "Prosim počakaj vsaj %d sekund pred vsako naslednjo objavo."
], ],
"Paste is limited to %s of encrypted data.": "Velikost prilepka je omejena na %s zakodiranih podatkov.", "Paste is limited to %s of encrypted data.": "Velikost prilepka je omejena na %s zakodiranih podatkov.",
@ -25,7 +26,7 @@
"JavaScript is required for %s to work. Sorry for the inconvenience.": "Da %s deluje, moraš vklopiti JavaScript. Oprosti za povročene nevšečnosti.", "JavaScript is required for %s to work. Sorry for the inconvenience.": "Da %s deluje, moraš vklopiti JavaScript. Oprosti za povročene nevšečnosti.",
"%s requires a modern browser to work.": "%s za svoje delovanje potrebuje moderen brskalnik.", "%s requires a modern browser to work.": "%s za svoje delovanje potrebuje moderen brskalnik.",
"New": "Nov prilepek", "New": "Nov prilepek",
"Send": "Pošlji", "Create": "Ustvari",
"Clone": "Kloniraj", "Clone": "Kloniraj",
"Raw text": "Surov tekst", "Raw text": "Surov tekst",
"Expires": "Poteče", "Expires": "Poteče",
@ -38,42 +39,56 @@
"%d sekunda", "%d sekunda",
"%d sekundi", "%d sekundi",
"%d sekunde", "%d sekunde",
"%d sekund",
"%d sekund",
"%d sekund" "%d sekund"
], ],
"%d minutes": [ "%d minutes": [
"%d minuta", "%d minuta",
"%d minuti", "%d minuti",
"%d minute", "%d minute",
"%d minut",
"%d minut",
"%d minut" "%d minut"
], ],
"%d hours": [ "%d hours": [
"%d ura", "%d ura",
"%d uri", "%d uri",
"%d ure", "%d ure",
"%d ur",
"%d ur",
"%d ur" "%d ur"
], ],
"%d days": [ "%d days": [
"%d dan", "%d dan",
"%d dneva", "%d dneva",
"%d dnevi", "%d dnevi",
"%d dni",
"%d dni",
"%d dni" "%d dni"
], ],
"%d weeks": [ "%d weeks": [
"%d teden", "%d teden",
"%d tedna", "%d tedna",
"%d tedni", "%d tedni",
"%d tednov",
"%d tednov",
"%d tednov" "%d tednov"
], ],
"%d months": [ "%d months": [
"%d mesec", "%d mesec",
"%d meseca", "%d meseca",
"%d meseci", "%d meseci",
"%d mesecev",
"%d mesecev",
"%d mesecev" "%d mesecev"
], ],
"%d years": [ "%d years": [
"%d leto", "%d leto",
"%d leti", "%d leti",
"%d leta", "%d leta",
"%d let",
"%d let",
"%d let" "%d let"
], ],
"Never": "Nikoli", "Never": "Nikoli",
@ -82,30 +97,40 @@
"Ta dokument bo potekel čez %d sekundo.", "Ta dokument bo potekel čez %d sekundo.",
"Ta dokument bo potekel čez %d sekundi.", "Ta dokument bo potekel čez %d sekundi.",
"Ta dokument bo potekel čez %d sekunde.", "Ta dokument bo potekel čez %d sekunde.",
"Ta dokument bo potekel čez %d sekund.",
"Ta dokument bo potekel čez %d sekund.",
"Ta dokument bo potekel čez %d sekund." "Ta dokument bo potekel čez %d sekund."
], ],
"This document will expire in %d minutes.": [ "This document will expire in %d minutes.": [
"Ta dokument bo potekel čez %d minuto.", "Ta dokument bo potekel čez %d minuto.",
"Ta dokument bo potekel čez %d minuti.", "Ta dokument bo potekel čez %d minuti.",
"Ta dokument bo potekel čez %d minute.", "Ta dokument bo potekel čez %d minute.",
"Ta dokument bo potekel čez %d minut.",
"Ta dokument bo potekel čez %d minut.",
"Ta dokument bo potekel čez %d minut." "Ta dokument bo potekel čez %d minut."
], ],
"This document will expire in %d hours.": [ "This document will expire in %d hours.": [
"Ta dokument bo potekel čez %d uro.", "Ta dokument bo potekel čez %d uro.",
"Ta dokument bo potekel čez %d uri.", "Ta dokument bo potekel čez %d uri.",
"Ta dokument bo potekel čez %d ure.", "Ta dokument bo potekel čez %d ure.",
"Ta dokument bo potekel čez %d ur.",
"Ta dokument bo potekel čez %d ur.",
"Ta dokument bo potekel čez %d ur." "Ta dokument bo potekel čez %d ur."
], ],
"This document will expire in %d days.": [ "This document will expire in %d days.": [
"Ta dokument bo potekel čez %d dan.", "Ta dokument bo potekel čez %d dan.",
"Ta dokument bo potekel čez %d dni.", "Ta dokument bo potekel čez %d dni.",
"Ta dokument bo potekel čez %d dni.", "Ta dokument bo potekel čez %d dni.",
"Ta dokument bo potekel čez %d dni.",
"Ta dokument bo potekel čez %d dni.",
"Ta dokument bo potekel čez %d dni." "Ta dokument bo potekel čez %d dni."
], ],
"This document will expire in %d months.": [ "This document will expire in %d months.": [
"Ta dokument bo potekel čez %d mesec.", "Ta dokument bo potekel čez %d mesec.",
"Ta dokument bo potekel čez %d meseca.", "Ta dokument bo potekel čez %d meseca.",
"Ta dokument bo potekel čez %d mesece.", "Ta dokument bo potekel čez %d mesece.",
"Ta dokument bo potekel čez %d mesecev.",
"Ta dokument bo potekel čez %d mesecev.",
"Ta dokument bo potekel čez %d mesecev." "Ta dokument bo potekel čez %d mesecev."
], ],
"Please enter the password for this paste:": "Prosim vnesi geslo tega prilepka:", "Please enter the password for this paste:": "Prosim vnesi geslo tega prilepka:",
@ -126,7 +151,7 @@
"server error or not responding": "napaka na strežniku, ali pa se strežnik ne odziva", "server error or not responding": "napaka na strežniku, ali pa se strežnik ne odziva",
"Could not post comment: %s": "Komentarja ni bilo mogoče objaviti : %s", "Could not post comment: %s": "Komentarja ni bilo mogoče objaviti : %s",
"Sending paste…": "Pošiljam prilepek…", "Sending paste…": "Pošiljam prilepek…",
"Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit [Ctrl]+[c] to copy)</span>": "Tvoj prilepek je dostopen na naslovu: <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Pritisni [Ctrl]+[c] ali [Cmd] + [c] in skopiraj)</span>", "Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit <kbd>Ctrl</kbd>+<kbd>c</kbd> to copy)</span>": "Tvoj prilepek je dostopen na naslovu: <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Pritisni <kbd>Ctrl</kbd>+<kbd>c</kbd> ali [Cmd] + [c] in skopiraj)</span>",
"Delete data": "Izbriši podatke", "Delete data": "Izbriši podatke",
"Could not create paste: %s": "Ne morem ustvariti prilepka: %s", "Could not create paste: %s": "Ne morem ustvariti prilepka: %s",
"Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)": "Ne morem odkodirati prilepka: V URL-ju manjka ključ (A si uporabil krajšalnik URL-jev, ki odstrani del URL-ja?)", "Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)": "Ne morem odkodirati prilepka: V URL-ju manjka ključ (A si uporabil krajšalnik URL-jev, ki odstrani del URL-ja?)",
@ -189,5 +214,18 @@
"Your IP is not authorized to create pastes.": "Your IP is not authorized to create pastes.", "Your IP is not authorized to create pastes.": "Your IP is not authorized to create pastes.",
"Trying to shorten a URL that isn't pointing at our instance.": "Trying to shorten a URL that isn't pointing at our instance.", "Trying to shorten a URL that isn't pointing at our instance.": "Trying to shorten a URL that isn't pointing at our instance.",
"Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".": "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".", "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".": "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".",
"Error parsing YOURLS response.": "Error parsing YOURLS response." "Error parsing YOURLS response.": "Error parsing YOURLS response.",
"This secret message can only be displayed once. Would you like to see it now?": "This secret message can only be displayed once. Would you like to see it now?",
"Yes, see it": "Yes, see it",
"Dark Mode": "Temni način",
"Error compressing paste, due to missing WebAssembly support.": "Error compressing paste, due to missing WebAssembly support.",
"Error decompressing paste, your browser does not support WebAssembly. Please use another browser to view this paste.": "Error decompressing paste, your browser does not support WebAssembly. Please use another browser to view this paste.",
"Start over": "Start over",
"Paste copied to clipboard": "Paste copied to clipboard",
"To copy paste press on the copy button or use the clipboard shortcut <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>": "To copy paste press on the copy button or use the clipboard shortcut <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>",
"Copy link": "Copy link",
"Link copied to clipboard": "Link copied to clipboard",
"Paste text": "Paste text",
"Tabulator key serves as character (Hit <kbd>Ctrl</kbd>+<kbd>m</kbd> or <kbd>Esc</kbd> to toggle)": "Tabulator key serves as character (Hit <kbd>Ctrl</kbd>+<kbd>m</kbd> or <kbd>Esc</kbd> to toggle)",
"Theme": "Theme"
} }

View File

@ -3,7 +3,6 @@
"%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.": "%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.", "%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.": "%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.",
"More information on the <a href=\"https://privatebin.info/\">project page</a>.": "More information on the <a href=\"https://privatebin.info/\">project page</a>.", "More information on the <a href=\"https://privatebin.info/\">project page</a>.": "More information on the <a href=\"https://privatebin.info/\">project page</a>.",
"Because ignorance is bliss": "Because ignorance is bliss", "Because ignorance is bliss": "Because ignorance is bliss",
"en": "sv",
"Paste does not exist, has expired or has been deleted.": "Paste does not exist, has expired or has been deleted.", "Paste does not exist, has expired or has been deleted.": "Paste does not exist, has expired or has been deleted.",
"%s requires php %s or above to work. Sorry.": "%s requires php %s or above to work. Sorry.", "%s requires php %s or above to work. Sorry.": "%s requires php %s or above to work. Sorry.",
"%s requires configuration section [%s] to be present in configuration file.": "%s requires configuration section [%s] to be present in configuration file.", "%s requires configuration section [%s] to be present in configuration file.": "%s requires configuration section [%s] to be present in configuration file.",
@ -11,7 +10,9 @@
"Please wait %d second between each post. (singular)", "Please wait %d second between each post. (singular)",
"Please wait %d seconds between each post. (1st plural)", "Please wait %d seconds between each post. (1st plural)",
"Please wait %d seconds between each post. (2nd plural)", "Please wait %d seconds between each post. (2nd plural)",
"Please wait %d seconds between each post. (3rd plural)" "Please wait %d seconds between each post. (3rd plural)",
"Please wait %d seconds between each post. (4th plural)",
"Please wait %d seconds between each post. (5th plural)"
], ],
"Paste is limited to %s of encrypted data.": "Paste is limited to %s of encrypted data.", "Paste is limited to %s of encrypted data.": "Paste is limited to %s of encrypted data.",
"Invalid data.": "Invalid data.", "Invalid data.": "Invalid data.",
@ -25,7 +26,7 @@
"JavaScript is required for %s to work. Sorry for the inconvenience.": "JavaScript is required for %s to work. Sorry for the inconvenience.", "JavaScript is required for %s to work. Sorry for the inconvenience.": "JavaScript is required for %s to work. Sorry for the inconvenience.",
"%s requires a modern browser to work.": "%s requires a modern browser to work.", "%s requires a modern browser to work.": "%s requires a modern browser to work.",
"New": "New", "New": "New",
"Send": "Send", "Create": "Skapa",
"Clone": "Clone", "Clone": "Clone",
"Raw text": "Raw text", "Raw text": "Raw text",
"Expires": "Expires", "Expires": "Expires",
@ -38,43 +39,57 @@
"%d second (singular)", "%d second (singular)",
"%d seconds (1st plural)", "%d seconds (1st plural)",
"%d seconds (2nd plural)", "%d seconds (2nd plural)",
"%d seconds (3rd plural)" "%d seconds (3rd plural)",
"%d seconds (4th plural)",
"%d seconds (5th plural)"
], ],
"%d minutes": [ "%d minutes": [
"%d minute (singular)", "%d minute (singular)",
"%d minutes (1st plural)", "%d minutes (1st plural)",
"%d minutes (2nd plural)", "%d minutes (2nd plural)",
"%d minutes (3rd plural)" "%d minutes (3rd plural)",
"%d minutes (4th plural)",
"%d minutes (5th plural)"
], ],
"%d hours": [ "%d hours": [
"%d hour (singular)", "%d hour (singular)",
"%d hours (1st plural)", "%d hours (1st plural)",
"%d hours (2nd plural)", "%d hours (2nd plural)",
"%d hours (3rd plural)" "%d hours (3rd plural)",
"%d hours (4th plural)",
"%d hours (5th plural)"
], ],
"%d days": [ "%d days": [
"%d day (singular)", "%d day (singular)",
"%d days (1st plural)", "%d days (1st plural)",
"%d days (2nd plural)", "%d days (2nd plural)",
"%d days (3rd plural)" "%d days (3rd plural)",
"%d days (4th plural)",
"%d days (5th plural)"
], ],
"%d weeks": [ "%d weeks": [
"%d week (singular)", "%d week (singular)",
"%d weeks (1st plural)", "%d weeks (1st plural)",
"%d weeks (2nd plural)", "%d weeks (2nd plural)",
"%d weeks (3rd plural)" "%d weeks (3rd plural)",
"%d weeks (4th plural)",
"%d weeks (5th plural)"
], ],
"%d months": [ "%d months": [
"%d month (singular)", "%d month (singular)",
"%d months (1st plural)", "%d months (1st plural)",
"%d months (2nd plural)", "%d months (2nd plural)",
"%d months (3rd plural)" "%d months (3rd plural)",
"%d months (4th plural)",
"%d months (5th plural)"
], ],
"%d years": [ "%d years": [
"%d year (singular)", "%d year (singular)",
"%d years (1st plural)", "%d years (1st plural)",
"%d years (2nd plural)", "%d years (2nd plural)",
"%d years (3rd plural)" "%d years (3rd plural)",
"%d years (4th plural)",
"%d years (5th plural)"
], ],
"Never": "Never", "Never": "Never",
"Note: This is a test service: Data may be deleted anytime. Kittens will die if you abuse this service.": "Note: This is a test service: Data may be deleted anytime. Kittens will die if you abuse this service.", "Note: This is a test service: Data may be deleted anytime. Kittens will die if you abuse this service.": "Note: This is a test service: Data may be deleted anytime. Kittens will die if you abuse this service.",
@ -82,31 +97,41 @@
"This document will expire in %d second. (singular)", "This document will expire in %d second. (singular)",
"This document will expire in %d seconds. (1st plural)", "This document will expire in %d seconds. (1st plural)",
"This document will expire in %d seconds. (2nd plural)", "This document will expire in %d seconds. (2nd plural)",
"This document will expire in %d seconds. (3rd plural)" "This document will expire in %d seconds. (3rd plural)",
"This document will expire in %d seconds. (4th plural)",
"This document will expire in %d seconds. (5th plural)"
], ],
"This document will expire in %d minutes.": [ "This document will expire in %d minutes.": [
"This document will expire in %d minute. (singular)", "This document will expire in %d minute. (singular)",
"This document will expire in %d minutes. (1st plural)", "This document will expire in %d minutes. (1st plural)",
"This document will expire in %d minutes. (2nd plural)", "This document will expire in %d minutes. (2nd plural)",
"This document will expire in %d minutes. (3rd plural)" "This document will expire in %d minutes. (3rd plural)",
"This document will expire in %d minutes. (4th plural)",
"This document will expire in %d minutes. (5th plural)"
], ],
"This document will expire in %d hours.": [ "This document will expire in %d hours.": [
"This document will expire in %d hour. (singular)", "This document will expire in %d hour. (singular)",
"This document will expire in %d hours. (1st plural)", "This document will expire in %d hours. (1st plural)",
"This document will expire in %d hours. (2nd plural)", "This document will expire in %d hours. (2nd plural)",
"This document will expire in %d hours. (3rd plural)" "This document will expire in %d hours. (3rd plural)",
"This document will expire in %d hours. (4th plural)",
"This document will expire in %d hours. (5th plural)"
], ],
"This document will expire in %d days.": [ "This document will expire in %d days.": [
"This document will expire in %d day. (singular)", "This document will expire in %d day. (singular)",
"This document will expire in %d days. (1st plural)", "This document will expire in %d days. (1st plural)",
"This document will expire in %d days. (2nd plural)", "This document will expire in %d days. (2nd plural)",
"This document will expire in %d days. (3rd plural)" "This document will expire in %d days. (3rd plural)",
"This document will expire in %d days. (4th plural)",
"This document will expire in %d days. (5th plural)"
], ],
"This document will expire in %d months.": [ "This document will expire in %d months.": [
"This document will expire in %d month. (singular)", "This document will expire in %d month. (singular)",
"This document will expire in %d months. (1st plural)", "This document will expire in %d months. (1st plural)",
"This document will expire in %d months. (2nd plural)", "This document will expire in %d months. (2nd plural)",
"This document will expire in %d months. (3rd plural)" "This document will expire in %d months. (3rd plural)",
"This document will expire in %d months. (4th plural)",
"This document will expire in %d months. (5th plural)"
], ],
"Please enter the password for this paste:": "Please enter the password for this paste:", "Please enter the password for this paste:": "Please enter the password for this paste:",
"Could not decrypt data (Wrong key?)": "Could not decrypt data (Wrong key?)", "Could not decrypt data (Wrong key?)": "Could not decrypt data (Wrong key?)",
@ -126,7 +151,7 @@
"server error or not responding": "server error or not responding", "server error or not responding": "server error or not responding",
"Could not post comment: %s": "Could not post comment: %s", "Could not post comment: %s": "Could not post comment: %s",
"Sending paste…": "Sending paste…", "Sending paste…": "Sending paste…",
"Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit [Ctrl]+[c] to copy)</span>": "Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit [Ctrl]+[c] to copy)</span>", "Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit <kbd>Ctrl</kbd>+<kbd>c</kbd> to copy)</span>": "Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit <kbd>Ctrl</kbd>+<kbd>c</kbd> to copy)</span>",
"Delete data": "Delete data", "Delete data": "Delete data",
"Could not create paste: %s": "Could not create paste: %s", "Could not create paste: %s": "Could not create paste: %s",
"Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)": "Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)", "Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)": "Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)",
@ -189,5 +214,18 @@
"Your IP is not authorized to create pastes.": "Your IP is not authorized to create pastes.", "Your IP is not authorized to create pastes.": "Your IP is not authorized to create pastes.",
"Trying to shorten a URL that isn't pointing at our instance.": "Trying to shorten a URL that isn't pointing at our instance.", "Trying to shorten a URL that isn't pointing at our instance.": "Trying to shorten a URL that isn't pointing at our instance.",
"Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".": "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".", "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".": "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".",
"Error parsing YOURLS response.": "Error parsing YOURLS response." "Error parsing YOURLS response.": "Error parsing YOURLS response.",
"This secret message can only be displayed once. Would you like to see it now?": "This secret message can only be displayed once. Would you like to see it now?",
"Yes, see it": "Yes, see it",
"Dark Mode": "Mörkt Läge",
"Error compressing paste, due to missing WebAssembly support.": "Error compressing paste, due to missing WebAssembly support.",
"Error decompressing paste, your browser does not support WebAssembly. Please use another browser to view this paste.": "Error decompressing paste, your browser does not support WebAssembly. Please use another browser to view this paste.",
"Start over": "Start over",
"Paste copied to clipboard": "Paste copied to clipboard",
"To copy paste press on the copy button or use the clipboard shortcut <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>": "To copy paste press on the copy button or use the clipboard shortcut <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>",
"Copy link": "Copy link",
"Link copied to clipboard": "Link copied to clipboard",
"Paste text": "Paste text",
"Tabulator key serves as character (Hit <kbd>Ctrl</kbd>+<kbd>m</kbd> or <kbd>Esc</kbd> to toggle)": "Tabulator key serves as character (Hit <kbd>Ctrl</kbd>+<kbd>m</kbd> or <kbd>Esc</kbd> to toggle)",
"Theme": "Theme"
} }

View File

@ -3,11 +3,12 @@
"%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.": "%s เป็น pastebin ออนไลน์แบบโอเพ่นซอร์สที่มีรูปแบบการใช้งานที่เรียบง่าย เซิร์ฟเวอร์ไม่สามารถรู้ได้ว่าข้อมูลโค้ดที่มาฝากนั้นเป็นข้อมูลอะไร โดยจะถูกเข้ารหัส/ถอดรหัสด้วยกระบวนการ AES จำนวน 256 บิต%sผ่านเบราว์เซอร์%s", "%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.": "%s เป็น pastebin ออนไลน์แบบโอเพ่นซอร์สที่มีรูปแบบการใช้งานที่เรียบง่าย เซิร์ฟเวอร์ไม่สามารถรู้ได้ว่าข้อมูลโค้ดที่มาฝากนั้นเป็นข้อมูลอะไร โดยจะถูกเข้ารหัส/ถอดรหัสด้วยกระบวนการ AES จำนวน 256 บิต%sผ่านเบราว์เซอร์%s",
"More information on the <a href=\"https://privatebin.info/\">project page</a>.": "ข้อมูลเพิ่มเติม ดูได้ที่<a href=\"https://privatebin.info/\">หน้าโครงการ</a>", "More information on the <a href=\"https://privatebin.info/\">project page</a>.": "ข้อมูลเพิ่มเติม ดูได้ที่<a href=\"https://privatebin.info/\">หน้าโครงการ</a>",
"Because ignorance is bliss": "ไม่รู้ไม่ชี้ดีที่สุด", "Because ignorance is bliss": "ไม่รู้ไม่ชี้ดีที่สุด",
"en": "th",
"Paste does not exist, has expired or has been deleted.": "การฝากโค้ดไม่มีอยู่ อาจจะหมดอายุหรือถูกลบไปแล้ว", "Paste does not exist, has expired or has been deleted.": "การฝากโค้ดไม่มีอยู่ อาจจะหมดอายุหรือถูกลบไปแล้ว",
"%s requires php %s or above to work. Sorry.": "ขออภัย %s ต้องใช้ PHP %s ขึ้นไปจึงจะใช้งานได้", "%s requires php %s or above to work. Sorry.": "ขออภัย %s ต้องใช้ PHP %s ขึ้นไปจึงจะใช้งานได้",
"%s requires configuration section [%s] to be present in configuration file.": "%s จำเป็นต้องตั้งค่าตัวแปร [%s] ในไฟล์กำหนดค่า", "%s requires configuration section [%s] to be present in configuration file.": "%s จำเป็นต้องตั้งค่าตัวแปร [%s] ในไฟล์กำหนดค่า",
"Please wait %d seconds between each post.": [ "Please wait %d seconds between each post.": [
"กรุณาเว้นระยะเวลาการส่งข้อมูลอย่างน้อย %d วินาที",
"กรุณาเว้นระยะเวลาการส่งข้อมูลอย่างน้อย %d วินาที",
"กรุณาเว้นระยะเวลาการส่งข้อมูลอย่างน้อย %d วินาที", "กรุณาเว้นระยะเวลาการส่งข้อมูลอย่างน้อย %d วินาที",
"กรุณาเว้นระยะเวลาการส่งข้อมูลอย่างน้อย %d วินาที", "กรุณาเว้นระยะเวลาการส่งข้อมูลอย่างน้อย %d วินาที",
"กรุณาเว้นระยะเวลาการส่งข้อมูลอย่างน้อย %d วินาที", "กรุณาเว้นระยะเวลาการส่งข้อมูลอย่างน้อย %d วินาที",
@ -25,7 +26,7 @@
"JavaScript is required for %s to work. Sorry for the inconvenience.": "จำเป็นต้องใช้ JavaScript เพื่อให้ %s สามารถทำงานได้ ขออภัยในความไม่สะดวก", "JavaScript is required for %s to work. Sorry for the inconvenience.": "จำเป็นต้องใช้ JavaScript เพื่อให้ %s สามารถทำงานได้ ขออภัยในความไม่สะดวก",
"%s requires a modern browser to work.": "%s ต้องใช้เบราว์เซอร์สมัยใหม่ถึงจะสามารถใช้งานได้", "%s requires a modern browser to work.": "%s ต้องใช้เบราว์เซอร์สมัยใหม่ถึงจะสามารถใช้งานได้",
"New": "ใหม่", "New": "ใหม่",
"Send": "ส่ง", "Create": "สร้าง",
"Clone": "โคลน", "Clone": "โคลน",
"Raw text": "ข้อความล้วน", "Raw text": "ข้อความล้วน",
"Expires": "หมดอายุ", "Expires": "หมดอายุ",
@ -35,42 +36,56 @@
"Discussion": "ความคิดเห็น", "Discussion": "ความคิดเห็น",
"Toggle navigation": "สลับเปิดปิดการนำทาง", "Toggle navigation": "สลับเปิดปิดการนำทาง",
"%d seconds": [ "%d seconds": [
"%d วินาที",
"%d วินาที",
"%d วินาที", "%d วินาที",
"%d วินาที", "%d วินาที",
"%d วินาที", "%d วินาที",
"%d วินาที" "%d วินาที"
], ],
"%d minutes": [ "%d minutes": [
"%d นาที",
"%d นาที",
"%d นาที", "%d นาที",
"%d นาที", "%d นาที",
"%d นาที", "%d นาที",
"%d นาที" "%d นาที"
], ],
"%d hours": [ "%d hours": [
"%d ชั่วโมง",
"%d ชั่วโมง",
"%d ชั่วโมง", "%d ชั่วโมง",
"%d ชั่วโมง", "%d ชั่วโมง",
"%d ชั่วโมง", "%d ชั่วโมง",
"%d ชั่วโมง" "%d ชั่วโมง"
], ],
"%d days": [ "%d days": [
"%d วัน",
"%d วัน",
"%d วัน", "%d วัน",
"%d วัน", "%d วัน",
"%d วัน", "%d วัน",
"%d วัน" "%d วัน"
], ],
"%d weeks": [ "%d weeks": [
"%d สัปดาห์",
"%d สัปดาห์",
"%d สัปดาห์", "%d สัปดาห์",
"%d สัปดาห์", "%d สัปดาห์",
"%d สัปดาห์", "%d สัปดาห์",
"%d สัปดาห์" "%d สัปดาห์"
], ],
"%d months": [ "%d months": [
"%d เดือน",
"%d เดือน",
"%d เดือน", "%d เดือน",
"%d เดือน", "%d เดือน",
"%d เดือน", "%d เดือน",
"%d เดือน" "%d เดือน"
], ],
"%d years": [ "%d years": [
"%d ปี",
"%d ปี",
"%d ปี", "%d ปี",
"%d ปี", "%d ปี",
"%d ปี", "%d ปี",
@ -79,30 +94,40 @@
"Never": "ไม่หมดอายุ", "Never": "ไม่หมดอายุ",
"Note: This is a test service: Data may be deleted anytime. Kittens will die if you abuse this service.": "โปรดทราบ: เว็บไซต์นี้เป็นการให้บริการสำหรับทดสอบเท่านั้น ข้อมูลอาจถูกลบได้ตลอดเวลา หากคุณใช้บริการนี้ในทางที่ผิดอาจจะทำให้ข้อมูลของคุณสูญหายอย่างถาวรได้", "Note: This is a test service: Data may be deleted anytime. Kittens will die if you abuse this service.": "โปรดทราบ: เว็บไซต์นี้เป็นการให้บริการสำหรับทดสอบเท่านั้น ข้อมูลอาจถูกลบได้ตลอดเวลา หากคุณใช้บริการนี้ในทางที่ผิดอาจจะทำให้ข้อมูลของคุณสูญหายอย่างถาวรได้",
"This document will expire in %d seconds.": [ "This document will expire in %d seconds.": [
"เอกสารนี้จะหมดอายุใน %d วินาที",
"เอกสารนี้จะหมดอายุใน %d วินาที",
"เอกสารนี้จะหมดอายุใน %d วินาที", "เอกสารนี้จะหมดอายุใน %d วินาที",
"เอกสารนี้จะหมดอายุใน %d วินาที", "เอกสารนี้จะหมดอายุใน %d วินาที",
"เอกสารนี้จะหมดอายุใน %d วินาที", "เอกสารนี้จะหมดอายุใน %d วินาที",
"เอกสารนี้จะหมดอายุใน %d วินาที" "เอกสารนี้จะหมดอายุใน %d วินาที"
], ],
"This document will expire in %d minutes.": [ "This document will expire in %d minutes.": [
"เอกสารนี้จะหมดอายุใน %d นาที",
"เอกสารนี้จะหมดอายุใน %d นาที",
"เอกสารนี้จะหมดอายุใน %d นาที", "เอกสารนี้จะหมดอายุใน %d นาที",
"เอกสารนี้จะหมดอายุใน %d นาที", "เอกสารนี้จะหมดอายุใน %d นาที",
"เอกสารนี้จะหมดอายุใน %d นาที", "เอกสารนี้จะหมดอายุใน %d นาที",
"เอกสารนี้จะหมดอายุใน %d นาที" "เอกสารนี้จะหมดอายุใน %d นาที"
], ],
"This document will expire in %d hours.": [ "This document will expire in %d hours.": [
"เอกสารนี้จะหมดอายุใน %d ชั่วโมง",
"เอกสารนี้จะหมดอายุใน %d ชั่วโมง",
"เอกสารนี้จะหมดอายุใน %d ชั่วโมง", "เอกสารนี้จะหมดอายุใน %d ชั่วโมง",
"เอกสารนี้จะหมดอายุใน %d ชั่วโมง", "เอกสารนี้จะหมดอายุใน %d ชั่วโมง",
"เอกสารนี้จะหมดอายุใน %d ชั่วโมง", "เอกสารนี้จะหมดอายุใน %d ชั่วโมง",
"เอกสารนี้จะหมดอายุใน %d ชั่วโมง" "เอกสารนี้จะหมดอายุใน %d ชั่วโมง"
], ],
"This document will expire in %d days.": [ "This document will expire in %d days.": [
"เอกสารนี้จะหมดอายุใน %d วัน",
"เอกสารนี้จะหมดอายุใน %d วัน",
"เอกสารนี้จะหมดอายุใน %d วัน", "เอกสารนี้จะหมดอายุใน %d วัน",
"เอกสารนี้จะหมดอายุใน %d วัน", "เอกสารนี้จะหมดอายุใน %d วัน",
"เอกสารนี้จะหมดอายุใน %d วัน", "เอกสารนี้จะหมดอายุใน %d วัน",
"เอกสารนี้จะหมดอายุใน %d วัน" "เอกสารนี้จะหมดอายุใน %d วัน"
], ],
"This document will expire in %d months.": [ "This document will expire in %d months.": [
"เอกสารนี้จะหมดอายุใน %d เดือน",
"เอกสารนี้จะหมดอายุใน %d เดือน",
"เอกสารนี้จะหมดอายุใน %d เดือน", "เอกสารนี้จะหมดอายุใน %d เดือน",
"เอกสารนี้จะหมดอายุใน %d เดือน", "เอกสารนี้จะหมดอายุใน %d เดือน",
"เอกสารนี้จะหมดอายุใน %d เดือน", "เอกสารนี้จะหมดอายุใน %d เดือน",
@ -126,7 +151,7 @@
"server error or not responding": "เซิร์ฟเวอร์มีข้อผิดพลาดหรือไม่ตอบสนอง", "server error or not responding": "เซิร์ฟเวอร์มีข้อผิดพลาดหรือไม่ตอบสนอง",
"Could not post comment: %s": "ไม่สามารถส่งความคิดเห็นได้: %s", "Could not post comment: %s": "ไม่สามารถส่งความคิดเห็นได้: %s",
"Sending paste…": "กำลังส่งข้อมูล…", "Sending paste…": "กำลังส่งข้อมูล…",
"Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit [Ctrl]+[c] to copy)</span>": "การฝากโค้ดของคุณอยู่ที่ <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(กดปุ่ม [Ctrl]+[c] เพื่อคัดลอก)</span>", "Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit <kbd>Ctrl</kbd>+<kbd>c</kbd> to copy)</span>": "การฝากโค้ดของคุณอยู่ที่ <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(กดปุ่ม <kbd>Ctrl</kbd>+<kbd>c</kbd> เพื่อคัดลอก)</span>",
"Delete data": "ลบข้อมูล", "Delete data": "ลบข้อมูล",
"Could not create paste: %s": "ไม่สามารถสร้างข้อมูลการฝากโค้ดได้: %s", "Could not create paste: %s": "ไม่สามารถสร้างข้อมูลการฝากโค้ดได้: %s",
"Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)": "ไม่สามารถถอดรหัสข้อมูลการฝากโค้ดได้: คีย์ถอดรหัสที่อยู่ใน URL หายไป (คุณได้ใช้ตัวเปลี่ยนเส้นทางหรือตัวย่อ URL ที่มีการตัดส่วนของ URL ออกหรือไม่)", "Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)": "ไม่สามารถถอดรหัสข้อมูลการฝากโค้ดได้: คีย์ถอดรหัสที่อยู่ใน URL หายไป (คุณได้ใช้ตัวเปลี่ยนเส้นทางหรือตัวย่อ URL ที่มีการตัดส่วนของ URL ออกหรือไม่)",
@ -189,5 +214,18 @@
"Your IP is not authorized to create pastes.": "IP ของคุณไม่ได้รับอนุญาตให้สร้างการฝากโค้ด", "Your IP is not authorized to create pastes.": "IP ของคุณไม่ได้รับอนุญาตให้สร้างการฝากโค้ด",
"Trying to shorten a URL that isn't pointing at our instance.": "กำลังพยายามใช้เครื่องมือสร้างลิงก์ย่อ ที่ไม่ได้ชี้ไปที่อินสแตนซ์ของเรา", "Trying to shorten a URL that isn't pointing at our instance.": "กำลังพยายามใช้เครื่องมือสร้างลิงก์ย่อ ที่ไม่ได้ชี้ไปที่อินสแตนซ์ของเรา",
"Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".": "เกิดข้อผิดพลาดในการเรียก YOURLS อาจเป็นปัญหามาจากการกำหนดค่า เช่น \"apiurl\" หรือ \"signature\" ไม่ถูกต้องหรือขาดหายไป", "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".": "เกิดข้อผิดพลาดในการเรียก YOURLS อาจเป็นปัญหามาจากการกำหนดค่า เช่น \"apiurl\" หรือ \"signature\" ไม่ถูกต้องหรือขาดหายไป",
"Error parsing YOURLS response.": "เกิดข้อผิดพลาดในการแยกวิเคราะห์การตอบสนองของ YOURLS" "Error parsing YOURLS response.": "เกิดข้อผิดพลาดในการแยกวิเคราะห์การตอบสนองของ YOURLS",
"This secret message can only be displayed once. Would you like to see it now?": "ข้อความลับนี้จะแสดงได้เพียงครั้งเดียวเท่านั้น คุณต้องการดูข้อความนี้ตอนนี้เลยใช่หรือไม่",
"Yes, see it": "ใช่ ดูเลย",
"Dark Mode": "โหมดสีเข้ม",
"Error compressing paste, due to missing WebAssembly support.": "ไม่สามารถบีบอัดข้อมูลที่คุณต้องการฝากโค้ดได้ เนื่องจากอุปกรณ์ของคุณขาดการรองรับ WebAssembly",
"Error decompressing paste, your browser does not support WebAssembly. Please use another browser to view this paste.": "ไม่สามารถอ่านข้อมูลที่คุณได้ฝากโค้ดไว้ เบราว์เซอร์ของคุณไม่รองรับ WebAssembly กรุณาลองเปลี่ยนใช้เบราว์เซอร์ตัวอื่นเพื่อดูการฝากโค้ดนี้อีกครั้ง",
"Start over": "เริ่มใหม่",
"Paste copied to clipboard": "Paste copied to clipboard",
"To copy paste press on the copy button or use the clipboard shortcut <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>": "To copy paste press on the copy button or use the clipboard shortcut <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>",
"Copy link": "Copy link",
"Link copied to clipboard": "Link copied to clipboard",
"Paste text": "Paste text",
"Tabulator key serves as character (Hit <kbd>Ctrl</kbd>+<kbd>m</kbd> or <kbd>Esc</kbd> to toggle)": "Tabulator key serves as character (Hit <kbd>Ctrl</kbd>+<kbd>m</kbd> or <kbd>Esc</kbd> to toggle)",
"Theme": "Theme"
} }

View File

@ -3,11 +3,12 @@
"%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.": "%s sunucunun burada paylaştığınız veriyi görmediği, minimal, açık kaynak bir pastebindir. Veriler tarayıcıda 256 bit AES kullanılarak şifrelenir/çözülür.", "%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.": "%s sunucunun burada paylaştığınız veriyi görmediği, minimal, açık kaynak bir pastebindir. Veriler tarayıcıda 256 bit AES kullanılarak şifrelenir/çözülür.",
"More information on the <a href=\"https://privatebin.info/\">project page</a>.": "Daha fazla bilgi için <a href=\"https://privatebin.info/\">proje sayfası</a>'na göz atabilirsiniz.", "More information on the <a href=\"https://privatebin.info/\">project page</a>.": "Daha fazla bilgi için <a href=\"https://privatebin.info/\">proje sayfası</a>'na göz atabilirsiniz.",
"Because ignorance is bliss": "Çünkü, cehalet mutluluktur", "Because ignorance is bliss": "Çünkü, cehalet mutluluktur",
"en": "tr", "Paste does not exist, has expired or has been deleted.": "Bu mevcut değil, süresi dolmuş veya silinmiş.",
"Paste does not exist, has expired or has been deleted.": "Paste does not exist, has expired or has been deleted.",
"%s requires php %s or above to work. Sorry.": "%s PHP %s veya daha üstünü gerektirir.", "%s requires php %s or above to work. Sorry.": "%s PHP %s veya daha üstünü gerektirir.",
"%s requires configuration section [%s] to be present in configuration file.": "%s konfigürasyon bölümünün [%s] bulunmasını gerektir.", "%s requires configuration section [%s] to be present in configuration file.": "%s konfigürasyon bölümünün [%s] bulunmasını gerektir.",
"Please wait %d seconds between each post.": [ "Please wait %d seconds between each post.": [
"Lütfen paylaşımlar arasında %d saniye bekleyiniz.",
"Lütfen paylaşımlar arasında %d saniye bekleyiniz.",
"Lütfen paylaşımlar arasında %d saniye bekleyiniz.", "Lütfen paylaşımlar arasında %d saniye bekleyiniz.",
"Lütfen paylaşımlar arasında %d saniye bekleyiniz.", "Lütfen paylaşımlar arasında %d saniye bekleyiniz.",
"Lütfen paylaşımlar arasında %d saniye bekleyiniz.", "Lütfen paylaşımlar arasında %d saniye bekleyiniz.",
@ -25,7 +26,7 @@
"JavaScript is required for %s to work. Sorry for the inconvenience.": "JavaScript %s 'in çalışması için gereklidir. Rahatsızlıktan dolayı özür dileriz.", "JavaScript is required for %s to work. Sorry for the inconvenience.": "JavaScript %s 'in çalışması için gereklidir. Rahatsızlıktan dolayı özür dileriz.",
"%s requires a modern browser to work.": "%s çalışmak için çağdaş bir tarayıcı gerektirir.", "%s requires a modern browser to work.": "%s çalışmak için çağdaş bir tarayıcı gerektirir.",
"New": "Yeni", "New": "Yeni",
"Send": "Gönder", "Create": "Oluştur",
"Clone": "Kopyala", "Clone": "Kopyala",
"Raw text": "Açık yazı", "Raw text": "Açık yazı",
"Expires": "Süre Sonu", "Expires": "Süre Sonu",
@ -35,24 +36,32 @@
"Discussion": "Tartışma", "Discussion": "Tartışma",
"Toggle navigation": "Gezinmeyi değiştir", "Toggle navigation": "Gezinmeyi değiştir",
"%d seconds": [ "%d seconds": [
"%d saniye",
"%d saniye",
"%d saniye", "%d saniye",
"%d saniye", "%d saniye",
"%d saniye", "%d saniye",
"%d saniye" "%d saniye"
], ],
"%d minutes": [ "%d minutes": [
"%d dakika",
"%d dakika",
"%d dakika", "%d dakika",
"%d dakika", "%d dakika",
"%d dakika", "%d dakika",
"%d dakika" "%d dakika"
], ],
"%d hours": [ "%d hours": [
"%d saat",
"%d saat",
"%d saat", "%d saat",
"%d saat", "%d saat",
"%d saat", "%d saat",
"%d saat" "%d saat"
], ],
"%d days": [ "%d days": [
"%d gün",
"%d gün",
"%d gün", "%d gün",
"%d gün", "%d gün",
"%d gün", "%d gün",
@ -60,49 +69,65 @@
], ],
"%d weeks": [ "%d weeks": [
"%d hafta", "%d hafta",
"%d haftalar", "%d hafta",
"%d hafta",
"%d hafta",
"%d hafta", "%d hafta",
"%d hafta" "%d hafta"
], ],
"%d months": [ "%d months": [
"%d ay",
"%d ay",
"%d ay", "%d ay",
"%d ay", "%d ay",
"%d ay", "%d ay",
"%d ay" "%d ay"
], ],
"%d years": [ "%d years": [
"%d yıl",
"%d yıl",
"%d yıl", "%d yıl",
"%d yıl", "%d yıl",
"%d yıl", "%d yıl",
"%d yıl" "%d yıl"
], ],
"Never": "Asla", "Never": "Asla",
"Note: This is a test service: Data may be deleted anytime. Kittens will die if you abuse this service.": "Note: This is a test service: Data may be deleted anytime. Kittens will die if you abuse this service.", "Note: This is a test service: Data may be deleted anytime. Kittens will die if you abuse this service.": "Not: Bu bir test hizmetidir: Veriler herhangi bir zamanda silinebilir. Bu hizmeti kötüye kullanırsanız, kedicikler ölebilir.",
"This document will expire in %d seconds.": [ "This document will expire in %d seconds.": [
"Bu belge %d saniyede silinecektir.",
"Bu belge %d saniyede silinecektir.",
"Bu belge %d saniyede silinecektir.", "Bu belge %d saniyede silinecektir.",
"Bu belge %d saniyede silinecektir.", "Bu belge %d saniyede silinecektir.",
"Bu belge %d saniyede silinecektir.", "Bu belge %d saniyede silinecektir.",
"Bu belge %d saniyede silinecektir." "Bu belge %d saniyede silinecektir."
], ],
"This document will expire in %d minutes.": [ "This document will expire in %d minutes.": [
"Bu belge %d dakikada silinecektir.",
"Bu belge %d dakikada silinecektir.",
"Bu belge %d dakikada silinecektir.", "Bu belge %d dakikada silinecektir.",
"Bu belge %d dakikada silinecektir.", "Bu belge %d dakikada silinecektir.",
"Bu belge %d dakikada silinecektir.", "Bu belge %d dakikada silinecektir.",
"Bu belge %d dakikada silinecektir." "Bu belge %d dakikada silinecektir."
], ],
"This document will expire in %d hours.": [ "This document will expire in %d hours.": [
"Bu belge %d saatte silinecektir.",
"Bu belge %d saatte silinecektir.",
"Bu belge %d saatte silinecektir.", "Bu belge %d saatte silinecektir.",
"Bu belge %d saatte silinecektir.", "Bu belge %d saatte silinecektir.",
"Bu belge %d saatte silinecektir.", "Bu belge %d saatte silinecektir.",
"Bu belge %d saatte silinecektir." "Bu belge %d saatte silinecektir."
], ],
"This document will expire in %d days.": [ "This document will expire in %d days.": [
"Bu belge %d günde silinecektir.",
"Bu belge %d günde silinecektir.",
"Bu belge %d günde silinecektir.", "Bu belge %d günde silinecektir.",
"Bu belge %d günde silinecektir.", "Bu belge %d günde silinecektir.",
"Bu belge %d günde silinecektir.", "Bu belge %d günde silinecektir.",
"Bu belge %d günde silinecektir." "Bu belge %d günde silinecektir."
], ],
"This document will expire in %d months.": [ "This document will expire in %d months.": [
"Bu belge %d ayda silinecektir.",
"Bu belge %d ayda silinecektir.",
"Bu belge %d ayda silinecektir.", "Bu belge %d ayda silinecektir.",
"Bu belge %d ayda silinecektir.", "Bu belge %d ayda silinecektir.",
"Bu belge %d ayda silinecektir.", "Bu belge %d ayda silinecektir.",
@ -126,7 +151,7 @@
"server error or not responding": "sunucu hatası veya yanıt vermiyor", "server error or not responding": "sunucu hatası veya yanıt vermiyor",
"Could not post comment: %s": "Yorum paylaşılamadı: %s", "Could not post comment: %s": "Yorum paylaşılamadı: %s",
"Sending paste…": "Yazı gönderiliyor…", "Sending paste…": "Yazı gönderiliyor…",
"Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit [Ctrl]+[c] to copy)</span>": "Yazınız: <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">([Ctrl]+[c] tuşlarına basarak kopyalayın.)</span>", "Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit <kbd>Ctrl</kbd>+<kbd>c</kbd> to copy)</span>": "Yazınız: <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(<kbd>Ctrl</kbd>+<kbd>c</kbd> tuşlarına basarak kopyalayın.)</span>",
"Delete data": "Veriyi sil", "Delete data": "Veriyi sil",
"Could not create paste: %s": "Yazı oluşturulamadı: %s", "Could not create paste: %s": "Yazı oluşturulamadı: %s",
"Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)": "Yazı şifresi çözülemedi, çözme anahtarı URL'de bulunamadı. (Buraya bir yönlendirici veya URL kısaltıcı kullanarak gelmiş olabilirsiniz.)", "Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)": "Yazı şifresi çözülemedi, çözme anahtarı URL'de bulunamadı. (Buraya bir yönlendirici veya URL kısaltıcı kullanarak gelmiş olabilirsiniz.)",
@ -147,47 +172,60 @@
"Cloned: '%s'": "Klonlandı: '%s'", "Cloned: '%s'": "Klonlandı: '%s'",
"The cloned file '%s' was attached to this paste.": "Klonlanmış dosya '%s' bu yazıya eklendi.", "The cloned file '%s' was attached to this paste.": "Klonlanmış dosya '%s' bu yazıya eklendi.",
"Attach a file": "Dosya ekle", "Attach a file": "Dosya ekle",
"alternatively drag & drop a file or paste an image from the clipboard": "alternatif olarak dosyasyı yapıştırabilir veya sürükleyip bırakabilirsin", "alternatively drag & drop a file or paste an image from the clipboard": "alternatif olarak dosyayı yapıştırabilir veya sürükleyip bırakabilirsiniz",
"File too large, to display a preview. Please download the attachment.": "Dosya önizleme için çok büyük. Lütfen eki indirin.", "File too large, to display a preview. Please download the attachment.": "Dosya önizleme için çok büyük. Lütfen eki indirin.",
"Remove attachment": "Eki sil", "Remove attachment": "Eki sil",
"Your browser does not support uploading encrypted files. Please use a newer browser.": "Tarayıcınız şifreli dosyaları desteklemiyor.", "Your browser does not support uploading encrypted files. Please use a newer browser.": "Tarayıcınız şifreli dosyaları yüklemeyi desteklemiyor. Lütfen daha yeni bir tarayıcı kullanın.",
"Invalid attachment.": "Geçersiz ek.", "Invalid attachment.": "Geçersiz ek.",
"Options": "Seçenekler", "Options": "Seçenekler",
"Shorten URL": "URL kısaltma", "Shorten URL": "URL kısaltma",
"Editor": "Düzenleyici", "Editor": "Düzenleyici",
"Preview": "Ön izleme", "Preview": "Ön izleme",
"%s requires the PATH to end in a \"%s\". Please update the PATH in your index.php.": "%s requires the PATH to end in a \"%s\". Please update the PATH in your index.php.", "%s requires the PATH to end in a \"%s\". Please update the PATH in your index.php.": "%s, PATH'in \"%s\" ile bitmesini gerektirir. Lütfen index.php dosyanızdaki PATH'i güncelleyin.",
"Decrypt": "Şifreyi çöz", "Decrypt": "Şifreyi çöz",
"Enter password": "Şifreyi girin", "Enter password": "Şifreyi girin",
"Loading…": "Yükleniyor…", "Loading…": "Yükleniyor…",
"Decrypting paste…": "Yazı şifresi çözülüyor…", "Decrypting paste…": "Yazı şifresi çözülüyor…",
"Preparing new paste…": "Yeni yazı hazırlanıyor…", "Preparing new paste…": "Yeni yazı hazırlanıyor…",
"In case this message never disappears please have a look at <a href=\"%s\">this FAQ for information to troubleshoot</a>.": "In case this message never disappears please have a look at <a href=\"%s\">this FAQ for information to troubleshoot</a>.", "In case this message never disappears please have a look at <a href=\"%s\">this FAQ for information to troubleshoot</a>.": "Bu mesaj hiç kaybolmazsa, sorun giderme bilgileri için <a href=\"%s\">bu SSS'ye göz atın</a>.",
"+++ no paste text +++": "+++ no paste text +++", "+++ no paste text +++": "+++ yazı içeriği yok +++",
"Could not get paste data: %s": "Yazı verisi alınamıyor: %s", "Could not get paste data: %s": "Yazı verisi alınamıyor: %s",
"QR code": "QR kodu", "QR code": "QR kodu",
"This website is using an insecure HTTP connection! Please use it only for testing.": "This website is using an insecure HTTP connection! Please use it only for testing.", "This website is using an insecure HTTP connection! Please use it only for testing.": "Bu web sitesi güvensiz bir HTTP bağlantısı kullanıyor! Lütfen bunu yalnızca test için kullanın.",
"For more information <a href=\"%s\">see this FAQ entry</a>.": "For more information <a href=\"%s\">see this FAQ entry</a>.", "For more information <a href=\"%s\">see this FAQ entry</a>.": "Daha fazla bilgi için <a href=\"%s\">bu SSS girişine bakın</a>.",
"Your browser may require an HTTPS connection to support the WebCrypto API. Try <a href=\"%s\">switching to HTTPS</a>.": "Your browser may require an HTTPS connection to support the WebCrypto API. Try <a href=\"%s\">switching to HTTPS</a>.", "Your browser may require an HTTPS connection to support the WebCrypto API. Try <a href=\"%s\">switching to HTTPS</a>.": "Tarayıcınızın WebCrypto API'sini desteklemesi için HTTPS bağlantısına ihtiyacı olabilir. <a href=\"%s\">HTTPS'ye geçmeyi deneyin</a>.",
"Your browser doesn't support WebAssembly, used for zlib compression. You can create uncompressed documents, but can't read compressed ones.": "Your browser doesn't support WebAssembly, used for zlib compression. You can create uncompressed documents, but can't read compressed ones.", "Your browser doesn't support WebAssembly, used for zlib compression. You can create uncompressed documents, but can't read compressed ones.": "Tarayıcınız zlib sıkıştırma için kullanılan WebAssembly'i desteklemiyor. Sıkıştırılmamış belgeler oluşturabilirsiniz, ancak sıkıştırılmış olanları okuyamazsınız.",
"waiting on user to provide a password": "waiting on user to provide a password", "waiting on user to provide a password": "kullanıcının şifre girmesi bekleniyor",
"Could not decrypt data. Did you enter a wrong password? Retry with the button at the top.": "Dosya şifresi çözülemedi, doğru şifreyi kullandığınıza emin misiniz? Üstteki buton ile tekrar deneyin.", "Could not decrypt data. Did you enter a wrong password? Retry with the button at the top.": "Şifre çözülemedi, yanlış şifre mi girdiniz? Üstteki butonla tekrar deneyin.",
"Retry": "Yeniden Dene", "Retry": "Yeniden Dene",
"Showing raw text…": "Açık yazı gösteriliyor…", "Showing raw text…": "Açık yazı gösteriliyor…",
"Notice:": "Bildirim:", "Notice:": "Bildirim:",
"This link will expire after %s.": "Bu bağlantı şu kadar zaman sonra etkisiz kalacaktır: %s.", "This link will expire after %s.": "Bu bağlantı %s sonra geçersiz hale gelecektir.",
"This link can only be accessed once, do not use back or refresh button in your browser.": "Bu bağlantı sadece bir kere erişilebilir, lütfen sayfayı yenilemeyiniz.", "This link can only be accessed once, do not use back or refresh button in your browser.": "Bu bağlantıya yalnızca bir kez erişilebilir, tarayıcınızda geri veya yenile butonunu kullanmayın.",
"Link:": "Bağlantı:", "Link:": "Bağlantı:",
"Recipient may become aware of your timezone, convert time to UTC?": "Alıcı zaman dilmini öğrenebilir, zaman dilimini UTC'ye çevirmek ister misin?", "Recipient may become aware of your timezone, convert time to UTC?": "Alıcı zaman diliminizi öğrenebilir, zamanı UTC'ye çevirmek ister misiniz?",
"Use Current Timezone": "Şuanki zaman dilimini kullan", "Use Current Timezone": "Mevcut Zaman Dilimini Kullan",
"Convert To UTC": "UTC zaman dilimine çevir", "Convert To UTC": "UTC'ye Dönüştür",
"Close": "Kapat", "Close": "Kapat",
"Encrypted note on %s": "%s üzerinde şifrelenmiş not", "Encrypted note on %s": "%s üzerinde şifrelenmiş not",
"Visit this link to see the note. Giving the URL to anyone allows them to access the note, too.": "Notu görmek için bu bağlantıyı ziyaret et. Bağlantıya sahip olan birisi notu görebilir.", "Visit this link to see the note. Giving the URL to anyone allows them to access the note, too.": "Notu görmek için bu bağlantıyı ziyaret edin. URL'yi birine vermek, onların da nota erişmesini sağlar.",
"URL shortener may expose your decrypt key in URL.": "URL kısaltıcı şifreleme anahtarınızı URL içerisinde gösterebilir.", "URL shortener may expose your decrypt key in URL.": "URL kısaltıcı, şifre çözme anahtarınızı URL içinde gösterebilir.",
"Save paste": "Yazıyı kaydet", "Save paste": "Yazıyı kaydet",
"Your IP is not authorized to create pastes.": "IP adresinizin yazı oluşturmaya yetkisi yoktur.", "Your IP is not authorized to create pastes.": "IP adresinizin yazı oluşturmaya yetkisi yoktur.",
"Trying to shorten a URL that isn't pointing at our instance.": "Trying to shorten a URL that isn't pointing at our instance.", "Trying to shorten a URL that isn't pointing at our instance.": "URL'yi kısaltmaya çalışırken, bizim sunucumuza işaret etmeyen bir URL kullanıyorsunuz.",
"Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".": "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".", "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".": "YOURLS çağrısı başarısız oldu. Muhtemelen \"apiurl\" veya \"signature\" gibi yanlış veya eksik yapılandırma hatası.",
"Error parsing YOURLS response.": "Error parsing YOURLS response." "Error parsing YOURLS response.": "YOURLS yanıtı ayrıştırılamadı.",
"This secret message can only be displayed once. Would you like to see it now?": "Bu gizli mesaj yalnızca bir kez görüntülenebilir. Şimdi görmek ister misiniz?",
"Yes, see it": "Evet, gör",
"Dark Mode": "Koyu Mod",
"Error compressing paste, due to missing WebAssembly support.": "WebAssembly desteği eksik olduğundan yazı sıkıştırılamadı.",
"Error decompressing paste, your browser does not support WebAssembly. Please use another browser to view this paste.": "Yazıılırken hata oluştu, tarayıcınız WebAssembly'i desteklemiyor. Lütfen bu yazıyı görüntülemek için başka bir tarayıcı kullanın.",
"Start over": "Baştan başla",
"Paste copied to clipboard": "Paste copied to clipboard",
"To copy paste press on the copy button or use the clipboard shortcut <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>": "To copy paste press on the copy button or use the clipboard shortcut <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>",
"Copy link": "Copy link",
"Link copied to clipboard": "Link copied to clipboard",
"Paste text": "Paste text",
"Tabulator key serves as character (Hit <kbd>Ctrl</kbd>+<kbd>m</kbd> or <kbd>Esc</kbd> to toggle)": "Tabulator key serves as character (Hit <kbd>Ctrl</kbd>+<kbd>m</kbd> or <kbd>Esc</kbd> to toggle)",
"Theme": "Theme"
} }

View File

@ -1,9 +1,8 @@
{ {
"PrivateBin": "PrivateBin", "PrivateBin": "PrivateBin",
"%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.": "%s це мінімалістичний Open Source проєкт для створення нотаток, де сервер не знає нічого про дані, що зберігаються. Дані шифруються/розшифровуються %sу переглядачі%s з використанням 256-бітного шифрувания AES.", "%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.": "%s це мінімалістичний Open Source проєкт для створення нотаток, де сервер не знає нічого про дані, що зберігаються. Дані шифруються/розшифровуються %sу браузері%s з використанням 256-бітного шифрування AES.",
"More information on the <a href=\"https://privatebin.info/\">project page</a>.": "Подробиці можна дізнатися на <a href=\"https://privatebin.info/\">сайті проєкту</a>.", "More information on the <a href=\"https://privatebin.info/\">project page</a>.": "Подробиці можна дізнатися на <a href=\"https://privatebin.info/\">сайті проєкту</a>.",
"Because ignorance is bliss": "Бо незнання - благо", "Because ignorance is bliss": "Бо незнання - благо",
"en": "uk",
"Paste does not exist, has expired or has been deleted.": "Допис не існує, протермінований чи був видалений.", "Paste does not exist, has expired or has been deleted.": "Допис не існує, протермінований чи був видалений.",
"%s requires php %s or above to work. Sorry.": "Для роботи %s потрібен php %s и вище. Вибачте.", "%s requires php %s or above to work. Sorry.": "Для роботи %s потрібен php %s и вище. Вибачте.",
"%s requires configuration section [%s] to be present in configuration file.": "%s потрібна секція [%s] в конфігураційному файлі.", "%s requires configuration section [%s] to be present in configuration file.": "%s потрібна секція [%s] в конфігураційному файлі.",
@ -11,21 +10,23 @@
"Будь ласка, зачекайте %d секунду між створеннями.", "Будь ласка, зачекайте %d секунду між створеннями.",
"Будь ласка, зачекайте %d секунди між створеннями.", "Будь ласка, зачекайте %d секунди між створеннями.",
"Будь ласка, зачекайте %d секунд між створеннями.", "Будь ласка, зачекайте %d секунд між створеннями.",
"Будь ласка, зачекайте %d секунд між створеннями.",
"Будь ласка, зачекайте %d секунд між створеннями.",
"Будь ласка, зачекайте %d секунд між створеннями." "Будь ласка, зачекайте %d секунд між створеннями."
], ],
"Paste is limited to %s of encrypted data.": "Розмір допису обмежений %s зашифрованих даних.", "Paste is limited to %s of encrypted data.": "Розмір допису обмежений %s зашифрованих даних.",
"Invalid data.": "Неправильні дані.", "Invalid data.": "Неправильні дані.",
"You are unlucky. Try again.": "Вам не пощастило. Спробуйте ще раз.", "You are unlucky. Try again.": "Якась халепа! Спробуйте ще раз.",
"Error saving comment. Sorry.": "Помилка при збереженні коментаря. Вибачте.", "Error saving comment. Sorry.": "Помилка при збереженні коментаря. Вибачте.",
"Error saving paste. Sorry.": "Помилка при збереженні допису. Вибачте.", "Error saving paste. Sorry.": "Помилка при збереженні допису. Вибачте.",
"Invalid paste ID.": "Неправильний ID допису.", "Invalid paste ID.": "Неправильний ID допису.",
"Paste is not of burn-after-reading type.": "Тип допису не \"Знищити після прочитання\".", "Paste is not of burn-after-reading type.": "Тип допису не \"Знищити після прочитання\".",
"Wrong deletion token. Paste was not deleted.": "Неправильний ключ вилучення допису. Допис не вилучено.", "Wrong deletion token. Paste was not deleted.": "Неправильний жетон вилучення допису. Допис не вилучено.",
"Paste was properly deleted.": "Допис був вилучений повністю.", "Paste was properly deleted.": "Допис був вилучений повністю.",
"JavaScript is required for %s to work. Sorry for the inconvenience.": "Для роботи %s потрібен увімкнутий JavaScript. Вибачте.", "JavaScript is required for %s to work. Sorry for the inconvenience.": "Для роботи %s потрібен увімкнутий JavaScript. Вибачте.",
"%s requires a modern browser to work.": "Для роботи %s потрібен більш сучасний переглядач.", "%s requires a modern browser to work.": "Для роботи %s потрібен більш сучасний браузер.",
"New": "Новий допис", "New": "Новий допис",
"Send": "Відправити", "Create": "Створити",
"Clone": "Дублювати", "Clone": "Дублювати",
"Raw text": "Початковий текст", "Raw text": "Початковий текст",
"Expires": "Вилучити через", "Expires": "Вилучити через",
@ -35,8 +36,10 @@
"Discussion": "Обговорення", "Discussion": "Обговорення",
"Toggle navigation": "Перемкнути навігацію", "Toggle navigation": "Перемкнути навігацію",
"%d seconds": [ "%d seconds": [
"%d секунду", "%d секунд",
"%d секунди", "%d секунд",
"%d секунд",
"%d секунд",
"%d секунд", "%d секунд",
"%d секунд" "%d секунд"
], ],
@ -44,36 +47,48 @@
"%d хвилину", "%d хвилину",
"%d хвилини", "%d хвилини",
"%d хвилин", "%d хвилин",
"%d хвилин",
"%d хвилин",
"%d хвилин" "%d хвилин"
], ],
"%d hours": [ "%d hours": [
"%d годину", "%d годину",
"%d години", "%d години",
"%d годин", "%d годин",
"%d годин",
"%d годин",
"%d годин" "%d годин"
], ],
"%d days": [ "%d days": [
"%d день", "%d день",
"%d дні", "%d дні",
"%d днів", "%d днів",
"%d днів",
"%d днів",
"%d днів" "%d днів"
], ],
"%d weeks": [ "%d weeks": [
"%d тиждень", "%d тиждень",
"%d тижні", "%d тижні",
"%d тижнів", "%d тижнів",
"%d тижнів",
"%d тижнів",
"%d тижнів" "%d тижнів"
], ],
"%d months": [ "%d months": [
"%d місяць", "%d місяць",
"%d місяці", "%d місяці",
"%d місяців", "%d місяців",
"%d місяців",
"%d місяців",
"%d місяців" "%d місяців"
], ],
"%d years": [ "%d years": [
"%d рік", "%d рік",
"%d роки", "%d роки",
"%d років", "%d років",
"%d років",
"%d років",
"%d років" "%d років"
], ],
"Never": "Ніколи", "Never": "Ніколи",
@ -82,34 +97,44 @@
"Документ буде вилучений через %d секунду.", "Документ буде вилучений через %d секунду.",
"Документ буде вилучений через %d секунди.", "Документ буде вилучений через %d секунди.",
"Документ буде вилучений через %d секунд.", "Документ буде вилучений через %d секунд.",
"Документ буде вилучений через %d секунд.",
"Документ буде вилучений через %d секунд.",
"Документ буде вилучений через %d секунд." "Документ буде вилучений через %d секунд."
], ],
"This document will expire in %d minutes.": [ "This document will expire in %d minutes.": [
"Документ буде вилучений через %d хвилину.", "Документ буде вилучений через %d хвилину.",
"Документ буде вилучений через %d хвилини.", "Документ буде вилучений через %d хвилини.",
"Документ буде вилучений через %d хвилин.", "Документ буде вилучений через %d хвилин.",
"Документ буде вилучений через %d хвилин.",
"Документ буде вилучений через %d хвилин.",
"Документ буде вилучений через %d хвилин." "Документ буде вилучений через %d хвилин."
], ],
"This document will expire in %d hours.": [ "This document will expire in %d hours.": [
"Документ буде вилучений через %d годину.", "Документ буде вилучений через %d годину.",
"Документ буде вилучений через %d години.", "Документ буде вилучений через %d години.",
"Документ буде вилучений через %d годин.", "Документ буде вилучений через %d годин.",
"Документ буде вилучений через %d годин.",
"Документ буде вилучений через %d годин.",
"Документ буде вилучений через %d годин." "Документ буде вилучений через %d годин."
], ],
"This document will expire in %d days.": [ "This document will expire in %d days.": [
"Документ буде вилучений через %d день.", "Документ буде вилучений через %d день.",
"Документ буде вилучений через %d дні.", "Документ буде вилучений через %d дні.",
"Документ буде вилучений через %d днів.", "Документ буде вилучений через %d днів.",
"Документ буде вилучений через %d днів.",
"Документ буде вилучений через %d днів.",
"Документ буде вилучений через %d днів." "Документ буде вилучений через %d днів."
], ],
"This document will expire in %d months.": [ "This document will expire in %d months.": [
"Документ буде вилучений через %d місяць.", "Документ буде вилучений через %d місяць.",
"Документ буде вилучений через %d місяці.", "Документ буде вилучений через %d місяці.",
"Документ буде вилучений через %d місяців.", "Документ буде вилучений через %d місяців.",
"Документ буде вилучений через %d місяців.",
"Документ буде вилучений через %d місяців.",
"Документ буде вилучений через %d місяців." "Документ буде вилучений через %d місяців."
], ],
"Please enter the password for this paste:": "Будь ласка, введіть пароль від допису:", "Please enter the password for this paste:": "Будь ласка, введіть пароль від допису:",
"Could not decrypt data (Wrong key?)": "Неможливо розшифрувати дані (Неправильний ключ?)", "Could not decrypt data (Wrong key?)": "Неможливо розшифрувати дані (можливо, невірний ключ?)",
"Could not delete the paste, it was not stored in burn after reading mode.": "Неможливо вилучити допис, він не був збережений в режимі знищити після прочитання.", "Could not delete the paste, it was not stored in burn after reading mode.": "Неможливо вилучити допис, він не був збережений в режимі знищити після прочитання.",
"FOR YOUR EYES ONLY. Don't close this window, this message can't be displayed again.": "ЛИШЕ ДЛЯ ВАШИХ ОЧЕЙ. Не закривайте це вікно, це повідомлення не може бути показано знову.", "FOR YOUR EYES ONLY. Don't close this window, this message can't be displayed again.": "ЛИШЕ ДЛЯ ВАШИХ ОЧЕЙ. Не закривайте це вікно, це повідомлення не може бути показано знову.",
"Could not decrypt comment; Wrong key?": "Неможливо розшифрувати коментар; Неправильний ключ?", "Could not decrypt comment; Wrong key?": "Неможливо розшифрувати коментар; Неправильний ключ?",
@ -126,7 +151,7 @@
"server error or not responding": "помилка на сервері чи немає відповіді", "server error or not responding": "помилка на сервері чи немає відповіді",
"Could not post comment: %s": "Не вдалося опублікувати коментар: %s", "Could not post comment: %s": "Не вдалося опублікувати коментар: %s",
"Sending paste…": "Відправка допису…", "Sending paste…": "Відправка допису…",
"Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit [Ctrl]+[c] to copy)</span>": "Посилання на допис <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Тисніть [Ctrl]+[c], щоб скопіювати посилання)</span>", "Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit <kbd>Ctrl</kbd>+<kbd>c</kbd> to copy)</span>": "Посилання на допис <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Тисніть <kbd>Ctrl</kbd>+<kbd>c</kbd>, щоб скопіювати посилання)</span>",
"Delete data": "Видалити допис", "Delete data": "Видалити допис",
"Could not create paste: %s": "Не вдалося опублікувати допис: %s", "Could not create paste: %s": "Не вдалося опублікувати допис: %s",
"Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)": "Неможливо розшифрувати запис: Ключ дешифрування відсутній в посиланні (Можливо, ви використовуєте скорочувач посилань, що видаляє частину посилання?)", "Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)": "Неможливо розшифрувати запис: Ключ дешифрування відсутній в посиланні (Можливо, ви використовуєте скорочувач посилань, що видаляє частину посилання?)",
@ -141,7 +166,7 @@
"YiB": "Йбайт", "YiB": "Йбайт",
"Format": "Формат", "Format": "Формат",
"Plain Text": "Звичайний текст", "Plain Text": "Звичайний текст",
"Source Code": "Джерельний код", "Source Code": "Вихідний код",
"Markdown": "Мова розмітки", "Markdown": "Мова розмітки",
"Download attachment": "Звантажити прикріплений файл", "Download attachment": "Звантажити прикріплений файл",
"Cloned: '%s'": "Дубльовано: '%s'", "Cloned: '%s'": "Дубльовано: '%s'",
@ -187,7 +212,20 @@
"URL shortener may expose your decrypt key in URL.": "Сервіс скорочення посилань може викрити ваш ключ дешифрування з URL.", "URL shortener may expose your decrypt key in URL.": "Сервіс скорочення посилань може викрити ваш ключ дешифрування з URL.",
"Save paste": "Зберегти вставку", "Save paste": "Зберегти вставку",
"Your IP is not authorized to create pastes.": "Вашому IP не дозволено створювати вставки.", "Your IP is not authorized to create pastes.": "Вашому IP не дозволено створювати вставки.",
"Trying to shorten a URL that isn't pointing at our instance.": "Trying to shorten a URL that isn't pointing at our instance.", "Trying to shorten a URL that isn't pointing at our instance.": "Спроба скоротити URL, який не вказує на наш екземпляр.",
"Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".": "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".", "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".": "Помилка виклику YOURLS. Ймовірно проблема з налаштуванням, наприклад \"apiurl\" чи \"signature\".",
"Error parsing YOURLS response.": "Error parsing YOURLS response." "Error parsing YOURLS response.": "Помилка розбору відповіді YOURLS.",
"This secret message can only be displayed once. Would you like to see it now?": "Це таємне повідомлення можна надіслати лише один раз. Хочете переглянути його зараз?",
"Yes, see it": "Так, побачити",
"Dark Mode": "Темний режим",
"Error compressing paste, due to missing WebAssembly support.": "Помилка при стисканні допису, через відсутність підтримки WebAssembly сервера.",
"Error decompressing paste, your browser does not support WebAssembly. Please use another browser to view this paste.": "Помилка при розпакуванні допису, бо ваш браузер не підтримує WebAssembly. Будь ласка, відкрийте в іншому браузері для перегляду цього допису.",
"Start over": "Почати знову",
"Paste copied to clipboard": "Paste copied to clipboard",
"To copy paste press on the copy button or use the clipboard shortcut <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>": "To copy paste press on the copy button or use the clipboard shortcut <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>",
"Copy link": "Copy link",
"Link copied to clipboard": "Link copied to clipboard",
"Paste text": "Paste text",
"Tabulator key serves as character (Hit <kbd>Ctrl</kbd>+<kbd>m</kbd> or <kbd>Esc</kbd> to toggle)": "Tabulator key serves as character (Hit <kbd>Ctrl</kbd>+<kbd>m</kbd> or <kbd>Esc</kbd> to toggle)",
"Theme": "Theme"
} }

View File

@ -2,12 +2,13 @@
"PrivateBin": "PrivateBin", "PrivateBin": "PrivateBin",
"%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.": "%s 是一个极简、开源、对粘贴内容毫不知情的在线粘贴板,数据%s在浏览器内%s进行 AES-256 加密和解密。", "%s is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted %sin the browser%s using 256 bits AES.": "%s 是一个极简、开源、对粘贴内容毫不知情的在线粘贴板,数据%s在浏览器内%s进行 AES-256 加密和解密。",
"More information on the <a href=\"https://privatebin.info/\">project page</a>.": "更多信息请查看<a href=\"https://privatebin.info/\">项目主页</a>。", "More information on the <a href=\"https://privatebin.info/\">project page</a>.": "更多信息请查看<a href=\"https://privatebin.info/\">项目主页</a>。",
"Because ignorance is bliss": "因为无知是福", "Because ignorance is bliss": "以不知为幸",
"en": "zh",
"Paste does not exist, has expired or has been deleted.": "粘贴内容不存在、已过期或已被删除。", "Paste does not exist, has expired or has been deleted.": "粘贴内容不存在、已过期或已被删除。",
"%s requires php %s or above to work. Sorry.": "抱歉,%s 需要 PHP %s 及以上版本才能运行。", "%s requires php %s or above to work. Sorry.": "抱歉,%s 需要 PHP %s 及以上版本才能运行。",
"%s requires configuration section [%s] to be present in configuration file.": "%s 需要设置配置文件中的 [%s] 部分。", "%s requires configuration section [%s] to be present in configuration file.": "%s 需要设置配置文件中的 [%s] 部分。",
"Please wait %d seconds between each post.": [ "Please wait %d seconds between each post.": [
"每 %d 秒只能粘贴一次。",
"每 %d 秒只能粘贴一次。",
"每 %d 秒只能粘贴一次。", "每 %d 秒只能粘贴一次。",
"每 %d 秒只能粘贴一次。", "每 %d 秒只能粘贴一次。",
"每 %d 秒只能粘贴一次。", "每 %d 秒只能粘贴一次。",
@ -25,7 +26,7 @@
"JavaScript is required for %s to work. Sorry for the inconvenience.": "%s 需要 JavaScript 来进行加解密。 给你带来的不便敬请谅解。", "JavaScript is required for %s to work. Sorry for the inconvenience.": "%s 需要 JavaScript 来进行加解密。 给你带来的不便敬请谅解。",
"%s requires a modern browser to work.": "%s 需要在现代浏览器上工作。", "%s requires a modern browser to work.": "%s 需要在现代浏览器上工作。",
"New": "新建", "New": "新建",
"Send": "送出", "Create": "创建",
"Clone": "复制", "Clone": "复制",
"Raw text": "纯文本", "Raw text": "纯文本",
"Expires": "有效期", "Expires": "有效期",
@ -35,6 +36,8 @@
"Discussion": "讨论", "Discussion": "讨论",
"Toggle navigation": "切换导航栏", "Toggle navigation": "切换导航栏",
"%d seconds": [ "%d seconds": [
"%d 秒",
"%d 秒",
"%d 秒", "%d 秒",
"%d 秒", "%d 秒",
"%d 秒", "%d 秒",
@ -44,33 +47,45 @@
"%d 分钟", "%d 分钟",
"%d 分钟", "%d 分钟",
"%d 秒", "%d 秒",
"%d 秒",
"%d 秒",
"%d 秒" "%d 秒"
], ],
"%d hours": [ "%d hours": [
"%d 小时",
"%d 小时",
"%d 小时", "%d 小时",
"%d 小时", "%d 小时",
"%d 小时", "%d 小时",
"%d 小时" "%d 小时"
], ],
"%d days": [ "%d days": [
"%d 天",
"%d 天",
"%d 天", "%d 天",
"%d 天", "%d 天",
"%d 天", "%d 天",
"%d 天" "%d 天"
], ],
"%d weeks": [ "%d weeks": [
"%d 周",
"%d 周",
"%d 周", "%d 周",
"%d 周", "%d 周",
"%d 周", "%d 周",
"%d 周" "%d 周"
], ],
"%d months": [ "%d months": [
"%d 个月",
"%d 个月",
"%d 个月", "%d 个月",
"%d 个月", "%d 个月",
"%d 个月", "%d 个月",
"%d 个月" "%d 个月"
], ],
"%d years": [ "%d years": [
"%d 年",
"%d 年",
"%d 年", "%d 年",
"%d 年", "%d 年",
"%d 年", "%d 年",
@ -82,30 +97,40 @@
"这份文档将在一秒后过期。", "这份文档将在一秒后过期。",
"这份文档将在 %d 秒后过期。", "这份文档将在 %d 秒后过期。",
"这份文档将在 %d 秒后过期。", "这份文档将在 %d 秒后过期。",
"这份文档将在 %d 秒后过期。",
"这份文档将在 %d 秒后过期。",
"这份文档将在 %d 秒后过期。" "这份文档将在 %d 秒后过期。"
], ],
"This document will expire in %d minutes.": [ "This document will expire in %d minutes.": [
"这份文档将在一分钟后过期。", "这份文档将在一分钟后过期。",
"这份文档将在 %d 分钟后过期。", "这份文档将在 %d 分钟后过期。",
"这份文档将在 %d 分钟后过期。", "这份文档将在 %d 分钟后过期。",
"这份文档将在 %d 分钟后过期。",
"这份文档将在 %d 分钟后过期。",
"这份文档将在 %d 分钟后过期。" "这份文档将在 %d 分钟后过期。"
], ],
"This document will expire in %d hours.": [ "This document will expire in %d hours.": [
"这份文档将在一小时后过期。", "这份文档将在一小时后过期。",
"这份文档将在 %d 小时后过期。", "这份文档将在 %d 小时后过期。",
"这份文档将在 %d 小时后过期。", "这份文档将在 %d 小时后过期。",
"这份文档将在 %d 小时后过期。",
"这份文档将在 %d 小时后过期。",
"这份文档将在 %d 小时后过期。" "这份文档将在 %d 小时后过期。"
], ],
"This document will expire in %d days.": [ "This document will expire in %d days.": [
"这份文档将在一天后过期。", "这份文档将在一天后过期。",
"这份文档将在 %d 天后过期。", "这份文档将在 %d 天后过期。",
"这份文档将在 %d 天后过期。", "这份文档将在 %d 天后过期。",
"这份文档将在 %d 天后过期。",
"这份文档将在 %d 天后过期。",
"这份文档将在 %d 天后过期。" "这份文档将在 %d 天后过期。"
], ],
"This document will expire in %d months.": [ "This document will expire in %d months.": [
"这份文档将在一个月后过期。", "这份文档将在一个月后过期。",
"这份文档将在 %d 个月后过期。", "这份文档将在 %d 个月后过期。",
"这份文档将在 %d 个月后过期。", "这份文档将在 %d 个月后过期。",
"这份文档将在 %d 个月后过期。",
"这份文档将在 %d 个月后过期。",
"这份文档将在 %d 个月后过期。" "这份文档将在 %d 个月后过期。"
], ],
"Please enter the password for this paste:": "请输入这份粘贴内容的密码:", "Please enter the password for this paste:": "请输入这份粘贴内容的密码:",
@ -126,7 +151,7 @@
"server error or not responding": "服务器错误或无回应", "server error or not responding": "服务器错误或无回应",
"Could not post comment: %s": "无法发送评论: %s", "Could not post comment: %s": "无法发送评论: %s",
"Sending paste…": "粘贴内容提交中…", "Sending paste…": "粘贴内容提交中…",
"Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit [Ctrl]+[c] to copy)</span>": "您粘贴内容的链接是 <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(按下 [Ctrl]+[C] 以复制)</span>", "Your paste is <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(Hit <kbd>Ctrl</kbd>+<kbd>c</kbd> to copy)</span>": "您粘贴内容的链接是 <a id=\"pasteurl\" href=\"%s\">%s</a> <span id=\"copyhint\">(按下 <kbd>Ctrl</kbd>+<kbd>c</kbd> 以复制)</span>",
"Delete data": "删除数据", "Delete data": "删除数据",
"Could not create paste: %s": "无法创建粘贴:%s", "Could not create paste: %s": "无法创建粘贴:%s",
"Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)": "无法解密粘贴URL中缺失解密密钥是否使用了重定向或者短链接导致密钥丢失", "Cannot decrypt paste: Decryption key missing in URL (Did you use a redirector or an URL shortener which strips part of the URL?)": "无法解密粘贴URL中缺失解密密钥是否使用了重定向或者短链接导致密钥丢失",
@ -189,5 +214,18 @@
"Your IP is not authorized to create pastes.": "您的 IP 无权创建粘贴。", "Your IP is not authorized to create pastes.": "您的 IP 无权创建粘贴。",
"Trying to shorten a URL that isn't pointing at our instance.": "尝试缩短一个不指向我们实例的URL。", "Trying to shorten a URL that isn't pointing at our instance.": "尝试缩短一个不指向我们实例的URL。",
"Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".": "调用 YOURLS 时出错。可能是配置问题例如“apiurl”或“signature”错误或缺失。", "Error calling YOURLS. Probably a configuration issue, like wrong or missing \"apiurl\" or \"signature\".": "调用 YOURLS 时出错。可能是配置问题例如“apiurl”或“signature”错误或缺失。",
"Error parsing YOURLS response.": "解析 YOURLS 响应时出错。" "Error parsing YOURLS response.": "解析 YOURLS 响应时出错。",
"This secret message can only be displayed once. Would you like to see it now?": "读取粘贴后只能在加载时显示一次。您想现在打开吗?",
"Yes, see it": "是的,加载它",
"Dark Mode": "暗黑模式",
"Error compressing paste, due to missing WebAssembly support.": "由于缺少 WebAssembly 支持,在压缩粘贴时出错。",
"Error decompressing paste, your browser does not support WebAssembly. Please use another browser to view this paste.": "解压粘贴时出错,您的浏览器不支持 WebAssembly。请使用其他浏览器查看此粘贴。",
"Start over": "重新开始",
"Paste copied to clipboard": "粘贴内容已复制到剪贴板",
"To copy paste press on the copy button or use the clipboard shortcut <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>": "要复制粘贴内容,请点击复制按钮或使用快捷键 <kbd>Ctrl</kbd>+<kbd>c</kbd>/<kbd>Cmd</kbd>+<kbd>c</kbd>。",
"Copy link": "复制链接",
"Link copied to clipboard": "链接已复制到剪贴板",
"Paste text": "粘贴文本",
"Tabulator key serves as character (Hit <kbd>Ctrl</kbd>+<kbd>m</kbd> or <kbd>Esc</kbd> to toggle)": "Tab 键可作为字符(按 <kbd>Ctrl</kbd>+<kbd>m</kbd> 或 <kbd>Esc</kbd> 切换开关)",
"Theme": "主题"
} }

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.4 KiB

After

Width:  |  Height:  |  Size: 5.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 22 KiB

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.9 KiB

After

Width:  |  Height:  |  Size: 3.8 KiB

1
img/bootstrap-icons.svg Normal file

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 9.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 749 B

After

Width:  |  Height:  |  Size: 741 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 266 B

After

Width:  |  Height:  |  Size: 180 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 253 B

After

Width:  |  Height:  |  Size: 217 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 157 B

After

Width:  |  Height:  |  Size: 104 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 299 B

After

Width:  |  Height:  |  Size: 200 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 183 B

After

Width:  |  Height:  |  Size: 174 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 209 B

After

Width:  |  Height:  |  Size: 144 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 196 B

After

Width:  |  Height:  |  Size: 149 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.6 KiB

After

Width:  |  Height:  |  Size: 3.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.2 KiB

After

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.5 KiB

After

Width:  |  Height:  |  Size: 3.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.0 KiB

After

Width:  |  Height:  |  Size: 8.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.4 KiB

After

Width:  |  Height:  |  Size: 2.4 KiB

View File

@ -1,4 +1,4 @@
<?php <?php declare(strict_types=1);
/** /**
* PrivateBin * PrivateBin
* *
@ -7,7 +7,6 @@
* @link https://github.com/PrivateBin/PrivateBin * @link https://github.com/PrivateBin/PrivateBin
* @copyright 2012 Sébastien SAUVAGE (sebsauvage.net) * @copyright 2012 Sébastien SAUVAGE (sebsauvage.net)
* @license https://www.opensource.org/licenses/zlib-license.php The zlib/libpng License * @license https://www.opensource.org/licenses/zlib-license.php The zlib/libpng License
* @version 1.5.2
*/ */
// change this, if your php files and data is outside of your webservers document root // change this, if your php files and data is outside of your webservers document root

View File

@ -1,7 +1,7 @@
--- ---
instrumentation: instrumentation:
excludes: excludes:
- jquery-3.1.1.js - jquery-3.7.1.js
baseline-file: ../tst/log/js-coverage-baseline.json baseline-file: ../tst/log/js-coverage-baseline.json
reporting: reporting:
dir: ../tst/log/js-coverage-report dir: ../tst/log/js-coverage-report

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